Alt linux какой пакетный менеджер
Перейти к содержимому

Alt linux какой пакетный менеджер

  • автор:

Управление пакетами

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

Все пакеты находятся в специальном хранилище, называемом репозиторий. Репозиторий может находиться как на удалённом сервере, так и непосредственно на локальном компьютере. При подключении дополнительного репозитория следует тем или иным образом убедиться в его совместимости с ОС. Описание известных репозиториев ALT Linux находится в соответствующей статье.

Программное обеспечение в систему устанавливается с помощью специальных программ, называемых менеджеры пакетов. Менеджером пакетов низкого уровня является сам RPM. Остальные рассматриваемые программы, Synaptic, модуль ALT Linux Control Center и консольная утилита apt, являются надстройками над RPM.

Зачем в AltLinux используется связка apt + rpm?

Смотрю на пакетный менеджер в AltLinux и вижу, что используется достаточно нетипичная связка apt-get + rpm. Насколько я знаю, обычно используется либо apt-get + deb, либо yum/dnf + rpm.

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

В чем тайный смысл?

Напомнило из фильма. Рис с котлетой, картошка с тефтелей. Меняться нельзя.
Почему этот странный вопрос не задать на форуме сайта альтлинукса?

Сопоставьте года, упоминаемые в моих ссылках, с датами появления yum/dnf. И подумайте, какой нафиг yum/dnf + rpm в нулевых. Тогда был up2date.

Ага, т.е. так сложилось исторически, т.к. yum/dnf на тот момент не существовало, а то что существовало — было значительно хуже apt-get. Тогда второй вопрос: а почему сейчас разработчики altlinux не перейдут на yum/dnf? Что их держит на apt-rpm? Вместо поддержки своего решения после перехода они могли бы тратить время на другие активности, не?

Если авторы хотели делать свой дист, но не хотели сильно заморачиваться с пакетами и при этом не получить очередной клон дебиана, то рпм им подходил куда больше.

В некоторых обществах консерватизм является ценностью сам по себе. Традиции и всё такое.

Логика тривиальна: Работает? Ну и чудненько. Можно не ворошить эту кучу.

Тогда второй вопрос: а почему сейчас разработчики altlinux не перейдут на yum/dnf?

А зачем? Если все работает? И зачем им превращаться в очередной клон Федоры? Чтобы Красная Шапка за них решала, в каком направлении развиваться?

круче всех был slapt-get+tar.gz

Этот вопрос точно надо задавать Альтовцам.

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

второй вопрос: а почему сейчас разработчики altlinux не перейдут на yum/dnf? Что их держит на apt-rpm?

Несоответствие трудозатрат на этот переход и необходимость этого перехода. То есть он не нужен никому. Или, грубо говоря, если кому надо, пусть вступает в Team и делает. Если получится хорошо, можно и перейти. А так просто это никому не надо на столько, чтобы браться (или вообще не надо).

Alt linux какой пакетный менеджер

Воспользуйтесь одной из предлагаемых программ для установки дополнительного ПО:

Центр управления системой

Центр управления системой содержит модуль установки дополнительных пакетов Программное обеспечение → Установка программ . Для облегчения поиска доступные для установки программы разделены на группы, выводимые в левой части окна программы. Справа расположен список самих программ с указанием их текущего состояния:

зелёная метка — пакет же установлен

белая — неустановленный пакет

Объяснение всех обозначений можно увидеть, отметив пункт Показать статистику .

Для начала установки отметьте в правой половине окна неустановленный пакет двойным щелчком мыши и нажмите Применить . При необходимости менеджер пакетов попросит вставить установочный диск.

Программа управления пакетами synaptic

Установка программ в synaptic очень схожа с описанной выше. За детальной информацией можно обратиться к руководству.

Подсказка

При работе в графической среде KDE после вставки диска появляется диалоговое окно с вариантами возможных действий с ним. В случае установки пакетов рекомендуем просто закрыть это окно и вернуться к менеджеру пакетов. Менеджер управления пакетами самостоятельно выполнит подключение диска.

Внимание

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

Установка дополнительного ПО из внешних репозиториев

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

Для указания конкретных репозиториев рекомендуем использовать Центр управления системой (модуль Программное обеспечение → Источники обновлений ). На выбор предлагаются репозитории, программы в которых специально предназначены для беспроблемной установки в вашем дистрибутиве. Для использования репозитория нужно выбрать в выпадающем списке один из предлагаемых адресов и нажать кнопку Изменить . Рекомендуется выбирать тот сервер, который расположен наиболее близко к вам. Если затрудняетесь в выборе, выберите ftp://ftp.altlinux.org/ .

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

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

ALT Linux 4.1 Desktop

В этом репозитории находятся пакеты, которые, собственно, и составляют ваш дистрибутив. [1]

Активируйте этот репозиторий, если у вас нет установочного диска с дистрибутивом. Например, если вы устанавливали систему по сети.

ALT Linux 4.1 Desktop с дополнениями

В этом репозитории вдобавок к пакетам, составляющим основу вашего дистрибутива (main), располагаются дополнительные пакеты, пригодные для установки, однако не относящиеся к дистрибутиву напрямую. [2] Например, дополнительные текстовые редакторы. Обычно именно этот репозиторий содержит набор программ, эквивалентный тому, который имеется на установочном DVD-ROM.

Активируйте этот репозиторий, если вы хотите использовать расширенный набор программ, но не располагаете установочным диском, либо если ваш установочный диск содержит не весь набор входящего в дистрибутив ПО. Например, если вы установили систему по сети или с установочного CD-ROM, на который просто не может поместиться весь набор пакетов.

Стабильная ветка ALT Linux 4.1

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

Эти пакеты реализуют непрофильную для дистрибутива функциональность. Например, серверную в случае, если вы используете вариант дистрибутива для настольных компьютеров.

В этом же репозитории могут присутствовать и обновлённые версии программ для вашего дистрибутива. Отличия этих обновлённых программ от обновлений, находящихся в репозитории «Обновления», в том, что это новые версии программ, а не исправления уязвимостей и ошибок, как в репозитории «Обновления».

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

Важно

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

Для непосредственной установки после добавления репозиториев обновите список доступных программ, воспользовавшись Центром управления системой или synaptic:

Центр управления системой

Модуль: Программное обеспечение → Установка программ → Обновить .

Меню: Редактирование → Получить сведения о пакетах .

Установка пакетов из репозиториев ничем не отличается от описанной в разделе «Установка дополнительного ПО с установочного диска».

Технические подробности

Для того чтобы понять принципы установки дополнительного ПО, необходимо ознакомиться с некоторыми важными особенностями ПО для Linux.

Самое главное, после установки системы не спешите бежать в магазин или загружать из Интернета недостающие вам программы. Как правило, всё необходимое уже есть у вас на установочном диске либо может быть автоматически загружено и установлено из иных источников (из Интернета, с ресурсов локальной сети, с дополнительных дисков).

Чтобы понять, как программа попадает на ваш компьютер, проследим путь типичной программы для Linux от её рождения до появления на вашем компьютере. Условно можно говорить, что программа проходит три инстанции:

Программист создаёт программу.

Программа пишется на одном из языков программирования. Результатом становится исходный код — программа в виде текста. В этом виде программой ещё нельзя воспользоваться. Нельзя запустить её, поиграть (если это игра) и т. п.

Так как доступность исходного кода — обязательный атрибут свободных программ для Linuх, то именно в таком виде они, как правило, и распространяются их создателями.

Майнтейнер компилирует программу и помещает её в репозиторий пакетов.

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

Конечно, эту работу можно выполнить и самостоятельно, загрузив исходный код программы и скомпилировав её на своём компьютере. Однако этот процесс нетривиален и, помимо определённых навыков, требует целого ряда дополнительных инструментов, которые могут быть не установлены в вашей системе. Кроме того, компиляция объёмных программ может занять очень продолжительное время.

К счастью, в большинстве случаев вам не требуется проделывать всю эту работу самостоятельно. За вас её проделал майнтейнер. Он самостоятельно компилирует и, как правило, вносит улучшения для наиболее оптимальной работы программы именно в вашем дистрибутиве. Например, если это графическая программа, то он следит за тем, чтобы после установки она появилась в нужном разделе основного меню. Уже скомпилированную и подготовленную таким образом программу он размещает в репозитории в виде RPM-пакета — виде, максимально удобном для установки в ваш дистрибутив.

Пользователь устанавливает подготовленную майнтейнером программу из репозитория, предварительно настроив свой менеджер пакетов.

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

Как это сделать при помощи Центра управления системой , описано выше в разделе «Установка дополнительного ПО из внешних репозиториев».

Замечание

В действительности, описанные выше менеджеры пакетов являются графическими оболочками для APT . Таким образом, вы можете управлять установкой ПО не прибегая к графическим надстройкам. Например, для установки пакета kpacman необходимо от имени администратора (root) выполнить команду:

alt linux epm repack

EPM — имеющая одинаковый интерфейс на всех системах команда управления пакетами. При интерфейсе, похожем на rpm, apt и urpm, выполняет необходимые операции на любой платформе.

Включает в себя следующую функциональность:

Назначение

Установка

Установка пакетной версии из скрипта всё-в-одном
Установка из пакета

Если скрипт не смог скачать пакет для вашего дистрибутива, зайдите напрямую на http://download.etersoft.ru/pub/Korinf/, скачайте пакет под похожую версию дистрибутива и установите его с помощью epm.sh, предварительно скачав его:

Получить исходники можно здесь.

Важно показать, что разброд и шатание заменяется на единообразность.

Примеры

Особенности реализации

Также epm позволит убрать учёт различий между пакетными менеджерами из Korinf, который также выполняет действия с пакетами в целевых системах.

Список поддерживаемых дистрибутивов и пакетных менеджеров

Менеджер пакетов Дистрибутив
rpm alt asplinux suse mandriva rosa mandrake pclinux sled sles fedora redhat scientific centos rhel
deb debian ubuntu mint runtu mcst
tgz slackware mopslinux
tbz freebsd
tbz2 gentoo
apk alpine
pkg.gz sunos

Добавление нового дистрибутива

Детектим дистрибутив по пакетному менеджеру и файлу с релизом
Определяем DISTRIB_ID

Сопоставляем дистрибутив и пакетный менеджер * Добавляем в bin/epm-install

Планы развития

Подобные проекты

Работающие для нескольких дистрибутивов менеджеры пакетов:

RPM-repair

rpmrepair: починка сторонних RPM путём перепаковки

При установке сторонних пакетов, собранных не для соответствующего репозитория Альт, могут возникать проблемы несовместимости со штатным менеджером пакетов rpm, могут быть допущены ошибки в скриптлетах пакета, могут быть неверно расставлены зависимости. Самый простой способ перепаковки предлагает утилита rpmrepair. Для её использования не требуются привилегии суперпользователя. В данном случае мы рассматриваем получение нового RPM не как процесс сборки из исходников. Бинарный результат у нас уже есть, с ним уже нельзя ничего сделать. Мы просто исправляем ошибки упаковки и рассматриваем RPM как архивный файл с метаданными, что позволит в дальнейшем при установке пакета отказаться от использования таких опций RPM, как —nodeps, —noscripts, —ignorearch.

Содержание

Симптом [ править ]

Установка [ править ]

Если в нужный репозиторий пакет ещё не попал, существует альтернативный способ установки:

Ответственный упаковщик [ править ]

/.rpmmacros или из командной строки (—packager). Если и это не будет указано, ответственным за перепакованный пакет по умолчанию ставится автор rpmrepair.

Получение справки [ править ]

Принцип действия [ править ]

Предупреждения [ править ]

До начала работы из текущего каталога будет удалён подкаталог repacked. Также будет удалён каталог

/RPM со всем содержимым. Сохраняйте свои RPM’ки заблаговременно! Следует иметь ввиду: вендор исходного RPM-пакета не отвечает за получившийся перепакованный результат, поэтому ему следует адресовать рекламации только по исходному пакету. За перепакованный результат вообще никто не может отвечать, вы перепаковываете только на свой страх и риск.

Временный каталог [ править ]

Поскольку в дистрибутивах Альт TMPDIR обычно настроен на TMPFS (временные файлы создаются в оперативной памяти), а объём перепаковываемых RPM’ов может оказаться довольно большим, по умолчанию программа изменяет текущий TMPDIR на

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

Степень починки [ править ]

Целевая архитектура [ править ]

Независимо от указанной в названии файла пакета архитектуры, упаковка нового RPM-пакета выполняется для текущей архитектуры. Если исходный RPM-пакет на самом деле содержит только архитектурно-независимые файлы, есть возможность упаковать его в пакет *.noarch.rpm, просто добавив ключ —noarch при запуске rpmrepair.

Исправление зависимостей [ править ]

Независимо от наличия или отсутствия ключа —nodeps, можно добавить свой «кусок спека» при перепаковке. Для этого достаточно сложить рядом с RPM-пакетом файл ИМЯ-ПАКЕТА.deps. Здесь и далее «ИМЯ-ПАКЕТА» можно получить командой:

В файле ИМЯ-ПАКЕТА.deps можно указывать такие поля, как Requires:, Obsoletes:, Conflicts: и Provides:. Провайдсы из исходных RPM не переносятся никогда, так что по умолчанию пакет будет провайдить только сам себя. Чтобы выяснить, что требует и что провайдит исходный пакет, а затем исправить это, выполните пару команд:

Перенос и исправление скриптов [ править ]

В сторонних и проприетарных RPM’ках могут находиться скрипты, зачастую вредные или с ошибками. Никто не проверял их на совместимость с ОС Альт, поэтому такие скрипты по умолчанию не переносятся в перепакованные RPM’ки. Нужно самостоятельно извлечь их, посмотреть, что они делают, и, если требуется, создать на их основе правильные скрипты для пред/пост-установки/удаления. Находясь в каталоге с исходным RPM сделать это можно командой:

Другие особенности [ править ]

Пример использования [ править ]

Перепаковка займёт порядка 4.5 минут. В подкаталоге repacked окажется семь RPM-файлов на 360Мб. Теперь установим перепакованные пакеты:

То есть, дезинсталляция выполняется «без хвостов».

Получение полуфабриката [ править ]

Отладка и отправка сообщений об ошибках [ править ]

Для отправки в Bugzilla сообщения об ошибке следует запустить на одиночном RPM-пакете, перепаковка которого выполняется с ошибками, команду:

Получившийся отчёт вместе с соответствующими файлами *.deps, *.dirs, *.scripts из текущего каталога и всеми файлами из временного каталога (кроме подкаталога make-tar) приложить к сообщению об ошибке.

MSSQL

Содержание

Установка сервера MSSQL на Альт Сервер 8 [ править ]

1. Скачайте демо-версию с https://packages.microsoft.com/rhel/7/mssql-server-2019/ (пакет mssql-server-15.0.2000.5-5.x86_64.rpm ; может быть более новый)

2. Установите необходимые зависимости:

3. Пересоберите под Альт:

5. Создайте пользователя:

6. Создайте рабочий каталог для сервера:

7. Пропишите автоматический запуск службы:

8. Пройдите мастер первоначального конфигурирования:

SQL Server будет запущен.

9. Проверьте подключение:

Можно делать это с другой машины и из другой программы, например, из Management Studio.

Если SQL Server отвергает все попытки подключения с ошибкой «Error code 0x2746»:

В открывшемся редакторе ввести это и сохранить:

Создать ссылки на библиотеки, которые будет использовать SQL Server, и запустить его:

Установка полнотекстового поиска [ править ]

После установки основного пакета MS SQL, но до п. 8 (настройки сервера) установите аналогичным образом пакет msqsql-server-fts: 1. Скачайте пакет с https://packages.microsoft.com/sles/12/mssql-server-preview/ mssql-server-fts-15.0.1600.8-1.x86_64.rpm

2. Пересоберите под Альт:

Установка драйвера ODBC к MSSQL [ править ]

Драйвер требуется как для работы sqlcmd из mssql-tools, так и для других приложений. Ставится в месте установки приложений.

1. Установить необходимое программное обеспечение для установки и работы:

2. Скачать последнюю сборку msodbcsql17 для SUSE (версия для rhel работает, но имеет проблемы с зависимостями в ALT):

3. Установить с переупаковкой:

4. Прописать символические ссылки на libssl и libcrypto (нужные имена файлов видно в выводе epm repack):

если изменится способ загрузки библиотек, вероятно потребуется выполнить ldconfig

5. Прописать как драйвер ODBC:

Установка mssql-tools [ править ]

Уже должны быть установлены unixODBC и сопутствующие установке msodbcsql17 пакеты.

1. Скачать последнюю сборку mssql-tools для SUSE:

Работа с СУБД посредством mssql-tools [ править ]

В примере используется подстановка: sa — суперпользователь, Pa$$word — пароль администратора, который указали при mssql-conf setup

Создание базы данных:

Просмотр доступных баз данных:

Настройка драйвера ODBC для доступа к базе [ править ]

Драйвер уже должен быть установлен так, как написано ранее. Пример для базы test на сервере с IP 10.4.4.26.

Конфигурируем источник. Для этого создаём файл /etc/odbc.ini (или добавляем в него секцию):

Значение Описание
MSSQLServer Имя секции источника, прописанного в /etc/odbc.ini
sa Имя пользователя
Pa$$word Пароль пользователя

Установка драйвера JDBC к MSSQL [ править ]

Выбирайте загрузку sqljdbc_7.0.0.0_rus.tar.gz

2. Распакуйте файл jar из загруженного архива:

Пример использования JDBC/MSSQL в LibreOffice Base [ править ]

Действия выполняются из-под обычного пользователя, пользователем же и могут быть выполнены.

1. Откройте LibreOffice Writer и добавьте класс /usr/share/java/mssql-jdbc-7.0.0.jre8.jar по аналогичной методике, как описано в статье Microsoft Access. Перезапустите LibreOffice.

2. Запустите LibreOffice Base, выберите подключение к базе данных через JDBC и заполните поля источника и драйвера:

URL источника данных (подключаемся к серверу 10.4.4.26, порт стандартный, база данных test) Класс драйвера JDBC

LibreOffice MSSQL JDBC

3. Укажите имя пользователя и то, что требуется пароль для подключения.

4. Сохраните базу данных LibreOffice Base в виде файла и можете работать на сервере MSSQL:

QuickStart/PkgManagment

Основы управления пакетами

Содержание

Почему так важно уметь пользоваться пакетным менеджером? [ править ]

Чтобы научиться управлять любым дистрибутивом Linux, первым делом необходимо освоить работу с его пакетным менеджером. Пакетный менеджер – самая важная отличительная черта любой Linux-системы, ALT – не исключение. Почему так важно им владеть? Всё просто: 90% ответов на вопросы управления системой даёт пакетный менеджер. За редким исключением практически вся система построена на пакетах, каждый из которых является своего рода архивом файлов. Таким образом, почти все файлы, каталоги и ссылки в системе принадлежат каким-то пакетам.

Приведём несколько примеров…

Какому пакету принадлежит этот файл? [ править ]

Какие файлы входят в этот пакет? [ править ]

Где искать конфигурационные файлы этого пакета? [ править ]

Где искать исполняемые файлы этого пакета? [ править ]

Что отвечает за запуск служб в этом пакете? [ править ]

Где почитать документацию к этому пакету? [ править ]

Кроме того, документация может быть упакована в отдельный пакет, а этот пакет ещё не установлен. Проверить довольно легко: обычно это такое же имя пакета с допиской «-doc».

Есть ли отдельный под-пакет с документацией? [ править ]

Где найти man-страницы на русском языке? [ править ]

Как посмотреть подробную информацию о пакете? [ править ]

Как получить полный список установленных пакетов? [ править ]

Основные инструменты для управления пакетами [ править ]

Synaptic [ править ]

Synaptic – это графический интерфейс к программе управления пакетами APT. С помощью Synaptic можно управлять источниками пакетов (репозиториями), получать сведения о доступных пакетах, устанавливать/удалять/обновлять пакеты, производить поиск по ключевым словам среди доступных пакетов. Подробный обзор работы с Synaptic можно почитать ЗДЕСЬ и ЗДЕСЬ.

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

rpm [ править ]

Пакеты могут предоставлять (провайдить) что-либо, требовать (запрашивать) что-либо и конфликтовать с чем-либо, образуя таким образом систему межпакетных зависимостей (dependencies). В ALT Linux можно установить пакет, если удовлетворены все его зависимости и нет конфликтов с другими уже установленными пакетами и объектами файловой системы. Из этого следует, что никакими системными файлами нельзя манипулировать непосредственно (вручную), никакое программное обеспечение не стоит устанавливать в обход штатного пакетного менеджера, например, разворачивая tar’болы, скаченные из Интернета.

Пакеты всегда содержат определённую мета-информацию, на которую ориентируется утилита rpm. Также пакеты могут содержать какие-то файлы, каталоги и симлинки, но это необязательно. Так называемые мета-пакеты никогда не содержат объектов файловой системы, в них перечисляются только зависимости на другие пакеты.

Основные режимы работы утилиты rpm:

Наиболее часто встречающиеся на практике команды rpm:

Русский перевод man-страницы rpm доступен, например, ЗДЕСЬ.

APT и apt-config [ править ]

APT (Advanced Packaging Tool) используется в ALT Linux для установки, обновления, удаления программных пакетов, для транзакционного обновления всей системы, как основной высокоуровневый инструмент командной строки, работающий не только с файлами RPM-пакетов, но и (прежде всего!) на уровне подключенных репозиториев. APT включает в себя несколько инструментов, в том числе, рассматриваемых далее. И, хотя мычит АЛЬТ’овый APT не хуже прародителя (apt-get moo), прозван недоброжелателями гремучей смесью за свою способность удовлетворять такие необычные запросы:

Более подробно почитать про APT и устройство репозиториев на АЛЬТ’е можно (и нужно обязательно!) на этой ВиКи и в соответствующей справочной документации.

apt-repo [ править ]

apt-repo – весьма полезная утилита, надстройка над APT’ом для удобного управления источниками (репозиториями). Типовые примеры использования:

Если вдуматься, синтаксис apt-repo add/test task taskid чем-то напоминает apt-add-repository ppa:ppa-name из Debian-подобных систем, но проще в использовании и не приводит к неуправляемому замусориванию системы.

apt-cache [ править ]

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

apt-get [ править ]

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

Чтобы разобраться в причинах конфликтов и отказе APT’а выполнять ваши команды, чтобы отправить баг в багзиллу или в список рассылки, используйте ключ -oDebug::pkgProblemResolver=1, например, так:

Другие инструменты [ править ]

Весьма полезная утилита sisyphus-mirror поможет с организацией локальных зеркал и даже их архивами. Как и в Debian-подобных системах, в АЛЬТ’е тоже есть свой aptitude, но насколько он рабочий, судить не берусь. Судя по ченжлогу, не обновлялся очень давно, так что в любом случае не рекомендовал бы с него начинать.

Как найти пакет по имени файла, если пакет не установлен? [ править ]

Предположим, мы знаем, что ищем программу partclone.ntfs. Но другие инструменты поиска успеха не дали: пакета с таким названием в репозитории не оказалось.

Как быть? Как найти точное название пакета, если известна часть имени или пути файла, в том числе, исполняемого?

С помощью apf [ править ]

По умолчанию пакет apf (аналог apt-file из Debian-based дистрибутивов) не установлен, а после установки требуется его настройка.

После обновления индексов (apf update под рутом) можно искать интересующую информацию:

И это не единственный способ!

С помощью epm [ править ]

По умолчанию пакет eepm не установлен. Ставим его:

Теперь можно искать интересующее:

Командой grep [ править ]

Если локального зеркала нет, нужный файлик сначала скачиваем:

Пакеты с ядром и модулями [ править ]

Как узнать версию текущего ядра? [ править ]

Как посмотреть установленные пакеты с модулями ядра? [ править ]

Сопоставление модулей ядра файлам и пакетам [ править ]

Какие модули ядра сейчас используются/загружены?

Подробная информация о модуле ядра:

К какому пакету относится модуль ядра?

Итоги [ править ]

Теперь вы знаете ОСНОВЫ и можете переходить к практике. Изучение основ управления пакетами не заменяет необходимости самолично глубоко и досконально изучить всё, что связано с пакетным менеджментом. Данный раздел содержит подсказки, где и как можно найти недостающую информацию. Почему это важно, говорилось в самом начале: 90% управления всей системой обеспечивается описанным здесь инструментарием. Вам этого мало? Тогда продолжим изучение…

Где и как искать программы

Содержание

Где и как искать программы, и как их потом устанавливать [ править ]

Все программы для Linux можно разделить на две большие категории (с подкатегориями):

Далее описаны краткие примерные инструкции что делать во всех этих случаях.

Общая рекомендация: если вам нужна какая-то программа, то

Программа есть на диске пользователя [ править ]

Если у вас есть CD/DVD диск с дистрибутивом ALT (например тот, с которого вы поставили систему), то поиск и установка нужной программы осуществляется очень просто. Достаточно подключить этот диск в качестве источника установки и использовать программы работы с пакетами, такие как apt-get или synaptic.

Если у вас на жёстком диске есть целый набор rpm-пакетов, и они ещё не организованы в репозиторий, то самое время создать из них репозиторий, подключить его в качестве источника установки, и см. выше.

Если у вас имеется одиночный [2] пакет с нужной программой, то можно попробовать установить его следующим образом:

Программа есть в сетевом репозитории вашей версии [ править ]

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

Примечание: не следует забывать про дополнительные репозитории Autoimports.

Что делать, если «интернет дорогой» [ править ]

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

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

Вы увидите примерно следующее:

Программа есть в сетевом репозитории другой версии [ править ]

Самый правильный способ — «повесить» запрос на перенос нужного пакета в вашу версию дистрибутива. Однако, этот способ не самый быстрый ��

Еще один неплохой способ — попробовать самостоятельно собрать нужный пакет «в своём окружении», то есть под свою версию системы. Проще всего это сделать с помощью Hasher. Вам понадобится скачать пакет с исходными текстами нужной программы (src.rpm пакет), и воспользоваться инструкцией по работе с Hasher.

Примечание: сборка в Хэшере требует настроенного источника пакетов. В процессе сборки из источника будут получены пакеты на десятки (или даже сотни) мегабайт. Следите за трафиком ��

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

Программы нет в дистрибутиве, но её можно туда включить [ править ]

Существует огромное множество программ. И ни один дистрибутив не может охватить все это множество.

Почему нужная конкретно вам программа не попала в дистрибутив? Скорее всего потому, что:

Что делать в таком случае?

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

Сложный и совсем правильный способ: стать мейнтейнером данной программы! То есть изучить правила сборки пакетов для ALT Linux, собрать пакет, и влиться в ряды разработчиков.

Почему нельзя собирать и ставить программы с помощью make; make install [ править ]

Все вышесказанное относится и к программам, устанавливаемым с помощью инсталляционных скриптов типа

Почему нельзя ставить пакеты из других дистрибутивов [ править ]

Кратко: если вы не знаете, почему нельзя ставить чужие rpm, не стоит этого делать!

Если нельзя, но очень хочется… [ править ]

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

Отдельное замечание про драйвера nVidia и AMD(ATi) [ править ]

Очень часто пользователи пытаются скачать с сайта производителя и поставить драйвера для видеокарт нВидиа или АТи/АМД. Не стоит так делать! Самостоятельная установка драйверов путём запуска *.run разломает вам графическую подсистему с очень высокой степенью вероятности!

Все необходимые драйвера уже есть в дистрибутиве (на CD/DVD или в сетевых репозиториях; как ставить). Если у вас очень новая карта, и имеющиеся драйвера её не понимают, то вешайте запрос в Багзиллу на обновление драйверов.

Отдельное замечание про установку VirtualBox [ править ]

Часто пользователи ставят проприетарную сборку VirtualBox. См. инструкцию.

Как устанавливать AppImage-файлы [ править ]

Устанавливать программы в формате AppImage не нужно. Они работают без установки см. инструкцию.

Программы нет в дистрибутиве, и её нельзя туда включить [ править ]

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

Некоторые программы нельзя включить в дистрибутив по лицензионным ограничениям. Например, браузер Opera или интернет-телефон Skype. Для некоторых программ некоторые пользователи в частном порядке собирают rpm-пакеты. Например, fly.osdn.org.ua/

drool/ (см. FAQ). Можете воспользоваться такими «альтернативными» источниками пакетов. Другой выход — установка статических сборок вручную (см. выше).

Программа вообще не работает в Linux [ править ]

Некоторые программы вообще не работают в Linux. Например, бинарные программы, написанные под другую операционную систему (Windows, Solaris, BSD), или программы (даже с исходниками) написанные под очень старые версии Linux. Если вам очень хочется поработать с такими программами, поставьте ту ОС, для которой они написаны.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *