linux:apt
Различия
Показаны различия между двумя версиями страницы.
| Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия | ||
| linux:apt [2026/07/01 20:38] – [Расширенный поиск] so_v_a | linux:apt [2026/10/08 17:53] (текущий) – so_v_a | ||
|---|---|---|---|
| Строка 1: | Строка 1: | ||
| + | < | ||
| + | |||
| # Advanced Package Tool (APT) | # Advanced Package Tool (APT) | ||
| - | Advanced Package Tool (**APT**) — набор программ для установки, | + | **Advanced Package Tool** (**APT**) — набор программ для установки, |
| APT может автоматически устанавливать и настраивать программы для UNIX-подобных операционных систем как из предварительно откомпилированных пакетов, | APT может автоматически устанавливать и настраивать программы для UNIX-подобных операционных систем как из предварительно откомпилированных пакетов, | ||
| Пакеты берутся из интернет-репозиториев, | Пакеты берутся из интернет-репозиториев, | ||
| - | Для своей работы **APT** в качестве бэкенда использует утилиту [[https:// | + | Для своей работы **APT** в качестве бэкенда использует утилиту [dpkg](https:// |
| Таким образом, | Таким образом, | ||
| * Установка/ | * Установка/ | ||
| * Обновление системы и отдельных пакетов | * Обновление системы и отдельных пакетов | ||
| - | * Поиск и анализ доступного ПО | + | * Поиск и анализ доступного |
| + | ПО | ||
| . | . | ||
| ## Команды для основных действий с программными пакетами | ## Команды для основных действий с программными пакетами | ||
| Строка 22: | Строка 25: | ||
| |< 100% 20% 80% >| | |< 100% 20% 80% >| | ||
| - | ^Команда | + | |Команда |
| + | |: | ||
| |apt update |Обновление баз данных пакетов (указанных в `/ | |apt update |Обновление баз данных пакетов (указанных в `/ | ||
| |apt upgrade |Обновление системы| | |apt upgrade |Обновление системы| | ||
| Строка 37: | Строка 41: | ||
| |apt full-upgrade |Переход от одной основной версии дистрибутива к следующей| | |apt full-upgrade |Переход от одной основной версии дистрибутива к следующей| | ||
| . | . | ||
| + | |||
| ### Вывод списка пакетов | ### Вывод списка пакетов | ||
| Строка 45: | Строка 50: | ||
| используется для вывода списка пакетов соответствующих заданному критерию. | используется для вывода списка пакетов соответствующих заданному критерию. | ||
| - | ^Команда | + | |Команда |
| + | |: | ||
| |apt list -\-installed |Вывести список установленных в системе пакетов | | |apt list -\-installed |Вывести список установленных в системе пакетов | | ||
| |apt list -\-upgradable |Вывести список пакетов, | |apt list -\-upgradable |Вывести список пакетов, | ||
| Строка 59: | Строка 65: | ||
| ``` | ``` | ||
| . | . | ||
| + | |||
| ### Расширенный поиск | ### Расширенный поиск | ||
| Строка 74: | Строка 81: | ||
| Для уточнения результатов поиска можно использовать командные опции, а так же регулярные выражения и подстановочные знаки. | Для уточнения результатов поиска можно использовать командные опции, а так же регулярные выражения и подстановочные знаки. | ||
| - | |||
| Строка 83: | Строка 89: | ||
| * **--show-types** - добавляет к выводу информацию о типе каждого пакета (например, | * **--show-types** - добавляет к выводу информацию о типе каждого пакета (например, | ||
| - | Регулярные выражения напрямую использовать в `apt search` нельзя т.к. эта команда ищет только по подстрокам (в имени и описании пакета).\\ | + | Регулярные выражения |
| - | Например при выполнении команды `apt search libssl*` — shell сначала раскроет libssl* в список файлов/ | + | Например при выполнении команды `apt search libssl*` — shell сначала раскроет libssl* в список файлов/ |
| Команда `apt search` ожидает обычный текст или регулярное выражение (зависит от версии и реализации), | Команда `apt search` ожидает обычный текст или регулярное выражение (зависит от версии и реализации), | ||
| #### Способы применяемые для поиска с использованием регулярных выражений | #### Способы применяемые для поиска с использованием регулярных выражений | ||
| + | |||
| + | Так как `apt search` не поддерживает регулярные выражения и специальные метасимволы (вроде *, ?, +, [] и т. д.) в том смысле, | ||
| **Способ 1**: применение `apt search --names-only` и `grep` | **Способ 1**: применение `apt search --names-only` и `grep` | ||
| Строка 99: | Строка 107: | ||
| здесь | здесь | ||
| * **-\-names-only** заставляет apt search просматривать только имена пакетов, | * **-\-names-only** заставляет apt search просматривать только имена пакетов, | ||
| - | * **grep -E** включает расширенные регулярные выражения. | + | * **grep -E** включает расширенные регулярные выражения |
| В результате код из примера найдёт пакеты, | В результате код из примера найдёт пакеты, | ||
| Строка 120: | Строка 128: | ||
| * **[a-z]+** — одна или более строчных латинских букв. То есть после lib должно идти хотя бы одно слово из букв (например, | * **[a-z]+** — одна или более строчных латинских букв. То есть после lib должно идти хотя бы одно слово из букв (например, | ||
| * **(-[a-z]+)? | * **(-[a-z]+)? | ||
| - | * **( и )** — группируют часть выражения. | + | * **(** и **)** — группируют часть выражения. |
| * **-[a-z]+** — дефис и затем одна или более строчных букв (например, | * **-[a-z]+** — дефис и затем одна или более строчных букв (например, | ||
| * **?** — означает «0 или 1 раз»: эта часть может быть, а может и не быть. | * **?** — означает «0 или 1 раз»: эта часть может быть, а может и не быть. | ||
| * **-dev** — буквально «-dev» в конце имени пакета. | * **-dev** — буквально «-dev» в конце имени пакета. | ||
| - | То есть шаблон ищет пакеты вида: | + | То есть шаблон ищет пакеты вида **lib< |
| - | * **lib< | + | |
| - | или | + | |
| - | * **lib< | + | |
| Примеры имен подходящих под шаблон: | Примеры имен подходящих под шаблон: | ||
| * **libpng-dev** → lib + png + (нет промежуточной части) + -dev | * **libpng-dev** → lib + png + (нет промежуточной части) + -dev | ||
| - | * **libjpeg-turbo-dev** → lib + jpeg + -turbo (это как раз необязательная часть (-[a-z]+)?) + -dev | + | * **libjpeg-turbo-dev** → lib + jpeg + -turbo (это как раз необязательная часть |
| Пример неподходящего имени: | Пример неподходящего имени: | ||
| * **libxml2-dev** не подойдёт, | * **libxml2-dev** не подойдёт, | ||
| Строка 146: | Строка 151: | ||
| </ | </ | ||
| - | Метасимволы | + | Метасимволы |
| - | ^Символ ^Описание | + | |
| - | | **^** |Начало строки | | + | |Символ |Описание |
| - | | **$** |Конец строки | | + | |: |
| - | | **.** |Любой символ | | + | | **^** |начало строки |
| - | | ** * ** |Нулевая или более | + | | **$** |конец строки | |
| - | | **?** |Один символ | | + | | **.** |любой символ | |
| - | | **()** |Группировка | + | | **[abc]**, **[^abc]** |набор/ |
| - | | **?** |Отрицательная группа | + | | ** * ** |0 и более |
| + | | **+** |1 и более повторений | ||
| + | | **?** |0 или 1 вхождение | ||
| + | | **(**...**)** |группировка | | ||
| + | | **|** |логическое ИЛИ | ||
| + | . | ||
| Строка 160: | Строка 170: | ||
| Существуют программы предоставляющие | Существуют программы предоставляющие | ||
| - | * [[https:// | + | * [Synaptic](https:// |
| - | * [[https:// | + | * [PackageKit](https:// |
| - | * [[https:// | + | * [Aptitude](https:// |
| + | |||
| + | |||
| + | ## Полное руководство по команде apt в Linux | ||
| + | |||
| + | Можно посмотреть [здесь](https:// | ||
/var/www/html/dokuwiki/data/attic/linux/apt.1782938322.txt.gz · Последнее изменение: — so_v_a
