Pull to refresh

Установка Gentoo на VDS с виртуализацией Virtuozzo

Reading time2 min
Views2.5K


Немногим более года назад я начал арендовать VDS у одной компании, которая для виртуализации использует Parallels Virtuozzo Containers с весьма ограниченным набором операционных систем (Debian, Fedora, Ubuntu, Suse, CentOS). Из всего списка к душе не лежит особо ничего, но всё же выбрал Debian, который и приходилось терпеть до недавнего момента. Сей момент является нахождением методики установки Gentoo на VDS с данным типом виртуализации.

Итак, приступим


Первым, что не помешало бы сделать, это сделать Back-Up уже имеющихся данных, если они представляют какую-либо ценность. Делается это в панели VZPP по адресу адрес_вашего_сервера:4643/. Далее в той же панели переводим VDS в режим восстановления и по успешному переводу заходим через SSH на ваш VDS. Старая файловая система в режиме восстановления лежит в /repair. Первым делом копируем оттуда файл mtab:
cp /repair/etc/mtab /root/mtab.old

Если в старой ФС присутствуют какие-то данные, которые должны быть перенесены в новую систему с Gentoo делаем:
cd /repair
mkdir old
for i in *; do if test old != $i; then mv $i old/; fi; done

Если же важных данных нет, то просто всё стираем:
cd /repair
rm -rf *

Если вдруг /repair доступен только для чтения (у меня было ОК, но в источнике упоминается что бывает и такое), то перед переносом/стиранием делаем:
mount -o remount,rw /repair

Теперь всё готово для скачивания Gentoo:
wget http://mirror.yandex.ru/gentoo-distfiles/releases/x86/current-stage3/stage3-i686-20101019.tar.bz2
wget http://mirror.yandex.ru/gentoo-distfiles/snapshots/portage-latest.tar.bz2
tar xvjpf stage3-*.tar.bz2
tar xvjf portage-*.tar.bz2 -C /repair/usr
rm stage3-*.tar.bz2 portage-*.tar.bz2

Копируем настройки DNS и возвращаем mtab на место:
cp /etc/resolv.conf /repair/etc/
cp /root/mtab.old /repair/etc/mtab

Всё готово для chroot в Gentoo:
mount -t proc proc /repair/proc/
mount -o bind /dev /repair/dev
chroot /repair

Сразу же меняем пароль root:
passwd

Новый пароль будет действителен не только для VDS, но и для панели управления. Я так же скопировал свой ключ для SSH из старой ФС. Для загрузки будет использоваться baselayout+openrc, который необходимо размаскировать и установить (baselayout сам потянет за собой openrc):
echo "sys-apps/baselayout ~x86" >> /etc/portage/package.keywords
echo "sys-apps/openrc ~x86" >> /etc/portage/package.keywords
emerge baselayout

Теперь настроим сеть:
emerge iproute2
cd /etc/init.d
rm net.eth0
ln -s net.lo net.venet0
rc-update add net.venet0 default

Также добавим конфигурацию сети в /etc/conf.d/net:
config_venet0=("87.118.x.z/24" "87.118.y.z/24")
routes_venet0=("191.255.255.0/24 scope link" "default via 191.255.255.1")

И добавим sshd в автозапуск:
rc-update add sshd default

По моим личным наблюдениям для нормального запуска VDS так же необходимо наличие файла /etc/network/interfaces (У меня ранее был Debian, возможно для других дистрибутивов имя файла будет отличаться). В него Virtuozzo видимо пытается записать текущую конфигурацию сети, и при невозможности это выполнить запуск VDS оканчивается ошибкой. Так что:
mkdir /etc/network
touch /etc/network/interfaces

Теперь можно наконец-то попробовать перезагрузиться…

Источник: http://log.onthebrink.de/2008/04/gentoo-on-1-vserver.html
Tags:
Hubs:
+16
Comments37

Articles

Change theme settings