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

Вот и всё, на этом настройки окончены, запускаем теперь компы на которых хотите что то установить или загрузить с настройками "загрузка по сети".

'
    '