Alt linux поиск пакета в репозитории

Обновлено: 04.07.2024

В предыдущей статье мы с Вами, уважаемый читатель, познакомились со сборкой Simply Linux 9 платформы из семейства операционных систем АльтЛинукс. Указанное семейство сборок основанно на репозитории Sisyphus и поддерживается российской компанией «Базальт СПО» .

Мы научились устанавливать систему, провели обновление предустановленных пакетов программного обеспечения и, также, обновили ядро Линукс до последней доступной версии (на дату написания статьи) - 5.4.26-std-def-alt1.

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

Автоматическое обновление программного обеспечения

В предыдущей статье мы научились обновлять программное обеспечение системы с помощью пакета Synaptic (Главное меню -> Настройки -> Менеджер пакетов). Однако постоянно вручную следить за обновлениями довольно-таки неудобно. В репозитории АльтЛинукса есть специальный пакет apt-indicator , который при запуске системы производит операцию поиска обновлений автоматически и в случае наличия обновлений предлагает это сделать.

Загрузим Менеджер пакетов Synaptic , введем пароль администратора, и в загруженном окне менеджера нажмем на основной панели кнопку "Искать" (см. рис. 1).

В открывшемся окне запроса на поиск введем наименование пакета - apt-indicator , как показано на рисунке 2.

Через несколько секунд Менеджер пакетов найдет указанный пакет в своем списке (см. рис. 3).

Щелкните правой кнопкой мыши по строке с найденным пакетом и в выпадающем меню выберите пункт "Отметить для установки". Далее нажмите кнопку "Применить" главной панели Менеджера пакетов Synaptic .

Пакет apt-indicator будет установлен в систему.

По завершении установки Менеджер пакетов можно закрыть. После чего заходим в главное меню системы и в разделе "Система" находим пункт "Индикатор обновлений". Запускаем. В трее появится значок Индикатора обновлений. Если через какое-то время рядом со значком появится всплывающее окно с надписью "Доступны обновления системы. " щелкните левой кнопкой мыши по значку идикатора. На экране появится окно приглашения к обновлению системы (см. рис. 4).

Жмем кнопку "Автоматическое обновление" и ждем установки обновленных пакетов после ввода пароля Администратора системы.

В принципе после данной процедуры имеет смысл перезагрузить систему, но в общем случае этого делать не обязательно.

Почему-то разработчик Simply Linux не включил данный пакет в число предустановленных, в предыдущей версии этот пакет устанавливался по умолчанию.

Файловый менеджер Double Commander

К разряду сторонних пакетов относится весьма популярный двухпанельный файловый менеджер Double Commander ( ссылка на официальный сайт разработчика).

В предыдущей версии Simply Linux (да и всего семейства Альт Линукса 8 платформы) указанный пакет входил в число программ официального репозитория. Однако в 9 платформе данный пакет не вошел в состав репозитория (возможно по требованию разработчика). Но пакеты для установки распространяются свободно и их можно скачать по прямым ссылкам, указанным ниже:

  • ссылка для 32 bit системы
  • ссылка для 64 bit системы

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

Для браузера Firefox приглашение будет выглядеть так, как показано на рисунке 5.

Жмем Ок. На экран загружается окно установщика RPM пакетов (см. рис. 6).

Если Вы просто скачали файл RPM, то в файловом менеджере системы зайдите в папку "Загрузки", которая находится в домашней папке пользователя и найдите скачанный Вами файл RPM. Дважды щелкните по нему левой кнопкой мыши и на экран загрузится окно установщика пакетов RPM (см. рис. 6).

Особо обращаю внимание. В момент установки RPM пакета через отдельный установщик менеджер пакетов Synaptic не должен быть загружен. Иначе установка выбранного пакета встанет на паузу пока Вы не закроете Synaptic .

Жмем кнопку "Установить" (см. рис. 6) и ждем завершения процесса установки. Затем заходим в главное меню системы и в разделе "Инструменты" находим установленную нами программу файлового менеджера Double Commander .

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

  • Добавить в "Избранное"
  • Добавить на Рабочий стол
  • Добавить на панель

Автор статьи, как правило, устанавливает ярлык в раздел меню "Избранное" и на панель, после чего перемещает ярлык на панели поближе к кнопке главного меню системы.

Итак, после окончания установки пакета и настройки расположения ярлыков программы щелкаем по ярлыку в удобном Вам месте и загружаем файловый менеджер см. рис. 7).

Использование облачных сервисов - Yandex Disk

В повседневной работе очень часто возникает необходимость использования облачных сервисов для хранения и обмена информацией между различными устройствами и пользователями. Автор статьи активно использует для этого сервис Yandex Disk . Для бесплатного пользования сервис предлагает 10 Гб облачного пространства. Все, что выше, оплачивается отдельно.

В репозитории Альт Линукса необходимое базовое программное обеспечение для Yandex Disk отсутствует. Поэтому пользователю предлагается скачать установочные пакеты с сайта разработчика. Ниже представлены прямые ссылки для скачивания консольного клиента Yandex Disk в зависимости от разрядности установленной системы:

Также, как описано выше, скачиваем нужный нам экземпляр пакета и загружаем Установщик RPM пакетов, введя пароль Администратора системы. Жмем кнопку "Установить" и дожидаемся успешного окончания процедуры установки.

Однако после установки клиента Yandex Disk в главном меню не появилось никаких следов сервиса. Напоминаем, что мы загрузили с Вами консольный клиент сервиса, у которого отсутствует графическая оболочка.

Чтобы запустить сервис воспользуемся консольными командами Терминала. Запускаем эмулятор Терминала и вводим следующую команду:

Далее отвечаем на все заданные вопросы, определяемся с прокси сервером, вводим имя пользователя сервиса и пароль и определяемся с папкой для хранения синхронизированных файлов (см. рис. 8).

В современных системах на базе Linux огромное число общих ресурсов, которыми пользуются сразу несколько программ: разделяемых библиотек, содержащих стандартные функции, исполняемых файлов, сценариев и стандартных утилит и т. д. Удаление или изменение версии одного из составляющих систему компонентов может повлечь неработоспособность других, связанных с ним компонентов, или даже вывести из строя всю систему. В контексте системного администрирования проблемы такого рода называют нарушением целостности системы. Задача администратора — обеспечить наличие в системе согласованных версий всех необходимых программных компонентов (обеспечение целостности системы).

Для установки, удаления и обновления программ и поддержания целостности системы в Linux в первую очередь стали использоваться менеджеры пакетов (такие, как rpm в дистрибутивах RedHat или dpkg в Debian GNU/Linux ). С точки зрения менеджера пакетов программное обеспечение представляет собой набор компонентов — программных пакетов. Такие компоненты содержат в себе набор исполняемых программ и вспомогательных файлов, необходимых для корректной работы программного обеспечения. Менеджеры пакетов облегчают установку программ: они позволяют проверить наличие необходимых для работы устанавливаемой программы компонент подходящей версии непосредственно в момент установки, а также производят необходимые процедуры для регистрации программы во всех операционных средах пользователя: cразу после установки программа может быть доступна пользователю из командной строки и — если это педусмотрено — появляется в меню всех графических оболочек.

Важно

Благодаря менеджерам пакетов, пользователю Linux обычно не требуется непосредственно обращаться к установочным процедурам отдельных программ или непосредственно работать с каталогами, в которых установлены исполняемые файлы и компоненты программ (обычно это /usr/bin , /usr/share/ имя_пакета ) — всю работу делает менеджер пакетов. Поэтому установку, обновление и удаление программ в Linux обычно называют управлением пакетами.

Часто компоненты, используемые различными программами, выделяют в отдельные пакеты и помечают, что для работы ПО, предоставляемого пакетом A, необходимо установить пакет B. В таком случае говорят, что пакет A зависит от пакета B или что между пакетами A и B существует зависимость.

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

Задача контроля целостности и непротиворечивости установленного в системе ПО ещё сложнее. Представим, что некие программы A и B требуют наличия в системе компоненты C версии 1.0. Обновление версии пакета A, требующее обновления компоненты C до новой, использующей новый интерфейс доступа, версии (скажем, до версии 2.0), влечёт за собой обязательное обновление и программы B.

Однако менеджеры пакетов оказались неспособны предотвратить все возможные коллизии при установке или удалении программ, а тем более эффективно устранить нарушения целостности системы. Особенно сильно этот недостаток сказывается при обновлении систем из централизованного репозитория пакетов, в котором последние могут непрерывно обновляться, дробиться на более мелкие и т. п. Этот недостаток и стимулировал создание систем управления программными пакетами и поддержания целостности системы.

В нашем дистрибутиве программы (состоящие, как правило, из нескольких файлов) распространяются объединенными в пакеты формата RPM (RedHat Packet Manager).

С помощью программы rpm можно легко устанавливать, модифицировать, удалять и создавать пакеты программного обеспечения, а также получать о них разнообразную информацию. Весь дистрибутив ALT Linux Master (кроме программы начальной установки) состоит из таких пакетов.

Управлять пакетами можно из командной строки при помощи программы rpm, которая имеет следующий синтаксис:

Далее приводятся возможные параметры. вставить насчет rpm4, db3, ^C, rm -f /var/lib/rpm/__* ---- mike, 02.22.2002, 18:58 ----

Установка пакета. Вы можете установить программу, используя опцию -i (опции -v и -h выставлены здесь для того, чтобы включить визуальное отображение процесса установки). Например, для того, чтобы установить klyx, наберите:

(настоящее имя зависит от версии программы на доступном носителе).

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

Удаление пакета. Если вы желаете удалить пакет из системы, внимательно введите:

то есть, например, для пакета klyx:

Если в процессе удаления пакета произойдет нарушение зависимостей, программа rpm сообщит об этом.

-qi используется для получения некоторой информации о ранее установленном пакете;

-qip используется для еще не установленных пакетов. В этом случае вы должны указать полный путь и имя пакета (например, /mnt/cdrom/Mandrake/RPMS/klyx-0.10.9-ipl6mdk.i586.rpm);

-ql используется для того, чтобы просмотреть список файлов пакета. Добавьте p, если пакет еще не был установлен;

-qa выдает список всех установленных пакетов (не нужно указывать имя пакета).

Для получения дополнительной информации наберите man rpm.

Обеспечение и поддержание целостности системы с помощью APT

История переиздания
Издание 0.223 May 2002
Рабочая версия

Введение

Для целей поддержания целостности и обеспечения возможности распространения программ в двоичном виде в первую очередь стали использоваться менеджеры пакетов (такие, как RPM в дистрибутивах RedHat Linux или dpkg в Debian GNU/Linux). Менеджеры пакетов давали возможность унифицировать и автоматизировать сборку двоичных пакетов и облегчали их установку, позволяя проверять наличие необходимых для работы устанавливаемой программы компонент подходящей версии непосредственно в момент установки. Однако менеджеры пакетов оказались неспособны предотвратить все возможные коллизии при установке или удалении программ, а тем более эффективно устранить нарушения целостности системы. Особенно сильно этот недостаток сказывается при обновлении систем из централизованного репозитория пакетов, в котором последние могут непрерывно обновляться, дробится на более мелкие и т.д. Этот недостаток и стимулировал создание систем управления программными пакетами и поддержания целостности системы.

Эти привлекательные возможности были долгое время доступны только пользователям Debian GNU/Linux, поскольку в APT поддерживалась только один менеджер пакетов, а именно применяемый в Debian GNU/Linux менеджер пакетов dpkg, несовместимый с используемой в ALTLinux RPM. Эта несовместимость заключается прежде всего в различии используемых форматов данных (хотя сущесвуют программы-конверторы), хотя имеютсяа и другие различия, обсуждение которых выходит за рамки изложения.

APT, однако, изначально проектировался, как не зависящий от конкретного метода работы с установленными в системе пакетами, и эта особенность позволила разработчикам из бразильской компании Conectiva реализовать в нем поддержку менеджера пакетов RPM. Таким образом, пользователи основанных на RPM дистрибутивов ( ALTLinux входит в их число) получили возможность использовать этот мощный инструмент.

APT и в настоящее время находится в стадии разработки, а текущая версия с поддержкой RPM классифицируется, как нестабильная. Это, тем не менее, не означает, что операции, выполняемые посредством APT, безусловно приведут к нестабильности системы. Более того, с помощью APT возможен строгий контроль за целостностью системы: проверка нарушенных зависимостей между установленными пакетами и исправление выявленных ошибок.

Задача контроля целостности и непротиворечивости установленного в системе ПО еще сложнее. Представим, что некие программы A и B требуют наличия в системе компоненты C версии 1.0. Обновление версии пакета A, требующее обновления компоненты C до новой, использующей новый интерфейс доступа, версии (скажем, до версии 2.0), влечет за собой обязательное обновление и программы B.

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

Таким образом, в распоряжении APT находятся две базы данных: одна, описывающая установленные в системы пакеты и вторая, с описанием внешнего репозитория. APT отслеживает целостность установленной системы и, в случае обнаружения противоречий в зависимостях пакетов, руководствуется сведениями о внешнем репозитории для разрешения конфликтов и поиска корректного пути их устранения.

Использование APT

Система APT состоит из нескольких утилит. Главной и наиболее часто используемой является утилита управления пакетами apt-get: она автоматически определяет зависимости между пакетами и строго следит за их соблюдением при выполнении любой из следующих операций: установка, удаление или обновление пакетов.

apt-get позволяет устанавливать в систему пакеты, требующих для своей работы других, пока еще не установленных. В этом случае он определяет, какие из отсутствующих пакетов необходимо установить, и доустанавливает их, пользуясь всеми доступными репозиториями. Для того, чтобы apt-get мог использовать тот или иной репозиторий, информацию о нем необходимо поместить в файл /etc/apt/sources.list и выполнить команду

Эту команду необходимо также выполнять каждый раз, когда вы собираетесь работать с репозиторием после длительного перерыва, так как при поиске пакетов APT должен руководствоваться базой данных, отражающей актуальное состояние репозитория. Такая база данных создается заново каждый раз, когда в репозитории происходит изменение: добавление, удаление или переименование пакета. Для ускорения работы apt-get хранит локальную копию базы данных, которая через некоторое время может уже не соответствовать реальному состоянию репозитория.

В качестве источника пакетов можно использовать и компакт-диски дистрибутива, поскольку на каждом диске присутствует вся необходимая для APT информация о содержащихся на нем пакетах. Для этого необходимо использовать утилиту apt-cdrom с единственным параметром add:

Повторите этот процесс для всех CD в вашем наборе.

После этого в /etc/apt/sources.list появится запись о подключенном диске:

Если подключение к Internet отсутствует, то следует закомментировать те строчки в /etc/apt/sources.list, в которых говорится о ресурсах, доступных по Сети. Непосредственно после установки дистрибутива ALTLinux в /etc/apt/sources.list указаны несколько таких источников:

репозиторий обновлений в системе безопасности дистрибутива;

исходные тексты архивов, использовавшихся для сборки пакетов в репозитории Sisyphus .

Установка или обновление пакета

Установка пакета с помощью APT, выполняется командой

Команда apt-get install имя_пакета используется и для обновления уже установленного пакета или группы пакетов. В этом случае apt-get дополнительно проверяет, не обновилась ли версия пакета в репозитории по сравнению с установленным в системе. Если вы не знаете точное название пакета, для его поиска можно воспользоваться утилитой apt-cache, описанной ниже.

Пример 3.1. Установка пакета clanbomber командой apt-get install clanbomber приведет к следующему диалогу с APT:

Внимание

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

В случае обнаружения противоречий между установленными в системе пакетами, следует запустить команду apt-get -f install, и APT постарается разрешить найденные конфликты, предложив удалить или заменить конфликтующие пакеты. Любые действия в этом режиме обязательно требуют подтверждения со стороны пользователя.

Удаление установленного пакета

Для удаления пакета используется команда apt-get remove имя_пакета. Для того, чтобы не нарушать целостность системы, будут удалены и все пакеты, зависящие от удаляемого: если отсутствует необходимая для работы приложения библиотека, то само приложение становится бесполезным). В случае удаления пакета, который относится к базовым компонентам системы, apt-get потребует дополнительного подтверждения производимой операции с целью предотвратить возможную случайную ошибку.

Запрос на подтверждение операции удаления базовой компоненты системы выглядит следующим образом:

Обновление всех установленных пакетов

Для обновления всех установленных пакетов используется команда apt-get upgrade. Она позволяет обновить те и только те установленные пакеты, для которых в репозиториях, перечисленных в /etc/apt/sources.list, имеются новые версии; при этом из системы не будут удалены никакие другие пакеты. Этот способ полезен при работе со стабильными пакетами приложений, относительно которых известно, что они при смене версии изменяются несущественно.

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

При работе с Sisyphus для обновления системы рекомендуется использовать командуapt-get dist-upgrade.

Поиск в репозитории

Для поиска нужного пакета можно воспользоваться утилитой apt-cache, которая позволяет искать не только по имени пакета, но и по его описанию.

Команда apt-cache search подстрока позволяет найти все пакеты, в именах или описании которых присутствует указанная подстрока. Например:

Для того, чтобы подробнее узнать о пакете, можно воспользоваться командой apt-cache show, которая покажет информацию о пакете из репозитория и в том числе:

Настройка APT

Настройка описаний репозиториев задается в файле /etc/apt/sources.list в следующем виде:

Например, при установке ALTLinux в /etc/apt/sources.list записываются следующие настройки:

Более подробное описание команд программы apt-get можно найти в справочной системе дистрибутива на страницах apt-get(8) и apt.conf(5).

Создание собственного репозитория

Вы можете создавать собственные репозитории и использовать их для обновления и/или установки собственных программ. Для этого необходимо создать структуру каталогов, подобную описанной выше. Вы можете выбирать из следующих компонентов (перечисляются по дереву выше):

архитектура, под которую собраны пакет (совпадает с таковой в имени бинарных RPM-пакетов)

название подсистемы. Этот уровень в дереве может отсутствовать (то есть, каталоги RPMS и base могут идти сразу следом за архитектурой)

каталог, в котором размещены бинарные пакеты

каталог, в котором размещены пакеты с исходными текстами программ

ссылка на каталог RPMS. При этом sisyphus заменяется на собственное название репозитория, например, local

служебный каталог, в котором размещается база данных APT

Из опций, список которых можно увидеть при запуске genbasedir без параметров, наиболее важной является опция --topdir, позволяющая указать путь к репозиторию. Все остальные параметры задаются относительно этого пути. Выглядит это следующим образом. Допустим, что наше дерево каталогов выглядит так:

Тогда строка запуска genbasedir будет выглядеть так:

Репозиторий MyDistro.security, хранящий пакеты с исправлениями ошибок в системе безопасности, имеет смысл подписывать PGP-ключом, чтобы при установке пакета можно было проверить аутентичность репозитория и хранящихся в нем пакетов. Для этого необходимо создать соответствующий PGP-ключ, используя программу GnuPG (gpg) и запомнить его отпечаток (fingerprint) на клиентских машинах в файле /etc/apt/vendors.list в формате:

Примером может служить ключ службы безопасности ALT Linux Team , которым подписаны пакеты репозитория Sisyphus и обновления безопасности для различных дистрибутивов ALTLinux :

Для того, чтобы APT проверял аутентичность подписи, необходимо указать, что соответствующий репозиторий подписан PGP-ключом в /etc/apt/sources.list:

Необходимо также сгенерировать информацию для APT в репозитории с указанием опции --sign команды genbasedir. Дополнительно, можно указать идентификатор ключа, если он отличается от ключа по умолчанию, используя опцию --uid=идентификатор. Значением этой опции является идентификатор ключа в том виде, как он передается программе GnuPG в опции --default-key:

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

/etc/apt/sources.list - список используемых репозиториев пакетов

/var/cache/apt/archives - место расположения скаченных пакетов

Команды

Работа через прокси

Если сервер не имеет прямого подключения к Интернет, то можно обновиться и через прокси-сервер (пусть ip прокси 10.0.0.1, порт 3128). Для этого есть 2 способа:

1) определим переменные окружения:

Если прокси требует пароля, то:


2) Добавим в /etc/apt/apt.conf строку:

Работа с репозиториями

Обновлять и доустанавливать пакеты можно и без доступа в интернет. Для этого:

а) кладём все доступные репозитории на один из локальных компьютеров (напр 10.0.0.239 в каталог /usr/dvd-1-apt) и заносим этот источник в список просматриваемых, т.е. создаём файл

и добавляем туда строку (для баз: base classic kernel)

б) если CD-ROM есть, то добавляем содержимое диска:

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

Для Alt Linux:

Добавим в /etc/apt/sources.list строку:

где ALTLinux - каталог на DVD с дистрибутивом, а в ALTLinux/base находятся файлы pkglist.base, pkglist.contrib, pkglist.disk, описывающие имеющиеся на диске 3 набора пакетов. Эти наборы мы и подключили. Сами пакеты находятся в каталогах ALTLinux/RPMS.имя_набора.

Для Debian:

В /etc/apt/sources.list добавляем:

Обновим список пакетов:

Теперь, можно устанавливать пакеты как обычно через "apt-get install".

Установка устаревших пакетов

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

Но прежде чем опускаться до более старый версий стоит попробовать обновить информацию о репозитории:

И установить ещё раз. Если даунгрейд потянет за собой много других пакетов, то может быть имеет смысл открыть в /etc/apt/sources.list доступ к большему числу репозитариев и после команды update, попытаться установить пакет ещё раз, в надежде получить более новую версию с обновлёнными зависимостями.

Так в Alt Linux репозиторий Sysiphus хоть и не стабильный, но имеет более свежие пакеты.

Читайте также: