URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 60795
[ Назад ]

Исходное сообщение
"Раздел полезных советов: Удалённая установка FreeBSD на серв..."

Отправлено auto_tips , 11-Ноя-09 09:55 
Для удаленной установки FreeBSD из Linux уже есть готовый инструмент который называется Depenguinator. Причины по которым это делается обсуждать не буду, в общем имеем сервер с установленным GNU Linux.

Cкачать Depenguinator можно здесь: http://www.daemonology.net/blog/2008-01-29-depenguinator-2.0...

У меня всё это собиралось на Gentoo, поэтому для сборки пришлось поставить app-arch/libarchive
Возможно кому-то прийдётся поставить что-то ещё.

Скачиваем и распаковываем сам depenguinator:

   # wget -c <a href="http://www.daemonology.net/depenguinator/depenguin-2.0.tar.g...
   # tar -xzpvf depenguin-2.0.tar.gz

Выполняем всё под root'ом, потому как под пользователем не соберётся
Переходим в depenguin-2.0, распаковываем makefs-20080113.tar.gz и выполняем:

   # sed -i'' -e'140i\#define ARG_MAX 2048' makefs-2008011/netbsdsrc/lib/libc/gen/glob.c

Потому как версия glibc у нас новее чем у автора из-за чего нормально оно не
собирается, после чего запаковываем всё назад в архив с таким же названием.

Правим depenguinator.conf и готовим authorized_keys для чего выполняем

   # ssh-keygen -t rsa && cp ~/.ssh/id_rsa.pub authorized_keys

Правим loader.conf, добавляем поддержку ext2fs, grub я решил оставить, он и под
freebsd работает, а так как grub.conf у нас находится на разедле с ext2 было бы
неплохо иметь возможность его исправить загрузившись во freebsd.

   # echo 'ext2fs_load="YES"' >> loader.conf

Собираем загрузочный образ depenguinator'а

   # ./makeimage.sh ~/7.2-RELEASE-i386-disc1.iso 7.2-RELEASE authorized_keys

После сборки должен получится disk.img который нужно будет загрузить а сервер.

Для загрузки Depenguinator'а будем использовать swap, для чего меняем его тип fdisk'ом на a5.

Накатываем образ

   # dd if=disk.img of=/dev/sda2

Правим grub.conf, для загрузки Depenguinator'а

   title   Depenguinator
        root    (hd0,1)
        makeactive
        chainloader +1

После чего меняем умолчательную загрузку на Depenguinator и затаив дыхание перегружаемся :)

Если всё прошло нормально то после перезагрузки мы должны получить ssh с
доступом по ключу, который мы создавали.

Готовим диск и монтируем нашу будущую систему в /mnt. Если у нас на сервере всего один жёсткий
диск - оставляем Linux'овый /boot и swap который мы используем под Depenguinator, осталные разделы
удаляем и вместо них создаём slice для FreeBSD. Если же дисков несколько, например имеем software'ный
raid можно извлечь из него один винчестер и полностью использовать для FreeBSD. В результате получим
возможность загрузки GNU Linux, Depenguinator и FreeBSD.

Так как сервер у меня новый то ставить на него решил 7.2-RELEASE-amd64, для
чего копируем по ssh с первого диска base и kernels:

   # scp -r base kernels 1.1.1.1:/mnt/usr

Устанавливаем базовую систему:

   # cd /mnt/usr/base && cat base.?? | tar --unlink -xpzf - -C /mnt
   # cd /mnt/usr/kernels && cat generic.?? | tar --unlink -xpzf - -C /mnt/boot
   # cd /mnt/boot; rmdir /mnt/boot/kernel; mv /mnt/boot/GENERIC /mnt/boot/kernel

Редактируем /mnt/boot/loader.conf, добавляем

   ext2fs_load="YES"

Редактируем /mnt/etc/fstab под свои разделы.
Редактируем /mnt/etc/rc.conf, добавляем имя хоста, настройки сети и т.д.
Редактируем /mnt/etc/ssh/sshd_config ставим

   PermitRootLogin yes

Копируем ключ для доступа по ssh

   # mkdir /mnt/root/.ssh && cp /root/.ssh/authorized_keys /mnt/root/.ssh

Монтируем boot'овый раздел linux'а и снова правим grub.conf, теперь добавляем
загрузку уже новой системы:

   title FreeBSD
     root (hd0,2,a)
     kernel /boot/loader

Снова меняем умолчательную загрузку но уже на FreeBSD и снова затаив дыхание перегружаемся :)
После перезагрузки мы должны получить доступ по ssh с авторизацией по ключу.

