The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Удалённая установка FreeBSD на сервер с установленным Linux
Для удаленной установки FreeBSD из Linux уже есть готовый инструмент который
называется Depenguinator. Причины по которым это делается обсуждать не буду,
вообщем имеем сервер с установленным GNU Linux.

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

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

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

   # wget -c http://www.daemonology.net/depenguinator/depenguin-2.0.tar.gz
   # 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_version_20/ 
   http://stderr.de/blog/bryar.cgi/id_2625 
   http://gist.github.com/45741
 
11.11.2009 , Автор: Touch
Ключи: freebsd, install, linux / Лицензия: CC-BY
Раздел:    Корень / Администратору / Система / FreeBSD специфика / Установка и апгрейд FreeBSD и приложений.

Обсуждение [ Линейный режим | Показать все | RSS ]
  • 1.1, Salvator (?), 09:55, 11/11/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Вещь может и полезная, но я один сервер им убил уже. Лучше настоять, чтоб в датацентре поставили freebsd изначально.
     
  • 1.2, Touch (ok), 11:38, 11/11/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    .. если вы изначально хотите чтобы там стояла FreeBSD то конечно :)
     
  • 1.3, Nas_tradamus (ok), 12:50, 11/11/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Я для этих целей IP-KVM использовал и диск, который мне прожгли в дата-центре (образ для установки из Интернет).
    За диск взяли 1300 рублей. А IP-KVM данный хостер предоставлял бесплатно.
     
     
  • 2.8, Touch (??), 14:24, 11/11/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >За диск взяли 1300 рублей. А IP-KVM данный хостер предоставлял бесплатно.

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


     
     
  • 3.10, Nas_tradamus (ok), 20:32, 12/11/2009 [^] [^^] [^^^] [ответить]  
  • +/
    Так ведь перетаскивание диска между приводами - бесплатная услуга. По крайней мере, в 5 дата-центрах с которыми мне приходилось иметь дело.
    А вот KVM - да, далеко не у всех бесплатен. Только вот ДЦ без KVM вряд ли существуют :)
     
     
  • 4.11, аноним (?), 05:51, 17/11/2009 [^] [^^] [^^^] [ответить]  
  • +/
    если имеете 2-а и более серверов, и когда все покупалось - думали головой, то ставите dhcp, настраиваете загрузку по сети и забываете о сидюках. я сидюками уже года как 3-и не пользовался, а новые машины по умолчанию без них покупаем.
     
     
  • 5.12, Nas_tradamus (ok), 12:04, 17/11/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >если имеете 2-а и более серверов, и когда все покупалось - думали
    >головой, то ставите dhcp, настраиваете загрузку по сети и забываете о
    >сидюках. я сидюками уже года как 3-и не пользовался, а новые
    >машины по умолчанию без них покупаем.

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

     

  • 1.4, BirdGovorun (??), 13:11, 11/11/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Увидел фразу, прикололся!
    > затаив дыхание перегружаемся :)

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

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

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

     
     
  • 2.6, Touch (??), 14:21, 11/11/2009 [^] [^^] [^^^] [ответить]  
  • +/
    в мемориз ))))))) ... бубен стандартный .. на 1024 )))))))
     

  • 1.5, Валидатор (?), 14:03, 11/11/2009 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Депингвинатор, девиндузятор, дебздятор... кто как продолжит?
     
     
  • 2.7, Touch (??), 14:22, 11/11/2009 [^] [^^] [^^^] [ответить]  
  • +/
    >Депингвинатор, девиндузятор, дебздятор... кто как продолжит?

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

     
  • 2.9, const86 (ok), 21:14, 11/11/2009 [^] [^^] [^^^] [ответить]  
  • +/
    > Депингвинатор, девиндузятор, дебздятор... кто как продолжит?

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

     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:




    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру