TFTP весьма удобная и простая в настройке и пользование штука, которая направлена на улучшение жизни админов, банальный пример, надо развернуть большое количество рабочих мест с переустановкой системы. Заточили дистрибутив под себя, закинули на TFTP, настроили загрузку на компах и быстро на все разом накатили. Так же подойдет для развертывание системы тонких клиентов из старых компьютеров.
Будем считать что вы уже установили и настроили Ubuntu Server 14.04 LTS, от себя порекомендую для серверов использовать именно LTS сборки, произвели сетевые настройки и т.д. Теперь преступим непосредственно к развертыванию TFTP сервера на нашем сервере. Установим необходимые для этого сервисы:
для начала установим систему aptitude
sudo apt-get install aptitude
далее уже через нее необходимые пакеты
sudo aptitude -R install apache2 atftpd tftpd-hpa
если у вас уже установлен Apache, тогда второй раз смысла ставить нет.
Ключ -R нужен для того, чтобы atftpd поставился без inetd сервера, который нам не нужен.
Приступим к настройке установленных компанентов.
Настроим TFTP сервер
Отредактируем файл
sudo nano /etc/default/atftpd
заменим в строчке USE_INETD=true на false
Отредактируем файл
sudo nano /etc/default/tftpd-hpa
впишем дирикторию нашего TFTP сервера, которая присутствует по умолчанию после установки сервиса и прописана в файле /etc/default/atftpdTFTP_DIRECTORY="/srv/tftp" после OPTION
TFTP_DIRECTORY="/srv/tftp"
Запустим atftpd:
sudo /etc/init.d/atftpd start
Теперь настроим Apache
Нам будет достаточно только сделать симлинк на каталог TFTP сервера для доступа к нему по HTTP.
sudo ln -s /srv/tftp /var/www/tftp
Настройки DHCP
Если у вас в роли DHCP выступает сервер Windows Server 2008 R2 настройки находятся здесь.
В Ubuntu Server настроим следующим образом, если у вас уже установлен DHCP сервер (sudo aptitude install dhcp3-server):
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 = "tftp/pxelinux.0";
}
Рестартанем DHCP сервер
sudo /etc/init.d/dhcp3-server restart
Вот и всё, на этом настройки окончены, запускаем теперь компы на которых хотите что то установить или загрузить с настройками "загрузка по сети".