Команды APT: различия между версиями
Нет описания правки |
Нет описания правки Метка: отменено |
||
Строка 17: | Строка 17: | ||
Более подробно мы рассмотрим ее далее. | Более подробно мы рассмотрим ее далее. | ||
==apt-get== | |||
===Команды=== | |||
= | ====Получение индексов==== | ||
===Получение индексов=== | |||
Первым делом нужно получить индексы, содержащие актуальные наборы пакетов и ссылки на них. Делается это следующей командой: | Первым делом нужно получить индексы, содержащие актуальные наборы пакетов и ссылки на них. Делается это следующей командой: | ||
# apt-get update | # apt-get update | ||
Строка 43: | Строка 43: | ||
</source> | </source> | ||
===Обновление системы=== | ====Обновление системы==== | ||
Чтобы обновить систему до актуального состояния ([[Обновление ядра|кроме ядра]]), используйте следующую команду: | Чтобы обновить систему до актуального состояния ([[Обновление ядра|кроме ядра]]), используйте следующую команду: | ||
# apt-get dist-upgrade | # apt-get dist-upgrade | ||
Строка 73: | Строка 73: | ||
</source> | </source> | ||
===Установка пакетов=== | ====Установка пакетов==== | ||
Установка пакетов производится следующей командой: | Установка пакетов производится следующей командой: | ||
# apt-get install имя_пакета | # apt-get install имя_пакета | ||
Строка 100: | Строка 100: | ||
Завершено. | Завершено. | ||
</source> | </source> | ||
===Удаление пакетов=== | ====Удаление пакетов==== | ||
Удаление пакетов происходит аналогично установке: | Удаление пакетов происходит аналогично установке: | ||
# apt-get remove имя_пакета | # apt-get remove имя_пакета | ||
Строка 126: | Строка 126: | ||
</source> | </source> | ||
===Удаление неиспользуемых пакетов=== | ====Удаление неиспользуемых пакетов==== | ||
{{Note|Данную команду нужно использовать с осторожностью, т.к. она может удалить нужные пакеты}} | {{Note|Данную команду нужно использовать с осторожностью, т.к. она может удалить нужные пакеты}} | ||
Чтобы удалить лишние пакеты, которые не используются в системе выполните следующую команду: | Чтобы удалить лишние пакеты, которые не используются в системе выполните следующую команду: | ||
Строка 161: | Строка 161: | ||
{{Note|следующие команды используют напрямую /etc/apt/sources.list}} | {{Note|следующие команды используют напрямую /etc/apt/sources.list}} | ||
===Получение исходного кода пакетов=== | ====Получение исходного кода пакетов==== | ||
Для получения исходного кода для разработки программы и ее пакета, можно воспользоваться командой: | Для получения исходного кода для разработки программы и ее пакета, можно воспользоваться командой: | ||
# apt-get source имя_пакета | # apt-get source имя_пакета | ||
===Установка необходимого ПО для сборки пакетов=== | ====Установка необходимого ПО для сборки пакетов==== | ||
Все необходимое ПО для сборки пакетов ставится следующей командой: | Все необходимое ПО для сборки пакетов ставится следующей командой: | ||
# apt-get build-dep | # apt-get build-dep | ||
--> | --> | ||
===Удаление ранее скачанных пакетов=== | ====Удаление ранее скачанных пакетов==== | ||
Все пакеты, которые Вы устанавливаете или обновляете, скачиваются в папку кэша и хранятся на диске в папке /var/cache/apt/archives. После долгого времени использования системы они могут занимать много места. | Все пакеты, которые Вы устанавливаете или обновляете, скачиваются в папку кэша и хранятся на диске в папке /var/cache/apt/archives. После долгого времени использования системы они могут занимать много места. | ||
Строка 180: | Строка 180: | ||
[root@comp-alt-petr ~]# apt-get clean | [root@comp-alt-petr ~]# apt-get clean | ||
</source> | </source> | ||
===Проверка зависимостей=== | ====Проверка зависимостей==== | ||
Чтобы удостовериться в отсутствии неудовлетворённых зависимостей введите команду: | Чтобы удостовериться в отсутствии неудовлетворённых зависимостей введите команду: | ||
# apt-get check | # apt-get check | ||
Строка 190: | Строка 190: | ||
</source> | </source> | ||
===Удаление дубликатов=== | ====Удаление дубликатов==== | ||
Чтобы удалить задублированные пакеты, выполните команду: | Чтобы удалить задублированные пакеты, выполните команду: | ||
# apt-get dedup | # apt-get dedup | ||
==Параметры== | ===Параметры=== | ||
В конце команды Вы можете указать следующие параметры: | В конце команды Вы можете указать следующие параметры: | ||
<pre> | <pre> | ||
Строка 207: | Строка 207: | ||
-V Показывать номера версий пакетов | -V Показывать номера версий пакетов | ||
</pre> | </pre> | ||
==apt-cache== | |||
====Проверка зависимостей==== | |||
С помощью apt-cache так же как и с apt-get можно удостовериться в отсутствии неудовлетворённых зависимостей. | |||
# apt-cache gencaches | |||
<source lang="text" highlight="1"> | |||
[root@comp-alt-petr ~]# apt-cache gencaches | |||
Чтение списков пакетов... Завершено | |||
</source> | |||
====Информация о пакетах и их зависимостях==== | |||
С помощью apt-cache можно вывести информацию о перечисленных в командной строке пакетах и их зависимостях. Для этого используется команда '''showpkg'''. Остальные аргументы являются именами пакетов. | |||
В полученном результате перечисляются доступные версии, обратные зависимости каждого пакета, а также прямые зависимости для каждой версии. | |||
'''Прямые (обычные) зависимости''' - зависимости, от которых зависит данный пакет; | |||
'''Обратные зависимости''' - указывают на то, что существуют другие пакеты, которые зависят от данного пакета. | |||
Таким образом, прямые зависимости должны быть удовлетворены для установки пакета, а обратные могут и не быть удовлетворены. | |||
# apt-cache showpkg имя_пакета имя_пакета ... | |||
Пример, где: | |||
*'''Reverse Depends''' - обратные зависимости, | |||
*'''Dependencies''' - прямые зависимости | |||
<source lang="text" highlight="1"> | |||
[root@comp-alt-petr ~]# apt-cache showpkg ffmpeg | |||
Package: ffmpeg | |||
Versions: | |||
2:4.4.3-alt2:p10+314231.200.4.1@1676567363(/var/lib/apt/lists/ftp.altlinux.org_pub_distributions_ALTLinux_p10_branch_x86%5f64_base_pkglist.classic) | |||
Reverse Depends: | |||
tkffmpeg,ffmpeg | |||
screencaster,ffmpeg | |||
mithraen-utils,ffmpeg | |||
m4b-tool,ffmpeg | |||
zoneminder,ffmpeg | |||
winff,ffmpeg | |||
vcmi,ffmpeg | |||
shotcut,ffmpeg | |||
rosa-media-player,ffmpeg | |||
qwinff,ffmpeg | |||
povray-common,ffmpeg | |||
pencil2d,ffmpeg | |||
peek,ffmpeg | |||
imagination,ffmpeg | |||
dvdstyler,ffmpeg | |||
deadbeef-converter,ffmpeg | |||
GMT,ffmpeg | |||
Dependencies: | |||
2:4.4.3-alt2:p10+314231.200.4.1@1676567363 - /lib64/ld-linux-x86-64.so.2 (0 (null)) libavdevice58 (5 2:4.4.3-alt2:p10+314231.200.4.1) | |||
Provides: | |||
2:4.4.3-alt2:p10+314231.200.4.1@1676567363 - /usr/bin/ffmpeg ffmpeg | |||
Reverse Provides: | |||
ffmpeg 2:4.4.3-alt2:p10+314231.200.4.1@1676567363 | |||
</source> | |||
====Информация о пакете с исходным кодом==== | |||
С помощью apt-cache можно вывести информацию о перечисленных в командной строке пакетах с исходным кодом Для этого используется команда '''showsrc'''. Остальные аргументы являются именами пакетов. | |||
# apt-cache showsrc | |||
{{Category navigation|title=APT|category=APT|sortkey=*}} | {{Category navigation|title=APT|category=APT|sortkey=*}} | ||
<source lang="text" highlight="1"> | |||
</source> |
Версия от 14:01, 18 мая 2023
Все пакеты, из которых в систему ставятся программы, драйвера, ядра и пр. хранятся в специальных сетевых хранилищах - репозиториях. Они состоят из двух частей - индексов и хранилища. Сначала получаются файлы индексов, содержащие список всех пакетов и ссылки на них и, используя полученные индексы, пакеты скачиваются из хранилища во временный каталог и, по завершении загрузки, устанавливаются в систему или обновляются.
С помощью специальных команд Вы можете:
- получить индексы
- обновить все установленные пакеты
- установить новые пакеты
- удалить установленные пакеты
Эта "специальные команды" используются в консольной утилите APT.
Для ее работы нужны права суперпользователя.
Программа использует следующий синтаксис:
apt-get [параметры] команда apt-get [параметры] install|remove пакет1 [пакет2 ...] apt-get [параметры] source пакет1 [пакет2 ...]
Более подробно мы рассмотрим ее далее.
apt-get
Команды
Получение индексов
Первым делом нужно получить индексы, содержащие актуальные наборы пакетов и ссылки на них. Делается это следующей командой:
# 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-get dist-upgrade
Пример запуска:
[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 firefox gimp vlc
Пример запуска:
[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%]
Завершено.
Удаление пакетов
Удаление пакетов происходит аналогично установке:
# apt-get remove имя_пакета
И так же Вы можете указать несколько или большое количество пакетов через пробел.
# apt-get remove 0ad supertuxkart boswars
Пример запуска:
[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%]
Завершено.
Удаление неиспользуемых пакетов
Чтобы удалить лишние пакеты, которые не используются в системе выполните следующую команду:
# apt-get autoremove
[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 Получить пакеты и выйти БЕЗ их установки или распаковки -s Симуляция установки -y Автоматически отвечать "да" на все вопросы -f Исправление неудовлетворенных зависимостей. Обычно используется с командой "apt-get install" -m Начать установку пакетов, если их часть была недоступна и не скачалась -u Показать список обновляемых пакетов -D При удалении пакета удалить все его зависимости. Для команды "apt-get remove" -V Показывать номера версий пакетов
apt-cache
Проверка зависимостей
С помощью apt-cache так же как и с apt-get можно удостовериться в отсутствии неудовлетворённых зависимостей.
# apt-cache gencaches
[root@comp-alt-petr ~]# apt-cache gencaches
Чтение списков пакетов... Завершено
Информация о пакетах и их зависимостях
С помощью apt-cache можно вывести информацию о перечисленных в командной строке пакетах и их зависимостях. Для этого используется команда showpkg. Остальные аргументы являются именами пакетов.
В полученном результате перечисляются доступные версии, обратные зависимости каждого пакета, а также прямые зависимости для каждой версии.
Прямые (обычные) зависимости - зависимости, от которых зависит данный пакет;
Обратные зависимости - указывают на то, что существуют другие пакеты, которые зависят от данного пакета.
Таким образом, прямые зависимости должны быть удовлетворены для установки пакета, а обратные могут и не быть удовлетворены.
# apt-cache showpkg имя_пакета имя_пакета ...
Пример, где:
- Reverse Depends - обратные зависимости,
- Dependencies - прямые зависимости
[root@comp-alt-petr ~]# apt-cache showpkg ffmpeg
Package: ffmpeg
Versions:
2:4.4.3-alt2:p10+314231.200.4.1@1676567363(/var/lib/apt/lists/ftp.altlinux.org_pub_distributions_ALTLinux_p10_branch_x86%5f64_base_pkglist.classic)
Reverse Depends:
tkffmpeg,ffmpeg
screencaster,ffmpeg
mithraen-utils,ffmpeg
m4b-tool,ffmpeg
zoneminder,ffmpeg
winff,ffmpeg
vcmi,ffmpeg
shotcut,ffmpeg
rosa-media-player,ffmpeg
qwinff,ffmpeg
povray-common,ffmpeg
pencil2d,ffmpeg
peek,ffmpeg
imagination,ffmpeg
dvdstyler,ffmpeg
deadbeef-converter,ffmpeg
GMT,ffmpeg
Dependencies:
2:4.4.3-alt2:p10+314231.200.4.1@1676567363 - /lib64/ld-linux-x86-64.so.2 (0 (null)) libavdevice58 (5 2:4.4.3-alt2:p10+314231.200.4.1)
Provides:
2:4.4.3-alt2:p10+314231.200.4.1@1676567363 - /usr/bin/ffmpeg ffmpeg
Reverse Provides:
ffmpeg 2:4.4.3-alt2:p10+314231.200.4.1@1676567363
Информация о пакете с исходным кодом
С помощью apt-cache можно вывести информацию о перечисленных в командной строке пакетах с исходным кодом Для этого используется команда showsrc. Остальные аргументы являются именами пакетов.
# apt-cache showsrc