Вход на хостинг
IT-новости
20.04.2016 iPhone 2017 года поместят в водонепроницаемый корпус из стекла
Линейка iPhone в новом году серьезно поменяется. В этом уверен аналитический исследователь Мин Чи Ку......
30.07.2015 Ищем уникальный контент для сайта
Ищем уникальный контент для сайта Без уникального контента Ваш сайт обречен на то, что его страницы......
Денис Колисниченко
Многие современные материнские платы позволяют загружать операционную систему не только с жесткого диска или дискеты, но и по сети. Причем загружаться по сети «умеют» компьютеры как со встроенными сетевыми адаптерами, так и обладающие внешними сетевыми карточками.
В этой статье мы рассмотрим, как загрузить операционную систему Linux по сети. Многие дистрибутивы позволяют устанавливать операционную систему по сети. Однако не нужно путать установку по сети и загрузку по сети. В первом случае вы загружаетесь с системной дискеты, а дальше программа установки просто копирует все необходимые ей файлы, находящиеся, как правило, на каком-то FTP-сервере, на ваш компьютер. В случае с загрузкой по сети файлы не копируются на ваш компьютер, а загружаются по сети при необходимости. Сначала загружается ядро системы (мы говорим о Linux), а потом необходимые ему файлы – корневая файловая система (с использованием NFS). Данный способ позволяет нам использовать бездисковые станции. Если вам нужна «служебная» бездисковая станция, которая будет выполнять только определенные задачи, например, принт-сервера или шлюза, можно вовсе отказаться от NFS, а загружать все сразу – и ядро, и корневую файловую систему – лишь бы оперативной памяти хватило.
Примечание: NFS (Network File System) – сетевая файловая система. Позволяет монтировать файловые системы, находящиеся на удаленных компьютерах.
Наверное, вы знаете, что существуют так называемые NFS-дистрибутивы, которые также позволяют хранить все необходимые файлы на NFS-сервере. Но NFS-дистрибутив нельзя использовать на бездисковых станциях. Как минимум для запуска такого дистрибутива на рабочей станции должен быть установлен обычный дисковод для гибких дисков. Загрузчик LILO (или любой другой) загружается с дискеты, затем вы передаете ему несколько параметров, как минимум два:
n root=/dev/nfs – сообщает ядру, что мы будем использовать загрузку по NFS;
n nfsroot – указывает путь к корневой файловой системе в формате:
[<server_ip>:]<root_dir>[,<nfs_options>]
Как видите, ядро знает, что корневая файловая система загружается по NFS. Сейчас мы попробуем сделать так, чтобы ядро даже «не заметило», что оно загружается по сети. Для этого мы будем использовать серверы rarp (Reverse Address Resolution Protocol) и tftp (Trivial File Transfer Protocol). Сервер rarp мы будем использовать для того, чтобы сопоставить MAC-адрес бездисковой станции определенному IP-адресу нашей локальной сети. Сервер tftp будет хранить наш загрузочный образ, о котором мы поговорим немного позже.
Теперь приступим к практической реализации. Для начала сопоставим MAC-адрес бездисковой станции IP-адресу нашей сети. Как я уже говорил, для этого будем использовать сервер rarp, который должен быть установлен на вашей системе.
/sbin/rarp –s 192.168.1.117 00:00:a1:77:e5:c9
Данную команду нужно включить в сценарий загрузки вашей системы, чтобы не вводить ее вручную при каждом запуске. Проблему идентификации нашей станции можно решить и по-другому – с помощью DHCP. Для этого в файле конфигурации /etc/dhcpd.conf нужно прописать директиву host для каждой бездисковой станции: