Различия между версиями 17 и 18
Версия 17 от 2008-09-02 06:34:32
Размер: 13120
Редактор: VsevolodKrishchenko
Комментарий:
Версия 18 от 2008-09-02 06:48:10
Размер: 13237
Редактор: VsevolodKrishchenko
Комментарий:
Удаления помечены так. Добавления помечены так.
Строка 26: Строка 26:
После загрузки с CD следует нажать клавишу F4, выбрать FTP в качестве источника загрузки, и ввести 172.16.0.1 в качестве ip-адреса сервера (для нашего примера) и /pub/boot в качестве ftp-каталога: После загрузки с CD следует нажать клавишу F4, выбрать FTP в качестве источника загрузки, и ввести 172.16.0.1 (10.30.5.1?) в качестве ip-адреса сервера (для нашего примера) и /pub/boot в качестве ftp-каталога:
Строка 59: Строка 59:
/srv/home 172.16.0.0/16(rw,no_subtree_check,no_root_squash) /srv/home 10.30.5.0/24(rw,no_subtree_check,no_root_squash)
Строка 62: Строка 62:
 Здесь 10.30.2.0/24 --- адрес локальной сети. Содержимое этого файла следует прокомментировать.  Здесь 10.30.2.0/24 --- адрес локальной сети.
Строка 64: Строка 64:
 Во-первых, здесь раздаётся /srv/boot, с которого клиенты будут загружаться, причём для них он доступен в режиме "только для чтения". Кроме того, использована опция "no root squash". По умолчанию действует обратная опция "root squash" которая все запросы от лица суперпользователя с клиента на сервере переводит в запросы от лица пользователя "nobody" для большей безопасности. Опция "no root squash" отменяет такое преобразование.  1. После любых изменений {{{/etc/exports}}} необходимо перезапустить службы nfs, чтобы она использовала новые настройки:
 {{{
# service nfs restart
}}}

Содержимое файла {{{/etc/exports}}} следует прокомментировать.
Во-первых, здесь раздаётся каталог /srv/boot, с которого клиенты будут загружаться, причём для них он доступен в режиме "только для чтения". Кроме того, использована опция "no root squash". По умолчанию действует обратная опция "root squash" которая все запросы от лица суперпользователя с клиента на сервере переводит в запросы от лица пользователя "nobody" для большей безопасности. Опция "no root squash" отменяет такое преобразование.
Строка 70: Строка 75:
 1. После любых изменений {{{/etc/exports}}} необходимо перезапустить службы nfs, чтобы она прочла новые настройки:
 {{{
# service nfs restart
После запуска nfs можно проверить, отдаются ли каталоги, с помощью команды showmount -e:
{{{
# showmount -e
/srv/
Строка 74: Строка 80:

После запуска nfs можно проверить, отдаются ли каталоги, с помощью команды showmount -e.
''здесь нужен вывод команды showmount -e''
Строка 81: Строка 84:

{{attachment:netinstall_03_nfs_boot.jpg}}

{{attachment:netinstall_04_nfs_boot_params.jpg}}

Сетевая установка

Для того чтобы установить ПСПО по сети, следует сначала разместить содержимое установочного CD или DVD-диска на FTP-сервере:

# mount /media/cdrom
# mkdir -p /var/ftp/pub/boot
# cp -a /media/cdrom /var/ftp/pub/boot

Затем на клиенте следует загрузится с CD или USB-flash. При этом можно загружаться, например, с CD-Диска "Легкий Линукс", а вести установку по сети с копии DVD-диска "Линукс Мастер". При отсутствии CD-привода на клиенте можно воспользоваться загрузочным USB-накопителем, который следует подготовить следующим образом. Сначала надо установить пакет mkbootflash:

# apt-get install mkbootflash

Затем нужно вставить flash-носитель в USB-порт и узнать его имя (например, при помощи утилиты dmesg), обычно это sdg1:

# dmesg | grep 'Attached' | tail -n2
[ 1762.549556] sd 7:0:0:0: [sdb] Attached SCSI disk
[ 1762.549635] sd 7:0:0:0: Attached scsi generic sg1 type 0

Затем следует сделать его загрузочным (внимание: содержимое flash-накопителя будет безвозратно утеряно):

# mkbootflash -i /dev/sdg1

После загрузки с CD следует нажать клавишу F4, выбрать FTP в качестве источника загрузки, и ввести 172.16.0.1 (10.30.5.1?) в качестве ip-адреса сервера (для нашего примера) и /pub/boot в качестве ftp-каталога:

[ПРИКРЕПЛЁННЫЙ ФАЙЛ]

[ПРИКРЕПЛЁННЫЙ ФАЙЛ]

Альтернативой использованию FTP-сервера является использование сетевой файловой системы NFS (Network File System). Для того, чтобы передавать информацию по протоколу NFS, необходимо запустить службу nfs на сервере. Если этого не сделать, то установка зависнет сразу после загрузки ядра, так как не удастся получить доступ к диску с дистрибутивом. Для работы NFS необходимо следующее.

  1. Установить на сервере пакет nfs-server.
     # apt get install nfs-server
  2. Проверить конфигурацию службы portmap, она не должна запускаться с ключом -l, который разрешает только локальные подключения. Пример правильного файла конфигурации /etc/sysconfig/portmap (в ПСПО по умолчанию):

    # Parameters for portmap daemon.
    # See portmap(8) for more details.
    
    # Specifies additional parameters for portmap.
    #PORTMAP_ARGS="-l"

    Если строка с ключом -l не закомментирована, требуется ее закомментировать и перезапустить службу portmap командой service portmap restart.

  3. В файле /etc/exports указать, какие каталоги будет отдаваться по сети. В нашем случае он должен содержать две строчки выглядеть так:
    $ cat /etc/exports
    /srv/boot       *(ro,no_subtree_check,no_root_squash)
    /srv/home       10.30.5.0/24(rw,no_subtree_check,no_root_squash)
    Здесь 10.30.2.0/24 --- адрес локальной сети.
  4. После любых изменений /etc/exports необходимо перезапустить службы nfs, чтобы она использовала новые настройки:

    # service nfs restart

Содержимое файла /etc/exports следует прокомментировать. Во-первых, здесь раздаётся каталог /srv/boot, с которого клиенты будут загружаться, причём для них он доступен в режиме "только для чтения". Кроме того, использована опция "no root squash". По умолчанию действует обратная опция "root squash" которая все запросы от лица суперпользователя с клиента на сервере переводит в запросы от лица пользователя "nobody" для большей безопасности. Опция "no root squash" отменяет такое преобразование.

  • В отличие /srv/boot, /srv/home (домашний каталог сетевых пользователей) необходимо экспортировать на запись. ## ?? Рекомендуется /home делать отдельной файловой системой: можно смонтировать /home с опцией "nosuid" --- то есть, даже если пользователь сможет положить файл с установленным setuid-битом, то при запуске он не сработает.

После запуска nfs можно проверить, отдаются ли каталоги, с помощью команды showmount -e:

# showmount -e
/srv/

Теперь можно справедливо утверждать, что подготовлена достаточная среда для сетевой установки.

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

[ПРИКРЕПЛЁННЫЙ ФАЙЛ]

[ПРИКРЕПЛЁННЫЙ ФАЙЛ]

Дальше установка происходит обычным способом. Осталось только рассмотреть несколько полезных моментов, которые не требуют грубого вмешательства в работу системы.

Автоматическая установка

Если вы не хотите устанавливать систему вручную на каждую машину, то можно воспользоваться функцией автоматической установки. Эта функция устроена следующим образом: существует некий каталог на установочном устройстве (CD или NFS-сервере) - Metadata. Также стоит заметить, что на локальных компьютерах после установки в каталоге /root лежит файл autoinstall.scm, в котором, среди прочего, лежат пароли открытым текстом, и правильным решением после установки будет их смена. В этом файле записаны те действия, которые выполняются автоматически при установке. Данный файл копируется из любой машины с успешной ручной установкой и дополняется. Также в /root существует файл vm-profile.scm, там описаны методы разбиения для разных вариантов установки, и правкой этого файла можно добиться необходимого для ваших нужд разбиения. Эти действия более подробно описаны на сайте freesource.info.

Автоматическая установка осуществляется подкладыванием в каталог Metadata двух файлов: файла с профилями разбивки (из этих профилей нужен только один) и файла autoinstall.scm, в который вставлены вызовы модуля разбивки с применением соответствующего профиля.

Теперь достаточно передать ядру (в настройках PXE) параметр ai (autoinstall), чтобы при установке инсталлятор проверял каталог Metadata, копировал эти два файла и не делал никаких запросов к пользователю.

В силу специфичности установки по сети после окончания установки машина может зависнуть на этапе размонтирования дисков.После этого нужно просто ее перезагрузить. Единственное, что точно не стоит делать -- не стоит ставить загрузку по сети вариантом по умолчанию, так как машина может и не зависнуть, а в этом случае она снова загрузится по сети и поставит всю систему заново.

Возвращаясь к общей теме, взглянем на проделанную нами работу: создан сервер, на котором лежат все нужные пакеты, например, дистрибутив Мастер или целый branch. Этот сервер с помощью dhcp раздает всем сетевые настройки, на нем, возможно, работает маршрутизатор и\или прокси. Фактически, мы сделали возможной не только автоматическую настройку клиентов, но и автоматическую установку какого-то набора ПО (например, нового дистрибутива). Однако кроме этого может понадобиться еще настройка устанавливаемого набора ПО под соответствующие нужды. На данном этапе автоматизация - это автоматическая установка именно какого-то одного конкретного дистрибутива с весьма фиксированным набором "задач". Для решения любой из них дистрибутив поставит соответствующие пакеты. Почему-то предполагалось, что учителю не нужно самостоятельно выбирать программы для установки и самостоятельно удалять ненужные -- происходила установка сразу всего набора. Однако опыт показывает, что люди, которые привыкли работать с Windows© , зачастую теряются при большом количестве ПО, одновременно доступном для использования.


Сведения о ресурсах

Готовность (%)

Продолжительность (ак. ч.)

Подготовка (календ. ч.)

Полный текст (раб. д.)

Предварительные знания

Level

Maintainer

Start date

End date

53

1

1

1

1

ArtemSerebriyskiy, GeorgeTarasov, VsevolodKrishchenko


CategoryLectures CategoryPspo CategoryMpgu CategoryUneex

PspoClasses/080722/03NetInstall (последним исправлял пользователь eSyr 2009-03-23 01:56:42)