Windows. Вирусы. Ноутбуки. Интернет. Office. Утилиты. Драйверы

В Ubuntu подключение к сети настраивается с помощью сервиса Network Manager. Чтобы подключиться к сети, достаточно пару раз кликнуть мышкой, выбрать соединение - и готово. То же самое, и даже ещё проще, при использовании проводного соединения - тут интернет подключается автоматически, как только загрузился апплет.

Но не всегда доступен графический интерфейс: после неудачной установки драйвера или очередного обновления не запускается графическая оболочка, а на серверах она и вовсе не используется. В этой небольшой инструкции будет разобрана настройка сети Ubuntu из консоли. Мы поговорим о том, как настроить получение IP-адреса по DHCP, а также настроить работу DNS. Рассмотрим ручную и автоматическую настройку, также попробуем сделать это через системные конфигурационные файлы.

Перед тем, как перейти к самим командам, давайте немного разберёмся в теории работы сети. Это нужно, чтобы вы не просто выполнили какие-то непонятные команды, а поняли всю суть того, что мы будем делать и как выполняется настройка локальной сети Ubuntu.

Компьютеры обмениваются между собой информацией с помощью пакетов. Все данные в сети интернет передаются с помощью пакетов небольшого размера. Если не углубляться в подробности, то каждый пакет содержит адрес отправителя, адрес получателя и сами данные. Эти адреса есть не что иное, как привычные нам IP-адреса. Кроме IP, у компьютера есть физический адрес, который используется для общения между компьютерами в локальной сети. Это MAC-адрес? и задается он производителем сетевой карты.

Как только компьютер подключился к сети, независимо от того проводное это соединение или беспроводное, он может общаться только с компьютерами в локальной сети и только по физическим адресам. Для того, чтобы получить доступ в Глобальную сеть, машине в ней нужно получить IP-адрес. Для этого используется протокол DHCP. Если кратко: наш компьютер спрашивает все компьютеры в локальной сети, кто здесь DHCP-сервер, DHCP ему отвечает и выдаёт IP-адрес. Таким же образом компьютер узнаёт IP маршрутизатора, через который он может получить доступ к Сети, а затем пытается найти DNS-серверы или узнать стандартные у маршрутизатора. С теорией разобрались, перейдем к практике.

Настройка сети через терминал в Ubuntu

Тут мы рассмотрим автоматическую настройку сети для Ubuntu 16.04 без Network Manager с помощью стандартных скриптов системы, которые остались от Upstart и пока всё ещё используются. Давайте сначала определим, какие шаги нам нужно предпринять, чтобы всё заработало:

  • Включаем сетевой интерфейс и подключаемся к сети;
  • Устанавливаем IP-адрес;
  • Получаем адреса DNS-серверов.

Собственно, готово. Эти шаги очень символичны, потом что система всё сделает за нас сама. Нам нужно только выполнить нужные настройки. Но сначала давайте посмотрим, какие сетевые интерфейсы подключены к системе. Мне нравится команда:

Но если хотите, можете использовать ifconfig :

В нашей системе только один интерфейс - это enp0s3, есть еще lo, но он виртуальный и указывает на эту машину.

Настройки сети находятся в файле /etc/network/interfaces.

Нас будут интересовать в этом файле строчки auto и iface. Первая указывает, что нужно активировать интерфейс при загрузке, вторая же определяет настройки самого интерфейса.

Настройка динамического получения IP-адреса

Добавьте в этот файл такие строки, чтобы запускать интерфейс при загрузке и получать IP-адрес автоматически по DHCP:

auto enp0s3
iface enp0s3 inet dhcp

Синтаксис строки auto прост. Он состоит из самой команды и имени сетевого интерфейса. Рассмотрим подробнее:

$ iface интерфейс inet тип

Тип получения IP-адреса может иметь несколько значений, но нас в этой статье будут интересовать только два: dhcp и static.

После завершения настройки сохраните файл и перезапустите сетевой сервис:

Всё, если сетевой кабель подключён, и вы всё сделали правильно, Сеть будет работать.

Настройка статического адреса Ubuntu

При настройке статического IP-адреса компьютер не будет связываться с DHCP-сервером, поэтому здесь придётся указать намного больше параметров.

