Команды-linux
Установщики программ в ОС debian-10 (далеко не полный список, но этих вполне достаточно.)
apt
aptitude
dpkg
У каждой свои достоинства и недостатки. Что может каждая: и не надо никуда бежать и рыть инет, достаточно задать открыть help по каждой и она сама все разкажет о себе.
Открываем терминал и пробуем каждую ввести:
ok@OKEAH:~$ apt apt 1.8.2.3 (amd64) Использование: apt [параметры] команда apt — менеджер пакетов с интерфейсом командной строки. Он предоставляет команды для поиска и управления, а также запросов информации о пакетах. apt выполняет те же задачи, что и специализированные инструменты APT, например apt-get и apt-cache, но по умолчанию задействует параметры, которые больше подходят для интерактивного использования. Основные команды: list - показать список пакетов на основе указанных имён search - искать в описаниях пакетов show - показать дополнительные данные о пакете install - установить пакеты reinstall - переустановить пакеты remove - удалить пакеты autoremove - автоматически удалить все неиспользуемые пакеты update - обновить список доступных пакетов upgrade - обновить систему, устанавливая/обновляя пакеты full-upgrade - обновить систему, удаляя/устанавливая/обновляя пакеты edit-sources - редактировать файл с источниками пакетов Дополнительную информацию о доступных командах смотрите в apt(8). Параметры настройки и синтаксис описаны в apt.conf(5). Информацию о том, как настроить источники, можно найти в sources.list(5). Выбор пакетов и версий описывается в apt_preferences(5). Информация о безопасности доступна в apt-secure(8). В APT есть коровья СУПЕРСИЛА. ok@OKEAH:~$
Так и сказано:
apt — менеджер пакетов с интерфейсом командной строки. Он предоставляет
команды для поиска и управления, а также запросов информации о пакетах.
apt выполняет те же задачи, что и специализированные инструменты APT,
например apt-get и apt-cache, но по умолчанию задействует параметры,
которые больше подходят для интерактивного использования.
Дальше и сказать нечего, внимательно прочитаем и примем за правило: если надо установить какую-то программу и мы уже знаем её название(если не знаем уточним по подробней)
Пробуем ещё одну. Право говоря, она стала сегодня встречаться редко, но ранее о ней из-зо всех утюгов кричали: мол она самая-самая.
ok@OKEAH:~$ aptitude bash: aptitude: команда не найдена ok@OKEAH:~$
Специально для наглядности так и сделал, команда есть, но почему-то она отказалась работать, исправим этот недочет её установкой.
ok@OKEAH:~$ apt install aptitude E: Не удалось открыть файл блокировки /var/lib/dpkg/lock-frontend - open (13: Отказано в доступе) E: Невозможно получить блокировку внешнего интерфейса dpkg (/var/lib/dpkg/lock-frontend); у вас есть права суперпользователя? ok@OKEAH:~$ ok@OKEAH:~$
И опять нам что-то мешает?
Исправим: это защита сработала, она не дает всем кому попало ставить что под руку подвернется, Вот от имени администратора: (root) можно ставить все что угодно.
Переходим в консоли из простого юзера в область админа
ok@OKEAH:~$ su Пароль: root@OKEAH:/home/ok#
Пароля мы не увидим, но если знать и ввести правильно, система согласится и переведет консоль под рут использование.
Ещё раз: ставим aptitude.
root@OKEAH:/home/ok# apt install aptitude Чтение списков пакетов… Готово Построение дерева зависимостей Чтение информации о состоянии… Готово Будут установлены следующие дополнительные пакеты: aptitude-common libcgi-fast-perl libcgi-pm-perl libclass-accessor-perl libcwidget3v5 libfcgi-perl libio-string-perl libparse-debianchangelog-perl libsub-name-perl Предлагаемые пакеты: aptitude-doc-en | aptitude-doc apt-xapian-index debtags libcwidget-dev libhtml-template-perl libxml-simple-perl Следующие НОВЫЕ пакеты будут установлены: aptitude aptitude-common libcgi-fast-perl libcgi-pm-perl libclass-accessor-perl libcwidget3v5 libfcgi-perl libio-string-perl libparse-debianchangelog-perl libsub-name-perl Обновлено 0 пакетов, установлено 10 новых пакетов, для удаления отмечено 0 пакетов, и 0 пакетов не обновлено. Необходимо скачать 3 840 kB архивов. После данной операции объём занятого дискового пространства возрастёт на 17,0 MB. Хотите продолжить? [Д/н]
И ещё этот установщик добавить необходимые модули в ОС-debian10,и показан список и название всего что необходимо.
Осталось согласиться и ответить (Y)
Хотите продолжить? [Д/н] y Пол:1 http://deb.debian.org/debian buster/main amd64 aptitude-common all 0.8.11-7 [1 768 kB] Пол:2 http://deb.debian.org/debian buster/main amd64 libcwidget3v5 amd64 0.5.17-11 [323 kB] Пол:3 http://deb.debian.org/debian buster/main amd64 aptitude amd64 0.8.11-7 [1 368 kB] Пол:4 http://deb.debian.org/debian buster/main amd64 libcgi-pm-perl all 4.40-1 [222 kB] Пол:5 http://deb.debian.org/debian buster/main amd64 libfcgi-perl amd64 0.78-2+b3 [39,0 kB] Пол:6 http://deb.debian.org/debian buster/main amd64 libcgi-fast-perl all 1:2.13-1 [11,4 kB] Пол:7 http://deb.debian.org/debian buster/main amd64 libsub-name-perl amd64 0.21-1+b3 [13,6 kB] Пол:8 http://deb.debian.org/debian buster/main amd64 libclass-accessor-perl all 0.51-1 [23,2 kB] Пол:9 http://deb.debian.org/debian buster/main amd64 libio-string-perl all 1.08-3 [12,3 kB] Пол:10 http://deb.debian.org/debian buster/main amd64 libparse-debianchangelog-perl all 1.2.0-13 [59,5 kB] Получено 3 840 kB за 1с (2 699 kB/s) Выбор ранее не выбранного пакета aptitude-common. (Чтение базы данных … на данный момент установлено 193267 файлов и каталогов.) Подготовка к распаковке …/0-aptitude-common_0.8.11-7_all.deb … Распаковывается aptitude-common (0.8.11-7) … Выбор ранее не выбранного пакета libcwidget3v5:amd64. Подготовка к распаковке …/1-libcwidget3v5_0.5.17-11_amd64.deb … Распаковывается libcwidget3v5:amd64 (0.5.17-11) … Выбор ранее не выбранного пакета aptitude. Подготовка к распаковке …/2-aptitude_0.8.11-7_amd64.deb … Распаковывается aptitude (0.8.11-7) … Выбор ранее не выбранного пакета libcgi-pm-perl. Подготовка к распаковке …/3-libcgi-pm-perl_4.40-1_all.deb … Распаковывается libcgi-pm-perl (4.40-1) … Выбор ранее не выбранного пакета libfcgi-perl. Подготовка к распаковке …/4-libfcgi-perl_0.78-2+b3_amd64.deb … Распаковывается libfcgi-perl (0.78-2+b3) … Выбор ранее не выбранного пакета libcgi-fast-perl. Подготовка к распаковке …/5-libcgi-fast-perl_1%3a2.13-1_all.deb … Распаковывается libcgi-fast-perl (1:2.13-1) … Выбор ранее не выбранного пакета libsub-name-perl. Подготовка к распаковке …/6-libsub-name-perl_0.21-1+b3_amd64.deb … Распаковывается libsub-name-perl (0.21-1+b3) … Выбор ранее не выбранного пакета libclass-accessor-perl. Подготовка к распаковке …/7-libclass-accessor-perl_0.51-1_all.deb … Распаковывается libclass-accessor-perl (0.51-1) … Выбор ранее не выбранного пакета libio-string-perl. Подготовка к распаковке …/8-libio-string-perl_1.08-3_all.deb … Распаковывается libio-string-perl (1.08-3) … Выбор ранее не выбранного пакета libparse-debianchangelog-perl. Подготовка к распаковке …/9-libparse-debianchangelog-perl_1.2.0-13_all.deb … Распаковывается libparse-debianchangelog-perl (1.2.0-13) … Настраивается пакет libcwidget3v5:amd64 (0.5.17-11) … Настраивается пакет libcgi-pm-perl (4.40-1) … Настраивается пакет libio-string-perl (1.08-3) … Настраивается пакет aptitude-common (0.8.11-7) … Настраивается пакет aptitude (0.8.11-7) … update-alternatives: используется /usr/bin/aptitude-curses для предоставления /usr/bin/aptitude (aptitude) в автоматическом режиме Настраивается пакет libsub-name-perl (0.21-1+b3) … Настраивается пакет libfcgi-perl (0.78-2+b3) … Настраивается пакет libclass-accessor-perl (0.51-1) … Настраивается пакет libcgi-fast-perl (1:2.13-1) … Настраивается пакет libparse-debianchangelog-perl (1.2.0-13) … Обрабатываются триггеры для man-db (2.8.5-2) … Обрабатываются триггеры для libc-bin (2.28-10+deb10u1) … root@OKEAH:/home/ok#
После ввода команды
ok@OKEAH:~$ aptitude
Получаем вот такое окно, пока просто посмотрим на него и можно закрывать, когда понадобится этот менеджер пакетов, тогда и будем разбираться , что и для чего это служит и как использоват.
Но это ещё не всё.
Говорил про help, вот и попробуем его ввести в терминал.
ok@OKEAH:~$ aptitude --help aptitude 0.8.11 Использование: aptitude [-S имя файла] [-u|-i] aptitude [опции] <действие> … Действия (если не задано, aptitude запускается в диалоговом режиме): install Установить/обновить пакеты. remove Удалить пакеты. purge Удалить пакеты и их файлы настройки. hold Зафиксировать пакеты. unhold Отменить команду hold для пакета. markauto Пометить пакет как установленный автоматически. unmarkauto Пометить пакет как установленный вручную. forbid-version Запретить aptitude обновлять до определённой версии пакета. update Загрузить список новых/обновлённых пакетов. safe-upgrade Выполнить безопасное обновление. full-upgrade Выполнить обновление, возможна установка и удаление пакетов. build-dep Установить сборочные зависимости пакета. forget-new Забыть, какие пакеты «новые». search Найти пакет по имени и/или выражению. show Показать подробную информацию о пакете. showsrc Показать подробную информацию о пакете с исходным кодом (обёртка над apt). versions Показать версии указанных пакетов. clean Удалить загруженные файлы пакетов. autoclean Удалить старые загруженные файлы пакетов. changelog Посмотреть журнал изменений пакета. download Загрузить файл .deb для пакета (обёртка над apt). source Загрузить пакет с исходным кодом (обёртка над apt). reinstall Переустановить уже установленный пакет. why Объяснить почему определённый пакет следует установить. why-not Объяснить почему определённый пакет нельзя установить. add-user-tag Добавить пользовательскую метку к пакетам/шаблонам. remove-user-tag Убрать пользовательскую метку у пакетов/шаблонов. Опции: -h Эта справка. --no-gui Не использовать графический интерфейс GTK, даже если это возможно. -s Имитировать действия, но не выполнять их на самом деле. -d Только загрузить пакеты, ничего не устанавливать и не удалять. -P Всегда запрашивать подтверждение действий. -y Предполагать ответ «да» на простой вопрос да/нет. -F format Задать формат отображения результатов поиска; смотрите руководство. -O order Задать способ сортировки результатов поиска; смотрите руководство. -w width Задать ширину вывода результатов поиска. -f Принудительно исправлять неработоспособные пакеты. -V Показывать версию устанавливаемых пакетов. -D Показывать зависимости автоматически изменяемых пакетов. -Z Показывать изменение размера установки каждого пакета. -v Отображать дополнительную информацию. (может указываться несколько раз). -t [release] Задать выпуск, из которого должны быть установлены пакеты. -q Не выводить индикаторы хода работы в режиме командной строки. -o key=val Непосредственно задать опцию настройки с именем «key». --with(out)-recommends Указать, будут ли рекомендуемые пакеты трактоваться как строгие зависимости. -S fname Читать информацию о расширенном статусе aptitude из fname. -u Загрузить новые списки пакетов при запуске. (только в текстовом интерфейсе) -i Запустить установку при запуске. (только в текстовом интерфейсе) Полный список и описание всех опций смотрите в странице руководстве. Эта версия aptitude не имеет коровьей СУПЕРСИЛЫ. ok@OKEAH:~$
Вот теперь мы видим наглядно чем они отличаются, и то что каждый имеет свои свойства. Возможности aptitude гораздо шире, и по случаю они очень даже могут пригодиться.
Осталось попробовать третий менеджер пакетов dpkg.
Когда вы скачиваете файл с расширением .deb это установщик и не знаете как его установить, вот оно самое время это проверить.
ok@OKEAH:~$ dpkg dpkg: ошибка: укажите требуемое действие Справка по установке и удалению пакетов доступна по команде dpkg --help [*]; Программа «apt» или «aptitude» предоставляет дружественный интерфейс управления пакетами; Чтобы получить список значений флагов отладки dpkg, введите dpkg -Dhelp; Чтобы получить информацию об игнорировании проблем, введите dpkg --force-help; Чтобы получить справку по работе с файлами *.deb, введите dpkg-deb --help; Команды, отмеченные [*], выводят большое количество информации. Объедините их в конвейер с программами «less» или «more»! ok@OKEAH:~$
Попробуем:
ok@OKEAH:~$ dpkg --help Использование: dpkg [<параметр> …] <команда> Commands: -i|--install <.deb file name>... | -R|--recursive <directory>... --unpack <.deb file name>... | -R|--recursive <directory>... -A|--record-avail <.deb file name>... | -R|--recursive <directory>... --configure <package>... | -a|--pending --triggers-only <package>... | -a|--pending -r|--remove <package>... | -a|--pending -P|--purge <package>... | -a|--pending -V|--verify [<package>...] Verify the integrity of package(s). --get-selections [<pattern>...] Get list of selections to stdout. --set-selections Set package selections from stdin. --clear-selections Deselect every non-essential package. --update-avail [<Packages-file>] Replace available packages info. --merge-avail [<Packages-file>] Merge with info from file. --clear-avail Erase existing available info. --forget-old-unavail Forget uninstalled unavailable pkgs. -s|--status [<package>...] Display package status details. -p|--print-avail [<package>...] Display available version details. -L|--listfiles <package>... List files 'owned' by package(s). -l|--list [<pattern>...] List packages concisely. -S|--search <pattern>... Find package(s) owning file(s). -C|--audit [<package>...] Check for broken package(s). --yet-to-unpack Print packages selected for installation. --predep-package Print pre-dependencies to unpack. --add-architecture <arch> Add <arch> to the list of architectures. --remove-architecture <arch> Remove <arch> from the list of architectures. --print-architecture Print dpkg architecture. --print-foreign-architectures Print allowed foreign architectures. --assert-<feature> Assert support for the specified feature. --validate-<thing> <string> Validate a <thing>'s <string>. --compare-versions <a> <op> <b> Compare version numbers - see below. --force-help Show help on forcing. -Dh|--debug=help Show help on debugging. -?, --help Вывести это сообщение --version Вывести номер версии Assertable features: support-predepends, working-epoch, long-filenames, multi-conrep, multi-arch, versioned-provides. Validatable things: pkgname, archname, trigname, version. Use dpkg with -b, --build, -c, --contents, -e, --control, -I, --info, -f, --field, -x, --extract, -X, --vextract, --ctrl-tarfile, --fsys-tarfile on archives (type dpkg-deb --help). Параметры: --admindir=<каталог> Использовать <каталог> вместо /var/lib/dpkg --root=<каталог> Установить в другой корневой каталог --instdir=<каталог> Изменить корневой каталог для установки, не меняя административный каталог --path-exclude=<шабл> Не устанавливать пути, которые совпадают с данным шаблоном оболочки. --path-include=<шабл> Повторно включить шаблон после предыдущего исключения. -O|--selected-only Пропустить не выбранные для установки/обновления пакеты -E|--skip-same-version Пропустить пакеты, версия которых совпадает с установленной -G|--refuse-downgrade Пропустить пакеты, версия которых младше установленной -B|--auto-deconfigure Установить, даже если это может сделать другие пакеты неработоспособными --[no-]triggers Пропустить или принудительно выполнить последовательную обработку триггеров --verify-format=<формат> Проверить формат вывода (поддерживается: «rpm»). --no-debsig Не проверять подписи пакетов --no-act|--dry-run|--simulate Показать, что должно быть сделано, но не выполнять действия -D|--debug=<восьм. знач.> Включить отладку, см. -Dhelp или --debug=help --status-fd <n> Вывести информацию об изменениях состояний пакетов в файловый дескриптор <n> --status-logger=<команда> Посылать изменение состояния <командному> stdin --log=<имя файла> Записывать изменения состояний и действия в <имя файла> --ignore-depends=<пакет>,… Игнорировать зависимости от <пакета> --force-… Игнорировать проблемы, см. --force-help --no-force-…|--refuse-… Прекратить работу при обнаружении проблем --abort-after <n> Прекратить работу после обнаружения <n> количества ошибок Операторы сравнения, возможные в --compare-versions: lt le eq ne ge gt (пустое значение версии считать самой ранней); lt-nl le-nl ge-nl gt-nl (пустое значение версии считать самой поздней); < << <= = >= >> > (для совместимости с синтаксисом файла control). Программы «apt» или «aptitude» предоставляют дружественный интерфейс управления пакетами. ok@OKEAH:~$
Этот список, не так страшен как мы тут видим. Это возможности пакетного менеджера, и только, на деле это будет выглядеть так
ok@OKEAH:~/Загрузки$ dpkg -i google-chrome-stable_current_amd64.deb dpkg: ошибка: запрошенная операция требует привилегий суперпользователя ok@OKEAH:~/Загрузки$
После команды dpkg, добавил !флаг! -i (это значить install тоесть установить, уже сокращенном виде) и сам скачанный пакет google-chrome-stable_current_amd64.deb
Система опять ругнулась и отказалась, ей опять подавай root (рут) права, только тогда она примет и выполнит
Список команд будет дополняться. На сегодня это все.