Команды APT: различия между версиями

Материал из ALT Linux Wiki
Строка 124: Строка 124:


===Удаление пакетов===
===Удаление пакетов===
====Примечание====
Удаление пакета не намного сложнее, чем установка. Достаточно знать имя пакета, который необходимо удалить и обращать внимание на сообщения системы <tt>apt</tt>.
Чтобы что-то удалить, необходимо знать, что можно удалить. Например пакеты программ, которыми Вы перестали пользоваться или программ из дистрибутива, которыми Вы не пользовались вообще.
При удалении пакетов имеется простое правило, которому желательно следовать:
* '''Не все пакеты, которыми вы не пользуетесь, являются ненужными.'''
Правило говорит о том, что программа, которой вы пользуетесь, может явно использовать пакет, который вы хотите удалить. Обычно зависимости выставлены корректно, и система <tt>apt</tt> всегда предупредит, какие пакеты придётся удалить дополнительно при удалении указанного. Не стоит пытаться удалить общесистемные пакеты, вы можете необратимо испортить нормальное функционирование операционной системы. В таких случаях '''apt''' настоятельно спросит, действительно ли пользователь уверен в своих действиях.
Например:
<source lang="text" highlight="1">
# apt-get remove coreutils
<большой список пакетов>
...
WARNING: The following essential packages will be removed
This should NOT be done unless you know exactly what you are doing!
...
You are about to do something potentially harmful
To continue type in the phrase 'Yes, do as I say!'
</source>
====Команды====
Удаление пакетов происходит аналогично установке:
Удаление пакетов происходит аналогично установке:
  # apt-get remove имя_пакета
  # apt-get remove имя_пакета

Версия от 17:37, 22 мая 2023

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

С помощью специальных команд Вы можете:

  • получить индексы
  • обновить все установленные пакеты
  • установить новые пакеты
  • удалить установленные пакеты

Эта "специальные команды" используются в консольной утилите APT.

Для ее работы нужны права суперпользователя.

Команды apt-get

Программа использует следующий синтаксис:

apt-get [параметры] команда
apt-get [параметры] install|remove пакет1 [пакет2 ...]
apt-get [параметры] source пакет1 [пакет2 ...]

Более подробно мы рассмотрим ее далее.

Обновление информации о репозиториях

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

Делается это следующей командой:

# apt-get update

Пример запуска:

[root@comp-alt-petr ~]# apt-get update
Получено: 1 http://ftp.altlinux.org p10/branch/x86_64 release [4223B]
Получено: 2 http://ftp.altlinux.org p10/branch/x86_64-i586 release [1665B]
Получено: 3 http://ftp.altlinux.org p10/branch/noarch release [2844B]
Получено 8732B за 0s (259kB/s).
Найдено http://ftp.altlinux.org p10/branch/x86_64/classic pkglist
Найдено http://ftp.altlinux.org p10/branch/x86_64/classic release
Найдено http://ftp.altlinux.org p10/branch/x86_64/gostcrypto pkglist
Найдено http://ftp.altlinux.org p10/branch/x86_64/gostcrypto release
Найдено http://ftp.altlinux.org p10/branch/x86_64-i586/classic pkglist
Найдено http://ftp.altlinux.org p10/branch/x86_64-i586/classic release
Найдено http://ftp.altlinux.org p10/branch/noarch/classic pkglist
Найдено http://ftp.altlinux.org p10/branch/noarch/classic release
Чтение списков пакетов... Завершено
Построение дерева зависимостей... Завершено

После выполнения команды, apt обновит свой кеш новой информацией.

Обновление системы

Чтобы обновить систему до актуального состояния (кроме ядра), используйте следующую команду:

# apt-get dist-upgrade

Пример запуска:

Примечание: Обратите внимание, когда обновляется несколько пакетов, действие нужно подтвердить нажатием клавиши Y
[root@comp-alt-petr ~]# apt-get dist-upgrade
Чтение списков пакетов... Завершено
Построение дерева зависимостей... Завершено
Подсчет обновлений... Завершено
Следующие пакеты будут ОБНОВЛЕНЫ:
  firefox libnss
2 будет обновлено, 0 новых установлено, 0 пакетов будет удалено и 0 не будет обновлено.
Необходимо получить 59,2MB архивов.
После распаковки потребуется дополнительно 2888kB дискового пространства.
Продолжить? [Y/n] y
Получено: 1 http://ftp.altlinux.org p10/branch/x86_64/classic libnss 3.89.0-alt1:p10+319679.40.8.1@1684328466 [1290kB]
Получено: 2 http://ftp.altlinux.org p10/branch/x86_64/classic firefox 112.0.2-alt0.p10.1:p10+319679.140.8.2@1684342590 [57,9MB]
Получено 59,2MB за 2s (20,6MB/s).  
Совершаем изменения...
Подготовка...                                                   #################################################################################################### [100%]
Обновление / установка...
1: libnss-3.89.0-alt1                                           #################################################################################################### [ 25%]
2: firefox-112.0.2-alt0.p10.1                                   #################################################################################################### [ 50%]
Очистка / удаление... 
3: firefox-110.0.1-alt0.p10.1                                   #################################################################################################### [ 75%]
4: libnss-3.88.1-alt1                                           #################################################################################################### [100%]
Завершено.

Установка пакетов

Установка пакетов производится следующей командой:

# apt-get install имя_пакета

Например:

 # apt-get install chromium

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

Так же Вы можете указать сразу несколько или большое количество пакетов через пробел.

 # apt-get install firefox gimp vlc
Примечание: Обратите внимание, когда устанавливается несколько пакетов, действие нужно подтвердить нажатием клавиши Y

Пример запуска:

[root@comp-alt-petr ~]# apt-get install stellarium
Чтение списков пакетов... Завершено
Построение дерева зависимостей... Завершено
Следующие НОВЫЕ пакеты будут установлены:
  stellarium
0 будет обновлено, 1 новых установлено, 0 пакетов будет удалено и 0 не будет обновлено.
Необходимо получить 212MB архивов.
После распаковки потребуется дополнительно 334MB дискового пространства.
Получено: 1 http://ftp.altlinux.org p10/branch/x86_64/classic stellarium 0.21.0-alt1.1:sisyphus+279564.100.1.3@1626602684 [212MB]
Получено 212MB за 10s (20,9MB/s).                                                                                                                                         
Совершаем изменения...
Подготовка...                                                   #################################################################################################### [100%]
Обновление / установка...
1: stellarium-0.21.0-alt1.1                                     #################################################################################################### [100%]
Завершено.

Дополнительные варианты

  • Установка RPM-пакета из файловой системы:
[root@comp-alt-petr ~]# apt-get install /home/user/Загрузки/whois-5.5.0-alt1.x86_64.rpm
  • Установка пакета по его URL:
[root@comp-alt-petr ~]# apt-get install http://ftp.altlinux.org/pub/distributions/ALTLinux/Sisyphus/files/x86_64/RPMS/whois-5.5.0-alt1.x86_64.rpm
  • Установка по имени исполняемого файла или библиотеки:
[root@comp-alt-petr ~]# apt-get install /usr/bin/whois

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

Примечание

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

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

При удалении пакетов имеется простое правило, которому желательно следовать:

  • Не все пакеты, которыми вы не пользуетесь, являются ненужными.

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

Например:

# apt-get remove coreutils
<большой список пакетов>
...
WARNING: The following essential packages will be removed
This should NOT be done unless you know exactly what you are doing!
...
You are about to do something potentially harmful
To continue type in the phrase 'Yes, do as I say!'

Команды

Удаление пакетов происходит аналогично установке:

# apt-get remove имя_пакета
# apt-get remove 0ad 

И так же Вы можете указать несколько или большое количество пакетов через пробел.

# apt-get remove 0ad supertuxkart boswars

Пример запуска:

Примечание: Обратите внимание, когда удаляется несколько пакетов, действие нужно подтвердить нажатием клавиши Y
[root@comp-alt-petr ~]# apt-get remove supertuxkart boswars
Чтение списков пакетов... Завершено
Построение дерева зависимостей... Завершено
Следующие пакеты будут УДАЛЕНЫ:
  boswars supertuxkart
0 будет обновлено, 0 новых установлено, 2 пакетов будет удалено и 0 не будет обновлено.
Необходимо получить 0B архивов.
После распаковки будет освобождено 160MB дискового пространства.
Продолжить? [Y/n] y
Совершаем изменения...
Подготовка...                                                   #################################################################################################### [100%]
Очистка / удаление... 
1: supertuxkart-1.4-alt1                                        #################################################################################################### [ 50%]
2: boswars-2.7-alt1_24.svn160110                                #################################################################################################### [100%]
Завершено.
Примечание: Если Вы не помните полное имя пакета, можете воспользоваться командой RPM
# rpm -qa | grep часть_названия

Пример:

[root@comp-alt-petr ~]# rpm -qa | grep tux
supertuxkart-data-1.4-alt1.noarch
tuxcmd-0.6.70-alt2.x86_64
supertux2-0.6.3-alt2.x86_64
supertuxkart-1.4-alt1.x86_64
supertux2-data-0.6.3-alt2.noarch

Удаление неиспользуемых пакетов

Примечание: Данную команду нужно использовать с осторожностью, т.к. она может удалить нужные пакеты

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

# apt-get autoremove
Примечание: Обратите внимание, когда удаляется несколько пакетов, действие нужно подтвердить нажатием клавиши Y
[root@comp-alt-petr ~]# apt-get autoremove
Чтение списков пакетов... Завершено
Построение дерева зависимостей... Завершено
Calculating Autoremove... Завершено
Следующие пакеты будут УДАЛЕНЫ:
  ImageMagick-tools advancecomp libjpeg-utils liblua5.1 liblua5.1-preinstall libmcpp libtolua++-lua5.1 optipng supertuxkart-data
0 будет обновлено, 0 новых установлено, 9 пакетов будет удалено и 0 не будет обновлено.
Необходимо получить 0B архивов.
После распаковки будет освобождено 729MB дискового пространства.
Продолжить? [Y/n] y
Совершаем изменения...
Подготовка...                                                   #################################################################################################### [100%]
Очистка / удаление... 
1: libtolua++-lua5.1-1.0.93-alt5                                #################################################################################################### [ 11%]
2: liblua5.1-5.1.5-alt17                                        #################################################################################################### [ 22%]
3: liblua5.1-preinstall-5.1.5-alt17                             #################################################################################################### [ 33%]
4: supertuxkart-data-1.4-alt1                                   #################################################################################################### [ 44%]
5: optipng-0.7.7-alt1                                           #################################################################################################### [ 56%]
6: libmcpp-2.7.2-alt3                                           #################################################################################################### [ 67%]
7: libjpeg-utils-2:2.0.6-alt3                                   #################################################################################################### [ 78%]
8: advancecomp-2.1-alt1_16                                      #################################################################################################### [ 89%]
9: ImageMagick-tools-6.9.12.64-alt1                             #################################################################################################### [100%]
Завершено.


Удаление ранее скачанных пакетов

Все пакеты, которые Вы устанавливаете или обновляете, скачиваются в папку кэша и хранятся на диске в папке /var/cache/apt/archives. После долгого времени использования системы они могут занимать много места.

Чтобы очистить кэш скачанных пакетов воспользуйтесь командой:

# apt-get clean 

Команда не очень информативна:

[root@comp-alt-petr ~]# apt-get clean

Проверка зависимостей

Чтобы удостовериться в отсутствии неудовлетворённых зависимостей введите команду:

# apt-get check
[root@comp-alt-petr ~]# apt-get check
Чтение списков пакетов... Завершено
Построение дерева зависимостей... Завершено

Удаление дубликатов

Чтобы удалить задублированные пакеты, выполните команду:

# apt-get dedup

Параметры

В конце команды Вы можете указать следующие параметры:

-qq Не показывать ничего кроме сообщений об ошибках
-d Получить пакеты и выйти БЕЗ их установки или распаковки. Для команд "apt-get install" и "apt-get dist-upgrade"
-s Симуляция установки
-y Автоматически отвечать "да" на все вопросы
-f Исправление неудовлетворенных зависимостей. Обычно используется с командой "apt-get install"
-m Начать установку пакетов, если их часть была недоступна и не скачалась.  Для команд "apt-get install" и "apt-get dist-upgrade".
-u Показать список обновляемых пакетов 
-D При удалении пакета удалить все его зависимости. Для команды "apt-get remove"
-V Показывать номера версий пакетов

Команды apt-repo

Команды apt-cache

Команды apf