Содержимое нашего конфигурационного файла будет выглядеть вот так:

auto eth0
iface eth0 inet static
address 192.168.1.7
gateway 192.168.1.1
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255

С первыми двумя строчками все понятно, а следующие задают параметры настройки интерфейса:

  • address - наш IP-адрес;
  • gateway - шлюз, через который будем получать доступ в интернет;
  • netmask - маска сети;
  • network - адрес сети, имеет тот же адрес, что и шлюз, только с нулем вместо единицы;
  • broadcast - широковещательный адрес сети, отправленный на него пакет придет всем компьютерам локальной сети.

Как видите, network и broadcast - это первый и последний IP-адреса сети. Теперь сохраните файл и перезапустите сеть:

sudo service networking restart

Если все параметры были указаны правильно, всё будет работать. Но если допущена хоть одна ошибка, доступ к сети вы не получите.

Это была автоматическая настройка локальной сети Гbuntu, но я ещё расскажу, как всё сделать вручную, без конфигурационных файлов.

Ручная настройка сети в Ubuntu

Предыдущий вариант хорош, если вы собираетесь его использовать постоянно, но если нужно только один раз настроить сеть через терминал, то редактировать конфигурационные файлы необязательно. Мы можем всё сделать с помощью команды ip . Дальше будет рассмотрена настройка сети вручную Ubuntu.

Эта команда используется для управления сетью и входит во все дистрибутивы по умолчанию.

Как и в предыдущем примере, смотрим сетевые интерфейсы:

После того, как мы узнали интерфейс, можно переходить к настройке.

Получение IP-адреса по DHCP

Сначала включаем интерфейс:

sudo ip link set enp0s3 up

Затем с помощью команды dhclient запрашиваем ip:

sudo dhclient enp0s3

Всё, настройка сети Ubuntu 16.04 завершена, у нас есть IP-адрес, и осталось только настроить DNS, но это мы рассмотрим ниже.

Настройка статического IP

Включаем интерфейс:

sudo ip link set enp0s3 up

Устанавливаем IP-адрес, маску сети и broadcast-адрес для нашего интерфейса:

sudo ip addr add 192.168.1.7/255.255.255.0 broadcast 192.168.1.255 dev enp0s3

Указываем IP-адрес шлюза:

sudo ip route add default via 192.168.1.1

Здесь 192.168.1.7 - наш IP-адрес, 255.255.255.0 - маска сети, 192.168.1.255 - широковещательный адрес. Замените эти значения на свои.

Как видите, сеть работает. Если хотите поэкспериментировать на машине с рабочей сетью, её можно сбросить командой:

sudo ip -4 addr flush dev enp0s3

Настройка DNS

Служба DNS используется для преобразования доменных имен сайтов в IP-адреса. При получении IP-адреса автоматически через DHCP мы используем правильные DNS-серверы, но если мы выбрали статический IP, то DNS можно и не получить, поэтому придётся сделать всё вручную.

Если вам нужно настроить DNS так, чтобы он не сбивался после перезагрузки, необходимо использовать систему настройки сети Ubuntu. Для этого откройте файл /etc/network/interfaces и добавьте в него строчку после директив для нужного интерфейса:

dns-nameservers 8.8.8.8 4.4.4.4

Здесь 8.8.8.8 и 4.4.4.4 это IP-адреса DNS серверов, можете заменить их на свои. И можно использовать один, а не два. Дальше сохраните файл и перезапустите сеть:

sudo service networking restart

Если же вам нужно настроить DNS только для этого сеанса, то добавьте строчку в /etc/resolv.conf

sudo vi /etc/resolv.conf

nameserver 8.8.8.8
nameserver 4.4.4.4

После сохранения файла сеть будет работать полностью так, как нужно. Но последний способ пригоден только до перезагрузки, поскольку файл /etc/resolv.conf генерируется автоматически.

В статье он упомянул о возможности установки «С помощью загрузки по сети (PXE boot)», благодаря чему я решил наконец написать материал по созданию сервера pxe boot.

Повествование будет вестись на примере всё той же ОС - Debian (так что пути и команды у вас могут отличаться).
Для начала - поставим tftp -сервер. Смотрим доступные варианты (apt-cache search tftp | fgrep server ):

  • atftpd
  • dnsmasq
  • tftpd
  • tftpd-hpa
Сначала я поставил tftpd-hpa, т.к. о нём рассказывалось в мануале , с которого я начинал создание сервера. Затем я перешёл на atftpd, т.к. мне потребовалось логирование. Рассмотрим оба варианта:
  • tftpd-hpa:
    Устанавливаем пакет, редактируем файл /etc/default/tftpd-hpa , дабы демон знал, что ему стоит жить:

    #Defaults for tftpd-hpa
    RUN_DAEMON="yes"
    OPTIONS="-l -s /var/lib/tftpboot"

    Создаём нужный каталог: mkdir /var/lib/tftpboot , и стартуем сервис invoke-rc.d tftpd-hpa start

  • atftpd:
    После установки обнаруживаем, что по-умолчанию этот сервис работает через inetd. Я, почему-то, не фанат этого метода, поэтому первым делом закомментировал соответствующую строку в /etc/inetd.conf . Затем редактируем /etc/default/atftpd :

    USE_INETD=false
    OPTIONS="--daemon --tftpd-timeout 1500 --no-multicast --retry-timeout 20 --logfile /var/log/atftpd.log --maxthread 100 --verbose=5 /var/lib/tftpboot"

    --tftpd-timeout - время жизни потока, при отсутствии запросов
    --retry-timeout - таймаут отдачи файла
    у меня установлены большие таймауты, т.к. сервис транслируется в городскую локальную сеть, которая периодически прогибается от обилия абонентов, и не справляется с потоком запросов.
    Ну и, как и в предыдущем пункте, - создаём нужный каталог: mkdir /var/lib/tftpboot , и стартуем сервис invoke-rc.d atftpd start

Теперь у нас есть tftp-сервер. Один шаг мы сделали:)
Далее - настройка dhcp:
  • dhcp3:
    В конфигурационный файл /etc/dhcp3/dhcpd.conf добавляем информацию о загрузке:

    Filename "pxelinux.0";
    next-server ;

    Если tftpd установлен на том же сервере, что и dhcpd - директиву next-server можно опустить. И перезапускаем dhcp3-server: invoke-rc.d dhcp3-server restart

  • dnsmasq:
    В конфиг /etc/dnsmasq.conf дописываем:

    Dhcp-boot=pxelinux.0,,

    Опять же, если сервера tftp и dhcp совпадают - последние 2 атрибута можно не заполнять. Перезапускаем: invoke-rc.d dnsmasq restart

Шаг второй пройден. Дальше - непосредственно настройка pxe-boot.
Идём на ftp.debian.org , выбираем каталог installer-* , соответствующий необходимой архитектуре. Затем переходим в директорию current/images/netboot внутри мы найдём файлы netboot.tar.gz и gtk/netboot.tar.gz - это файлы текстовой и графической установки соответственно. Выбираем понравившийся, качаем и распаковываем в /var/lib/tftpboot .
Осталось убедиться, что зазрешён доступ на 69 UDP порт, и можно пользоваться прелестями сетевой установки.

В качестве бонуса прилагаю меню, которое получилось у меня в результате нескольких дней издевательств:
В текущей конфигурации возможна установка нескольких ОС (установка Debian возможна как в текстовом, так и в графическом режиме), загрузка xUbuntu (через nfs), SystemRescueCD (через http-boot), memtest86 (через tftp). Установка всех ОС возможна для 2 архитектур - x86 и x64. Т.к. у меня лежит внутрисетевое зеркало репозиториев Ubuntu 8.10 и Debian 5.0, то установщики не предлают выбор репозитория, а автоматически сливают всё с него.
Скриншоты.

Каждому, кто хоть изредка промышляет администрированием хотя бы раз нужно было установить операционку на комп. И зачастую происходит всё так: скачивается образ, записывается на диск или флешку, грузимся и ставим. Но может оказаться что ни флешки ни диска под рукой нет, а установку нужно выполнить на вчера... Тогда можно загрузится по сети, и с линуксом в этом плане особо проблем нет. Типичная конфигурация - это связка DHCP , TFTP и NFS . Но у меня под рукой не было настроенного NFS , зато была Samba . Поэтому пришлось разобраться как использовать Samba вместо NFS .

