Читаем Погружение в Salix полностью

PACKAGE NAME: caja-extensions-1.8.0-x86_64-1gv.txzPACKAGE LOCATION: ./salix/mate PACKAGE SIZE (compressed): 78 K PACKAGE SIZE (uncompressed): 312 K PACKAGE REQUIRED: atk,bzip2,cairo,cxxlibs|gcc-g++,dconf,expat,fontconfig,freetype,gcc,gdk-pixbuf2,glib2,gtk+2,harfbuzz,icu4c,libX11,libXau,libXcomposite,

libXcursor,libXdamage,libXdmcp,libXext,libXfixes,libXi,libXinerama,libXrandr,libXrender,libXxf86vm,libdrm,libffi,libpng,libxcb,mate-desktop,mate-file-manager,mesa,pango,pixman,startup-notification,udev,xcb-util,zlib PACKAGE CONFLICTS: PACKAGE SUGGESTS: ...

Можно видеть, что она включает в себя не только «жёсткие» зависимости (PACKAGE REQUIRED), но может описывать и зависимости опциональные («мягкие» – PACKAGE SUGGESTS), а также конфликтующие пакеты, если те и другие имеются (в примере их нет). Именно благодаря этой метаинформации slapt-get может не только отслеживать зависимости пакетов при их установке, но и разрешать их автоматически.

И тут читатель вправе задать вопрос: если «специфическая» часть репозитория охватывает меньшинство пакетов Salix, а большинство их берётся с зеркала репозитория Slackware, то как зависимости контролируются для них? Ведь там в сериях пакетов мы не видели и намёка на описания зависимостей.

Для ответа на этот вопрос достаточно обратиться к каталогу /x86_64/slackware-14.1, родительскому по отношению к тому, что был приведён на рис. 2. И там обратить внимание на подкаталог dep.

Рисунок 6-4. Основные каталоги ветки Slackware

Зайдя в него, можно обнаружить множество файлов с маской *.dep – по суммарному количеству пакетов в ветке Slackware. В них-то и описаны зависимости для пакетов, заимствованных из прародительского репозитория, ни о каких зависимостях и не подозревающего. Например, в файле zsh.dep можно увидеть следующее:

gdbm,ncurses

Наличие подкаталога с файлами зависимостей – второе (наряду с составом пакетов) отличие ветки Slackware в репозитории Salix отличие последнего от официального репозитория «головного» дистрибутива.

Ну а вынесены эти файлы в отдельный подкаталог из соображений, можно сказать, этических: дабы сохранить структуру ветки, заимствованной из Slackware, в неприкосновенности. То есть подкаталог /x86_64/slackware-14.1/deps – своего рода мега-патч для репозитория, обеспечивающий контроль зависимостей в хранилище пакетов, изначально на это не рассчитанном.

Заодно можно ответить и на другой вопрос: почему slapt-get не получил широкого распространения в самой Slackware и, за некоторыми исключениями, в её клонах? Первая часть ответа очевидна: в официальном репозитории исходного дистрибутива никаких описаний зависимостей не содержится. И в этом случае slapt-get теряет большинство своих преимуществ – более эффективной системой управления пакетами оказывается slackpkg. Для разработчиков же любых клонов Slackware включить slapt-get в штатный комплект своего дистрибутива недостаточно: надо также создать репозиторий с поддержкой зависимостей, а главное – поддерживать его в актуальном состоянии. Что, понятно, является нелёгкой и не очень увлекательной работой, к которой мало кто из энтузиастов оказался готов. Насколько я знаю, единственный, кроме Salix, дистрибутив, где такая работа ведётся – это Vector Linux. Но он и создавался изначально как система, предназначенная, в том числе, и для коммерческого распространения.

Настройка slapt-get

Теперь, зная, как устроены репозитории Salix, можно вернуться к утилите slapt-get – точнее, к её настройке. Потому что большая часть последней – как раз и есть обеспечение доступа к репозиториям.

Все настройки slapt-get хранятся в файле /etc/slapt-get/slapt-getrc. Это простой текстовый файл, который можно условно разделить на три неравные секции.

Первая секция самая маленькая, и состоит из одной строки, определяющей каталог для локального кеша репозиториев и мета хранения устанавливаемых пакетов. По умолчанию это

