Apt get что это за программа
Команда apt-get предназначена для работы с утилитой «apt», являющейся стандартной утилитой для управлении пакетами программного обеспечения в дистрибутиве Debian, а также основанных на нем дистрибутивах (Ubuntu, Linux Mint, . ).
Вы можете использовать apt-get для установки и удаления пакетов программного обеспечения из вашей системы (группами или по одному), а также обновления системных списков пакетов программного обеспечения из подключенных на данный момент репозиториев.
Примеры использования
Установка пакета программного обеспечения:
Переустановка пакета программного обеспечения:
# apt-get install —reinstall
Удаление пакета программного обеспечения:
Удаление пакета программного обеспечения со всему файлами конфигурации:
# apt-get —purge remove
Поиск пакета программного обеспечения:
Обновление списков пакетов программного обеспечения из подключенных репозиториев (файлов с расширением .deb):
Linux для начинающих | Обновление, установка, удаление программ в Linux | sudo apt
Обновление системы (полезно для поддержания программного обеспечения в актуальном состоянии):
Обновление дистрибутива (утилита попытается загрузить и установить пакеты программного обеспечения из состава новой версии дистрибутива):
Вывод короткого списка всех доступных параметров команды:
Механизм автодополнения команд
Для активации механизма автодополнения команд apt-get по клавише Tab следует добавить строку
в файл .bashrc из вашей домашней директории. После этого при вводе такой команды, как «apt-get install a» и нажатии клавиши Tab командная оболочка Bash попытается подставить имя пакета программного обеспечения.
Дополнительная информация
Попробуйте выполнить команду:
Вы должны будете увидеть следующий вывод:
Использование в других дистрибутивах
Если утилиты из комплекта поставки apt-get совместимы с вашим дистрибутивом, вы сможете воспользоваться штатным менеджером пакетов вашего дистрибутива для установки их в вашу систему. После окончания процесса установки вы сможете использовать приведенные выше команды для управления пакетами программного обеспечения дистрибутива.
Устранение неполадок в дистрибутивах, использующих пакеты RPM
В некоторых случаях после исполнения команды apt-get будет выводиться сообщение о невозможности блокировки определенной директории. Большинство проблем, вызывающих подобное поведение, решается путем исполнения следующей последовательности команд:
rm /var/lock/rpm/transaction
rm /var/lib/rpm/__db*
rm /var/cache/apt/archives/lock
Источник: linux-faq.ru
Apt get что это за программа
apt-get это инструмент командной строки для управления пакетами и может рассматриваться как пользовательский интерфейс к apt(8) . командами служат: o update o upgrade o dselect-upgrade [1] o dist-upgrade o install пакет1 [пакет2] [. ] o remove пакет1 [пакет2] [. ] o source пакет1 [пакет2] [. ] o check o clean o autoclean Если не используется одна из опций, -h или —help, то должна быть указана одна из команд, перечисленных выше. Примечание: [1] — только для систем на базе Debian. update update используется для повторной синхронизации файлов описаний пакетов с их источником. Описания доступных пакетов будут получены из источников, указанных в /etc/apt/sources.list . Например, при использовании архива Debian, эта команда разыскивает и просматривает файлы Packages.gz , таким образом становится доступной информация о новых и обновлённых пакетах. Перед upgrade и dist-upgrade всегда должно выполняться update . Пожалуйста помните, что индикатор прогресса показывает не точную информацию, поскольку размер файлов пакетов заранее не известен.
Основы Ubuntu Linux: apt-get, bash, командная строка
upgrade upgrade используется для установки новейших версий всех установленных пакетов системы из источников, указанных в /etc/apt/sources.list . Будут разысканы новейшие версии установленных в настоящий момент пакетов и произведено обновление; ни в коем случае не будет удалено ни одного установленного пакета или установлено нового пакета, не имеющего уже установленной в системе предыдущей версии. Текущие версии установленных в настоящий момент пакетов, если они не могут быть обновлены новыми версиями без изменения статуса других пакетов, будут оставлены в неизменном виде.
Для того, чтобы apt-get узнал о существовании доступных новых версиях пакетов, данной команде должна предшествовать команда update . dselect-upgrade dselect-upgrade используется совместно с традиционным инструментом управления пакетов в Debian GNU/Linux — dselect(8) . dselect-upgrade следует изменениям, которые делает dselect с полем Status доступных пакетов и выполняет действие, необходимое для реализации этого состояния (например, удаление старых и установка новых пакетов). dist-upgrade dist-upgrade , в дополнение выполняет функцию upgrade , а также разумно управляет изменением зависимостей с новыми версиями пакетов; apt-get имеет «умную» систему разрешения конфликтов и она будет в случае необходимости пытаться произвести обновление наиболее важных пакетов за счет менее важных. Файл /etc/apt/sources.list содержит список источников для получения пакетов, из которых будут получены файлы пакетов. install install устанавливает один или более пакетов отмеченных к установке.
Каждый пакет — это имя пакета, а не полное имя файла, содержащее этот пакет (например, в системе Debian GNU/Linux, в качестве пакета может быть указано имя ldso , а не ldso_1.9.6-2.deb ). Все пакеты, требуемые заданным пакетом (пакетами) отмеченными к установке, также будут получены и установлены. Файл /etc/apt/sources.list используется для определения местонахождения нужных пакетов.
Если к имени пакета добавляется символ переноса (без разделяющего пробела), то заданный пакет будет удален, если он установлен. Эта особенность может быть использована для перекрытия решения, сделанного системой разрешения конфликтов apt-get.
Если нет пакетов, совпадающих с заданным выражением и выражение содержит один из символов ‘.’, ‘?’ или ‘*’, то оно рассматривается как шаблон для регулярных выражений POSIX и уже этот шаблон применяется ко всем именам пакетов в базе данных. Любые совпадающие с шаблоном пакеты будут затем установлены (или удалены). Заметим, что к примеру, подстрока ‘lo*’ совпадает с ‘how-lo’ и ‘lowest’.
Если это нежелательно, предваряйте их символом ‘^’. remove remove идентична install за исключением того, что пакеты вместо установки удаляются. Если к имени пакета добавляется знак плюс (без разделяющего пробела), то указанные пакеты будут установлены. source source принуждает получать пакеты с исходными текстами. APT проверит доступные пакеты на предмет получения их исходных текстов.
Затем он ищет и копирует в текущий каталог новейшую доступную версию этих исходных текстов. Пакеты исходных текстов обслуживаются отдельно от бинарных через ввод строк deb-src или rpm-src в файл /etc/apt/sources.list . Предполагается, что для получения исходных текстов, вы будете использовать источник, отличный от того, из которого вы получаете готовые пакеты.
Если задана опция —compile, то пакет с исходными текстами будет скомпилирован в бинарный deb-пакет с помощью утилиты dpkg-buildpackage или, на системах использующих RPM, при помощи rpm -ba будет собран бинарный пакет. Если задана опция —download-only, то пакет с исходными текстами не будет распакован.
Заметим, что пакеты с исходными текстами не отслеживаются как бинарные пакеты, они существуют только в текущем каталоге, что очень похоже на простое выкачивание архивов исходных текстов .ta r.gz. check check — это диагностический инструмент; он обновляет кэш пакетов и проверяет пакеты, которые недо-установлены в силу каких-либо причин. clean clean очищает локальное хранилище полученных файлов пакетов. Команда удаляет все, но оставляет файлы из /var/cache/apt/archives/ и /var/cache/apt/archives/partial/ . Когда APT используется как один из методов dselect(8) , clean запускается автоматически. Те, кто не пользуется dselect, для освобождения места на диске могут время от времени использовать apt-get clean . autoclean Как и clean , autoclean очищает локальное хранилище полученных файлов пакетов. Отличие состоит в том, что эта команда удаляет только те файлы пакетов, которые больше не могут быть получены и использованы. Это позволяет обслуживать кэш в течении длительного периода без потери контроля над ним.
ОПЦИИ
Все опции командной строки могут быть установлены при помощи файла настроек; описания показывают какой элемент настройки надо установить. Для логических опций вы можете перекрыть файл с настройками используя конструкцию вида -f- , —no-f , -f=no или некоторые другие вариации. -d, —download-only Только выкачивать; файлы пакетов будут только выкачиваться, но не будут распаковываться и устанавливаться.
Элемент настройки: APT::Get::Download-Only . -f, —fix-broken Править; попытка исправить систему с нарушенными зависимостями. Данная опция, когда используется при операциях установки и удаления, может опускать некоторые пакеты, чтобы позволить APT решить проблему. Любой указанный пакет должен полностью исправлять проблему.
Данная опция иногда необходима при запуске APT в первый раз; APT сам не позволяет нарушенным зависимостям пакетов существовать в системе. Возможно, что структура зависимостей в системе может быть нарушена и требовать исправления вручную (что обычно достигается использованием dselect или dpkg —remove для удаления некоторых пакетов). Использование данной опции вместе с -m в некоторых ситуациях приведет к выводу сообщения об ошибке.
Элемент настройки: APT::Get::Fix-Broken . -h, —help Помощь; выдать подсказку и завершить работу. -v, —version Сообщить версию программы. -m, —ignore-missing, —fix-missing Игнорировать отсутствующие пакеты; Если пакеты не могут быть получены или их полная проверка после получения окончилось неудачно (поврежденный файл пакета), то состояние пакета возвращается к предыдущему и результат обрабатывается. Использование этой опции совместно с -f в некоторых случаях может привести к ошибке. Если какой-либо пакет выбирается к установке (например, если он указан в командной строке) и он не может быть получен, то без каких-либо сообщений будет восстановлено исходное состояние.
Элемент настройки: APT::Get::ignore-missing . —no-download Запрещает получение пакетов. Лучше всего использовать вместе с —ignore-missing для того, чтобы заставить APT использовать только те .deb файлы, которые уже получены.
Элемент настройки: APT::Get::No-Download . -q, —quiet Производится вывод годный для протоколирования, в котором опускаются индикаторы хода выполнения задачи. Указание большего числа опций -q приведет к более урезанному выводу, максимально вы можете указать их в два раза. Вы также можете использовать конструкцию -q=# для установки нужного вам количества сообщений вывода, перекрывая файл с настройками. Заметим, что уровень 2 неявно включает -y, вы никогда не должны использовать -qq без модификатора, который запрещает действия, такого как -d, —print-uris или -s, поскольку APT может сделать что-либо неожиданное для вас.
Элемент настройки: quiet . -s, —simulate, —just-print, —dry-run, —recon, —no-act Не выполнять никаких действий; выполняет симуляцию событий, который должны происходить, но которые реально не будут выполнены и не изменят состояние системы.
Элемент настройки: APT::Get::Simulate . В режиме симуляции на экран будут выведены серии строк, которые будут отображать операции dpkg, Настройка (Conf), Удаление (Remv), Распаковка (Inst). В квадратных скобках будут указаны пакеты, которые недо-установлены по каким-либо причинам вместе со списком (или без него) заключенных в квадратные скобки причин. -y, —yes, —assume-yes Автоматически отвечать «да» в ответ на запрос программы; на все запросы, которые будет выводить программа будет автоматически выдаваться ответ «да». При возникновении нежелательной ситуации, как то: изменения пакета в состоянии удержания или удаления необходимого для работы системы пакета, apt-get будет аварийно завершать свою работу.
Элемент настройки: APT::Get::Assume-Yes . -u, —show-upgraded Показать обновленные пакеты; Выдает список всех пакетов, которые были обновлены.
Элемент настройки: APT::Get::Show-Upgraded . -b, —compile, —build Компилировать пакеты исходных текстов после их получения.
Элемент настройки: APT::Get::Compile . —ignore-hold Игнорировать состояние удержания. Это заставит apt-get игнорировать состояние удержания в котором находится пакет. Это может быть полезным совместно с командой dist-upgrade для перекрытия большого числа нежелательных пакетов в состоянии удержания.
Элемент настройки: APT::Ignore-Hold . —no-upgrade Не производить обновлений пакетов; Когда эта опция используется совместно с командой install то no-upgrade предотвратит обновление уже установленных пакетов.
Элемент настройки: APT::Get::no-upgrade . —force-yes Принудительное выполнение заданной операции не взирая ни на что. Это опасная опция, которая заставит apt продолжать выполнение операции без каких-либо диалогов с пользователем, даже если возникнет потенциальная возможность ошибки. Она не должна использоваться кроме как в специальных ситуациях. Использование force-yes потенциально способно уничтожить вашу систему!
Элемент настройки: APT::Get::force-yes . —print-uris Вместо копирования файлов для установки будут печататься их URI. Каждый URI будет иметь путь, имя файла, размер и ожидаемый хэш md5. Заметим, что выводимое имя файл не всегда совпадает с именем файла на удаленном сайте. Опция также работает и с командой source .
Элемент настройки: APT::Get::Print-URIs . —purge Использовать purge (зачистку) вместо remove (удаления) для всех пакетов, которые будут удалены. Эта опция не имеет эффекта на системах использующих RPM.
Элемент настройки: APT::Get::Purge . —reinstall Переустановить пакеты, которые уже являются новейшими версиями. —list-cleanup Данная опция по умолчанию включена, используйте —no-list-cleanup для ее выключения. Когда apt-get будет автоматически управлять содержимым /var/lib/apt/lists чтобы убедиться, что устаревшие файлы удалены. Выключите данную опцию, если вы часто изменяете ваш список источников.
Элемент настройки: APT::Get::List-Cleanup —trivial-only Выполняет только тривиальные операции. Логически это может быть отнесено к —assume-yes, только —assume-yes будет выдавать ответ «да» на любое приглашение, а —trivial-only будет отвечать «нет».
Элемент настройки: APT::Get::Trivial-Only —no-remove Если какие-либо пакеты отмечены к удалению, то apt-get немедленно, без вопросов, завершит работу.
Элемент настройки: APT::Get::No-Remove —diff-only , —tar-only Получить только diff- или tar-файл из архива исходных текстов.
Элемент настройки: APT::Get::Diff-Only -c, —config-file Файл с настройками; Задать файл с настройками. apt-get будет читать файл с настройками по умолчанию и затем указанный файл с настройками.
Смотри синтаксис в apt.conf(5) . -o, —option Установить опцию настройки; Она будет установлена определенной опцией настройки. Синтаксис такой:
-o Foo::Bar=bar
ФАЙЛЫ
o /etc/apt/sources.list источники для получения пакетов o /var/cache/apt/archives/ область хранения полученных файлов o /var/cache/apt/archives/partial/ область хранения получаемых файлов o /var/state/apt/lists/ область хранения информации о состоянии каждого ресурса пакетов, заданного в списке источников o /var/state/apt/lists/partial/ временная область хранения информации в процессе скачивания
СМОТРИ ТАКЖЕ
ДИАГНОСТИКА
apt-get возвращает ноль при нормальной работе и десятичную 100 при ошибке.
ОШИБКИ
Смотри http://bugs.debian.org/apt. Если вы хотите отправить отчет об ошибке в apt-cache , пожалуйста смотрите /usr/doc/debian/bug-reporting.txt или команду bug(1) . Если вы используете систему базирующуюся на RPM, то в этом случае, пожалуйста, воспользуйтесь http://distro.conectiva.com.br /bugzilla/.
АВТОР
apt-get была написана командой APT и портирован на системы базирующиеся на RPM Alfredo K. Kojima, , из Conectiva S.A.
Источник: www.opennet.ru
Sysadminium
На этом уроке рассмотрим пакетные менеджеры apt и apt-get. Которые используются для работы с пакетами приложений в Linux.
Оглавление скрыть
Пакетные менеджеры apt
На этом уроке мы рассмотрим следующие пакетные менеджеры:
- apt-get — используется для установки, удаления, обновления пакетов;
- apt-cache — используется для получения информации о пакетах;
- apt-mark — используется для установок различных меток на пакеты. Например, можно, поставив метку, запретить пакету обновляться;
- apt — утилита основанная на apt-get и apt-cache. Она является более удобной и информативной. В процессе установки пакета, обновления системы или удаления пакета показывает “Прогресс бар”. В некоторых случаях выводит больше информации.
Работа с пакетами это административное действие, поэтому вам придётся работать под пользователем root или использовать sudo. Я в примерах буду использовать sudo. Примеры одинаково выполняются и в Debian и в Ubuntu.
Все рассматриваемые команды имеют под-команды, и в зависимости от под-команды могут иметь различные опции. Например переустановка приложения:
$ sudo apt install —reinstall apache2
- apt — сам пакетный менеджер;
- install — под-команда установки пакета;
- –reinstall — опция переустановки;
- apache2 — имя пакета.
Обновление системы
Обновление кэша пакетов
В Debian и Ubuntu прежде чем обновлять систему, нужно выяснить, какие обновления доступны в репозиториях. Это так называемое обновление кэша пакетов. Выполняется оно с помощью команды apt-get update или apt update. Пример:
$ sudo apt-get update $ sudo apt update
При этом команда apt update дополнительно покажет количество пакетов, которые можно обновить и команду с помощью которой можно посмотреть список таких пакетов.
Получаем список возможных обновлений
Если есть пакеты, которые можно обновить, то мы можем посмотреть их с помощью команды apt list –upgradable, а опция -a выводит больше информации. С помощью apt-get это проделать невозможно.
$ sudo apt list —upgradable -a
Обновление системы (без возможности удаления пакетов)
Перед обновлением расскажу про зависимости пакетов. Работа некоторых приложений зависит от других приложений или библиотек. Поэтому почти каждый пакет имеет список зависимостей других пакетов. Обычно вручную с зависимостями не работают.
Просто пакетные менеджеры (apt или apt-get) при установке определённого пакета также устанавливают пакеты от которых зависит этот пакет.
Точно также и при обновлении. Если приложение после обновления начало зависеть от других библиотек, то их тоже нужно установить или обновить.
Но бывает ситуация когда некоторые пакеты не совместимы. Например, чтобы обновить пакет требуется установить новые пакеты, но они несовместимы с теми, которые уже установлены. Тут есть два варианта, либо удалить установленные пакеты и выполнить обновление системы, либо не удалять пакеты и прервать обновление.
Без возможности удаления пакетов вы можете выполнить обновление с помощью команд apt-get upgrade и apt upgrade. Например:
$ sudo apt-get upgrade $ sudo apt upgrade
Обновление системы (с возможностью удаления пакетов)
Если вы все-таки хотите обновить пакеты и вас не пугает удаление некоторых пакетов, то выполните следующие команды: apt-get dist-upgrade или apt dist-upgrade. Но это более рискованно, так что обратите особое внимание на то, какие пакеты будут удалены. Ведь удаление некоторых пакетов может просто сломать вашу систему. Пример:
$ sudo apt-get dist-upgrade $ sudo apt dist-upgrade
Получение информации о пакетах из репозиториев
Список пакетов в репозиториях
Чтобы получить список пакетов в репозиториях можно выполнить apt list. Так как это не административное действие, то можно не использовать sudo. Например:
$ apt list
Кстати, утилита apt-get это выполнить не может.
Поиск пакета по ключевому слову
Если мы примерно знаем название приложения, которое нам нужно, то можем попытаться найти пакет используя ключевое слово. При этом поиск идет не только по названию пакетов, но и по его содержимому. Такой поиск выполняется с помощью команд apt-cache search или apt search .
Пример (так как вывод может быть большим, то я использую less):
$ apt-cache search apache | less $ apt search apache | less
Смотрим информацию о пакете
Зная имя пакета, можем посмотреть информацию о нём с помощью команд apt-cache show или apt show .
Пример (так как вывод может быть большим, то я использую less):
$ apt-cache show apache2 | less $ apt show apache2 | less
Поиск зависимостей
Зависимости можно посмотреть в информации о пакете с помощью уже рассмотренных команд apt-cache show или apt show . Но для этого есть ещё одна команда: apt-cache depends или apt depends . Например:
$ apt-cache depends apache2 $ apt depends apache2
Работа с отдельными пакетами
Установка пакета
Установить пакет из репозитория можно с помощью команд apt-get install или apt install . При этом установится пакет и его зависимости. Пример:
$ sudo apt-get install apache2 $ sudo apt install apache2
Удаление пакета без удаления конфигов
Чтобы удалить пакет обычно используют команды apt-get remove или apt remove . Но эти команды удалят только само приложение, не удалив его конфиги. Пример:
$ sudo apt-get remove apache2 $ sudo apt remove apache2
Удаление пакета вместе с конфигами
А чтобы удалить приложение вместе с его конфигами используйте команды apt-get purge или apt purge , например:
$ sudo apt-get purge apache2 $ sudo apt purge apache2
Переустановка пакета
Для переустановки используйте команды apt-get install –reinstall или apt install –reinstall .
$ sudo apt-get install —reinstall apache2 $ sudo apt install —reinstall apache2
Обновление отдельного приложения
Если нам нужно обновить не всю систему а отдельный пакет, то тут нужно использовать знакомую команду apt-get install или apt install . При этом, если пакета нет в системе то он установится, а если есть то обновится. Пример:
$ sudo apt-get install apache2 $ sudo apt install apache2
Скачивание пакета без установки
Если вам просто нужно скачать пакет, а не устанавливать его в систему, то используйте команду apt-get download или apt download . Например:
$ apt-get download apache2 $ apt download apache2
При этом зависимости скачиваться не будут.
Заморозка пакета
Если вы хотите чтобы система больше не обновляла какой-то отдельный пакет то выполните apt-mark hold , например:
$ sudo apt-mark hold apache2
К сожалению с помощью apt это проделать невозможно.
Исправление проблем с пакетами
Исправление ошибок с зависимостями
Если в процессе установки некоторого пакета или при обновлении всей системы вы столкнётесь с проблемой с зависимостями. То можете воспользоваться командами apt-get -f install или apt -f install. Эти команды пытаются решить проблемы с зависимостями путём удаления или установки новых пакетов.
$ sudo apt-get -f install $ sudo apt -f install
Только внимательно смотрите на список удаляемых пакетов!
Очистка системы от ненужных пакетов
Удаление ненужных пакетов
Когда мы устанавливаем пакет то устанавливаются и его зависимости. А при удалении пакета зависимости остаются и больше не используются. Чтобы удалить подобные пакеты, которые установились, но больше не нужны в системе применяются команды apt-get autoremove или apt autoremove. Например:
$ sudo apt-get autoremove $ sudo apt autoremove
Очистка кэша
При установке какого-нибудь пакета, он вначале скачивается в каталог /var/cache/apt/archives/, а затем устанавливается в систему. Эти установочные файлы тоже можно удалять, освобождая место на диске. Для этого используйте команды apt-get clean или apt clean, например
$ sudo apt-get clean $ sudo apt clean
Мягкая очистка кэша
Помимо clean есть более мягкая команда autoclean. Она удалит только те скаченные пакеты, у которых версия ниже чем в репозитории, остальные пакеты не удалятся:
$ sudo apt-get autoclean $ sudo apt autoclean
Посмотрим на корову
А еще с помощью apt-get и apt мы можем посмотреть на корову:
$ apt moo (__) (oo) /——/ / | || * /—/ ~~ ~~ . «Have you mooed today?». $ apt-get moo (__) (oo) /——/ / | || * /—/ ~~ ~~ . «Have you mooed today?».
Итог
Мы узнали множество команд с помощью которых можем устанавливать и удалять пакеты в систему, а также обновлять её. И проделывать другие вещи.
А также мы узнали что перед установкой deb пакеты скачиваются в каталог /var/cache/apt/archives/. И у пакетов есть зависимости, которые apt или apt-get определяет и автоматически устанавливает.
Источник: sysadminium.ru
Использование APT. Команды apt и apt-get
APT (сокращение от Advanced Packaging Tool) — это набор утилит для установки, удаления, обновления, поиска пакетов в Linux, а также для управления репозиториями. APT еще называют пакетным менеджером.
APT использует репозитории пакетов. Список репозиториев для APT хранится в файле /etc/apt/sources.list, а также в директории /etc/apt/sources.list.d/.
APT используется в дистрибутивах, основанных на Dedian и Ubuntu.
Для управления APT существуют разные утилиты, но самые популярные из них это утилиты командной строки apt-get и apt.
В данной статье мы рассмотрим, как пользоваться командой apt, а также узнаем, чем отличается apt от apt-get.
Чем отличаются apt и apt-get
Кратко ответим на очень популярный вопрос, а в чем разница между командами apt и apt-get?
apt это утилита, которая появилась, как альтернатива apt-get. Она выполняет практически все те же функции, что и apt-get, но с ней проще и понятнее работать.
Например, все команды apt имеют простой синтаксис: apt название_команды. А у apt-get есть дополнительные команды, например, apt-cache. Таким образом, при использовании apt, пользователю не нужно запоминать дополнительные наборы команд.
Помимо упрощения работы с командами, apt нагляднее выводит информацию, вроде бы мелочи, но работать удобнее. Например, apt умеет показывать прогресс бар, а при выполнении apt update можно увидеть сколько пакетов можно обновить.
Стоит отметить, что утилита apt-get более функциональна, чем apt. Но для рядового пользователя apt будет более чем достаточно.
Команда apt
Синтаксис команды apt следующий:
sudo apt
Обновить список пакетов
sudo apt update
У APT есть список репозиториев, из которых происходит установка пакетов. Список хранится в текстовом файле /etc/apt/sources.list, а также в директории /etc/apt/sources.list.d/. При выполнении команды apt update, APT проходит по списку репозиториев и из каждого репозитория в списке получает информацию о пакетах, находящихся в репозитории. Вся эта информация сохраняется в системе.
Если выходит новая версия какого-нибудь пакета, то APT не узнает об этом, пока не будет выполнена команда apt update. Поэтому, если установить данный пакет (не выполнив предварительно apt update), то будет установлена та версия пакета, информация о которой хранится в системе в данный момент.
Нужно ли выполнять apt update перед установкой каждого пакета?
Нет, перед установкой каждого пакета apt update конечно же выполнять не следует. Достаточно выполнять apt update периодически. Если вам предстоит установка нескольких пакетов, то сначала можно один раз выполнить apt update, а потом уже устанавливать пакеты.
Крайне рекомендуется выполнять apt update перед обновлением пакетов (перед apt upgrade).
Обновить установленные пакеты
Чтобы выполнить обновление пакетов, установленных в системе, используется команда:
sudo apt upgrade
Данная команда только обновляет пакеты до новых версий, но никогда не удаляет и не устанавливает другие пакеты.
Есть еще одна команда для обновления пакетов:
sudo apt full-upgrade
Данная команда выполняет обновление пакетов, а также удаляет или устанавливает новые пакеты, если это потребуется для разрешения зависимостей.
Установить пакет
Чтобы установить пакет используется команда:
sudo apt install
Установить несколько пакетов
Для установки нескольких пакетов их имена записываются через пробел:
sudo apt install
Установить определенную версию пакета
Чтобы установить определенную версию пакета нужно после названия пакета, через знак равенства, указать требуемую версию:
sudo apt install =
Удалить пакет
Для удаления, установленного пакета, используется команда:
sudo apt remove
Удалить пакет и его конфигурационные файлы
sudo apt purge
apt purge работает аналогично apt remove, но удаляет еще и конфигурационные файлы, относящиеся к пакету. Это означает, что если вы установили какую-нибудь программу, настроили ее, а потом удалили командой apt remove, то конфигурационный файл этой программы останется в системе.
Если вы теперь установите эту программу снова, то можно будет использовать предыдущий конфигурационный файл, так как он не был удален.
apt purge не удаляет конфигурационные файлы, хранящиеся в вашей домашней директории.
Если вы удалили пакет командой apt remove, то вы можете выполнить apt purge для данного, уже удаленного пакета, чтобы «доудалить» его конфигурационные файлы.
Удалить неиспользуемые пакеты
sudo apt autoremove
Когда вы устанавливаете пакет, то часто устанавливаются дополнительные пакеты, являющиеся его зависимостями. Если теперь вы удалите этот пакет, то зависимости останутся в системе. apt autoremove удаляет эти зависимости, но только те, которые не нужны другим установленным пакетам.
Список пакетов
Команда apt list используется для вывода списка пакетов по какому-то критерию.
Вывести список установленных в системе пакетов:
apt list —installed
Вывести список пакетов, которые требуют обновления (у которых вышла новая версия):
apt list —upgradable
Вывести список всех пакетов доступных для вашей системы:
apt list —all-versions
Поиск пакетов
apt search
Данная команда выполняет поиск указанного слова в названии пакетов и в описании пакетов. Поддерживаются регулярные выражения.
Можно выполнять поиск только по названиям пакетов для этого используется опция —names-only :
apt search —names-only
Поиск пакета с использованием регулярных выражений:
apt search —names-only ‘^python’
Информация о пакете
apt show
Выводит информацию о пакете. Отображается версия, размер, описание, зависимости и другая информация.
Редактирование списка репозиториев
sudo apt edit-sources
Открывает файл /etc/apt/sources.list в текстовом редакторе для редактирования, после сохранения изменений и закрытия редактора, выполняет проверку файла на предмет ошибок. В случае наличия ошибок, выводит предложение на повторное редактирование файла, чтобы исправить ошибки.
Таблица аналогов команд apt и apt-get
| apt install | apt-get install | Установить пакет |
| apt remove | apt-get remove | Удалить пакет |
| apt purge | apt-get purge | Удалить пакет и конфигурационные файлы |
| apt autoremove | apt-get autoremove | Удалить неиспользуемые пакеты |
| apt update | apt-get update | Обновить список пакетов |
| apt upgrade | apt-get upgrade | Обновить пакеты |
| apt full-upgrade | apt-get dist-upgrade | Обновить пакеты (удалить и установить новые, если требуется) |
| apt list | Примерный аналог: dpkg-query —list |
Список пакетов |
| apt search | apt-cache search | Поиск пакета |
| apt show | apt-cache show | Информация о пакете |
Источник: pingvinus.ru
Как пользоваться командой apt-get в Linux
Если вы начали использовать Ubuntu или любой дистрибутив Linux, основанный на Ubuntu, такие как Linux Mint, ElementaryOS и др., вы, должно быть, уже столкнулись с командой apt-get.
На самом деле, первым в списке вещей, которые необходимо сделать после установки Ubuntu является использование apt-get update и apt-get upgrade. Теперь вы знаете о нескольких командах apt-get и их использовании, но вы можете быть не осведомлены о некоторых других.
В этом руководстве для начинающих, я собираюсь объяснить использование различных команд apt-get с примерами, чтобы Вы могли использовать их так же, как и опытный пользователь Linux.
Что такое apt-get?
Ubuntu основана на Debian Linux. Debian использует систему пакетов dpkg. Система пакетов — это способ предоставления программ и приложений для установки. Таким образом, вам не придётся собирать программу из исходного кода.
APT (Advanced Package Tool) — инструмент командной строки для взаимодействия с этой упаковочной системой. Для управления им уже существуют команды dpkg, но apt является более удобным способом работы с пакетами. Вы можете использовать его для поиска и установки новых пакетов, обновления пакетов, очистки пакетов и т.д.
У APT есть два основных инструмента: apt-get и apt-cache. apt-get предназначен для установки, обновления и очистки пакетов, в то время как команда apt-cache используется для поиска новых пакетов. Мы рассмотрим все эти команды с примерами позже в этом руководстве.
В этом руководстве я использую Linux Mint 18, но вы можете использовать любой другой дистрибутив Linux, основанный на Ubuntu, например, ElementaryOS, Linux Lite и т.п.
Использование apt-get команд
Давайте начнем с команды apt-get. Нельзя просто уйти от этой команды. Лучше ее понять, чтобы Вы могли работать с Вашей системой Linux немного более эффективно.
Обновление базы данных пакетов с помощью apt-get
apt-get в основном работает с базой данных доступных пакетов. Если вы не обновите эту базу данных, система не будет знать, есть ли более новые пакеты или нет. Фактически, это первая команда, которую вам нужно выполнить на любой Linux-системе, основанной на Debian, после свежей установки.
Обновление базы данных пакетов требует привилегий суперпользователя, поэтому вам нужно использовать sudo.
sudo apt-get update
Когда вы запустите эту команду, вы увидите информацию, полученную с различных серверов.
Здесь вы увидите три типа строк: hit, bit и ign. Позвольте мне объяснить их вам:
- Hit: нет никаких изменений в версии пакета по сравнению с предыдущей версией.
- Ign: пакет игнорируется. Либо пакет слишком свеж, чтобы его даже не надо было проверять, либо произошла ошибка при получении файла, но ошибка была тривиальной, и поэтому ее игнорируют. Не волнуйтесь, это не ошибка.
- Get: Доступна новая версия. Она скачает информацию о версии (а не о самом пакете). Вы можете видеть, что есть информация о загрузке (размер в Кб) со строкой ‘get’ на скриншоте выше.
Обновление установленных пакетов с помощью apt
После обновления базы данных пакетов вы можете обновить установленные пакеты. Самый удобный способ — это обновить все пакеты, которые имеют доступные обновления. Вы можете просто использовать команду ниже:
sudo apt-get upgrade
Чтобы обновить только определенную программу, используйте команду ниже:
sudo apt-get upgrade
Есть еще один способ выполнить полное обновление, используя команду ниже:
sudo apt-get dist-upgrade
Но вы должны избегать использования этой команды. Я объясню, почему в следующем разделе.
Разница между upgrade и dist-upgrade
Команда apt-get upgrade очень послушна. Она никогда не пытается удалить какие-либо пакеты или установить новый пакет самостоятельно.
Команда apt-get dist-upgrade, с другой стороны, проактивна. Она ищет зависимости с более новой версией устанавливаемого пакета и пытается установить новые пакеты или самостоятельно удалить существующие.
Похоже, что команда apt-get dist-upgrade более мощная и интеллектуальная, не так ли? Но в этом и есть риск.
Смотрите, у нее есть «умная» система разрешения конфликтов. Она будет пытаться обновлять наиболее важные пакеты за счет менее важных. Это может привести к удалению некоторых пакетов, чего Вы, возможно, не захотите. Это основная причина, по которой следует избегать ее использования на рабочих станциях на предприятиях.
sudo apt-get update sudo apt-get upgrade -y
Использование команд apt-cache для поиска пакетов
Скажу честно, это не лучший способ поиска пакетов. Но это очень удобно, когда вы ищете какую-то определенную библиотеку.
Все, что вам нужно сделать, это использовать следующую команду (здесь вам даже не нужно sudo):
Здесь не нужно знать точное название пакета. Команда ищет в именах пакетов и их кратких описаниях, затем показывает результат, основанный на этом.
Если вы просто хотите искать в apt-пакетах с определёнными именами пакетов, вы можете воспользоваться командой, приведённой ниже:
Команда выдаст список всех пакетовпо, удовлетворяющие вашему поисковому запросу.
Как только вы узнаете точное имя пакета, вы можете получить дополнительную информацию о нем, например, о версии, зависимостях и т.д., с помощью команды, приведенной ниже:
Как установить новые пакеты с помощью apt-get
Если вы знаете имя пакета, вы можете легко установить его с помощью команды ниже:
sudo apt-get install
Просто замените на нужный вам пакет. Предположим, я хотел установить редактор изображений Pinta. Все, что мне нужно будет сделать, это использовать команду:
sudo apt-get install pinta
Хорошо, что в этой команде есть автозавершение. Поэтому, если вы не уверены в точном названии пакета, вы можете набрать несколько букв и нажать клавишу табуляции, и она предложит все пакеты, доступные с этими буквами. Например:
Как установить сразу несколько пакетов
Вы не ограничены установкой только одного пакета за раз. Вы можете установить несколько пакетов за раз, указав их имена:
Что если запустить установку, а пакет окажется уже установлен
Предположим, что у вас уже установлен пакет, но вы все равно использовали для него команду install. apt-get на самом деле посмотрит в базу данных, и если будет доступна более новая версия, то обновит установленный пакет до более новой. Таким образом, использование этой команды не причинит никакого вреда — если только вы не хотите, чтобы пакет не был обновлен.
Как установить пакеты без обновления
Предположим, по какой-то причине вы хотите установить пакет, но не хотите обновлять его, если он уже установлен. Звучит странно, но у вас могут быть на то причины.
В этом случае вы можете использовать флаг no-upgrade следующим образом:
sudo apt-get install —no-upgrade
Как обновить пакет, не установливая его
Если вы хотите обновить пакет при условии, что он уже установлен, но не хотите устанавливать его снова, вы можете сделать это с помощью следующей команды:
sudo apt-get install —only-upgrade
Как установить конкретную версию приложения
По умолчанию, последняя версия, доступная в репозитории, будет установлена для любого приложения. Но если по какой-то причине вы не хотите устанавливать последнюю версию, вы можете указать номер версии пакета. (Вам нужно будет знать точный номер версии, которую вы хотите установить).
Все, что вам нужно сделать, это добавить номер версии к названию пакета:
Как удалить установленные пакеты с помощью apt-get
Установка пакетов — не единственное, что можно сделать с apt-get. С помощью этой команды также можно удалять пакеты. Всё, что вам нужно сделать, это использовать команду таким образом:
sudo apt-get remove
Автозавершение работает и здесь. Поэтому просто начните набирать имя пакета и нажмите клавишу табуляции, и терминал предложит все установленные пакеты, начиная с этих букв.
Другой способ деинсталляции пакетов — использование очистки. Команда используется следующим образом:
sudo apt-get purge
Какая разница между apt-get remove и apt-get purge?
- apt-get remove просто удаляет двоичные файлы пакета. Она не трогает конфигурационные файлы
- apt-get purge удаляет все, что связано с пакетом, включая конфигурационные файлы
Таким образом, если вы «удалили» (removed) определенный кусочек программного обеспечения и затем установите его снова, ваша система будет иметь те же самые конфигурационные файлы. Конечно, вас попросят переопределить существующие конфигурационные файлы при повторной установке.
Очистка особенно полезна, когда вы испортили конфигурацию программы, когда вы хотите полностью стереть ее следы из системы и начать все заново.
В большинстве случаев простого удаления более чем достаточно для удаления пакета.
Как очистить систему с помощью apt-get
Ах, да! Вы также можете очистить систему с помощью apt-get и освободить некоторое место на диске.
Вы можете использовать команду ниже для очистки кэша apt (локально сохраненных файлов пакета):
sudo apt-get clean
Другой способ — использовать автоочистку. В отличие от вышеприведенной команды автоочистки, autoclean удаляет только те файлы пакета, которые имеют более новую версию, и поэтому больше не будет использоваться.
sudo apt-get autoclean
Другой способ высвобождения дискового пространства — использование автоудаления. С помощью него можно удалить библиотеки и пакеты, которые были установлены автоматически для удовлетворения зависимостей другого установленного пакета. Если этот пакет удален, то эти автоматически установленные пакеты бесполезны в системе. Эта команда удаляет такие пакеты.
sudo apt-get autoremove
В завершение
Есть еще кое-что, но и этой информации достаточно для начала. Вы всегда можете просмотреть man-страницы, чтобы получить больше информации.
Как вам это руководство по apt-get командам в Linux? Было ли оно полезным для Вас и достаточно понятным для понимания? Ваши отзывы помогут создать больше подобных руководств в ближайшем будущем.
Источник: omgubuntu.ru