Вам бонус- начислено 1 монета за дневную активность. Сейчас у вас 1 монета

Установка, удаление и список программ (пакетов) в Debian или Ubuntu. Управление пакетами. GPG-ключи.

Практика



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


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

По большому счету это означает, что Вам нужно лишь знать название программы или пакета. Если он есть в сети в репозитории - система самостоятельно разберется откуда его скачать именно под Вашу версию ОС и установит.


Посмотреть текущие установленные пакеты

# dpkg --list

Если нужно найти какой-то пакет, например, apache2 - установлен он или нет:

# dpkg --list | grep apache2


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

Для этого примеряется команда "aptitude search" с параметром, являющимся названием пакета или частью названия.

# aptitude search apache

На этот запрос aptitude выведет список всех пакетов, совпадающих с названием "apache" или частью названия которых является фраза "apache".

PS. Далее по тексту я везде буду использовать пакет "apache2" как пример - вместо этого названия Вам нужно подставлять то, с которым Вы хотите оперировать!


Детальная информация о пакете

# aptitude show apache2

А если хочется поглядеть все доступные версии пакета:

# aptitude show -v apache2


Установка пакета из репозитория

# aptitude install apache2

При этом автоматически проверяются и устраняются все зависимости. Так, если пакет apache2 зависит от пакета "apache2-mpm-worker", то сначала скачается и установится этот пакет, а потом уже apache2. При этом глубина резолва многоуровненная - т.е. если, в свою очередь пакеn apache2-mpm-worker зависит от другого пакета - то сначала скачается тот другой и установится, потом уже apache2-mpm-worker, а уже потом - apache2.

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


Установка пакета определенной версии

Заметка! Указываемая версия должна существовать в репозитории и Ваша ОС должна об этом знать (не забываем обновлять данные репозиториев - см. ниже).

# aptitude install apache2=2.2.9-10+lenny7

Как видно, после знака = указывается полностью версия, которую Вы хотите установить.

Посмотреть все версии можно по пункту выше - детальная информация о пакете.


Переустановка пакета из репозитория

# aptitude reinstall apache2

При этом конфигурационные файлы пакета не будут перезаписаны файлами по-умолчанию.


Удаление скачанных установочных .deb файлов

Перед установкой пакета если установочный файл (.deb-файл) скачивается на компьютер. После установки этот файл не удаляется - например, на случай переустановки.

Если нужно подчистить кеш скачанных файлов - используем следующую команду:

# aptitude clean


Удаление старых и битых установочных .deb файлов

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

# aptitude autoclean



Удаление пакета

# aptitude remove apache2

При этом сам пакет будет удален, но конфигурационные файлы оставлены - на случай переустановки в будущем.


Жесткое удаление пакета

При этом будут удалены все настройки и ОС попытается привести свое состояние к тому, как будто пакета никогда не было.

# aptitude purge apache2


Запрет обновления пакета

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

# aptitude hold apache2


Обновление данных репозиториев

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

# aptitude update


Обновление всех пакетов кроме операционной системы

# aptitude safe-upgrade

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


Запретить обновление пакета до определенной версии

# aptitude forbit-version apache2
# aptitude forbit-version apache2=2.2.9-10+lenny7

При этом запрещается обновление только на указанную версию, при этом обновление на версию выше или ниже указанной - разрешаются!

В первом варианте будет запрещена следующая за текущей версия пакета.
Во-втором варианте можно самостоятельно задать определенную версию пакета, на которую обновляться нельзя.


Посмотреть объяснение - почему тот или иной пакет не может быть установлен в систему (или может)

# aptitude why apache2
# aptitude why-not apache2


Только скачать установочные .deb-файлы для указанных пакетов, но не устанавливать их.

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

# aptitude download apache2


Сэмулировать какое-то действие

При этом aptitude ведет себя так-же, как при настоящем действии, но по факту ничего не делает.

$ aptitude -s action

Например, вот пример обновления всех пакетов - aptitude покажет все, что он бы сделал, но не сделает это:

$ aptitude -s safe-upgrade


Установка пакета из скачанного на стороне .deb-файла

Т.е. не из репозитория.

# dpkg -i myinstallfile.deb

где вместо "myinstallfile.deb" подставьте имя скачанного файла (и путь, конечно).


Удаление пакета, установленного из стороннего .deb-файла

# dpkg -r package_name

где вместо "package_name" - укажите имя пакета.


Установка GPG-ключа

apt-key add - < rep.gpg

где вместо "rep.gpg" - укажите имя скачанного GPG-файла.

Второй способ - если известен UID:

# gpg --keyserver keys.gnupg.net --recv-key 12345678
# gpg -a --export 12345678 | sudo apt-key add -

где вместо "12345678" - подставить известный код для данного репозитория.
создано: 2017-05-10
обновлено: 2021-03-13
132641



Рейтиг 9 of 10. count vote: 2
Вы довольны ?:


Поделиться:

Найди готовое или заработай

С нашими удобными сервисами без комиссии*

Как это работает? | Узнать цену?

Найти исполнителя
$0 / весь год.
  • У вас есть задание, но нет времени его делать
  • Вы хотите найти профессионала для выплнения задания
  • Возможно примерение функции гаранта на сделку
  • Приорететная поддержка
  • идеально подходит для студентов, у которых нет времени для решения заданий
Готовое решение
$0 / весь год.
  • Вы можите продать(исполнителем) или купить(заказчиком) готовое решение
  • Вам предоставят готовое решение
  • Будет предоставлено в минимальные сроки т.к. задание уже готовое
  • Вы получите базовую гарантию 8 дней
  • Вы можете заработать на материалах
  • подходит как для студентов так и для преподавателей
Я исполнитель
$0 / весь год.
  • Вы профессионал своего дела
  • У вас есть опыт и желание зарабатывать
  • Вы хотите помочь в решении задач или написании работ
  • Возможно примерение функции гаранта на сделку
  • подходит для опытных студентов так и для преподавателей



Комментарии


Оставить комментарий
Если у вас есть какое-либо предложение, идея, благодарность или комментарий, не стесняйтесь писать. Мы очень ценим отзывы и рады услышать ваше мнение.
To reply

Операционная система LINUX

Термины: Операционная система LINUX