- Шпаргалка начинающего Debian/Ubuntu администратора по управлению пакетами
- Краткая справка Debian администратора
- 📦 Как использовать команду apt search на Linux
- Как найти пакет с помощью менеджера пакетов apt
- Заключение
- You may also like
- 🐧 Сравнение команд Printf и Echo на Linux
- 🐧 Что означает -z на Bash
- 🐧 Примеры команд size на Linux
- 🐧 Linux_Logo – вывод ASCII логотипа Linux с.
- 🐧 Параметры конфигурационного файла Apt /etc/apt/apt.conf
- 🐧 Разница между выключением, перезагрузкой и остановкой Linux
- ⌨️ Введение в команду “./configure”: Компиляция исходного кода.
- 🐧 Что такое /dev/zero на Linux?
- Каковы лучшие дистрибутивы Linux в 2022 году
- 🐧 Работа с переменной PATH на Linux. Это.
- Leave a Comment Cancel Reply
- • Свежие записи
- • Категории
- • Теги
- • itsecforu.ru
- • Страны посетителей
- IT is good
Шпаргалка начинающего Debian/Ubuntu администратора по управлению пакетами
Долгое время меня глодало незнание того, как сделать некоторые элементарные вещи в дебиановских менеджерах пакетов, но, как часто бывает, спросить рядом было не у кого, а до написания куда-либо руки не доходили. И вот наконец вопросы вызрели и я написал свой вопрос в дебиановскую рассылку. Естественно оказалось что пропустил что-то очевидное, но и узнал много неочевидных полезностей, посему решил набросать шпаргалку, авось кому пригодится.
Краткая справка Debian администратора
Основное и общеизвестное
sudo aptitude safe-upgrade
aptitude search "?description("key_word")"
aptitude show package_name
sudo aptitude install package_name
sudo aptitude remove package_name
sudo aptitude purge package_name
aptitude autoclean # удалятся только пакеты неактуальных версий aptitude clean # очистится весь кэш
Установка отдельно скачанного/созданного пакета (для создания пакета из сторонних исходников нужно использовать утилиту checkinstall с флагом -D)
sudo dpkg -i /path/to/package.deb
man aptitude sudo aptitude install aptitude-doc-en
и смотрим документацию (/usr/share/doc/aptitude/html/en/index.html), кому быструю справку по поисковым шаблонам, тому сюда — /usr/share/doc/aptitude/html/en/ch02s04.html. Если лень ставить доку, то в сети она есть.
Вводная на Debian Wiki: wiki.debian.org/Aptitude
А теперь то что не очевидно или требует полного прочтения документации
aptitude search ?upgradable
но после его установки точно также будет себя вести и обычный update
2. Как узнать что изменилось в пакетах которые будут обновлены?
Можно пробовать
sudo aptitude changelog package_name
для каждого пакета.
Но лучше поставить apt-listchanges, тогда перед любой установкой обновлений будет показан список изменений, по умолчанию настройки не очень удобные, поэтому лучше перенастроить под себя, например, выбрать формат вывода (пока использую текст, при больших обновлениях наверно pager лучше), не слать писем, спрашивать подтверждения, выводить всю информацию. Для этого нужно запустить
sudo dpkg-reconfigure apt-listchanges
3. Что делать если обновление что-то поломало и нужно откатиться?
Отката нет, можно попробовать найти предыдущую версию пакета
sudo aptitude version package_name
sudo aptitude install package_name=version
4. Как найти все пакеты установленные вручную?
есть вариант команды (aptitude search ‘~i!~M’), но к сожалению он не даёт желаемого результата, так что вопрос остаётся открытым, есть куча способов основанных на анализе логов
/var/log/aptitude (+ ротированные куски) /var/log/installer/initial-status.gz /var/log/dpkg.log (+ ротированные куски)
но простого и готового решения нет, да информация теоретически может быть потеряна при ротациях, нужно конфигурить
5. Как посмотреть список файлов в пакете?
если пакет установлен
apt-file list package_name
alien --to-deb /path/to/file.rpm
12. Как установить пакет из testing или experimental?
На эту тему нужно писать отдельно (например так), но если кратко, то команды для этого есть
sudo aptitude -t testing package_name
sudo aptitude package_name/testing
13. Как удалить метапакет, но оставить одну из зависимостей?
придётся почитать документацию про ключ unmarkauto или глянуть сюда.
14. Как узнать что попало в файловую систему мимо системы управления пакетами?
Есть утилита cruft, хотя вопрос интерпретации результатов (файла report) пока открыт
sudo cruft -d / -r report --ignore /home --ignore /var --ignore /tmp
15. Какие есть дополнительные репозитории?
Debian — wiki.debian.org/UnofficialRepositories
Ubuntu — множество всяких PPA
16. Что есть ещё?
apt-cdrom
apt-spy
auto-apt. заметка на хабре
apt-key
apt-add-repository
Некоторые вещи умеет только apt-get
Есть альтернативные утилиты для управления пакетами, например wajig, который пытается вобрать в себя функционал всех остальных утилит.
17. Как найти пакеты зависящие от данного
apt-cache rdepends package_name
aptitude why package_name
Благодарю всех кто помог своими советами в рассылке, жж (JackYF) и хабре ( run4way, sledopit, nazarpc, AgaFonOff, amarao, traaance, adrianopol, Karamax). Замечания и дополнения приветствуются.
📦 Как использовать команду apt search на Linux
Одной из наиболее привлекательных особенностей работы системы Linux является мгновенный доступ к тысячам пакетов, которые можно установить из диспетчера пакетов дистрибутива Linux.
Установить пакеты очень просто.
То есть до тех пор, пока вы знаете название того, что пытаетесь установить.
Но вы всегда можете поискать нужные пакеты.
В дистрибутивах, которые используют менеджер пакетов apt, таких как Debian, Ubuntu и Linux Mint и т.д. это делается с помощью команды поиска apt.
В этом руководстве мы покажем вам, как использовать команду apt search на нескольких примерах.
Вы быстро научитесь справляться с задачей поиска пакетов для дальнейшей установки.
Как найти пакет с помощью менеджера пакетов apt
Перед запуском вам следует обновить список репозиториев, чтобы все результаты были актуальными.
Данная команда будет искать любые пакеты, связанные с вашим поисковым запросом, а не только пакеты, которые содержат определенную фразу в своем имени.
Если вы получите массу результатов, вы всегда можете использовать grep, чтобы еще больше сузить поиск, или перенаправить на меньшее или большее количество, чтобы ваш терминал не был переполнен выводом.
$ apt search package-name | grep specific-name и/или: $ apt search package-name | less
$ apt-cache search package-name
$ apt-cache pkgnames apache2 apache2-ssl-dev apache2-suexec-pristine apache2-data apache2-bin apache2-dev apache2-doc apache2-suexec-custom apache2 apache2-utils
После того, как вы определили пакет, который хотите получить, вы можете загрузить и установить его с помощью обычной команды apt install.
$ sudo apt install package-name
Заключение
itisgood
📦 Как выполнить пробный запуск процесса обновления CentOS
📦 Как узнать URL-адрес пакета CentOS/Fedora/RHEL
You may also like
🐧 Сравнение команд Printf и Echo на Linux
🐧 Что означает -z на Bash
🐧 Примеры команд size на Linux
🐧 Linux_Logo – вывод ASCII логотипа Linux с.
🐧 Параметры конфигурационного файла Apt /etc/apt/apt.conf
🐧 Разница между выключением, перезагрузкой и остановкой Linux
⌨️ Введение в команду “./configure”: Компиляция исходного кода.
🐧 Что такое /dev/zero на Linux?
Каковы лучшие дистрибутивы Linux в 2022 году
🐧 Работа с переменной PATH на Linux. Это.
Leave a Comment Cancel Reply
• Свежие записи
• Категории
• Теги
• itsecforu.ru
• Страны посетителей
IT is good
В этой статье вы узнаете, как удалить удаленный Git-репозиторий. Процесс прост, но его полезно запомнить, чтобы избежать неожиданностей в будущем. Git – это…
В 11-й версии своей операционной системы Microsoft серьезно переработала интерфейс и убрала несколько привычных функций. Нововведения не всем пришлись по душе. Мы дадим…
Продажа ноутбука нередко становится хлопотным занятием. Кроме поиска покупателя, продавцу необходимо подготовить устройство перед проведением сделки. Но если последовательно выполнить все шаги, ничего…
Вы можете оказаться в ситуации, когда вам нужно использовать скрипт шелла для чтения файлов построчно. В этом руководстве я расскажу о нескольких способах…
Вторичное жильё выгоднее для молодых семей, желающих приобрести свою первую квартиру. Сталкиваясь с ипотечным кредитованием, можно избежать много лишней суеты и проблем, если…