Различия между версиями 3 и 4
Версия 3 от 2008-07-09 22:47:05
Размер: 10051
Редактор: MaximByshevskiKonopko
Комментарий:
Версия 4 от 2008-07-09 22:57:22
Размер: 9636
Редактор: MaximByshevskiKonopko
Комментарий:
Удаления помечены так. Добавления помечены так.
Строка 11: Строка 11:
Настройки DHCP для загрузки тонких клиентов. Посмотрим ещё раз /etc/dhcp/. Тут присутствует внешняя сеть и развеситстый блок для передачи настроек во внутреннюю сеть. Из всех настроек лектор выделил бы три интересных: Настройки DHCP для загрузки тонких клиентов. Посмотрим ещё раз /etc/DHCP/. Тут присутствует внешняя сеть и развеситстый блок для передачи настроек во внутреннюю сеть. Из всех настроек лектор выделил бы три интересных:
Строка 13: Строка 13:
 * Интересное начинается в конце. Посмтрим на if. Речь о чём: в процессе загрузки по PXE клиент получает несколько настроек, в числе которых IP, машрутизация, dns. Крое того, предоставляется имя файла на сервере tftp с загрузчиком. К какому серверу она обращается? К next-server. Обратите внимание, что параметр filename встречается трижды: формат конфига dhcp довольно сложный, и тут могут встречаться условные операторы. В данном случае, условный оператор выбирает разные загрузочные файлы в зависимости от клиента.  * Интересное начинается в конце. Посмтрим на if. Речь о чём: в процессе загрузки по PXE клиент получает несколько настроек, в числе которых IP, машрутизация, dns. Крое того, предоставляется имя файла на сервере tftp с загрузчиком. К какому серверу она обращается? К next-server. Обратите внимание, что параметр filename встречается трижды: формат конфига DHCP довольно сложный, и тут могут встречаться условные операторы. В данном случае, условный оператор выбирает разные загрузочные файлы в зависимости от клиента.
Строка 20: Строка 20:
Настройки tftp. Он по умолчанию запускатеся. Всё, что можно при помощи tftp сделать --- скачать определённый файл. Если у нас работает pxe, то скачивается pxelinux.0. Это загрузчик, часть syslinux. Сам pxelinux... что он делает, после того, как он загружается на рабочей машине. Он первым делом пытается скачать конфиг. Сначала он перебирает конфиги с ip и мак-адресом. В /var/lib/tftpboot/ltsp/i586/ лежат все файлы, которые отдаются по tftp, в pxelinux.cfg/default лежит дефолтовый конфиг. Посмтрим на него. Синтаксис у него такой же, как и везде в syslinux. Мы видим, что ядро специфическое, используется специфический root, строчка nfsroot указывает, какой корень подкл. по сети. Настройки tftp. Он по умолчанию запускатеся. Всё, что можно при помощи tftp сделать --- скачать определённый файл. Если у нас работает pxe, то скачивается pxelinux.0. Это загрузчик, часть syslinux. Сам pxelinux... что он делает, после того, как он загружается на рабочей машине. Он первым делом пытается скачать конфиг. Сначала он перебирает конфиги с IP и мак-адресом. В /var/lib/tftpboot/ltsp/i586/ лежат все файлы, которые отдаются по tftp, в pxelinux.cfg/default лежит дефолтовый конфиг. Посмтрим на него. Синтаксис у него такой же, как и везде в syslinux. Мы видим, что ядро специфическое, используется специфический root, строчка NFSroot указывает, где находится корневая ФС.
Строка 22: Строка 22:
Это устаревшая технология. Лектор брал обыкновенное ядро, брал обыкновенный initrd с сетевыми модулями, запускался mandrake'вский propagator, который монтировал по сети всё и грузился. В принципе, вовсе не обязательно вкомпилировать NFS-клиент в ядро, можно сделать аналогичный конфиг с обычным ядром.
Строка 24: Строка 24:
после чего что происходит --- грузится ядро, вирт. диск, подкл. ФС по сети и оттуда происх. старт терм. клиента. После чего что происходит --- грузится ядро, initrd, подключается корневая ФС по сети и оттуда происходит дальнейший старт клиента.
Строка 26: Строка 26:
Возвращаемся к тому, что происх. дальше. Дальше происх. автоматическое обновление DNS, значит, DNS тоже настроен. В качестве DNS-сервера используется avahi-daemon. Возвращаемся к тому, что происх. дальше. Дальше происходит автоматическое обновление DNS, значит, DNS тоже настроен. В качестве DNS-сервера 'каким-то образом' используется avahi-daemon.
Строка 30: Строка 30:
##Есть некое взаимодействие между службой, которое занимается раздачей имён и dhcp. Оно сделано через avahi, про которое будет когда-то потом. ##Есть некое взаимодействие между службой, которое занимается раздачей имён и DHCP. Оно сделано через avahi, про которое будет когда-то потом.
Строка 32: Строка 32:
Что ещё не псмотрели? NFS. Там в конфиге было настроено подключение сетевого диска. Делается это след. образом: в линуксе по умолчанию (эт ещё из юникс-систем досталось) для подключения сетевых томомв используется nfs? network file system, это протокол исп. ФС через сеть. Отличительной особенностью NFS являются две вещи: во-первых, он реализован поверх udp с соотв. ограничениями udp. То есть, nfs-клиент и nfs-сервер обмениваются друг с другом датаграммами, и отт факт, что операция записи не прошла или что случилось, этот факт отслеживается на уровне прикладнм, а не транспортном. В этом смысле, если покопаться в nfs, то идивим мног вещей, в частности, nfs является идиопатентной(??), то есть несклоько одинаковых действиях выполняются как одна. С другой стороны, это неплохая штука, если не принимать во внимание блокировки по записи. Раньше никаких блокировок не было, потом появился nfslockd. Вторая собенность --- уровень доверия nfs вынесен на уровень ip. То есть машина с таким-то ip либо имеет доступ к nfs, либо нет. Так было в nfs 2---3, так же вроде nfs 4. Когда говорится хост --- читай рут на хосте. Другое дело, что в случае тонких клиентов мы имеем отдавать кому угодно ФС, но только на чтение, но это вполне достаточно. Соответственно, настройка nfs-сервера, программы, которая раздаёт nfs по сети, довольно простая. Слева путь, справа список хостов и параметры в скобках через запятую. Если списка хостов нет, то отдаётся всем. ro --- readonly, no_root_squash --- если приходит запрос от клиента с id=0, то применяются права nobody. Если all_squash, то все --- nobody. Но, опять же, запросы только на чтение. Сервис, который обеспечивает nfs, называется nfsd, внутри себя он состоит из нескльких. Поскольку в терм. классе, где только один сервер, и все остальные терминалы, то используется unfsd, в котором кое-чего нет. Для того, чтобы он заработал, надо установить соотв. пакет. Что ещё не посмотрели? NFS. На NFS сервера находятся корневые ФС клиентов. Делается это следующим образом: в линуксе по умолчанию (это ещё из юникс-систем досталось) для подключения сетевых томов используется NFS, network file system, специальный протокол сетевой ФС. Отличительной особенностью NFS являются две вещи: во-первых, он реализован поверх udp с соответствующими ограничениями udp. То есть, NFS-клиент и NFS-сервер обмениваются друг с другом датаграммами, и тот факт, что операция записи не прошла или что случилось, отслеживается на уровне прикладном, а не транспортном. Однако внутри NFS есть много интересного: NFS является идиопатентной, то есть несколько одинаковых действиях выполняются как одно. Единственная трудно решаемая проблема --- блокировки. Раньше никаких блокировок не было, потом появился NFSlockd. Вторая особенность --- уровень доверия NFS вынесен на уровень IP. То есть машина с таким-то IP либо имеет доступ к NFS, либо нет. Так было в NFS 2---3, так же вроде NFS 4. Когда говорится хост --- читай пользователь root на хосте. Другое дело, что в случае тонких клиентов мы отдаём кому угодно ФС, но только на чтение, то есть всё в порядке. Соответственно, настройка NFS-сервера, программы, которая раздаёт NFS по сети, довольно простая. Слева путь, справа список хостов и параметры в скобках через запятую. Если списка хостов нет, то отдаётся всем. ro --- readonly, no_root_squash --- отключение squashing'а, то есть обработки запросов от клиентов с UID=0 как запросов от пользователя nobody. Но, опять же, запросы только на чтение. Сервис, который обеспечивает NFS, называется unfsd, который представляет из себя урезанную версию обычного nfsd.
Строка 40: Строка 40:
|| 8 || 1 || 1 || 1 || || 1 || MaximByshevskiKonopko, DmitryChistikov || || || || 13 || 1 || 1 || 1 || || 1 || MaximByshevskiKonopko, DmitryChistikov || || ||

Терминальный сервер со стороны администратора

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

Альтератор. Изменился раздел настройки сети.

Что нужно организовать для сетевой загрузки:

