Чтение онлайн

ЖАНРЫ

Погружение в Salix

Федорчук Алексей Викторович

Шрифт:

выведет длинный список, начинающийся так:

/usr/ /usr/bin/ /usr/doc/ /usr/doc/mozilla-firefox-24.5.0esr/ /usr/lib64/ /usr/lib64/firefox-24esr/

Цель

– -filelist
доступна только для инсталлированных пакетов.

Отдельной цели для обновления единичного пакета до его более свежей версии в slapt-get не предусмотрено. Это достигается с помощью всё той же цели

– -install
имя_пакета: если новая версия доступна в репозитории, то она будет установлена взамен старой, если нет – последует сообщение, что пакет имярек в обновлении не нуждается.

Ранее я упоминал опцию

– -reinstall
,
которая вместе с целью -i заменяет, при необходимости, установленный пакет другим его экземпляром той же версии:

$ sudo slapt-get --install --reinstall joe

Кроме того, все пакеты, установленные в системе, для которых доступны новые версии, можно обновить «гуртом» такой командой:

$ sudo slapt-get --upgrade

Важно, что общее обновление системы не затрагивает пакеты, внесённые в список так называемых исключений (excludes) – в их число входит, в частности, ядро системы, библиотеки поддержки формата ELF и некоторые другие компоненты, смена версий которых не всегда желательна. Правда, может обновить и их, однако для этого применителю потребуется задать опцию --ignore-excludes, что снижает вероятность, например, ошибки при загрузке вследствие несоответствия текущей версии ядра и той, что прописана в конфигурационном файле LILO.

Наконец, при выходе новой версии дистрибутива вовсе не обязательно заниматься переустановкой её «с нуля» – достаточно выполнить команду

$ sudo slapt-get --dist-upgrade

которая проделает эту работу автоматически.

Важно, что при установке пакета подтверждение на выполнение действий по умолчанию не запрашивается, а при удалении (и при тотальном апгрейде), напротив, требуется. Это положение можно изменить, указав в первом случае опцию

– -prompt
(она же
– p
), во втором --no-prompt (или
– y
).

И ещё одна важная опция для применителя, впервые сталкивающегося с утилитой slapt-get: -s, или --simulate. Как явствует из её имени, она имитирует выполнение установки, удаления или обновления пакетов, выводя сообщение об их результате, но не выполняет никаких действий. Так что в сомнительных случаях можно обратиться к ней.

Пара слов в заключение

Утилита slapt-get предусматривает ещё несколько целей (таких, как --clean – очистка локального кеша пакетов, или --autoclean – удаление пакетов устаревших). Есть в ней и ещё немного сопровождающих опций (например, --download-only – скачивание пакетов без их установки, что может быть полезным при переносе на машину, не имеющую подключения к Интернету). Однако я и не ставил своей целью написать полное руководство по slapt-get, тем более что таковое, в виде одноимённой man-страницы, давно написано. Тем не менее, сказанного, думаю, достаточно, чтобы сделать два вывода.

Вывод первый: не смотря на свою простоту и внешнюю непритязательность, утилита slapt-get справляется с задачами управления пакетами ничуть не хуже, чем утилиты семейства APT, косвенно послужившие её прообразом.

Вывод второй: своему успешному применению утилита slapt-get обязана не только своим достоинствам, но и репозиториям, специально подготовленным для работы с ней. Устройство репозиториев – очередная специфическая особенность дистрибутива Salix, которая будет рассмотрена в следующей главе.

Глава 6. Управление

пакетами: репозитории

В шестой главе рассказывается о сериях пакетов Slackware и их назначении, об устройстве репозиториев Salix и их отличиях от репозиториев прародительской системы, в частности – о способах, обеспечивающих в них контроль зависимостей. После этого рассматривается настройка утилиты slapt-get, и дан обзор зеркал репозиториев Salix, а также неофициальных репозиториев Slackware, которые также могут быть использованы в этом дистрибутиве.

Серии пакетов Slackware: вместо введения

Прежде чем перейти к описанию устройства репозиториев Salix, необходимо сказать несколько слов о существующим в Slackware и её клонах понятии серий пакетов.

Во всех развитых системах пакетного менеджмента существует понятие так называемых метапакетов (metapackages), хотя они носят разные имена, Во FreeBSD, из которой и пошло это понятие, они называются метапакетами и метапортами, в дистрибутивах, использующих формат пакетов deb – задачами (tasks), в openSUSE – шаблонами (patterns), в Fedora – группами (groups). Однако суть остаётся одна и та же. Метапакет – это список тем или иным образом связанных пакетов, которые могут быть установлены, обновлены и, в некоторых случаях, удалены одной командой.

В Slackware и её клонах (в том числе и в Salix) аналогом метапакетов являются серии или наборы пакетов (series или sets). Классический список таких серий, сформированный в незапамятные времена зарождения прародительской системы, включает следующие компоненты:

• a – минимальный набор пакетов для функционирования системы в консольном режиме;

• ap – консольные приложения и утилиты, выходящие за пределы необходимого минимума;

• d – инструментарий для разработки и сборки программ;

• e – GNU Emacs и всё, что имеет к нему отношение;

• f – различная общесистемная документация, включая FAQ и HOWTO;

• k – исходные тексты ядра Linux;

• kde – пакеты, в сумме образующие одноименную интегрированную среду и необходимые для её работы библиотеки;

• kdei – пакеты интернационализации для среды KDE и её приложений;

• l — библиотеки общего назначения, от общесистемной glibc до Qt и Gtk;

• n – программы для работы с сетью;

• t – TeX и всё, что с ним связано;

• tcl – интерпретатор языка TCL и связанный с ним инструментарий;

• x — оконная система X, то есть Xorg, включая X-сервер, драйверы устройств ввода-вывода и видеоподсистемы и так далее;

• xap – приложения графического режима, не входящие в базовую систему Xorg, включая оконные менеджеры;

• xfce – одноимённый интегрированный десктоп и его штатные приложения;

• y – древние консольные игры, идущие ещё из BSD-систем.

В Salix'е действенны все наборы материнской системы, однако есть и некоторые собственные:

• games – игры, заменяющие доисторический набор f (которого здесь нет);

• gnome – приложения для одноимённой среды, несколько лет назад исключённой из официального репозитория самой Slackware;

Поделиться с друзьями: