
Утилита
apt-get представляет собой мощную и гибкую программу командной строки для управления пакетами в дистрибутивах
linux (
Debian, Ubuntu), .Apt-get работает с библиотекой
APT (
Advanced Packaging Tool) и используется для установки новых пакетов программного обеспечения, удаления и обновления существующих пакетов. Кроме того apt-get использхуется для обновления всей операционной системы.
Apt-cache так-же является утилитой командной строки и используется для поиска пакетов программного обеспечения в кэше apt, сбора информации о пакетах, а также для поиска готовых пакетов для установки в операционных системах на базе
Debian или
Ubuntu.
Как правило
apt-get и
apt-cache используются совместно,
apt-cache для получения информации,
apt-get для манипуляций с пакетами. Кроме них существует еще с десяток программ из категории
apt-*, посмотреть можно так:
# ls -a /usr/bin/ | grep apt-
1. Apt-cache, список всех доступных пакетов.
Что-бы получить список всех доступных пакетов в системе используется команда:
# apt-cache pkgnames
libuuidm-ocaml-dev
task-estonian-desktop
libosmgpsmap2
...........
Листинг будет довольно внушительный, поэтому можно перенаправить вывод через утилиту
more, что-бы была возможность листать список:
# apt-cache pkgnames | more
2. Apt-cache, узнать имя пакета и описание программного обеспечения
Чтобы узнать имя пакета и его описание перед установкой, используйте подкоманду
search.
Search, указывает apt-cache вывести список всех пакетов, совпадающих со строкой поиска, с их краткими описаниями . Например, найдем все пакеты связанные именем
exim:
# apt-cache search exim
exim4 - metapackage to ease Exim MTA (v4) installation
exim4-base - support files for all Exim MTA (v4) packages
exim4-config - configuration for the Exim MTA (v4)
.........................
Вывести список пакетов начинающихся со строки
exim:
# apt-cache pkgnames exim
exim4-daemon-light
eximon4
exim4-config
3. Apt-cache, получение информации о пакете
Если вам нужно проверить информацию о пакете, например версию пакета, контрольные суммы, размер до и после установки и т.д., воспользуйтесь подкомандой
show:
# apt-cache show exim4
Package: exim4
Version: 4.80-7+deb7u4
Installed-Size: 44
Maintainer: Exim4 Maintainers
Architecture: all
Depends: debconf (>= 0.5) | debconf-2.0, debconf (>= 1.4.69) | cdebconf (>= 0.39), exim4-base (>= 4.80), exim4-daemon-light | exim4-daemon-heavy | exim4-daemon-custom
Description: metapackage to ease Exim MTA (v4) installation
Homepage: http://www.exim.org/
Description-md5: 458592f74d76e446735736c1d55ce615
Section: mail
Priority: standard
Filename: pool/updates/main/e/exim4/exim4_4.80-7+deb7u4_all.deb
Size: 7790
MD5sum: 13bc5ca11b6cbb67d1c5c978fe975a58
SHA1: 6aae2042ee6fd6ba6c9ccdbd3a849620aa6fe690
SHA256: 90db48df64348b333805ea8af7bb4339ff164a3ed27f2c74e070c712ffb3db1c
4. Apt-ceche, получить информацию о зависимостях пакета
Для получения информации о прямых и обратных зависимостях конкретного пакета, используйте подкоманду
showpkg с именем нужного пакета:
# apt-cache showpkg ftp
Package: ftp
Versions:
0.17-27 (/var/lib/apt/lists/mirror.mephi.ru_debian_dists_wheezy_main_binary-amd64_Packages) (/var/lib/dpkg/status)
Description Language:
File: /var/lib/apt/lists/mirror.mephi.ru_debian_dists_wheezy_main_binary-amd64_Packages
MD5: ce93e483dfc5fef0655f73f364b3c01c
Description Language: en
File: /var/lib/apt/lists/mirror.mephi.ru_debian_dists_wheezy_main_i18n_Translation-en
MD5: ce93e483dfc5fef0655f73f364b3c01c
Reverse Depends:
webcam,ftp
ftp-ssl,ftp 0.10
ftp-ssl,ftp 0.10
heimdal-clients,ftp 0.16-1
gabedit,ftp
Dependencies:
0.17-27 - libc6 (2 2.11) libreadline6 (2 6.0) netbase (0 (null)) netstd (0 (null))
Provides:
0.17-27 -
Reverse Provides:
ftp-ssl 0.17.23+0.2-1+b1
heimdal-clients 1.6~git20120403+dfsg1-2
5. Apt-cache, статистика кэша пакетов
Подкоманда
stats отобразит общую статистику кэша пакетов.
# apt-cache stats
Total package names: 46396 (928 k)
Total package structures: 46396 (2,598 k)
Normal packages: 35015
Pure virtual packages: 524
Single virtual packages: 4057
Mixed virtual packages: 1078
Missing: 5722
Total distinct versions: 37929 (2,731 k)
Total distinct descriptions: 72393 (1,737 k)
Total dependencies: 226429 (6,340 k)
Total ver/file relations: 39862 (957 k)
Total Desc/File relations: 72393 (1,737 k)
Total Provides mappings: 7847 (157 k)
Total globbed strings: 85 (670 )
Total dependency version space: 939 k
Total slack space: 34.7 k
Total space accounted for: 12.8 M
6. Apt-get, обновление списка пакетов
Для повторной синхронизации файлов индекса пакетов из их источников, указанных в файле
/etc/apt/sources.list, используется команда
apt-get с ключом
update. Если в репозитариях доступны новые версии пакетов, они будут добавлены в индекс. Выполнять
apt-get update следует перед любыми манипуляциями с пакетами.
# apt-get update
Hit http://mirror.mephi.ru wheezy Release.gpg
Get:1 http://mirror.mephi.ru wheezy-updates Release.gpg [1,554 B]
Hit http://mirror.mephi.ru wheezy Release
...............
7. Apt-get, обновление установленных пакетов
Команда
upgrade используется для обновления всех установленных в системе пакетов, имеющих более новую версию. Пакеты которые уже установлены в системе не будут удаляться в любом случае, равно как и не будут устанавливаться пакеты которые не присутствовали в системе на момент обновления. Перед выполнением обновления следует обязательно выполнить
apt-get update, что-бы система имела актуальную информацию о существующих в данный момент версиях пакетов.
# apt-get upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages have been kept back:
linux-headers-generic linux-image-generic wine1.5 wine1.5-i386
The following packages will be upgraded:
activity-log-manager-common activity-log-manager-control-center adium-theme-ubuntu alacarte
alsa-base app-install-data-partner appmenu-gtk appmenu-gtk3 apport apport-gtk
......................
8. Apt-get, установка или обновление пакетов
Что-бы установить или обновить пакет, используется команда
install, с указанием имени пакета.
# apt-get install pkg1 pkg2 ...
9. Apt-get, установка или обновление нескольких пакетов
Что-бы установить или обновить несколько пакетов, так-же используется команда
install, но с перечечислением имен нужных пакетов.
# apt-get install nethogs goaccess
10. Apt-get, установка нескольких пакетов с использованием маски
Можно установить несколько пакетов, заменив часть имени символом маски "
*":
# apt-get install '*name*'
11. Apt-get, установка пакета без обновления
Что-бы предотвратить обновление пакета если он уже установлен в систему, можно использовать ключ
--no-upgrade
# apt-get install pkg_name --no-upgrade
12. Apt-get, обновление конкретных пакетов
При указании ключа
--only-upgrade,
apt-get обновит только установленные пакеты, установка новых пакетов при этом будет отключена:
# apt-get install pkg_name --only-upgrade
13. Apt-get, установить пакет определенной версии
Что-бы установить пакет только определенной версии, укажите имя пакета и версию, разделив их знаком "
="
# apt-get install vsftpd=2.3.5-3
14. Apt-get, удалить пакет оставив файлы конфигурации
Что-бы удалить пакет не удаляя при этом файлы конфигурации, используется команду
remove:
# apt-get remove vsftpd
15. Apt-get, полностью удалить пакет
Удалить пакет вместе со всеми его файлами конфигурации, используется команда
purge:
# apt-get purge vsftpd
......................
Purging configuration files for vsftpd ...
Кроме того, можно комбинировать
remove и
purge в одной команде:
# apt-get remove --purge vsftpd
16. Apt-get, освободить место на диске
Что-бы освободить некоторое количество дискового пространства, можно удалить из локального репозитария скачанные
deb пакеты:
# apt-get clean
17. Apt-get, скачать только исходный код пакета
Что-бы скачать исходный код определенного пакета, используется ключ
--download-only source с именем соответствующего пакета:
# apt-get --download-only source vsftpd
Reading package lists... Done
Building dependency tree
Reading state information... Done
Need to get 216 kB of source archives.
Get:1 http://mirror.mephi.ru/debian/ wheezy/main vsftpd 2.3.5-3 (dsc) [1,125 B]
Get:2 http://mirror.mephi.ru/debian/ wheezy/main vsftpd 2.3.5-3 (tar) [188 kB]
Get:3 http://mirror.mephi.ru/debian/ wheezy/main vsftpd 2.3.5-3 (diff) [26.9 kB]
Fetched 216 kB in 0s (252 kB/s)
Download complete and in download only mode
18. Apt-get, скачать и распаковать пакет
Что-бы скачать исходный код пакета и распаковать его в определенную директорию, используйте:
apt-get source vsftpd
19. Apt-get, скачать, распаковать и скомпилировать пакет
Можно скачать, распаковать и скомпилировать пакет одной командой:
# apt-get --compile source vsftpd
20. Apt-get, скачать пакет без установки
Можно скачать пакет без его установки, достаточно использовать команда
download и имя пакета:
# apt-get download nload
Get:1 Downloading nload 0.7.4-1 [64.2 kB]
Fetched 64.2 kB in 4s (15.1 kB/s)
21. Apt-get, посмотреть список изменений пакета
Что-бы посмотреть список изменений в пакете, нужно использовать команда
changelog:
# apt-get changelog nload
Get:1 Changelog for nload (http://packages.debian.org/changelogs/pool/main/n/nload/nload_0.7.4-1/changelog) [4,766 B]
Fetched 4,766 B in 0s (4,860 B/s)
nload (0.7.4-1) unstable; urgency=low
* [29fb6c5] Imported Upstream version 0.7.4
- Fixed incorrect output with amd64 kernel (Closes: #651848)
22. Apt-get, проверить сломанные зависимости
Для проверки сломанных зависимостей пакета используется команда
check:
# apt-get check nload
Reading package lists... Done
Building dependency tree
Reading state information... Done
23. Apt-get, найти и установить зависимости пакета
Найти и установить зависимости пакета можно с помощью команды
build-dep,
apt-get просмотрит локальный репозитарий и установит зависимости пакета:
# apt-get build-dep nload
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following NEW packages will be installed:
debhelper diffstat gettext html2text intltool-debian libgettextpo0 libunistring0 po-debconf quilt
0 upgraded, 9 newly installed, 0 to remove and 81 not upgraded.
Need to get 4,024 kB of archives.
After this operation, 10.8 MB of additional disk space will be used.
Do you want to continue [Y/n]? Y
24. Apt-get, автоматически очистить кэш
Команда
autoclean удаляет все
deb файлы в папке
/var/cache/apt/archives, тем самым освобождая место на диске
# apt-get autoclean
25. Apt-get, автоматически удалить пакет
Команда
autoremove позволяет удалить пакеты которые были установлены для разрешения зависимостей других пакетов и в данный момент больше не нужны. В примере ниже будет удален пакет со всеми зависимостями:
# apt-get autoremove nload
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages will be REMOVED:
nload
0 upgraded, 0 newly installed, 1 to remove and 81 not upgraded.
After this operation, 145 kB disk space will be freed.
Do you want to continue [Y/n]?
(Reading database ... 58743 files and directories currently installed.)
Removing nload ...
Processing triggers for man-db ...
Здесь приведены варианты команд, которые используются наиболее часто, но далеко не все. Более полную информацию можно получить в официальной документации.
# man apt-get
# man apt-cache
Удачи.
Комментарии
Отправить комментарий