แงแแแแแก, แแแกแแช แชแฎแแแ แแแแจแ แแ แแฎแแ แแแแแช แแแกแญแแ แแ OpenVZ แแแแขแแแแแ แแก แกแแ แแแ แแ แแแแแขแแแ แกแ แฃแแ KVM แแแ แขแฃแแแแแแแแ, แจแแแฅแแแ แแแ แแแแฃแแ แแ แแแแแแแแ:
- แแแคแแ แแแชแแแก แฃแแแขแแกแแแ แฃแแ แแแแ แแแซแแแแแแฃแแแ แแ แแฅแขแฃแแแฃแ แ แแงแ OS-แแแแกแแแแก, แ แแแแแแแแช แแแแ แฎแแแก แแแแแแแแแแแจแ แแแแแ แแก EOL แชแแแแ
- แแแแกแฎแแแแแแฃแแ แแแคแแ แแแชแแ แงแแแแแแแแก แแ แแก แแแฌแแแแแฃแแ แกแฎแแแแแกแฎแแ แแแแ แแชแแฃแแ แกแแกแขแแแแกแแแแก แแ แแแแ แแชแแแก แแ แแก แจแแกแแซแแ แจแแชแแแแแแ แแ แแกแแแแก แแแแแฎแแแแแ
- แแแแฏแแ แแฅแแแ แฃแแแ แแแฃแแแแแแแแ แแแแคแแแฃแ แแชแแแแก, แ แแแแแแกแแช แแ แแแแแ แ แแ แกแฃแ แ แแฃแจแแแแ แแแแ แแชแแแก แจแแแแแ
แ แแแแกแแช แแแแแ แแชแฎแแ 1 แกแแ แแแ แก, แงแแแแแแแแก แจแแแแซแแแ แ แแฆแแชแแก แแแแแกแฌแแ แแแ, แแแแ แแ แ แแชแ แแแแแ แแชแฎแแ แแแแ แแแแกแขแแ แก?
แแ แกแขแแขแแแจแ แจแแแแชแแแแ แแแแฎแ แแ, แแฃ แ แแแแ แกแฌแแ แแ แแแแแแขแแแแ OpenVZ แแแแขแแแแแ แ KVM-แแ แแแแแแแแฃแ แ แจแแคแแ แฎแแแแ แแ แงแแแแ แแ แแแแแแแก แกแฌแ แแคแ แแแแแฌแงแแแขแแ.
แแชแแ แ แกแแแแแแแแแแแแแแ แแ แแแ แแแ: แ แ แแ แแก OpenVZ แแ แ แ แแ แแก KVM?
แฉแแแ แแ แฉแแแฃแฆแ แแแแแแแแ แขแแ แแแแแแแแแแก, แแแแ แแ แแแแแแแ แแแขแงแแแ:
OpenVZ โ แแแ แขแฃแแแแแแชแแ แแแแ แแชแแฃแแ แกแแกแขแแแแก แแแแแแ, แจแแแแซแแแแ แแก แแแแ แแขแแแฆแฃแ แฆแฃแแแแแแช แแ แแแแแแแแกแแ, แ แแแแแ แแแกแแแแซแแ แแแแฅแแแแแ แแ แแ แแก แกแแญแแ แ CPU แแแกแขแ แฃแฅแชแแแแ แแ แแแ แขแฃแแแแแแชแแแก แขแแฅแแแแแแแแแ.
KVM - แกแ แฃแแคแแกแแแแแ แแแ แขแฃแแแแแแชแแ, CPU-แก แแแแแ แกแแแซแแแแ แแก แแแแแงแแแแแแ แแ แจแแฃแซแแแ แ แแแแแก แแแ แขแฃแแแแแแชแแ, แแแแแกแแแแ แ แแแแ, แญแ แแก แกแแแ แซแแแ แแ แฏแแแ แแแแแแ.
แแแแฃแแแ แฃแแ แ แฌแแแแแก แกแแฌแแแแแฆแแแแแแ, แ แแ แฐแแกแขแแแแแก แแ แแแแแแแ แแแก แจแแ แแก OpenVZ แแแฎแแแแ แแแแแญแแ แแแแฃแแ แแแงแแแแ, แแแแ แแ KVM แแ แ - แแ แฃแแแแแกแแแแแแกแแแแก แกแแแแแแแแ แแ, KVM แแฎแแ แแแแแญแแ แแแแฃแแแ, แแแแ แ แแแกแ แซแแ.
แ แแก แแแแแแแขแแแ?
แ แแแแ แช แกแแชแแแ แกแฃแแแแฅแขแแแก แแแแแชแแแแกแแแแก, แฉแแแ แฃแแแ แแแแแแแแงแแแแแแแ แแแแ แแชแแฃแแ แกแแกแขแแแแแแก แแแแแ แขแงแ, แ แแแแแแแช แฎแแแแแกแแฌแแแแแแ OpenVZ-แแ: CentOS (6 แแ 7 แแแ แกแแแแ), Ubuntu (14, 16 แแ 18 LTS), Debian 7.
แแแ แแฃแแแแแแแ, แ แแ OpenVZ แแแแขแแแแแ แแแแก แฃแแแขแแกแแแ แฃแแแ แแฃแจแแแแแ แ แแแแ แกแแฎแแก LAMP-แแ, แแแแแแ แแก แแ แฐแฅแแแแ แซแแแแแ แกแแแชแแคแแแฃแ แ แแ แแแ แแแฃแแ แฃแแ แฃแแแแแงแแคแ. แงแแแแแแ แฎแจแแ แแ, แแก แแงแ แแแแคแแแฃแ แแชแแแแ ISPmanager-แแแ, VestaCP แแแแแแแแ (แแ แงแแแแแแ แฎแจแแ แแ, แฌแแแแแก แแแแแแแแแแแจแ แแ แแแแแฎแแแแฃแแ). แแแกแแแแแแแกแฌแแแแแแแแ แแแแ แแแแแ แแชแฎแแแก แแแแฎแแแแแแแช.
แแแแ แแชแแ แฎแแ แชแแแแแแแ แแแแแชแแแฃแแ แแแแขแแแแแ แแก IP แแแกแแแแ แแแก แจแแแแ แฉแฃแแแแแกแแก; แฉแแแ แแแแแ แแฃแแแแ, แ แแ IP, แ แแแแแแช แแแแขแแแแแ แก แฐแฅแแแแ, แจแแแแฎแฃแแแ VM-แแ แแ แแแฃแจแแแแแก แฃแแ แแแแแแแ.
แแแแแชแแแแแแ แแแแ แฌแแฃแแแแ, แ แแ แงแแแแแคแแ แ แฎแแแ แแแแฅแแก:
- OpenVZ แกแแ แแแ แ, แกแ แฃแแ root แฌแแแแแ แแแกแแแแซแแ แแแแฅแแแแแ, แแแแขแแแแแ แแแแก แจแแฉแแ แแแแก/แแแแแแขแแแแแแก/แแแฌแงแแแแก/แฌแแจแแแก แจแแกแแซแแแแแแแ
- KVM แกแแ แแแ แ, แกแ แฃแแ root แฌแแแแแ แแแกแแแแซแแ แแแแฅแแแแแ, แงแแแแแคแแ แแแ แแ แแแ, แ แแช แแฃแแแกแฎแแแแก. แแแ แแฃแแแแแ, แ แแ แงแแแแแคแแ แ แฃแแแ แแแแคแแแฃแ แแ แแแฃแแแ แแ แแแแ แแ แแก แฌแแกแแกแแแแแแ.
แแแแแฌแงแแ แแแแแขแแแ
แกแแแแ แแแแแขแแแแก แแแแแฌแงแแแ, แแแแแ แแแแแกแแแฆแแ แแ แขแแ แแแแแแ, แ แแแแแแแช แแแแแฎแแแ แแแแ แแแแแแแ แแแชแแแแ แแแแแแฃแแแแ:
KVM_NODE - KVM แแแกแแแแซแแแ แแแแฅแแแ
VZ_NODE - OpenVZ แแแกแแแแซแแแ แแแแฅแแแ
CTID - OpenVZ แแแแขแแแแแ แ
VM - KVM แแแ แขแฃแแแฃแ แ แกแแ แแแ แ
แแแแ แแชแแแกแแแแก แแแแแแแแแ แแ แแแ แขแฃแแแฃแ แ แแแแฅแแแแแแก แจแแฅแแแ.
แแแแแฏแ 1
แแแแแแแแ แแแแขแแแแแ แแก แกแแแแ แแแแแขแแแ แแแญแแ แแแแ, แฉแแแ แจแแแฅแแแแ VM แแกแแแแกแ แแแแคแแแฃแ แแชแแแ KVM_NODE.
แแแแจแแแแแแแแแแ! แแฅแแแ แฃแแแ แจแแฅแแแแ VM แแแแ แแชแแฃแ แกแแกแขแแแแแ, แ แแแแแแช แแแแแแแ แแฃแจแแแแก CTID-แแ. แแแแแแแแแ, แแฃ Ubuntu 14 แแแแแกแขแแแแ แแแฃแแแ CTID-แแ, แแแจแแ Ubuntu 14 แฃแแแ แแงแแก แแแแแกแขแแแแ แแแฃแแ VM-แแ. แแชแแ แ แแแ แกแแแแ แแ แแ แแก แแแแจแแแแแแแแแ แแ แแแแ แจแแฃแกแแแแแแแ แแ แช แแกแ แแ แแขแแแฃแแแ, แแแแ แแ แซแแ แแแแแ แแแ แกแแแแ แฃแแแ แแงแแก แแแแแ.
VM-แแก แจแแฅแแแแก แจแแแแแ, แฉแแแ แแแแแแแฎแแแแ แแแแแขแแแก CTID-แแ แแ VM-แแ (แแ แฃแแแ แแแแแ แแแก แแแแ แแชแแฃแแ แกแแกแขแแแแก แแแแแฎแแแแแจแ - แฉแแแ แแ แแแแฎแแแแ แแแก, แแแแฎแแแแ แแฎแแแแ แแแแแขแแแก แแ, แแฃ แแก แฉแแแแแ, OS แแแ แกแแแก แซแแ แแแแแจแ. แแแ แกแแ).
CentOS-แแกแแแแก แแก แแ แแชแแกแ แฃแแแแแแแ แแแแแแงแฃแ แแแ:
# yum clean all
# yum update -y
แแ แแ แแแแแแแ แฃแแแแแแแแ Ubuntu-แกแ แแ Debian-แแกแแแแก:
# apt-get update
# apt-get upgrade
แแแแแฏแ 2
แแแแแแกแขแแแแ แแ CTID, VZ_NODE ะธ VM แกแแกแแ แแแแแ rsync:
CentOS:
# yum install rsync -y
แแแแแแแ, แฃแแฃแแขแฃ:
# apt-get install rsync -y
แกแฎแแแก แแ แช แแฅ แแ แแ แช แแฅ แแ แแแแแกแขแแแแ แแแ.
แแแแแฏแ 3
แฉแแแ แแฉแแ แแแแแ CTID on VZ_NODE แแฃแแแ
vzctl stop CTID
แกแฃแ แแแแก แแแแแแขแแแแแ CTID:
vzctl mount CTID
แแแแแแแ /vz/root/ แกแแฅแแฆแแแแแจแCTID แแ แจแแแกแ แฃแแแก
mount --bind /dev dev && mount --bind /sys sys && mount --bind /proc proc && chroot .
root-แแก แฅแแแจ แจแแฅแแแแแ แคแแแแ /root/exclude.txt - แแก แจแแแชแแแก แแแแแแแแแแกแแแแก แกแแแก, แ แแแแแแแช แแ แแแฎแแแแแ แแฎแแ แกแแ แแแ แแ.
/boot
/proc
/sys
/tmp
/dev
/var/lock
/etc/fstab
/etc/mtab
/etc/resolv.conf
/etc/conf.d/net
/etc/network/interfaces
/etc/networks
/etc/sysconfig/network*
/etc/sysconfig/hwconf
/etc/sysconfig/ip6tables-config
/etc/sysconfig/kernel
/etc/hostname
/etc/HOSTNAME
/etc/hosts
/etc/modprobe*
/etc/modules
/net
/lib/modules
/etc/rc.conf
/usr/share/nova-agent*
/usr/sbin/nova-agent*
/etc/init.d/nova-agent*
/etc/ips
/etc/ipaddrpool
/etc/ips.dnsmaster
/etc/resolv.conf
/etc/sysconfig/network-scripts/ifcfg-eth0
/etc/sysconfig/network-scripts/ifcfg-ens3
แฉแแแ แแฃแแแแจแแ แแแแแ KVM_NODE แแ แแแฃแจแแแ แฉแแแแ VMแแกแ, แ แแ แแก แแฃแจแแแแก แแ แฎแแแแแกแแฌแแแแแ แแงแแก แฅแกแแแจแ.
แแฎแแ แงแแแแแคแแ แ แแแแแแ แขแ แแแกแคแแ แแกแแแแก. แฌแแแ!
แแแแแฏแ 4
แฏแแ แแแแแ แจแแแแชแแแก แฅแแแจ แแแกแ แฃแแแแ
rsync --exclude-from="/root/exclude.txt" --numeric-ids -avpogtStlHz --progress -e "ssh -T -o Compression=no -x" / root@KVM_NODE:/
rsync แแ แซแแแแแ แจแแแกแ แฃแแแแก แแแแแชแแแแก, แแแแแแแแแแแ, แ แแ แแแกแแฆแแแแแ แแแแแแแ - แแแแแชแแแ แฎแแ แชแแแแแแแ แกแแแแแแฃแ แ แแแฃแแแแแก, แฌแแแแแแก แฃแคแแแแแแแก, แแคแแแแแแแแแกแ แแ แฏแแฃแคแแแแก แจแแแแ แฉแฃแแแแแ แแ แแแจแแคแแ แ แแแแแ แแฃแแแ แฃแคแ แ แแแแ แกแแฉแฅแแ แแกแแแแก (แจแแแแซแแแแ แแแแแแงแแแแ แฃแคแ แ แกแฌแ แแคแ แจแแคแ แ, แแแแ แแ แแก แแ แช แแกแ แแแแจแแแแแแแแแแ แแ แแแแชแแแแกแแแแก), แแกแแแ แจแแแฃแแจแแ แแแแแ แแฃแแแ.
rsync-แแก แแแกแ แฃแแแแแก แจแแแแแ แแแแแแแ chroot-แแแ (ctrl+d แแแญแแ แแ) แแ แจแแแกแ แฃแแแ
umount dev && umount proc && umount sys && cd .. && vzctl umount CTID
แแแแแฏแ 5
แแแแแ แจแแแแกแ แฃแแแ แ แแแแแแแแ แแแแแฏแ, แ แแแแแแช แแแแแแฎแแแ แแแ แแแ แขแฃแแแฃแ แ แขแแฅแแแแแก แแแจแแแแแจแ OpenVZ-แแแ แแแแแขแแแแก แจแแแแแ.
แกแแ แแแ แแแแ Systemd แแแแแ แจแแแแกแ แฃแแแ แแ แซแแแแแ, แ แแแแแแช แแแแแแฎแแแ แแแ แจแแฎแแแแแ แฉแแแฃแแแแ แแ แแแแกแแแจแ, แแแแแแแแแ, VNC แกแแ แแแ แแก แแแ แแแแก แแแจแแแแแแ
mv /etc/systemd/system/getty.target.wants/[email protected] /etc/systemd/system/getty.target.wants/[email protected]
แกแแ แแแ แแแแ CentOS 6 ะธ CentOS 7 แแแ แฌแแฃแแแแ, แ แแ แแแแแแกแขแแแแ แแ แแฎแแแ แแแ แแแ:
yum install kernel-$(uname -r)
แกแแ แแแ แแก แฉแแขแแแ แแแ แจแแกแแซแแแแแแแ แแแกแแแ, แแแแ แแ แแแแแชแแแแก แจแแแแแ แจแแแซแแแแ แจแแฌแงแแแก แแฃแจแแแแ แแ แฌแแแจแแแแก.
แกแแ แแแ แแ CentOS 7 แแฅแแแ แฃแแแ แแแแแ แแแ แแชแแ แ แจแแกแฌแแ แแแแก PolkitD-แกแแแแก, แฌแแแแแฆแแแแ แจแแแแฎแแแแแจแ แกแแ แแแ แ แกแแแฃแแแแแ แแแแจแแแแ:
getent group polkitd >/dev/null && echo -e "e[1;32mpolkitd group already existse[0m" || { groupadd -r polkitd && echo -e "e[1;33mAdded missing polkitd groupe[0m" || echo -e "e[1;31mAdding polkitd group FAILEDe[0m"; }
getent passwd polkitd >/dev/null
&& echo -e "e[1;32mpolkitd user already existse[0m" || { useradd -r -g polkitd -d / -s /sbin/nologin -c "User for polkitd" polkitd && echo -e "e[1;33mAdded missing polkitd usere[0m" || echo -e "e[1;31mAdding polkitd user FAILEDe[0m"; }
rpm -Va polkit* && echo -e "e[1;32mpolkit* rpm verification passede[0m" || { echo -e "e[1;33mResetting polkit* rpm user/group ownership & permse[0m"; rpm --setugids polkit polkit-pkla-compat; rpm --setperms polkit polkit-pkla-compat; }
แงแแแแ แกแแ แแแ แแ, แแฃ แแแแแกแขแแแแ แแแฃแแแ mod_fcgid Apache-แกแแแแก, แฉแแแ แจแแแแกแ แฃแแแแ แแชแแ แ แจแแกแฌแแ แแแแก แฃแคแแแแแแแ, แฌแแแแแฆแแแแ แจแแแแฎแแแแแจแ แกแแแขแแแ, แ แแแแแแแช แแงแแแแแแ mod_fcgid-แก, แแแแจแแแแ แจแแชแแแแแ 500:
chmod +s `which suexec` && apachectl restart
แแ แแแแ แกแแกแแ แแแแแแ Ubuntu แแ Debian แแแกแขแ แแแฃแชแแแแแกแแแแก. แแก แแแแ แแชแแฃแแ แกแแกแขแแแ แจแแแซแแแแ แจแแชแแแแแ แแแฎแแแแก แแแ แแแแฃแ แฉแแขแแแ แแแแจแ
แแแ แงแฃแแ แซแแแแแ แกแฌแ แแคแแ. แแแแแ แแแแแฎแแแฏแแแฃแแ แจแแกแ แฃแแแแ
แฃแกแแแแแแแ, แแแแ แแ แแแแแแแ แแแแแกแฌแแ แแแฃแแ, แแแแแแแแแแฃแแแ OS แแแ แกแแแแ.
แฌแแแก Debian 9 แแแแแกแฌแแ แแแ แแกแ แแแแแแงแฃแ แแแ:
แฉแแแ แแแฎแแ แชแแแแแแ
dbus-uuidgen
แแฃ แจแแชแแแแแก แแแแแฆแแแ
/usr/local/lib/libdbus-1.so.3: แแแ แกแแ `LIBDBUS_PRIVATE_1.10.8โฒ แแแ แแแแซแแแแ
แจแแแแแฌแแแ LIBDBUS-แแก แแ แกแแแแแ
ls -la /lib/x86_64-linux-gnu | grep dbus
libdbus-1.so.3 -> libdbus-1.so.3.14.15
libdbus-1.so.3.14.15 <-- ะฝัะถะตะฝ ััะพั
libdbus-1.so.3.14.16
แแฃ แงแแแแแคแแ แ แ แแแแแ, แฉแแแ แแแแก แแแแแแแแ
cd /lib/x86_64-linux-gnu
rm -rf libdbus-1.so.3
ln -s libdbus-1.so.3.14.15 libdbus-1.so.3
แแฃ แแก แแ แแแแฎแแแ แแแ, แกแชแแแแ แแแแ แ แแแ แแแแขแ.
แแ แแแแแแแก แแแแ แ แแแแแฌแงแแแขแ แแแแแ แแแแแฎแแแฏแแแฃแแ แจแแกแ แฃแแแแ แแแ แแแกแแ แแแแฅแแแก แงแแแแ Ubuntu แแ Debian แแแกแขแ แแแฃแชแแแกแแแแก.
แฉแแแ แแแกแ แฃแแแแ
bash -x /var/lib/dpkg/info/dbus.postinst configure
แแ แแแแกแแแแก Ubuntu 14, Debian 7 แแแแแขแแแแ แแแกแ แฃแแแแ:
adduser --system --home /nonexistent --no-create-home --disabled-password --group messagebus
rm -rf /etc/init.d/modules_dep.sh
แ แ แแแแแแแแแ? แฉแแแ แแฆแแแแแแแแ messagebus, แ แแแแแแช แแแแแ Debian/Ubuntu-แก แแแกแแจแแแแแ แแ แฌแแแจแแแแ modules_dep, แ แแแแแแช แแแแแแ OpenVZ-แแแ แแ แฎแแแก แฃแจแแแแ แแ แแแแแ แแแ แแแแก แแแแฃแแแก แฉแแขแแแ แแแแก.
แแแแแฏแ 6
แฉแแแ แแแแแขแแแ แแแแ VM-แก, แแแแแฌแแแแ VNC-แจแ แ แแแแ แแแแแแแแ แแแแก แแแขแแแ แแแ แแ, แแแแแแฃแ แจแแแแฎแแแแแจแ, แงแแแแแคแแ แ แฉแแแขแแแ แแแแ แฃแแ แแแแแแแ. แแแฃแฎแแแแแแ แแแแกแ, แ แแ แจแแกแแซแแแแแแแ แแแแ แแชแแแก แจแแแแแ แแแฉแแแแก แแแ แแแแฃแแ แแแแแ แแขแฃแแ แแ แแแแแแแแ, แแกแแแ แกแชแแแแแแ แแ แกแขแแขแแแก แคแแ แแแแแก แแ แแแแแกแฌแแ แแแแ แแแแ แฌแแ แแแจแแแแกแแแแแแ.
แแแแแ แแแฅแแก, แ แแ แแก แแแคแแ แแแชแแ แกแแกแแ แแแแแแ! ๐
แฌแงแแ แ: www.habr.com