Настройки DHCP для загрузки тонких клиентов. Посмотрим ещё раз /etc/DHCP/. Тут присутствует внешняя сеть и развеситстый блок для передачи настроек во внутреннюю сеть. Из всех настроек лектор выделил бы три интересных:

  • Обратите внимание, что здесь присусттвует адрес next-server (это тот tftp-сервер, с которого клиенты получают загрузочные файлы, вполне может не совпадать с DHCP-сервером)
  • Интересное начинается в конце. Посмтрим на if. Речь о чём: в процессе загрузки по PXE клиент получает несколько настроек, в числе которых IP, машрутизация, dns. Крое того, предоставляется имя файла на сервере tftp с загрузчиком. К какому серверу она обращается? К next-server. Обратите внимание, что параметр filename встречается трижды: формат конфига DHCP довольно сложный, и тут могут встречаться условные операторы. В данном случае, условный оператор выбирает разные загрузочные файлы в зависимости от клиента.
  • На самом деле, на этом не заканчиваются те настройки, которые можно передать по DHCP. При сетевой загрузке наличествует такая штука, как подключение сетевых дисков. По сети подключается диск, который передаётся параметром option root_path. В этом каталоге нахдоится корневая ФС, которая подключается сети как корневая ФС для клиента.

Если у вас не работает загрузка по сети (ваша сетевая карта не поддерживает PXE), то можно поступить следующим образом:

  • Купить карточку с PXE
  • воспользоваться rom-o-matic.net (он же etherboot). Он позволяет изготовить bootrom для сетевой карты. Короче говоря, для конкретной карты можно сгенерировать образ, который можно доставить на компьютер (на своп, на сидюк, в загрузочную запись). Лектор сам проделывал такое в Переславле.

Настройки tftp. Он по умолчанию запускатеся. Всё, что можно при помощи tftp сделать --- скачать определённый файл. Если у нас работает pxe, то скачивается pxelinux.0. Это загрузчик, часть syslinux. Сам pxelinux... что он делает, после того, как он загружается на рабочей машине. Он первым делом пытается скачать конфиг. Сначала он перебирает конфиги с IP и мак-адресом. В /var/lib/tftpboot/ltsp/i586/ лежат все файлы, которые отдаются по tftp, в pxelinux.cfg/default лежит дефолтовый конфиг. Посмтрим на него. Синтаксис у него такой же, как и везде в syslinux. Мы видим, что ядро специфическое, используется специфический root, строчка NFSroot указывает, где находится корневая ФС.

В принципе, вовсе не обязательно вкомпилировать NFS-клиент в ядро, можно сделать аналогичный конфиг с обычным ядром.

После чего что происходит --- грузится ядро, initrd, подключается корневая ФС по сети и оттуда происходит дальнейший старт клиента.

Возвращаемся к тому, что происх. дальше. Дальше происходит автоматическое обновление DNS, значит, DNS тоже настроен. В качестве DNS-сервера 'каким-то образом' используется avahi-daemon.

Что ещё не посмотрели? NFS. На NFS сервера находятся корневые ФС клиентов. Делается это следующим образом: в линуксе по умолчанию (это ещё из юникс-систем досталось) для подключения сетевых томов используется NFS, network file system, специальный протокол сетевой ФС. Отличительной особенностью NFS являются две вещи: во-первых, он реализован поверх udp с соответствующими ограничениями udp. То есть, NFS-клиент и NFS-сервер обмениваются друг с другом датаграммами, и тот факт, что операция записи не прошла или что случилось, отслеживается на уровне прикладном, а не транспортном. Однако внутри NFS есть много интересного: NFS является идиопатентной, то есть несколько одинаковых действиях выполняются как одно. Единственная трудно решаемая проблема --- блокировки. Раньше никаких блокировок не было, потом появился NFSlockd. Вторая особенность --- уровень доверия NFS вынесен на уровень IP. То есть машина с таким-то IP либо имеет доступ к NFS, либо нет. Так было в NFS 2---3, так же вроде NFS 4. Когда говорится хост --- читай пользователь root на хосте. Другое дело, что в случае тонких клиентов мы отдаём кому угодно ФС, но только на чтение, то есть всё в порядке. Соответственно, настройка NFS-сервера, программы, которая раздаёт NFS по сети, довольно простая. Слева путь, справа список хостов и параметры в скобках через запятую. Если списка хостов нет, то отдаётся всем. ro --- readonly, no_root_squash --- отключение squashing'а, то есть обработки запросов от клиентов с UID=0 как запросов от пользователя nobody. Но, опять же, запросы только на чтение. Сервис, который обеспечивает NFS, называется unfsd, который представляет из себя урезанную версию обычного nfsd.


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

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

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

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

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

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

Level

Maintainer

Start date

End date

13

1

1

1

1

MaximByshevskiKonopko, DmitryChistikov


CategoryLectures CategoryPspo CategoryMpgu CategoryUneex

PspoClasses/080709/03TerminalServer (последним исправлял пользователь MaximByshevskiKonopko 2008-10-09 21:39:51)