|
||
Ответить |
|
#1
|
|
Вес репутации:
0
Регистрация: 27.02.2009
Адрес: Москва
Сообщений: 7,302
Сказал(а) спасибо: 578
Спасибок 2,623
в 1,832 сообщениях |
Установка FreeBSD на сервер в Hetzner.de -
20.04.2010, 22:37
Шаг 1: Подготовка Начнем с того, что официально заявляет нам Hetzner — FreeBSD успешно протестирована на следующих серверах: EQ4, EQ6, EQ9, при условии, что они работают на следующих чипсетах:
# dmidecode | grep-A 3 "DMI type 1," Handle 0x0001, DMI type 1, 25 bytes System Information Manufacturer: MSI Product Name: MS-7032 # Первым делом, нужно перевести сервер в Rescue-режим. Для этого нужно залогиться в панель управления (https://robot.your-server.de/server), выбрать Main functions -> Servers, нажать на нужный сервер в списке, и на вкладке Rescue выбрать ОС (в нашем случае FreeBSD) и сделать нелегкий выбор между 32 и 64 bit. При нажатии на «Activate Rescue system» система выдаст пароль — его нужно сохранить. Теперь нужно перезагрузить сервер (в панели: Reset -> Execute a automatic hardware-reset), чтобы он вошел в Rescue mode при загрузке. Итак, сервер ребутнулся. Заходим с юзером root и сохраненным из админки паролем. Видим приглашение: FreeBSD 8.0-STABLE (GENERIC) #1: Tue Mar 9 12:36:22 UTC 2010 Welcome to mfsBSD, the memory based FreeBSD distribution. Шаг 3: Hard Смотрим, какие диски у нас есть: rescue# ls /dev/ad* /dev/ad4 /dev/ad4s1 /dev/ad4s1a /dev/ad4s1b /dev/ad6 /dev/ad6s1 /dev/ad6s2 /dev/ad6s3 rescue# Сначала вытираем нулевой сектор и пишем информацию о том, что слайс FreeBSD займет весь диск: rescue# fdisk -BI /dev/ad4 ******* Working on device /dev/ad4 ******* fdisk: Class not found rescue# rescue# bsdlabel -wB /dev/ad4s1 Теперь нам предстоит отредактировать файл, в котором описывается разметка диска. Файл откроется в дефолтном редакторе — vi. Если вы с ним не очень дружите — можно переключиться, например, на редактор ee: setenv EDITOR /usr/bin/ee rescue# bsdlabel -e /dev/ad4s1 PHP код:
/ — 10G swap — 4196M /tmp — 10G /var — 500G /usr — все остальное Соответственно, конфигурация получилась такая: PHP код:
Сохраняем файл и возвращаемся обратно в консоль. Теперь, согласно этим настройкам надо создать файловые системы на диске: newfs /dev/ad4s1a newfs /dev/ad4s1b newfs /dev/ad4s1d newfs /dev/ad4s1e newfs /dev/ad4s1f Побегут страшные циферки, и в итоге мы получим диск с файловой системой ufs2. Казалось бы — «ура, даешь sysinstall»? Ан нет, у нас ведь уже есть раздел /, но он принадлежит mfsBSD. А нам нужно, чтобы установка шла на свежеразбитый диск, а не в память. Выход был найден простой — смонтировать диск. Так как мы уже создали нужные разделы, то будем их монтировать, скажем, в /mnt. Для этого надо создать там папки для них: mkdir /mnt/tmp mkdir /mnt/var mkdir /mnt/usr mount /dev/ad4s1a /mnt mount /dev/ad4s1d /mnt/tmp mount /dev/ad4s1e /mnt/var mount /dev/ad4s1f /mnt/usr Шаг 4: Sysinstall ? В sysinstall мы выбираем Custom установку. В ней первым делом идем в Options и меняем путь для установки — параметр «Install Path» — в нашем случае вместо / там надо указать /mnt. Label и Partition трогать не стоит, мы там все уже сделали. В Distributions выбираем Minimal — я так и не понял почему, но так рекомендует hetzner в дебрях своего вики. Далее выбираем Media — откуда устанавливать систему — и тут нас ожидает приятный сюрприз: у Hetzner есть установочные образы FreeBSD на внутреннем NFS сервере. Выбираем NFS и указываем адрес, соответствующий версии, которую хотим установить: 7.2-RELEASE — 32-bit — 213.133.99.100:/nfs/freebsd/7.2_32 7.2-RELEASE — 64-bit — 213.133.99.100:/nfs/freebsd/7.2_64 7.3-RELEASE — 32-bit — 213.133.99.100:/nfs/freebsd/7.3_32 7.3-RELEASE — 64-bit — 213.133.99.100:/nfs/freebsd/7.3_64 8.0-RELEASE — 32-bit — 213.133.99.100:/nfs/freebsd/8.0_32 8.0-RELEASE — 64-bit — 213.133.99.100:/nfs/freebsd/8.0_64 Шаг 5: А теперь напильничком… Теперь нужно настроить установленную ОС. Для этого лучше перейти в файловую систему нашей ОС: chroot /mnt /dev/ad4s1a / ufs rw 1 1 /dev/ad4s1b none swap sw 0 0 /dev/ad4s1d /tmp ufs rw 1 1 /dev/ad4s1e /var ufs rw 1 1 /dev/ad4s1f /usr ufs rw 1 1 cp -Rp /boot/GENERIC/* /boot/kernel/ PHP код:
PHP код:
Unix-way: Добавляем в систему юзера, которым будем логиниться, используя adduser, и добавляем его в группу wheel. Dummy-way: Разрешить доступ руту по SSH (по умолчанию в FreeBSD рут не может логиниться удаленно). Для этого нужно в /etc/ssh/sshd_config установить параметр «PermitRootLogin» в «yes». Я так же установил в /etc/ssh/sshd_config параметр «UseDNS» в значение «no», т.к. меня раздражает задержка при логине в систему. И, напоследок, меняем пароль рута на свой: passwd umount /mnt/tmp umount /mnt/var umount /mnt/usr umount /mnt init 6 Шаг 6: Бонус-трек На сервере, который я устанавливал было два диска, при установке я использовал только один. Со вторым диском есть варианты: 1. Докупить хардверный рейд-контроллер и сделать RAID 1. 2. Сделать софтверный RAID 1. 3. Использовать второй диск для бекапов. Первый вариант ничего не изменяет в данном руководстве, просто нужно купить контроллер и собрать рейд до начала установки. Второй вариант, имея большой опыт с софтверными рейдами и попытками их восстановления, я счел бесполезным. Я у себя реализовал третий вариант, следующим образом: Чтобы sysinstall мог создавать разделы на диске из под работающей системы, нужно поменять один параметр в sysctl (меняется динамически): PHP код:
Разумеется, нужно чтобы раздел монтировался при каждой загрузке сервера, добавляем запись в /etc/fstab: PHP код:
mount -a Источник <!-- Вопросы задаем на форуме, не в ЛС --> |
Ответить |
Опции темы | |
Опции просмотра | |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Вопрос прокси сервер на базе линукса | Странник | Разное | 6 | 03.10.2013 17:11 |
FAQ Установка FreeBSD 7 | Vector | FreeBSD | 2 | 01.05.2010 03:55 |
Статья Установка FreeBSD на сервер в Serverloft | Vector | FreeBSD | 0 | 15.04.2010 00:52 |
Статья Установка torrentflux for FreeBSD | Stive Stifler | FreeBSD | 0 | 17.09.2009 22:01 |