Различия между версиями 3 и 5 (по 2 версиям)
Версия 3 от 2008-08-01 14:21:23
Размер: 14889
Редактор: eSyr
Комментарий:
Версия 5 от 2008-08-06 00:17:16
Размер: 10352
Редактор: PavelSutyrin
Комментарий: кусочек
Удаления помечены так. Добавления помечены так.
Строка 3: Строка 3:
Первая тема связана вот с чем. Дпустим, у нас есть машина (сервер), которая содержит дивидюк, есть ПСП, в котором на целом дивидюке мастер или терминал, или вы привезли полностью школьный бранч, или ветку 4.0, кроче говоря, какй-то набор пакетов, адекватных данному дистрибутиву. Есть такой сервер, на который вы всё свалили, если дивидюк, то переписали, или ,если бран, то несклько дивидюкв повставляли. И вы хотите польхзваться этим набором как хранилищем. Первый способ --- зарегистрировать этот дивидюк как дивидюк с хзранилищем, во время инст. Этт путь плох одним --- а если на машине нет дивидюка? Путь втрой --- раскомментировать соотв. настройки в /etc/apt/sources.list.d/ и ходить в интернет за пакетами. Ходить в интернет стоит денег, иногда его нет, и интернет бывает медленный. Как правило, либо эт медленно, либо это денег стоит. Есть исключение в виде города Мсквы, но, в общем, так. Что касается школ, то в них этт интернет бывает либ не всегда, либо так... Есть третий путь: предлп., есть жти дивидюки, предп., свалил я их на диск большой машины, которую назвал сервером. Ещё вариант --- привезли бранч, и потом по тощему каналу его обновляете. Есть ещё такой вариант, когда ... . Начнём с ситуации такой: пришёл псп, есть компы без дивидюка, и хотите отдавать дивидюк с мастером. ## ~00:10:00 of 080722
Строка 5: Строка 5:
Маленькая хитрость про маунт: можно смонтировать образ (если дивидюка нет, а есть хард с образм): mount -o loop . братите внимание, что команда маунт сама определила тип файловй системы в образе. На самом диске не так и много: есть каталог ALTLinux, есть каталог с документацие, есть директрия isolinux для загрузки с дивидюка. братите внимание, что в корне лежит самый большой файл altinst, эт опять же образ, в ктором установщик со своими файлами. Почему так? Потому что во-первых, она упакована, в-вторых, iso9660 имеет очень мнго ограничений, в тм числе на имена файлв и их длину. Поэтму намнго проще закатать туда браз с нрмальной ФС. Мы к этму вернёмся при установке по сети. Допустим, есть машина (назовём ее сервер), которая содержит DVD-привод, есть один или несколько DVD-дисков, на которых
комплект ПСПО, или дистрибутив Мастер или Терминал, или школьный branch так
называемый, или ветка 4.0, вобщем, какой-то набор пакетов, адекватных данному дистрибутиву (если они не адекватны ему, то вряд ли стоит организовывать из них
репозиторий). На этот сервер мы переписали содержимое всех привезённых
DVD-дисков, и дальше хотим пользоваться всем этим как хранилищем.
Строка 7: Строка 11:
Придумаем, каким способом будем раздавать этт диск? По ftp. Чтобы в альте эт организовать, над поставить два пакета: ftp-сервер (vsftpd) и анонимный доступ. Дел в том, что в альте, традиционн уделяющему мнго внимания безопасеости, есть мног защиты от дурака, чтобы если человек поставил ftp-сервер, то не начало оно сразу раздавать всё с анонимусом, да и на запись. Поэтму надо поставить anonftpd, который дбавляет один файл, /var/ftp, после чего оно начинает нормально работать. Нужн проделать ещё три упражнения:
 * Нужно включить сам метадемон inetd: chkconfig xinetd on
 * Нужно включить сам vsftpd: chkconfig vsftpd on
 * В этом же файле (/etc/xinetd.conf) надо проверить, чтобы оно было не только для 127.0.0.1 (можно и нужно закомментировать эту строчку)
После чего можно зайти на ftp: lftp localhost
 * Зарегистрировать DVD-диск как таковой как носитель с хранилищем. Если на
 машине нет DVD-привода — не годится.
 * Раскомментировать настройки {{{/etc/apt/sources.list.d/}}} и ходить за пакетами только в Интернет. Интернета может не быть, он может быть медленный и стоить денег.
 * Если все диски переписаны на сервер и есть небыстрый, но, скажем, бесплатный интернет, по нему можно их потом обновлять, это немного (если не обновляется OpenOffice). Можно то или иное исключить из обновления, чтобы не качать лишнего.
Строка 13: Строка 16:
При работе с ftp исп. следующая дисц.: в каталоге ftp должен пдкаталог pub, где нахдятся публичные файлы. В дкументации по серверу ftp мжно прчитать много про настройку доступа пользователей. Итак, попробуем переписанные на жесткий диск пакеты предоставить всем
местным компьютерам как хранилище. Кстати, можно смонтировать даже не устройство, а
файл с образом. Например, нет DVD-привода, а есть переносной USB-винчестер с
образом интересующего нас DVD-диска.
Кстати, каталог {{{/media}}} предназначен для автоматического размещения точек
монтирования, а {{{/mnt}}} — для ручного их размещения. Смонтируем:
Строка 15: Строка 23:
Вообще говоря, уже сейчас можно этт каталог делать доступным в качестве хранилища нашего класса. Дступ по ftp сейчас разрешён... {{{
$mount -o loop disk_image.iso /mnt/iso
}}}

Эффект тот же, если бы мы смонтировали этот диск из DVD-привода.
Команда {{{mount}}} сама определила тип файловой системы ({{{iso9660}}}), а можно было
указать ключик {{{-t iso9660}}}, получилось бы точно также.

Что есть на диске?..

{{{
$ls -lh /mnt/iso
 total 132M
-r--r--r-- 1 root root 56M 2008-06-28 18:29 altinst
dr-xr-xr-x 5 root root 2,0K 2008-06-28 18:31 ALTLinux
dr-xr-xr-x 14 root root 4,0K 2008-06-28 18:31 Documentation
dr-xr-xr-x 3 root root 6,0K 2008-06-28 18:31 isolinux
-r--r--r-- 1 root root 8,3K 2008-06-18 15:24 license.ru.txt
-r--r--r-- 1 root root 3,7K 2008-06-18 15:24 license.txt
dr-xr-xr-x 2 root root 2,0K 2008-06-28 18:31 Metadata
-r--r--r-- 1 root root 25M 2008-06-28 18:28 netinst
-r--r--r-- 1 root root 52M 2008-06-28 18:27 rescue
-r--r--r-- 1 root root 205K 2008-06-18 15:24 RPM-GPG-KEY
}}}
Там не так уж много. Каталог {{{ALTLinux/}}} — хранилище
пакетов, каталог с документацией — текстовые файлы с лицензией, на тот
случае, если диск вставлен в компьютер с Windows, кое-что можно почитать.
{{{isolinux/}}} содержит
загружаемые файлы, чтобы организовать загрузку с CD/DVD, это часть пакета
{{{syslinux}}}, который умеет загружаться со всего, что шевелится.
Самый большой файл — это {{{altinst}}}.
Он тоже является файловой системой, его тоже можно подмонтировать, внутри
него находится файловая система с установщиком. Зачем так сделано?..
Во-первых, она упакована и занимает меньше места, во-вторых, файловая система
{{{iso9660}}} обладает рядом ограничений на имена файлов, которых в linux нет
(кстати, в именах файлов в linux могут быть любые символы, кроме {{{/}}},
который является разделителем каталогов, и символа с кодом 0), не сохраняет
в нужной мере права доступа к файлам (в том числе setuid и т.п.)

Придумаем, каким способом будем раздавать этот диск? По ftp.

## 00:26:40 (pause)
Строка 34: Строка 83:
##Кусок от 080731 ##Кусок от 080730
Строка 36: Строка 85:

Развёртывание ftp. Для уст. ftp-сервера необх. выполнить неск. операций.
 * Установка двух пакетов: пакет с фтп-сервером (vsftpd) и специальный пакет (anonftp). Таке раздление нужн вт для чего: фтп-серверов в репозитрии много, у них у всех есть общ. часть, а именно дерево каталогов, которые надо разворачивать в домашний каталог ftp, и чтобы неск. раз это не делать, оно вынесено в отд. пакет, кроме ого, это защита дурака в стиле альтлинукс
 * Уст. пакета ни к чему не ведёт, поск. vsftpd работает через xinetd. xinetd по умолчанию тв. только на запросы с лок. машины, и в его конфиге (.уес.чштуевюсщта) надо закомм. строчку only from 127.0.0.1
 * Дальше можно сделать chkconfig --list, chkconfig отвечает за настр. разных сервисов. По умолч. всё в xinetd выключено.
Включим vsftpd: chkconfig vsftpd on, после чего перезапустить xinetd. Если ни одна служба в нём не запущена, то он молча останавливается
 * После чего мы мжем туда подкл. по ftp, и увидим, что ничего там нет.
Теперь туда можно складывать файлы, которые будут доступны с любой машины.

Далее обратимся к след. части марлезонского балета.
Строка 57: Строка 96:
Использовать ftp с логином и парлем польз. нехорошо. Разные клиенты требуют ввода логина и пароля, даже если он анонимный, в этом случае логин --- anonymous или ftp, пароль с @.

Этих ftp-серверов так много, во-первых, потому что там есть штуки, связанные с пользователем (это в первую чередь для того, чтобы отмазаться от того, что вы раздаёте что-то всем подряд). Есть другая довольно непр. картина: пусть у вас есть не очень мщная машина, кторая что0то раздаёт и есть разные категории машин. Напр, если кто-то подкл. по локальной сети, то приоритет высокий, а если по удалённой --- то низкой. В этом случае потребуются фишки настройки, где ограничивается количество соединений, сеансов.... Вторая прблема --- протокол ftp, гад, передаёт ip-адрес сервера прям на прикладном уровне. То есть, когда вы подкл. по ftp, то надо иметь ip одной из сторон, чтобы к ней подкл. и передать данные. ftp скорей всего придётся делать пассивныМ, но в жтом случае взн. прблема: по упр., 21, порту уст. соед. между клиентом и сервером, и клиент говорит, что хочет чего-то взять. Сервер после этого говорит ip и порт, по которому клиент сможет это взять. Если машина за натом, то далеко не каждый клиент способен это проигнорировать (например, мозилла не мжет). Пэтому у ftp-сервера должна быть взм. в зависимости от того, с каким ip клиент пришёл, раздавать ему сотв. ip. Лектор у себя это разруливал на урвне фаервлла. Но надо иметь в виду, что если
это не разрулить, т кто-то не сможет пдкл.

Строка 69: Строка 102:
|| 0 || 1 || 1 || 1 || || 1 || PavelSutyrin, ОльгаТочилкина, VsevolodKrishchenko || || || || 8 || 1 || 1 || 1 || || 1 || PavelSutyrin, ОльгаТочилкина, VsevolodKrishchenko || || ||

Организация локального репозитория

Допустим, есть машина (назовём ее сервер), которая содержит DVD-привод, есть один или несколько DVD-дисков, на которых комплект ПСПО, или дистрибутив Мастер или Терминал, или школьный branch так называемый, или ветка 4.0, вобщем, какой-то набор пакетов, адекватных данному дистрибутиву (если они не адекватны ему, то вряд ли стоит организовывать из них репозиторий). На этот сервер мы переписали содержимое всех привезённых DVD-дисков, и дальше хотим пользоваться всем этим как хранилищем.

  • Зарегистрировать DVD-диск как таковой как носитель с хранилищем. Если на машине нет DVD-привода — не годится.
  • Раскомментировать настройки /etc/apt/sources.list.d/ и ходить за пакетами только в Интернет. Интернета может не быть, он может быть медленный и стоить денег.

  • Если все диски переписаны на сервер и есть небыстрый, но, скажем, бесплатный интернет, по нему можно их потом обновлять, это немного (если не обновляется OpenOffice). Можно то или иное исключить из обновления, чтобы не качать лишнего.

Итак, попробуем переписанные на жесткий диск пакеты предоставить всем местным компьютерам как хранилище. Кстати, можно смонтировать даже не устройство, а файл с образом. Например, нет DVD-привода, а есть переносной USB-винчестер с образом интересующего нас DVD-диска. Кстати, каталог /media предназначен для автоматического размещения точек монтирования, а /mnt — для ручного их размещения. Смонтируем:

$mount -o loop disk_image.iso /mnt/iso

Эффект тот же, если бы мы смонтировали этот диск из DVD-привода. Команда mount сама определила тип файловой системы (iso9660), а можно было указать ключик -t iso9660, получилось бы точно также.

Что есть на диске?..

$ls -lh /mnt/iso
 total 132M
-r--r--r--  1 root root  56M 2008-06-28 18:29 altinst
dr-xr-xr-x  5 root root 2,0K 2008-06-28 18:31 ALTLinux
dr-xr-xr-x 14 root root 4,0K 2008-06-28 18:31 Documentation
dr-xr-xr-x  3 root root 6,0K 2008-06-28 18:31 isolinux
-r--r--r--  1 root root 8,3K 2008-06-18 15:24 license.ru.txt
-r--r--r--  1 root root 3,7K 2008-06-18 15:24 license.txt
dr-xr-xr-x  2 root root 2,0K 2008-06-28 18:31 Metadata
-r--r--r--  1 root root  25M 2008-06-28 18:28 netinst
-r--r--r--  1 root root  52M 2008-06-28 18:27 rescue
-r--r--r--  1 root root 205K 2008-06-18 15:24 RPM-GPG-KEY

Там не так уж много. Каталог ALTLinux/ — хранилище пакетов, каталог с документацией — текстовые файлы с лицензией, на тот случае, если диск вставлен в компьютер с Windows, кое-что можно почитать. isolinux/ содержит загружаемые файлы, чтобы организовать загрузку с CD/DVD, это часть пакета syslinux, который умеет загружаться со всего, что шевелится. Самый большой файл — это altinst. Он тоже является файловой системой, его тоже можно подмонтировать, внутри него находится файловая система с установщиком. Зачем так сделано?.. Во-первых, она упакована и занимает меньше места, во-вторых, файловая система iso9660 обладает рядом ограничений на имена файлов, которых в linux нет (кстати, в именах файлов в linux могут быть любые символы, кроме /, который является разделителем каталогов, и символа с кодом 0), не сохраняет в нужной мере права доступа к файлам (в том числе setuid и т.п.)

Придумаем, каким способом будем раздавать этот диск? По ftp.

В системе есть условно два места --- sources.list.d, где лежат уже готовые файлы, а другое --- sources.list, который является блее правильным местм для вписывания чего угодно. Туда пишем:

rpm ftp://10.30.5.1/pub ALTLinux disk base

Почему disk и base? Это дже устанвщик, у нег есть две стадия --- базовая система (base) и всякие дополнительные пакеты (disk).

Мы сейчас по-тупому скопирвали реп. с диска, а, вобще говоря. мы могли нарушить его структуру. Давайте его пересодерём. Для этого надо установить пакет apt-utils, и сказать genbasedir --topdir=/var/ftp/pub/ ALTLinux base disk --progress

После этой небыстрой операции поробуем ещё раз: failed to open file. Это было из-за того, что мы делали хардлинки, и genbasedir ругался на то, чт количеств хардлинков больше одного.

В итоге, можно свалить кучу пакетв, genbasedir генерирует ктаалог base, и всё рабтает.

Названия репозитриев --- прсто имена каталогов, а названия разделов в неск. местах используются: ... . В больш. случаев репоз. на сервере устроен так, что там тлько одна ветка.

Между прчим, тема закрыта.

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

В ПСПО при запущенной граф. оболочке все монтируется автоматом. При всовывании сдюка в дисковод оно открылсь. На самом деле оно там pmount, кидает вверх по дбусу сообщение об этом, если ктл-то его ловит, то он может, например, откр. файловый броузер.

Теперь надо из под рута скопировать содержимое исх. носителя в /var/ftp

После этого необх скахать genbase dir. Тут три параметра: месторасп. хранилища, название и его разделы. Зачем так (в идеале) --- если речь идёт о дистр. на неск. архитектур в одном и том е зранилище будут потребны неск. разделов, но не все сразу. В noarch содержатся пакеты, не завис. от арзитектуры. Именно поэтому есть такое двойное эшелонирвание.

Теперь на клиентских машинах надо настрить, чтобы испльзовалось новосозданное локальное хранилище: /etc/apt/sources.list, после чего apt-get update.


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

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

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

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

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

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

Level

Maintainer

Start date

End date

8

1

1

1

1

PavelSutyrin, ОльгаТочилкина, VsevolodKrishchenko


CategoryLectures CategoryPspo CategoryMpgu CategoryUneex

PspoClasses/080722/01LocalRepository (последним исправлял пользователь DmitryChistikov 2008-10-18 14:04:56)