Установка сети linux ubuntu
Этот метод установки задействует протоколы DHCP/BOOTP, TFTP и FTP/HTTP для получения источников инсталляции. Инсталлятор сам по себе сделан на основе ядра Linux и initrd. Эти файлы передаются через DHCP/TFTP в процессе сетевой загрузки.
Остальные инсталляционные данные передаются через FTP или HTTP. Если целевая машина имеет доступ в Интернет, то эти данные могут поступать напрямую с зеркала Ubuntu. Альтернативно Вы могли бы загрузить один из установочных образов ISO, смонтировать его через loop-back, и опубликовать его содержимое для целевой машины через локальный сервер HTTP/FTP.
[Подготовка сетевой загрузки]
В этой статье (перевод [1]) описывается, как установить Ubuntu на целевую машину, используя на ней только сетевую карту для загрузки инсталлятора, который будет устанавливать Ubuntu. Чтобы это работало, кратко процесс можно описать так: Вы устанавливаете и конфигурируете службы bootp, tftp, dhcp и шлюза в Интернет (gateway). Целевая машина будет загружаться по сети (netboot) через свой сетевой адаптер, используя протокол PXE/BOOTP, и получит ядро Linux и инсталлятор через TFTP. После запуска ядра запустится инсталлятор, который и установит Ubuntu на целевую машину.
Большинство устанавливаемых для этого пакетов поставляются через Интернет из последних версий репозиториев Ubuntu. Ниже приведена подготовка сетевой загрузки по шагам.
1. Установите сервер TFTP. Убедитесь, что устанавливаете сервер TFTP с поддержкой bootp (например, на Linux таким сервером может быть tftp-hpa), и что у этого сервера есть сетевой доступ к Вашему роутеру/шлюзу.
2. Сконфигурируйте роутер и его сервер DHCP. Узнайте MAC-адрес целевой машины, на которую будете устанавливать Ubuntu. Самый простой путь — настроить для целевой машины фиксированный IP, например 192.168.1.42. Это можно сделать по MAC-адресу, если сделать соответствующую настройку на сервере DHCP. Также запомните адрес шлюза роутера (пусть это будет адрес 192.168.1.1).
3. Установите на хосте Linux сервис bootp. Проще всего установить из консоли командами apt:
sudo apt-get update sudo apt-get install bootp
4. Отредактируйте файл /etc/bootptab. Пример:
client:\ ha="00:00:39:2B:54:B5":\ ip=192.168.1.42:\ gw=192.168.1.1:\ sm=255.255.255.0:\ td=/: hd=/: bf=pxelinux.0
Здесь настроено следующее:
ha MAC-адрес сетевой карты целевой машины.
ip IP-адрес, который назначил роутер для целевой машины.
gw IP-адрес роутера (gateway).
sm маска подсети для Вашей локальной сети.
td директория на сервере tfptboot, где находятся файлы PXE, относительно корневого каталога сервера tftpboot.
hd дальнейший путь, который заканчивается либо на файле pxe boot, либо на ссылке на него (скорее всего, этот путь можно оставить как есть).
bf файл pxe boot (скорее всего, тут будет именно такое имя файла).
Для дополнительной справки используйте man bootpd, man bootptab. Также некоторую информацию по настройке можно найти в комментариях файла etc/bootptab.
Если Вы не знаете аппаратный адрес целевой машины (т. е. MAC-адрес её сетевой карты), или какой IP-адрес целевой машине назначил DHCP-сервер роутера, то это можно сделать несколькими способами. Первый способ — настроить в BIOS целевой машины сетевую загрузку. Значение MAC-адреса будет отображаться либо в самом BIOS, либо на экране целевой машины, когда она делает попытку загрузиться через свой сетевой адаптер (также может отображаться и IP-адрес, выданный сервером DHCP). Второй способ — открыть лог DHCP-сервера или его файл текущих назначений IP-адресов. После того, как узнаете MAC адрес и IP-адрес, обновите /etc/bootptab на сервере bootp, после чего перезапустите bootpd.
5. Запустите bootp. Ниже приведена обертка, предназначенная для запуска и остановки bootpd из командной строки.
vDaemon=bootpd vCd=/var/lib/tftpboot
Start () < echo -n "Starting $vDaemon: default current directory is at $vCd . :" /usr/sbin/$vDaemon -d 4 -c $vCd >/tmp/$vDaemon.log 2>/tmp/$vDaemon.err & sleep 1 Status >
Установка Ubuntu по сети
Ubuntu, как и многие другие дистрибутивы Linux, можно легко установить по сети. Для этого вам всего лишь потребуется сетевое соединение с компьютером, который будет служить сервером для установки. BIOS вашего компьютера должен для этого поддерживать загрузку по сети.
Настройка сервера для установки
Прежде всего вам потребуется компьютер с Ubuntu или с другим дистрибутивом Linux (данная инструкция написана для Ubuntu), с которого вы будете устанавливать систему (сервер загрузки по сети), и ISO образ Alternate диска с необходимой версией Ubuntu.
Настройка сервера сетевой загрузки
Для загрузки по сети потребуется установить на сервер TFTP, HTTP и DHCP сервисы, чтобы позволить второму компьютеру подключиться и загрузить все необходимые файлы.
Для установки всего необходимого лучше использовать aptitude, которая не входит в стандартную поставку Ubuntu начиная с версии 10.10. Поэтому сначала ставим aptitude через любую программу установки пакетов или командой
sudo apt-get install aptitude
Далее ставим всё необходимое:
sudo aptitude -R install apache2 atftpd tftpd-hpa dhcp3-server
Ключ -R нужен для того, чтобы atftpd поставился без inetd сервера, который вам совершенно не нужен.
Теперь пора настроить все компоненты.
TFTP сервер
Демон, использующий эти файлы — /etc/hosts.allow и /etc/hosts.deny для ограничения доступа.
Откройте файл /etc/default/atftpd в любом текстовом редакторе с правами суперпользователя, например, так:
sudo nano /etc/default/atftpd
Измените первую строчку с
Кроме этого запомните каталог, который находится в конце строчки OPTIONS . Скорее всего это будет /srv/tftp , но в старых Ubuntu может быть и /var/lib/tftpboot . Редактируем файл /etc/default/tftpd-hpa:
sudo nano /etc/default/tftpd-hpa
вписываем, запомненный каталог
Теперь просто запустите atftpd :
sudo /etc/init.d/atftpd start
Теперь создайте в каталоге из OPTIONS папку ubuntu. Далее везде будем считать, что используется каталог /srv/tftp :
После этого необходимо смонтировать ваш ISO образ во вновь созданный каталог. Сделать это можно примерно такой командой:
sudo mount -o loop /home/tux/ubuntu-11.04-alternate-i386.iso /srv/tftp/ubuntu/
Если у Вас нет ISO образа диска, но есть записанный Alternate диск, то просто вставьте его в CD/DVD привод. Диск автоматически монтируется в /media/cdrom . Дальше просто нужно создать симлинк для TFTP сервера:
sudo ln -s /media/cdrom /srv/tftp/ubuntu
На этом настройка TFTP закончена.
Веб-сервер Apache
Что-либо менять в настройках Apache не требуется, достаточно сделать созданный в предыдущем разделе каталог ubuntu доступным через HTTP . Для этого создайте на него симлинк из рабочей папки Apache:
sudo ln -s /srv/tftp/ubuntu /var/www/ubuntu
sudo ln -s /media/cdrom /var/www/ubuntu
DHCP сервер
Всё, что осталось — это настроить правильным образом DHCP сервер. Откройте в любом текстовом редакторе с правами суперпользователя файл /etc/dhcp3/dhcpd.conf , например, командой
sudo nano /etc/dhcp3/dhcpd.conf
В этом файле необходимо изменить следующие настройки:
# Имя вашего внутреннего домена. Если вам это ни о чём не говорит - просто не меняйте. option domain-name "domain.ru"; # Ваш DNS сервер, который должен использоваться на подключаемом компьютере. Чаще всего тут стоит IP адрес роутера. option domain-name-servers 192.168.0.1; # Просто раскомментируйте эту строчку authoritative; # Теперь надо определить сеть для DHCP сервера: # Сначала желаемая подсеть и маска подсети. subnet 192.168.0.0 netmask 255.255.255.0 { # Диапазон выдачи сервером адресов range 192.168.0.100 192.168.0.199; # Роутер для доступа к интернету option routers 192.168.0.1; # Какой файл загружать при сетевой загрузке - укажите именно в таком виде. filename = "ubuntu/install/netboot/pxelinux.0"; }
После этого нужно сказать нашему DHCP серверу слушать один из интерфейсов. Для этого откройте файл /etc/default/dhcp3-server и добавьте в параметр INTERFACES имя нужного интерфейса. Например, вот так:
Теперь нужно запустить DHCP сервер и можно будет приступать к установке. Однако перед запуском убедитесь, что в вашей сети нету ещё каких-нибудь работающих DHCP серверов. Чаще всего DHCP бывает запущен на роутерах, в этом случае надо зайти на роутер и остановить на нём этот сервис.
Итак, для запуска DHCP сервера достаточно выполнить команду
sudo /etc/init.d/dhcp3-server start
Теперь необходимо перевести второй компьютер в режим загрузки по сети. После этого Вы должны увидеть экран установки Ubuntu.
Установка по при помощи Minimal CD
Если вы по каким-то причинам не можете использовать полноценный диск с Ubuntu, но всё же в вашем компьютере есть CD привод и подключение к интернету, то вы можете поставить систему по сети, загрузившись с маленького диска Minimal CD.
В этом случае система поставится целиком из интернет-репозитория, а диск нужен будет только для запуска процесса установки.