Советую для начала всё это проделать на виртуалке, ну или на компьютере стоящем рядом :)
Если что-то не получилось, дополнительную информацию можно найти здесь:

   http://daemonicdispatches.disqus.com/the_depenguinator_versi.../
   http://stderr.de/blog/bryar.cgi/id_2625
   http://gist.github.com/45741

URL:
Обсуждается: http://www.opennet.me/tips/info/2223.shtml


Содержание

Сообщения в этом обсуждении
"Удалённая установка FreeBSD на сервер с установленным Linux"
Отправлено Salvator , 11-Ноя-09 09:55 
Вещь может и полезная, но я один сервер им убил уже. Лучше настоять, чтоб в датацентре поставили freebsd изначально.

"Удалённая установка FreeBSD на сервер с установленным Linux"
Отправлено Touch , 11-Ноя-09 11:38 
.. если вы изначально хотите чтобы там стояла FreeBSD то конечно :)

"Удалённая установка FreeBSD на сервер с установленным Linux"
Отправлено Nas_tradamus , 11-Ноя-09 12:50 
Я для этих целей IP-KVM использовал и диск, который мне прожгли в дата-центре (образ для установки из Интернет).
За диск взяли 1300 рублей. А IP-KVM данный хостер предоставлял бесплатно.

"Удалённая установка FreeBSD на сервер с установленным Linux"
Отправлено Touch , 11-Ноя-09 14:24 
>За диск взяли 1300 рублей. А IP-KVM данный хостер предоставлял бесплатно.

.. а 3 сервера .. а 10 .. боюсь разоритесь, не у всех бесплатный КВМ .. а у некоторых нет в принципе



"Удалённая установка FreeBSD на сервер с установленным Linux"
Отправлено Nas_tradamus , 12-Ноя-09 20:32 
Так ведь перетаскивание диска между приводами - бесплатная услуга. По крайней мере, в 5 дата-центрах с которыми мне приходилось иметь дело.
А вот KVM - да, далеко не у всех бесплатен. Только вот ДЦ без KVM вряд ли существуют :)

"Удалённая установка FreeBSD на сервер с установленным Linux"
Отправлено аноним , 17-Ноя-09 05:51 
если имеете 2-а и более серверов, и когда все покупалось - думали головой, то ставите dhcp, настраиваете загрузку по сети и забываете о сидюках. я сидюками уже года как 3-и не пользовался, а новые машины по умолчанию без них покупаем.

"Удалённая установка FreeBSD на сервер с установленным Linux"
Отправлено Nas_tradamus , 17-Ноя-09 12:04 
>если имеете 2-а и более серверов, и когда все покупалось - думали
>головой, то ставите dhcp, настраиваете загрузку по сети и забываете о
>сидюках. я сидюками уже года как 3-и не пользовался, а новые
>машины по умолчанию без них покупаем.

В общем-то, так и надо делать при нескольких серваках в пределах одного ДЦ.


"Удалённая установка FreeBSD на сервер с установленным Linux"
Отправлено BirdGovorun , 11-Ноя-09 13:11 
Увидел фразу, прикололся!
> затаив дыхание перегружаемся :)

А теперь признавайся, кому молился?
http://abpaximov.livejournal.com/1555646.html
И молитву читал?

Всемогущий и вечный Боже
Кто создал нас по Своему подобию
И повелел нам искать всего, что есть благого, истинного и прекрасного
Наипаче в божественном образе
Твоего Единородного Сына, Господа нашего, Иисуса Христа
Позволь нам молить тебя
Через заступничество Святого Исидора, епископа и доктора,
Чтобы в наших странствиях по интернету
Мы устремляли бы наши руки и глаза
Лишь к тому, что угодно Тебе
И проявляли бы доброжелательность и терпение
Ко всем душам, кого ни встретим
Во имя Господа нашего Иисуса Христа, аминь.

Бубен большой?


"Удалённая установка FreeBSD на сервер с установленным Linux"
Отправлено Touch , 11-Ноя-09 14:21 
в мемориз ))))))) ... бубен стандартный .. на 1024 )))))))

"Удалённая установка FreeBSD на сервер с установленным Linux"
Отправлено Валидатор , 11-Ноя-09 14:03 
Депингвинатор, девиндузятор, дебздятор... кто как продолжит?

"Удалённая установка FreeBSD на сервер с установленным Linux"
Отправлено Touch , 11-Ноя-09 14:22 
>Депингвинатор, девиндузятор, дебздятор... кто как продолжит?

девалидатор ?... ))))))


"Удалённая установка FreeBSD на сервер с установленным Linux"
Отправлено const86 , 11-Ноя-09 21:14 
> Депингвинатор, девиндузятор, дебздятор... кто как продолжит?

Первый ставит бсд, второй - линукс, третий - винду. Меняем второй и третий местами и занятие на всю жизнь найдено :)