WORKINGDIR=/var/slapt-get

И менять её без веских оснований не следует (я таких оснований не вижу). А вот посмотреть на её содержимое не вредно:

$ ls /var/slapt-getpackage_data patches/ salix/ slackware64/

Самое главное здесь – файл package_data: это «интегрированная» локальная копия файлов PACKAGES.TXT всех подключённых репозиториев, создаваемая командой

$ sudo slapt-get —update

Тот самый файл, без которой slapt-get отказывается выполнять какие-либо иные действия.

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

Вторая секция также содержит единственную строку, хотя и несколько более длинную:

^rootuser-settings,^zzz-settings.*,-i?86-

Это – те самые исключения, то есть маски имён пакетов, не затрагиваемых обновлениями по команде

$ sudo slapt-get --upgrade

Перейти на страницу:

Похожие книги

Полное руководство по Microsoft Windows XP
Полное руководство по Microsoft Windows XP

В книге известного американского автора описывается среда ОС Windows XP и принципы ее функционирования, приведен сравнительный анализ Windows XP с предшествующими версиями операционной системы Windows. Рассматриваются вопросы применения и модификации нового интерфейса с целью получения прямого доступа ко всем функциям Windows XP обсуждаются варианты подключения к компьютерным сетям. Несколько разделов посвящены работе с реестром и конфигурационными файлами, мультимедийным функциям и разнообразным системным службам, а также методам решения проблем с программным обеспечением и оборудованием. Особое внимание уделено обеспечению безопасности операционной системы.Издание адресовано пользователям и сетевым администраторам, желающим активно применять возможности операционной системы Windows XP (в том числе и недокументированные).

Джон Поль Мюллер , Питер Нортон

ОС и Сети, интернет / ОС и Сети / Книги по IT
Архитектура операционной системы UNIX (ЛП)
Архитектура операционной системы UNIX (ЛП)

Настоящая книга посвящена описанию внутренних алгоритмов и структур, составляющих основу операционной системы (т. н. «ядро»), и объяснению их взаимосвязи с программным интерфейсом. Таким образом, она будет полезна для работающих в различных операционных средах. При работе с книгой было бы гораздо полезнее обращаться непосредственно к исходному тексту системных программ, но книгу можно читать и независимо от него.  Во-вторых, эта книга может служить в качестве справочного руководства для системных программистов, из которого последние могли бы лучше уяснить себе механизм работы ядра операционной системы и сравнить между собой алгоритмы, используемые в UNIX, и алгоритмы, используемые в других операционных системах. Наконец, программисты, работающие в среде UNIX, могут углубить свое понимание механизма взаимодействия программ с операционной системой и посредством этого прийти к написанию более эффективных и совершенных программ.

Морис Дж Бах , Морис Дж. Бах

ОС и Сети, интернет / ОС и Сети / Книги по IT
Информация. Собственность. Интернет. Традиция и новеллы в современном праве
Информация. Собственность. Интернет. Традиция и новеллы в современном праве

Книга обобщает многолетний опыт соавторов в области правового регулирования информационных отношений, а также их размышления о путях развития современного (как отечественного, так и зарубежного) права в контексте глобальных изменений, которые сопутствуют формированию информационного общества.Центральная проблема, которой посвящена книга — соотношение "информации" (сравнительно нового объекта правового регулирования) и "собственности" (юридического института с многовековой историей). Особое внимание уделяется историческому аспекту: прослеживая эволюцию в толковании данных понятий, авторы представляют на суд читателя выявленные проблемы и пути их решения. При рассмотрении вопросов, связанных с правовым регулированием Интернета, авторы опираются на новейшие зарубежные исследования по данной тематике. Завершает книгу критический анализ действующего российского законодательства в информационной сфере.Книга снабжена развернутой библиографией российских и зарубежных источников.В Приложении публикуется перевод Закона США "О свободе информации".Книга предназначена для юристов, работающих в сфере использования информационных технологий, и специалистов в области законотворчества.

Елена Анатольевна Войниканис , Михаил Владимирович Якушев

ОС и Сети, интернет / Юриспруденция / Интернет / Образование и наука / Книги по IT