Как да използвате apt-get: Мениджър на пакети в Ubuntu, LinuxMint, Debian

Съдържание

Какво е apt-get?
Командата apt-get е много мощен инструмент, който се предлага по подразбиране в дистрибуции като Debian, LinuxMint, Ubuntu отговаря за управлението на библиотеката с пакети и като такава за инсталиране, премахване, актуализиране и търсене на пакетите за операционната система от линия команда.
Какво е apt-cache?
Това е производно на apt-get, основната му функция е да търси пакетите, които искаме да инсталираме, използвайки кеша след актуализиране на нашето хранилище. Но не само можем да търсим, за да инсталираме, можем да проверим кои пакети са инсталирани или информация за пакета, като например инсталираната версия или дали има налична актуализация. Той е включен като apt-get в много дистрибуции с deb пакети.

Как да се покаже списъкът с пакети?


Можем да изброим всички налични пакети за системата (Това е много дълъг списък).
 apt-cache pkgnames esseract-ocr-epo pipenightdreams mumudvb tbb-examples libsvm-java libmrpt-hmtslam0.9 libboost-timer1.50-dev kcm-touchpad g ++-4.5-multilib… 

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


За да търсим пакет, показващ кратко описание, без да се налага да го инсталираме, използваме командата apt-cache заедно с опцията за търсене. Той ще изброи всички пакети, които съответстват на вашето търсене, например, ако искаме да инсталираме FTP сървър, имаме нужда от пакета vsftpd.
 apt-кеш търсене vsftpd
Но в случай, че искаме само името без описание, което използваме
 apt-кеш pkgnames vsftpd

Получавате повече информация за пакета?


Ако искаме да получим повече информация за пакета, като неговата версия или размер в KB, който използваме
 apt-кеш шоу netcat 
 Пакет: netcat Приоритет: незадължителен Раздел: вселена / мрежа Инсталиран размер: 30 Поддръжка: Ubuntu Developers Оригинален поддържащ: Ruben Molina Архитектура: всички Версия: 1.10-40 Зависи: netcat-traditional (> = 1.10-39) Име на файла: pool / вселена / п / netcat / netcat_1.10-40_all.deb Размер: 3340 md5sum: 37c303f02b260481fa4fc9fb8b2c1004 SHA1: 0371a3950d6967480985aa014fbb6fb898bcea3a SHA256: eeecb4c93f03f455d2c3f57b0a1e83b54dbeced0918ae563784e86a37bcc16c9 Описание-ин: TCP / IP швейцарски армейски нож - преходен пакет Това е пакет "сляпо", зависи от Лени, че това е по подразбиране версия на netcat, за да се улеснят ъпгрейдите. Може да се отстрани безопасно. Description-md5: 1353f8c1d079348417c2180319bdde09 Грешки: https://bugs.launchpad.net/ubuntu/+filebug Произход: Ubuntu

Проверете необходимите зависимости за пакети


В този случай използваме showpkg и той ще изброи всички зависимости, необходими за правилната му работа независимо дали са инсталирани или не.
 apt-cache showpkg vsftpd
 Пакет: vsftpd Версии: 2.3.5-3ubuntu1 (/var/lib/apt/lists/in.archive.ubuntu.com_ubuntu_dists_quantal_main_binary-i386_Packages) Описание Език: Файл: /var/lib/apt/lists/in.archive.ubuntu. com_ubuntu_dists_quantal_main_binary-i386_Packages MD5: 81386f72ac91a5ea48f8db0b023f3f9b Описание Език: BG Файл: /var/lib/apt/lists/in.archive.ubuntu.com_ubuntu_dists_quantal_main_i18n_Translation-en MD5: 81386f72ac91a5ea48f8db0b023f3f9b обратно Зависи: ubumirror, vsftpd втвърдят сървъри, vsftpd Зависимости: 2.3.5- 3ubuntu1-debconf (18 0.5) debconf-2.0 (0 (null)) upstart-job (0 (null)) libc6 (2 2.15) libcap2 (2 2.10) libpam0g (2 0.99.7.1) libssl1.0.0 (2 1.0.0 ) libwrap0 (2 7.6-4 ~) adduser (0 (null)) libpam-модули (0 (null)) netbase (0 (null)) logrotate (0 (null)) ftp-сървър (0 (null)) ftp- сървър (0 (нула)) Предоставя: 2.3.5-3ubuntu1-ftp-сървър
В зависимост от секциите те ще бъдат изброени в случай, че ги има, ще ни каже версията, в противен случай ще каже null.

Проверете статистиката на кеша


Знаем, че командата apt-cache зависи от кеша, който сме заредили, полезно е да знаем какво имаме в кеша, за което използваме статистика.
 apt-cache статистика
 Общо имена на пакети: 51868 (1,037 k) Общо структури на пакети: 51868 (2,490 k) Нормални пакети: 39505 Чисти виртуални пакети: 602 Единични виртуални пакети: 3819 Смесени виртуални пакети: 1052 Липсващи: 6890 Общо различни версии: 43015 (2,753 k) Общо отделни описания: 81048 (1,945 k) Общо зависимости: 252299 (7,064 k) Общо отношения между изглед / файл: 45567 (729 k) Общо описание / файлови отношения: 81048 (1,297 k) Общо Предоставя съпоставяния: 8228 (165 k) Общо глобусирани низове : 286 (3,518) Общо пространство за версия на зависимостта: 1,145 k Общо свободно пространство: 62,6 k Общо отчетено пространство: 13,3 M
Виждаме заетото пространство и броя на наличните пакети, филтрирани по пълен или смесен.

Актуализирайте пакетната система


С помощта на update ние синхронизираме нашия списък с пакети с тези на официалното хранилище, така че ако е налична нова версия на ssh, можем да го актуализираме.
 sudo apt-get update
 Запалете http://security.ubuntu.com quantal-security InRelease Get: 1 http://security.ubuntu.com quantal-security Release.gpg [933 B] Вземете: 2 http://security.ubuntu.com quantal- версия за сигурност [49.6 kB] Ign http://in.archive.ubuntu.com квантови InRelease Ign http://in.archive.ubuntu.com квантови актуализации InRelease Get: 3 http://repo.varnish-cache.org прецизен InRelease [13.7 kB] Запалване на http://in.archive.ubuntu.com квантови обратни връзки InRelease Посетете http://in.archive.ubuntu.com квантово Release.gpg Вземете: 4 http://security.ubuntu.com quantal-security/main Източници [34.8 kB] Вземете: 5 http://in.archive.ubuntu.com quantal-updates Release.gpg [933 B] 

Актуализирайте операционната система с най -новата версия на пакетите.


АКО с apt-update актуализираме списъка с налични пакети с apt-get ъпгрейд, инсталираме всички актуализации, които са достъпни за системата.
 apt-get надстройка
 Четене на списъци с пакети … Готово Изграждане на дърво на зависимостта Четене на информация за състоянието … Готово Следните пакети са запазени: linux-headers-generic linux-image-generic wine1.5 wine1.5-i386 Следните пакети ще бъдат надстроени: 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 apt apt-transport-https apt-utils aptdaemon aptdaemon- данни at-spi2-core bamfdaemon base-files bind9-host … 
Препоръчително е да използвате двете команди заедно, с които актуализираме списъка и пакетите
 sudo apt-get update && sudo apt-get upgrade

Актуализирайте системата и инсталирайте нови пакети, ако е необходимо.


Когато използваме надстройка, новите версии на пакетите и техните зависимости се инсталират, в някои случаи пакет, който изисква нова зависимост, няма да бъде инсталиран. В този случай използваме dist-upgrade за актуализиране и инсталиране на нови зависимости, ако е необходимо, внимавайте с тази опция в производствена среда.
 sudo apt-get dist-upgrade

Как да инсталирате или актуализирате конкретен пакет?


С това избягваме актуализирането на цялата система и спестяваме малко честотна лента, ако искаме да инсталираме само един пакет.
 sudo apt-get install netcat
 Четене на списъци с пакети … Готово Изграждане на дърво на зависимостта Четене на информация за състоянието … Готово Ще бъдат инсталирани следните допълнителни пакети: netcat-традиционен Ще бъдат инсталирани следните НОВИ пакети: netcat netcat-традиционен 0 надграден, 2 новоинсталирани, 0 за премахване и 328 не надградени . Трябва да получите 67.1 kB архиви. След тази операция ще бъдат използвани 186 kB допълнително дисково пространство. Искате ли да продължите [Д / н]? y Get: 1 http://in.archive.ubuntu.com/ubuntu/ quantal/universe netcat-традиционен i386 1.10-40 [63.8 kB] Вземете: 2 http://in.archive.ubuntu.com/ubuntu/ quantal / Universe netcat всички 1,10-40 [3,340 B] Извлечени 67,1 kB за 1s (37,5 kB / s) Избиране на преди неизбран пакет netcat-традиционен. (Четене на база данни… 216118 файлове и директории, инсталирани в момента.) Разопаковане на netcat-traditional (от… /netcat-traditional_1.10-40_i386.deb)… Избиране на неизявен пакет netcat. Разопаковане на netcat (от… /netcat_1.10-40_all.deb)… Обработка на тригери за man-db… Настройване на netcat-traditional (1.10-40)… Настройване на netcat (1.10-40)… 

Инсталирайте няколко пакета едновременно


Трябва да продължим да използваме apt-get install, но да използваме пакетите за инсталиране като аргумент.
 sudo apt-get инсталирайте nethogs goaccess
 Четене на списъци с пакети … Готово Изграждане на дърво на зависимостта Четене на информация за състоянието … Готовият goaccess вече е най -новата версия. nethogs вече е най -новата версия. 0 надградени, 0 новоинсталирани, 0 за премахване и 328 не надградени.

Инсталирайте пакети, използвайки Wildcard


Използвайки регулярни изрази, можем да инсталираме няколко пакета, които съдържат една и съща дума, например * ssh * install client, server и add-ons.
 sudo apt-get install ' * ssh *' 

Инсталирайте пакети без актуализиране.


Използвайки опцията -no -upgrade, ще инсталираме базовата версия на пакета, но не и неговата актуализация.
 sudo apt-get install packageName --no-upgrade
 Четене на списъци с пакети … Готово Изграждане на дърво на зависимостите Четене на информация за състоянието … Готово Пропускане vsftpd, то вече е инсталирано и надстройката не е настроена. 0 надградени, 0 новоинсталирани, 0 за премахване и 328 не надградени. Актуализирайте пакет само ако е инсталиран. Ние използваме -only -upgrade за актуализиране на пакет само ако е инсталиран иначе не го инсталира много полезно в скриптове. sudo apt-get install packageName --only-upgrade Четене на списъци с пакети … Готово Изграждане на дърво на зависимостите Четене на информация за състоянието … Done vsftpd вече е най-новата версия. 0 надградени, 0 новоинсталирани, 0 за премахване и 328 не надградени. 

Актуализирайте пакет само ако е инсталиран.


Ние използваме -only -upgrade за актуализиране на пакет само ако е инсталиран иначе не го инсталира много полезно в скриптове.
 sudo apt-get install packageName --only-upgrade
 Четене на списъци с пакети … Готово Изграждане на дърво на зависимостите Четене на информация за състоянието … Готово vsftpd вече е най -новата версия. 0 надградени, 0 новоинсталирани, 0 за премахване и 328 не надградени.

Инсталирайте конкретна версия на пакет


Можем дори да инсталираме конкретна версия на пакет, това е обичайна практика например за java или NGINX.
 sudo apt-get install vsftpd = 2.3.5-3ubuntu1
 Четене на списъци с пакети … Готово Изграждане на дърво на зависимостите Четене на информация за състоянието … Готово vsftpd вече е най -новата версия. 0 надградени, 0 новоинсталирани, 0 за премахване и 328 не надградени. 

Изтрийте пакет, но без да докосвате неговата конфигурация


Можем да го премахнем, но да запазим всичките му конфигурационни файлове в случай, че се наложи да го инсталираме в бъдеще.
 sudo apt-get премахнете vsftpd
 Четене на списъци с пакети … Готово Изграждане на дърво на зависимостта Четене на информация за състоянието … Готово Следните пакети ще бъдат ИЗВЪРНЕНИ: vsftpd 0 надградени, 0 новоинсталирани, 1 за премахване и 328 не надстроени. След тази операция 364 kB дисково пространство ще бъде освободено. Искате ли да продължите [Д / н]? y (Четене на база данни… 216156 файлове и директории, инсталирани в момента.) Премахване vsftpd… vsftpd стоп / изчакване Обработка на тригери за ureadahead… Обработка на тригери за man-db… 

Премахнете напълно пакет


За да премахнем пакет с всичките му файлове и зависимости, използваме опцията purge.
 sudo apt-get purge vsftpd
 Четене на списъци с пакети … Готово Изграждане на дърво на зависимостта Четене на информация за състоянието … Готово Следните пакети ще бъдат ИЗВЪРНЕНИ: vsftpd * 0 надградени, 0 новоинсталирани, 1 за премахване и 328 не надстроени. След тази операция ще се използват 0 B допълнително дисково пространство. Искате ли да продължите [Д / н]? y (Четене на база данни … 216107 файлове и директории, инсталирани в момента.) Премахване на vsftpd … Изчистване на конфигурационни файлове за vsftpd … Обработка на тригери за ureadahead … 
Можем да го комбинираме с премахване. Винаги препоръчвайте тази опция за почистване.
 sudo apt-get remove --purge vsftpd
 Четене на списъци с пакети … Готово Изграждане на дърво на зависимостта Четене на информация за състоянието … Готово Следните пакети ще бъдат ИЗВЪРНЕНИ: vsftpd * 0 надградени, 0 новоинсталирани, 1 за премахване и 328 не надстроени. След тази операция 364 kB дисково пространство ще бъде освободено. Искате ли да продължите [Д / н]? y (Четене на база данни… 216156 файлове и директории, инсталирани в момента.) Премахване на vsftpd… vsftpd стоп / изчакване Прочистване на конфигурационни файлове за vsftpd… Обработка на тригери за ureadahead… Обработка на тригери за man-db… 

Почистете мениджъра на пакети, за да освободите място на диска


Когато изтегляме пакет, .deb файлът се съхранява като кеш, можем да премахнем всички тези пакети с опцията clean.
 sudo apt-почистете се

Как да изтеглите изходния код на пакет?


В някои случаи не можем да инсталираме от deb и трябва да го инсталираме чрез директно компилиране, можем да го направим с помощта на -download -only source
 sudo apt-get-източник само за изтегляне vsftpd
 Четене на списъци с пакети … Готово Изграждане на дърво на зависимостта Четене на информация за състоянието … Готово Трябва да получите 220 kB изходни архиви. Вземете: 1 http://in.archive.ubuntu.com/ubuntu/ quantal/main vsftpd 2.3.5-3ubuntu1 (dsc) [1,883 B] Вземете: 2 http://in.archive.ubuntu.com/ubuntu/ quantal/ main vsftpd 2.3.5-3ubuntu1 (tar) [188 kB] Вземете: 3 http://in.archive.ubuntu.com/ubuntu/ quantal/ main vsftpd 2.3.5-3ubuntu1 (разл.) [30.5 kB] Извлечено 220 kB за 4s (49.1 kB / s) Изтеглянето е завършено и само в режим за изтегляне
В случай, че искаме да изтеглим и компилираме от същия apt-get, който използваме
 sudo apt-get-компилира източник goaccess
 Четене на списъци с пакети … Готово Изграждане на дърво на зависимостта Четене на информация за състоянието … Готово Трябва да получите 130 kB изходни архиви. Вземете: 1 http://in.archive.ubuntu.com/ubuntu/ quantal/universe goaccess 1: 0.5-1 (dsc) [1,120 B] Вземете: 2 http://in.archive.ubuntu.com/ubuntu/ квантален/ вселенски goaccess 1: 0.5-1 (катран) [127 kB] Вземете: 3 http://in.archive.ubuntu.com/ubuntu/ квантален/ вселенски goaccess 1: 0.5-1 (разл.) [2,075 B] Извлечено 130 kB в 1s (68.0 kB / s) gpgv: Подпис, направен вторник, 26 юни 2012 09:38:24 AM IST, използвайки идентификатор на DSA ключ A9FD4821 gpgv: Не може да се провери подпис: публичен ключ не е намерен dpkg-източник: предупреждение: неуспешно проверете подписа на ./goaccess_0.5-1.dsc dpkg-source: info: извличане на goaccess в goaccess-0.5 dpkg-source: info: разопаковане goaccess_0.5.orig.tar.gz dpkg-source: info: разопаковане goaccess_0.5 -1.debian.tar.gz dpkg-buildpackage: пакет източник goaccess dpkg-buildpackage: източник версия 1: 0.5-1 dpkg-buildpackage: източник променен от Крис Тейлър dpkg-buildpackage: хост архитектура i386 dpkg-източник-преди изграждане goaccess-0.5 dpkg-checkbuilddeps: Неудовлетворени зависимости на компилация: debhelper (> = 9) autotools-dev libncurses5-dev lib glib2.0-dev libgeoip-dev autoconf dpkg-buildpackage: предупреждение: зависимостите на изграждане / конфликтите са неудовлетворени; прекратяване на dpkg -buildpackage: предупреждение: (Използвайте -d флаг за отмяна.) … 

Как мога да изтегля пакет без да го инсталирам?


Много пъти искаме да настроим локално REPO, което да ги разпространява на други клиенти локално и да спести честотна лента, тази опция е много полезна.
 sudo apt-get изтегляне nethogs
 Вземете: 1 Изтегляне на nethogs 0.8.0-1 [27.1 kB] Извлечено 27.1 kB за 3 секунди (7,506 B / s)

Как да проверите неработещите зависимости?


Тази команда е много, ако трябва да компилираме, но липсват библиотеките с това, можем да проверим и инсталираме липсващите.
 sudo apt-get чек
 Четене на списъци с пакети … Готово Изграждане на дървовидна зависимост Четене на информация за състоянието … Готово 
Изводи
Говорихме за най-полезните опции с apt-get и apt-cache, някои липсват, които могат да се видят с помощта на man apt-get, man apt-cache. Не е необходимо да ги запомняте, но е добре да имате този списък под ръка. Ако оставям команда или имате предложение, не се колебайте да я оставите в коментарите.Хареса ли ви и помогнахте на този урок?Можете да възнаградите автора, като натиснете този бутон, за да му дадете положителна точка
wave wave wave wave wave