Вроде бы ничего такого, поменял настройки и всё, но что-то не работало поначалу, пришлось шаманить...

Но я тут начну с самого начала. Итак для начала нужно обзавестись дистрибутивом. Так как ставим мы Linux Mint , ищем свежий образ . Скачиваем дистрибутив, подходящий именно нам (я ставил тот, что с MATE , но очевидно это не имеет особого значения). Скачав образ, нужно получить доступ к файлам образа. В некоторых руководствах рекомендуют распаковать образ, но я не вижу в этом смыла, поэтому поддерживаю мнение, которое заключается в том, чтобы смонтировать образ как loop . Чтобы не вмешиваться в существующий порядок, просто создаём новый каталог, куда и монтируем образ:

# mkdir /mnt/mint
# mount -o loop /home/user/download/linuxmint-17-mate-64bit-v2.iso /mnt/mint

Далее нужно сделать файлы доступными по сети для чтения установщиком. Как я говорил выше, у меня для этого служит Samba . Поэтому открываем файл конфигурации и добавляем новую шару, добавив такую секцию:


path = /mnt/mint
available = yes
browsable = yes
public = yes
writable = no

Должно работать поверх дефолтных настроек Samba . Если же не работает, то скорее всего вы что-то меняли сами, а значит найдёте как решить проблему. Итак мы добавили шару mint , через которую можно с сети получить файлы для установки. Не забудьте перезапустить Samba для принятия новых настроек.

Для Archlinux :

# systemctl restart smbd
# systemctl restart nmbd

Для Gentoo :

# /etc/init.d/samba restart

Далее нужно подготовить сетевой загрузчик. В этом нам поможет программа tftp-hpa . В Archlinux и в Gentoo пакет называется именно так. Нужно расположить файлы загрузчика в рабочем каталоге ftp-сервера (в арче /srv/tftp ). Копируем туда ядро и initrd со смонтированного образа:

# cp /mnt/mint/casper/{vmlinux,initrd.lz} /srv/http

# cp /usr/lib/syslinux/bios/{pxelinux.0,menu.c32,ldlinux.c32,libutil.c32} /srv/http

DEFAULT menu.c32
LABEL LinuxMint
KERNEL vmlinuz
APPEND showmounts toram root=/dev/cifs boot=casper netboot=cifs nfsroot=//192.168.0.1/mint NFSOPTS=-oguest,ro initrd=initrd.lz nosplash

Где 192.168.0.1 - наш IP-адрес относительно машины, на которую быдем ставить. Ах да, и про nfs там - это не опечатка, в режиме работы с cifs, нужно передавать опции типа как для nfs, не могу сказать почему. Особое внимание нужно обратить на опцию toram, поскольку без неё всё отваливается на полпути и загрузится мы не можем (может это особенности самбы). Но с этой опцией нужно помнить о том, что на целевой машине должно быть достаточно оперативки, чтобы скопировать туда установщик. TFTP-сервер нужно запустить. Для Archlinux :

# systemctl tftpd.socket start

Для Gentoo :

# /etc/init.d/in.tftpd start

Теперь нужно биосу целевой машины как-то сказать откуда грузится. В этом нам поможет dnsmasq (хотя не обязательно, можно использовать и другой DHCP сервер, здесь описываю то, что было под рукой). Настраиваем раздачу IP (опция dhcp-range ) на своё усмотрение, под свою "сеть" между машинами. Для установки нам важны лишь три опции:

Dhcp-boot=/pxelinux.0
dhcp-option=vendor:PXEClient,6,2b
pxe-service=x86PC, "Install Linux", pxelinux

Их нужно добавить к конфигурации dnsmasq , ну и естественно запустить его (или перезапустить).

Для Archlinux :

# systemctl start dnsmasq

Для Gentoo :

# /etc/init.d/dnsmasq start

Помните, чтобы всё заработало необходимо, чтобы порты на DHCP (UDP 67,68), TFTP (UDP 69), Samba (UDP 137,138, TCP 139,445) должны быть обязательно открыты, обязательно учтите это в конфигурации своего фаерволла. Если же фаерволла нет или полностью открыт интерфейс - ну и ладно, должно работать.

Примечание: в связи с тем, что системы постоянно обновляются, приведённые пути файлов могут оказаться недействительными, то есть отличными от тех, что на Вашей системе. Поэтому внимательно смотрите на структуру пакетов Вашей системы.

Уже довольно давно, мной была написана статья о сетевой установке Ubuntu, по локальной сети, без использования различных носителей, только загрузка по PXE и все. В этот раз я решил обновить статью и сделать ее ближе к современным реалиям, а главное, расширить функционал. Все будет выполняться на примере Ubuntu 14.04!

Под разные требования, должны быть и разные решения, главная загвоздка в том, что зачастую, нам требуется не одна операционная система, а несколько. Вот я и решил написать на эту тему статью. С предыдущей статьей, можно ознакомиться по ссылке, .
Главная идея заключаться в том что у нас появится возможность, выбирать какую операционную систему мы будем устанавливать, а также ее разрядность, фактически, у нас появится меню загрузки, после загрузки системы по локальной сети.
Все это мы реализуем, на примере, только что вышедшей Ubuntu 14.04

Для тех кто не понял, все затевается ради того чтобы появилась возможность выбора, какую операционную систему устанавливать, а также ее разрядность т.е. должно появиться меню где будут представлены все ОС доступные для установи по сети, которое будет иметь следующий вид:

Ubuntu_14.04x86
Ubuntu_14.04amd64
Для работы нам понадобится:
Обязательно!
1) Настроенный шлюз, для примера, воспользуйтесь статьей:
2) DHCP сервер, для примера, можно воспользоваться статьёй:
3) Настроенный TFTP сервер, загружающий PXE загрузчик, воспользоваться статьёй:

Опционально!
3) Дополнительным, но не обязательным моментом, может быть настроенный DNS сервер, пример есть в статье

Предполагается что у вас настроен шлюз, DHCP, TFTP севрер, а также добавлено меню загрузки PXE т.к. на этом моменте я останавливаться не буду.

Переходим к настройке инсталлируемой системы.
Для начала мы создадим пункт установки для Ubuntu 14.04x86, для чего нам понадобится установочный диск соответствующей разрядности. Нам его необходим скачать и примонтировать, для того чтобы извлечь файлы загрузчика инасталятора системы.
Т.к. файл сетевого загрузчика у нас лежат в директории директории /var/lib/tftpboot/ откуда они и подтягиваются TFTP сервером, то в ней нам нужно создать директорию Ubuntu, чтобы в нее сложить файлы с дисков установки, сделаем это:
mkdir /var/lib/tftpboot/ubuntu
В директории Uubntu мы создаем дополнительные директории для файлов загрузчика инсталлятора ОС для x86 разрядных систем и ADM64-соответсвенно.
mkdir /var/lib/tftpboot/ubuntu/x86 mkdir /var/lib/tftpboot/ubuntu/amd64

Теперь нам требуется скачать установочный диск посмотреть можно тут mirror.yandex.ru/ubuntu-releases/14.04/
Мы качнем версию х86 для сервера т.к. она меньше весит
wget http://mirror.yandex.ru/ubuntu-releases/14.04/ubuntu-14.04-server-i386.iso
После завершения закачки ISO образа, нам нужно его смонтировать, чтобы извлечь нужные нам файлы, а для этого, в директории /media мы создадим директорию iso , давайте сделаем это:

Mkdir /media/iso
Монтируем образ диска в эту директорию:
sudo su
mount ubuntu-14.04-server-i386.iso /media/iso/
Система выдаст что диск смонтирован в режиме чтения:

mount: warning: /media/iso/ seems to be mounted read-only.
Идем забирать загрузчик и ядро инсталятора:
cd /media/iso/install/netboot/ubuntu-installer/i386/

Нас интересуют 2 файла linux и initrd.gz , которые нам нужно забрать и перенести в директорию /var/lib/tftpboot/ubuntu/x86
давайте скопируем их:
cp linux /var/lib/tftpboot/ubuntu/x86 cp initrd.gz /var/lib/tftpboot/ubuntu/x86

Все, установочный образ нам больше не нужен, для начала отмонтируем его из директории iso:
umount /media/iso/

После этого ISO-образ можно удалить.
Похожие действия проводим для образа установочного диска с разрядностью x64, я не буду расписывать что и куда, просто приведу листинг команд, действия все те же, только пути немного отличаются, там прописано amd64

Wget http://mirror.yandex.ru/ubuntu-releases/14.04/ubuntu-14.04-server-amd64.iso

Mount ubuntu-14.04-server-amd64.iso /media/iso/

Cd /media/iso/install/netboot/ubuntu-installer/amd64/

Cp linux /var/lib/tftpboot/ubuntu/amd64 cp initrd.gz /var/lib/tftpboot/ubuntu/amd64

Umount /media/iso/

С файлами установки закончили, теперь настроим PXE меню загрузки.

Настройка меню загрузки PXE
Для начала добавим пункт меню с названием Linux Install , для этого нам нужно отредактировать файл:
nano /var/lib/tftpboot/pxelinux.cfg/default

В конец файла добавим запись:
LABEL Linux Install MENU LABEL ^Linux Install KERNEL vesamenu.c32 APPEND pxelinux.cfg/linux.menu

Как видно из записи, у нас будет другая страница с выбором дисирибутивов для установки, создадим ее:

Nano /var/lib/tftpboot/pxelinux.cfg/linux.menu

Добавим в нее названия пунктов для загрузки с возможностью выбора операционной системы для установки, пока это будет Ubuntu 14.04 x86 и amd64 архитектуры:
LABEL Install Ubuntu 14.04x86 MENU label ^Ubuntu 14.04x86 KERNEL ubuntu/x86/linux APPEND initrd=ubuntu/x86/initrd.gz LABEL Install Ubuntu 14.04amd64 MENU label ^Ubuntu 14.04amd64 KERNEL ubuntu/amd64/linux APPEND initrd=ubuntu/amd64/initrd.gz

На этом настройка закончена, можно подключать клиентскую машину и пытаться загрузиться по PXE, в результате после загрузки системы по сети, у нас появится меню такого вида:

Выбираем то что мы хотим установить, установка начнется автоматически, ну а далее только следовать указаниям инсталятора системы.
Другие операционные системы добавляются аналогичным способом.
На этом, я пожалуй и закончу на сегодня.
Ну и как всегда, если возникли вопросы прошу в комментарии, нашли ошибку пишите в личку ну или на почту.

Прежде всего вам потребуется компьютер с 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

Измените первую строчку с

USE_INETD =true USE_INETD =false

Кроме этого запомните каталог, который находится в конце строчки OPTIONS . Скорее всего это будет /srv/tftp , но в старых Ubuntu может быть и /var/lib/tftpboot . Редактируем файл /etc/default/tftpd-hpa:

sudo nano / etc/ default/ tftpd-hpa

вписываем, запомненный каталог

TFTP_DIRECTORY ="/srv/tftp"

Теперь просто запустите atftpd:

sudo / etc/ init.d/ atftpd start

Теперь создайте в каталоге из OPTIONS папку ubuntu. Далее везде будем считать, что используется каталог /srv/tftp:

mkdir / srv/ tftp/ ubuntu

После этого необходимо смонтировать ваш 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

Если вы используете не ISO образ, а записанный диск, то выполните 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 имя нужного интерфейса. Например, вот так:

INTERFACES ="eth0"

Теперь нужно запустить DHCP сервер и можно будет приступать к установке. Однако перед запуском убедитесь, что в вашей сети нету ещё каких-нибудь работающих DHCP серверов. Чаще всего DHCP бывает запущен на роутерах, в этом случае надо зайти на роутер и остановить на нём этот сервис.

Итак, для запуска DHCP сервера достаточно выполнить команду

sudo / etc/ init.d/ dhcp3-server start

Теперь необходимо перевести второй компьютер в режим загрузки по сети . После этого Вы должны увидеть экран установки Ubuntu.

Установка по при помощи Minimal CD

Если вы по каким-то причинам не можете использовать полноценный диск с Ubuntu, но всё же в вашем компьютере есть CD привод и подключение к интернету, то вы можете поставить систему по сети, загрузившись с маленького диска Minimal CD .

В этом случае система поставится целиком из интернет-репозитория, а диск нужен будет только для запуска процесса установки.

Если заметили ошибку, выделите фрагмент текста и нажмите Ctrl+Enter
ПОДЕЛИТЬСЯ: