В файле comps указывается только часть имени файла, а именно, package, при том, что полное имя имеет форму package-version-build.rpm. Это означает, что созданный для некоторой версии Red Hat Linux файл comps может быть использован и для следующих версий. Раздел для одного типа пакетов в данном файле имеет следующую структуру:
номер тип пакет ... endТаким образом, список каждого типа начинается с его номера и названия, далее перечисляются пакеты данного типа, и в конце ставится слово end.
Всем без исключения требуются пакеты из раздела Base (базовые) в этом файле. Другие разделы, в зависимости от потребностей пользователя, могут быть модифицированы или удалены. Например, имеется три вида программ Networked Stations (работа в качестве рабочей станции): "Plain" (обычная), "Management" (обслуживаемая) и "Dial-up" (соединение по телефону). Исследование трех соответствующих разделов показывает, что многие пакеты указаны во всех трех списках, но некоторые имеются только в одном из списков. Если создается Dial-up Networked Station (рабочая станция с соединением по телефону), то можно удалить разделы "Plain" и "Management" и все пакеты, которые встречаются только там. Наоборот, если требуется установить только основные сетевые функции для рабочей станции, подключенной к сети, то другие разделы, а также встречаемые только в них пакеты, можно из файла удалить. Необходимо убедиться, что будут установлены все перечисленные пакеты данного типа. Если на компьютере имеются некоторые специальные пакеты, которых нет в дистрибутивах Red Hat, их надо добавить в один из уже имеющихся списков (найдя подходящий), а не создавать специально для них новый тип.
Поскольку список пакетов каждого типа содержит только имя пакета, а не полное имя файла package-name-version-build.rpm, все обновленные и модернизированные версии пакетов, которые имеются в каталоге с именем updates по адресу
ftp://ftp.redhat.com/pub/redhat/current/updatesили по адресу одного из зеркал сайта Red Hat, могут быть подставлены вместо исходных версий, которые находятся в каталоге /RedHat/RPMS дистрибутива. Процедура установки, вообще говоря, не зависит от версии пакета. Единственное требование -- не допустить возникновения конфликтов зависимости. Когда какой-либо пакет RPM собирается, сама программа RPM пытается определить, какие еще пакеты должны быть установлены для того, чтобы данный пакет нормально работал. При этом пользователь может добавить связи зависимости, которые программа RPM может и не заметить -- здесь можно немного поэкспериментировать. Например, один из способов определить зависимости для данного пакета (при наличии пользовательского доступа к серверу NFS) -- это войти на сервер посредством программ telnet или login (или же, если имеется лазерный диск -- смонтировать (mount) его и войти в каталог RedHat/RPMS) и сделать запрос о зависимостях для данного пакета следующей командой:
[root@happy RPMS] rpm -q -p -R bash-1.14.7-1.i386.rpm libc.so.5 libtermcap.so.2Опция "-q" устанавливает в программе rpm режим запросов, опция "-p" сообщает, что нужно просматривать пакеты, которые еще не установлены, опция "-R" дает указание перечислить отношения зависимости. В данном примере оказывается, что из необходимых пакетов еще не установлены libc.so.5 и libtermcap.so.2. Поскольку программы libc и termcap являются частью базового программного обеспечения (как и bash), следует убедиться, что пакеты libc и libtermcap установлены, и лишь потом устанавливать bash. Когда вся базовая система будет установлена и установочная программа завершит работу, систему можно загрузить. При необходимости можно устанавливать дополнительные пакеты в систему Red Hat Linux даже если программа установки сообщает, что не смогла установить пакет, поскольку его зависимости не были удовлетворены.
Таблица на стр.
описывает типы программ, которые есть в файле /base/comps в версии
4.0 дистрибутива Red Hat Linux.
Тип | Необходим? | Комментарий |
BASE | Да | Базовая система; нельзя |
модифицировать при | ||
установке. | ||
C Development | Весьма | Минимальный вариант |
рекомендуется | требуется для компилирования | |
ядра системы | ||
Development Libs | Весьма | (need the minimal system |
рекомендуется | to compile a kernel). | |
C++ Development | Не обязательный | Программирование на C++. |
Networked | Рекомендуется; | Требуется как для работы |
Workstation | необходим для | при подключении Ethernet, |
других программ | так и для телефонных линий. | |
для работы в сети | Нельзя модифицировать при | |
установке. | ||
Anonymous FTP/ | Не обязательный | Если система Linux будет |
Gopher Server | выступать FTP-сервером или | |
сервером Gopher. | ||
Web Server | Не обязательный | Полезен для программирования |
www-серверов и обслуживания | ||
www-страниц. | ||
Network Management | Не обязательный | Есть дополнительные средства |
Workstation | как для подключения Ethernet, | |
так и через телефонную линию. | ||
Dialup Workstation | Рекомендуется | Необходим если связь будет |
через телефонную линию. | ||
Game Machine | Не обязательный | Игры ... |
Multimedia Machine | Не обязательный | Нужен если есть средства |
Multimedia. | ||
X Window System | Не обязательный | Если необходима X Window. |
X Multimedia | Не обязательный | Нужен если есть средства |
Support | Multimedia. | |
TeX Document | Не обязательный | Рекомендуется устанавливать |
Formatting | целиком. | |
emacs | Рекомендуется | Истинный Редактор. |
emacs with X support | Рекомендуется | Истинный Редактор для X, |
требует X. | ||
MS-DOS and | Не обязательный | Связь с системами MS-DOS и |
Microsoft Windows | Microsoft Windows -- | |
Connectivity | без комментариев. | |
Extra Documentation | Рекомендуется | Всегда устанавливайте |
систему экранной документации | ||
(manual pages)! |
Тип | Необходим? | Комментарий |
BASE | Да | Базовая система; нельзя |
модифицировать при установке. | ||
C Development | Весьма рекомендуется | Минимальный вариант требуется |
для компилирования ядра системы | ||
Development Libs | Весьма рекомендуется | (need the minimal system |
to compile a kernel). | ||
C++ Development | Не обязательный | Программирование на C++. |
Networked Workstation | Рекомендуется; | Требуется как для работы при |
необходим для других | подключении Ethernet, так и для | |
программ для работы в | телефонных линий. Нельзя | |
сети | модифицировать при установке. | |
Anonymous FTP/Gopher | Не обязательный | Если система Linux будет выступать |
Server | FTP-сервером или сервером Gopher. | |
Web Server | Не обязательный | Полезен для программирования |
www-серверов и обслуживания | ||
www-страниц. | ||
Network Management | Не обязательный | Есть дополнительные средства как для |
Workstation | подключения Ethernet, так и через | |
телефонную линию. | ||
Dialup Workstation | Рекомендуется | Необходим если связь будет через |
телефонную линию. | ||
Game Machine | Не обязательный | Игры ... |
Multimedia Machine | Не обязательный | Нужен если есть средства Multimedia. |
X Window System | Не обязательный | Если необходима X Window System. |
X Multimedia Support | Не обязательный | Нужен если есть средства Multimedia. |
TeX Document Formatting | Не обязательный | Рекомендуется устанавливать целиком. |
emacs | Рекомендуется | Истинный Редактор. |
emacs with X support | Рекомендуется | Истинный Редактор для X, требует X. |
MS-DOS and Microsoft | Не обязательный | Связь с системами MS-DOS и |
Windows Connectivity | Microsoft Windows -- без комментариев. | |
Extra Documentation | Рекомендуется | Всегда устанавливайте систему |
экранной документации (manual pages)! |