How to install deb file in ubuntu
Содержание:
- Программы для Ubuntu
- Реализация
- Создание deb пакетов
- Установка из репозиториев
- Утилиты для работы/генерации содержимого DEBIAN/
- How to download deb Package
- Установка deb пакетов Ubuntu
- How to Install deb Packages on Ubuntu Linux
- Создание пакета Geany (A fast and lightweight IDE)
- 3.11. Поиск программ, установленных в системе Debian
Программы для Ubuntu
Представим, что вы решились или только что перешли на Linux. По началу у вас возникнет огромное количество вопросов. И самым главным страхом перехода на Ubuntu может стать отсутствие нужных приложений и проблемы с их установкой. Но не переживайте. Мы отобрали для вас список бесплатных приложений для Убунту, подходящих для разных задач.
А для тех, кто не знает как устанавливать программы в Ubuntu, редакция оставила команды терминала, используя которые вы быстро скачаете любую понравившуюся утилиту.
Chromium
Первое, что понадобится после установки системы — интернет-браузер. В Ubuntu по умолчанию установлен браузер Firefox, но не всем он нравится. Поэтому можете поставить аналог Google Chrome.
Установить Chromium:
Stacer
Не секрет, что в каждой операционной системе накапливаются ненужные файлы
Важно вовремя избавляться от этого мусора, чтобы система работала хорошо. Для этого и нужен Stacer — системный оптимизатор с красивым интерфейсом
Установить приложение Ubuntu можно, используя следующие команды:
GIMP
GIMP — пример первоклассного продукта из мира бесплатных программ с открытым исходным кодом. Программа подойдёт для графического дизайна, создания иллюстраций и редактирования фотографий.
вы можете скачать GIMP с официального сайта, используя любой браузер или установить его вручную из Терминала, используя команду:
OpenShot
OpenShot — одна из лучших программ с открытым исходным кодом, в которой есть всё необходимое для редактирования видео. Для установки прописываем команду:
Shotcut
Ещё один видеоредактор — Shotcut. Он работает с широким спектром мультимедийных форматов и поддерживает разрешение до 4K. Вы можете установить Shotcut в Ubuntu следующим образом:
Spotify
Приложение Spotify для Linux позволяет слушать музыку через собственное приложение, а не через интернет-браузер. Он доступен в Центре программного обеспечения Ubuntu для установки через графический интерфейс:
Unity Tweak Tool
«Швейцарский нож для рабочего стола» или приложение для настройки внешнего вида Ubuntu. Используя утилиту, вы сможете сами определить поведение окон, установить понравившиеся иконки, определить внешний вид панели с приложениями и ещё много всего. Сделать рабочий стол удобным и красивым:
VLC
Универсальное приложение для Ubuntu — медиапроигрыватель VLC, который может воспроизводить почти все форматы аудио- и видеофайлов. Но на этом возможности VLC не заканчиваются: вы можете записывать через него звук микрофона, изображение с видеокамеры, делать запись экрана и воспроизводить видео или аудио через интернет. Скачать VLC через терминал:
Также можно установить в виде snap пакета:
Double Commander
Удобный файловый менеджер для решения большинства задач и хорошая альтернатива Total Commander из Windows.
Double Commander поддерживает множество файлов, например, FTP, WebDav, Samba, SSHFS и многие другие. Также вы всегда сможете установить внешние плагины и расширить функционал по необходимости. Скачать:
Timeshift
Аналогичный инструмент функции восстановления системы Windows. Благодаря Timeshift вы сможете создавать снимки вашей системы и использовать их для восстановления вашего ПК. Установить:
Atom
Это текстовый редактор разработчиков. Используя этот редактор, вы сможете открывать несколько документов, распределять их по вкладкам и устанавливать подсветку синтаксиса. Чтобы установить через терминал, нужно прописать:
Simplenote
А если вам нужна функциональная программа для заметок — установите Simplenote. В заметках можно использовать только текст и картинки, есть поддержка тегов для быстрого поиска, просмотр истории. Также вы сможете делиться заметками с друзьями, открывать им доступ и редактировать заметки вместе. Ubuntu установка DEB с официального сайта или через терминал:
Shutter
Суперполезное приложение для скриншотов. С Shutter вы сможете сделать снимки не только всего экрана, но и определённой его области, скриншотить веб-страницы или несколько открытых окон в один момент. Команды для его установки на ваш компьютер с Ubuntu:
TeamViewer
TeamViewer — программа для удалённого управления компьютером через специальный сервер. Для того, чтобы оказаться на рабочем столе компьютера, вам нужно будет ввести ID машины и пароль. Устанавливаем программу:
⌘⌘⌘
Кстати наши облачные VPS как раз можно установить на популярный дистрибутив Linux — Ubuntu.
Реализация
Диаграмма, показывающая пример файловой структуры файла .deb
Frhed шестнадцатеричный редактор, отображающий необработанные данные пакета Debian.
До Debian 0.93 пакет состоял из заголовка файла и двух объединенных архивов gzip . Начиная с Debian 0.93, пакет deb реализован в виде архива ar . Этот архив содержит три файла в определенном порядке:
- debian-binary — содержит одну строку с номером версии формата пакета. ( для текущих версий Debian).
- контрольный архив — tar-архив с именем содержит сценарии сопровождающего и метаинформацию пакета (имя пакета, версия, зависимости и сопровождающий). Поддерживается сжатие архива с помощью gzip или xz . Расширение файла изменится, чтобы указать метод сжатия.
- архив данных — архив tar с именем содержит фактические устанавливаемые файлы. Поддерживается сжатие архива с помощью gzip , bzip2 , lzma или xz . Расширение файла изменится, чтобы указать метод сжатия.
Контрольный архив
В состав контрольного архива могут входить следующие файлы:
- control содержит краткое описание пакета, а также другую информацию, такую как его зависимости.
- md5sums содержит контрольные суммы MD5 всех файлов в пакете для обнаружения поврежденных или неполных файлов.
- conffiles перечисляет файлы пакета, которые следует рассматривать как файлы конфигурации. Файлы конфигурации не перезаписываются во время обновления, если не указано иное.
- preinst , postinst , prerm и postrm — это необязательные сценарии, которые выполняются до или после установки или удаления пакета.
- config — это необязательный сценарий, поддерживающий механизм конфигурации debconf .
- shlibs список зависимостей разделяемых библиотек.
Подписанные пакеты
Дистрибутивы на основе Debian поддерживают проверку подписи GPG для подписанных пакетов Debian, но в большинстве (если не во всех) эта функция по умолчанию отключена. Вместо этого пакеты проверяются путем подписания метаданных репозитория (т.е. Releaseфайлов). Файлы метаданных, в свою очередь, включают контрольные суммы для файлов репозитория как средство проверки подлинности файлов. В настоящее время существует две разные реализации для подписи отдельных пакетов. Первый выполняется через debsigs/ debsig-verifytoolset, который поддерживается dpkg . Второй — с помощью dpkg-sigпрограммы, которая не поддерживается dpkg , поэтому пакеты необходимо проверять вручную с помощью dpkg-sigпрограммы. Оба формата добавляют новые разделы в архив ar для хранения информации о подписи, но эти форматы несовместимы друг с другом. Ни одна из модификаций формата пакета не указана в официальном руководстве Debian или на странице руководства о формате двоичного пакета.
Создание deb пакетов
Шаг 1. Подготовка
Давайте создадим для этого примера небольшую программу на Си. Она будет называться hellolosst и будет выводить на экран строку Hello from losst.ru в терминал при запуске. Сначала создайте папку hellolosst и перейдите в неё:
Затем поместите в неё файл с исходным кодом:
Для компиляции программы выполните такую команду:
Затем вы можете её выполнить:
Таким образом, теперь у нас есть программа, которую надо упаковать в deb пакет.
2. Создание манифеста
В каждом deb пакете содержаться не только файлы самой программы, но и файл манифеста, в котором описан пакет, его зависимости и параметры. Этот файл имеет название control и должен находится в папке DEBIAN. Для сборки пакета будем использовать папку package, чтобы файлы программы не путались с исходными файлами и те не попали в пакет. Создайте эти папку:
Прежде чем вы сможете создать этот файл надо узнать несколько вещей. Первым делом надо посмотреть размер файлов программы, поскольку в данном случае файл один, достаточно посмотреть его размер:
Если файлов несколько, то можно удалить исходники и посмотреть общий размер папки с файлами программы. Дальше надо понять от каких пакетов будет зависеть ваша программа. Для этого воспользуйтесь командой objdump:
В данном случае программе необходима только libc. Чтобы посмотреть в каком пакете она находится выполните:
Пакет называется libc6. Затем создайте файл манифеста со следующим содержимым:
Это минимальный набор параметров в файле манифеста. Вот их значение:
Package — имя пакета;
Version — версия программы в пакете, будет использована при обновлении пакета;
Section — категория пакета, позволяет определить зачем он нужен;
Priority — важность пакета, для новых пакетов, которые ни с чем не конфликтуют обычно прописывают optional, кроме того доступны значения required, important или standard;
Depends — от каких пакетов зависит ваш пакет, он не может быть установлен, пока не установлены эти пакеты;
Recommends — необязательные пакеты, но тем не менее они обычно устанавливаются по умолчанию в apt;
Conflicts — пакет не будет установлен, пока в системе присутствуют перечисленные здесь пакеты;
Architecture — архитектура системы, в которой можно установить этот пакет, доступные значения: i386, amd64, all, последнее означает, что архитектура не имеет значения;
Installed-Size — общий размер программы после установки;
Maintainer — указывает кто собрал этот пакет и кто отвечает за его поддержку;
Description — краткое описание пакета.
3. Расположение файлов
Манифест готов. Теперь в папке пакета надо создать структуру папок, аналог того, что есть в корневой файловой системе. В данном случае надо создать папку usr/bin и поместить туда исполняемый файл:
4. Скрипты установки
Несмотря на то, что система установки пакетов очень мощная и позволяет делать многое, некоторые вещи всё же сделать нельзя. Для решения этой проблемы была предусмотрена возможность выполнять скрипты перед установкой пакета и после. Аналогично это работает для удаления пакета — перед и после. Эти скрипты называются preinst, postinst, prerm и postrm. Каждый файл просто содержит набор скриптов, которые надо выполнить. Например:
Разработчики Debian не рекомендуют использовать эти скрипты без крайней надобности, поскольку они дают вам полный контроль над системой пользователя и вы можете случайно что-то повредить. Обычно эти скрипты используются для того чтобы задавать пользователям вопросы и на основе этого генерировать конфигурационные файлы.
5. Сборка и проверка пакета
Осталось собрать настроенный пакет. Для этого используйте такую команду:
Теперь вы знаете как как собрать deb пакет. После завершения сборки можете установить его с помощью apt:
После этого исполняемый файл программы появится в /usr/bin, а сообщение из postinst будет выведено после установки.
Установка из репозиториев
Репозиторий — место централизованного хранения пакетов программного обеспечения. Использование репозиториев позволяет упростить установку программ и обновление системы. Пользователь волен выбирать, какими репозиториями будет пользоваться, и даже может создать собственный. Список используемых репозиториев содержится в файле и в файлах каталога , проще всего его посмотреть через специальное приложение, которое можно вызвать через главное меню: Система→Администрирование→Источники Приложений, или через Менеджер пакетов Synaptic.
Если вы не добавляли локальные репозитории (например, CD/DVD диски), то для установки программ из репозиториев вам понадобится интернет.
У такого метода установки программ есть масса преимуществ: это просто удобно, вы устанавливаете уже протестированные программы, которые гарантированно будут работать на вашей системе, зависимости между пакетами будут решаться автоматически, при появлении в репозитории новых версий установленных программ вас об этом проинформируют.
С использованием графического интерфейса
Выберите Система → Администрирование → Менеджер пакетов Synaptic и получите более функциональный инструмент для работы с пакетами. В частности вы можете например устанавливать программы частично, если вам, например, не нужна документация или еще что-то.
Запустите программу Менеджер пакетов Synaptic Система→Администрирование→Менеджер пакетов Synaptic. По запросу введите свой пароль. В запустившейся программе нажмите кнопку «Обновить», подождите, пока система обновит данные о доступных программах.
С использованием командной строки
Установка из командной строки позволяет получить больше информации о процессе установки и позволяет гибко его настраивать, хотя и может показаться неудобной начинающему пользователю.
sudo apt-get update
По запросу введите пароль. Учтите, что при вводе в терминале пароль не отображается, ни звёздочками, ни кружками, никак. Это нормально. Для установки нужной программы введите команду:
sudo apt-get install имя-программы
Например:
sudo apt-get install libsexymm2
Если нужно установить несколько программ, то их можно перечислить через пробел, например:
sudo apt-get install libsexymm2 nmap
Если потребуется — ответьте на задаваемые вопросы (для положительного ответа нужно ввести Y или Д). Программа будет установлена, если она уже установлена — она будет обновлена.
К сожалению не все программы входят в основные репозитории Ubuntu. Поэтому вам придется вручную подключать необходимые репозитории с нужными вам программами или пакетами, для этого вы можете воспользоваться статьей: Подключение репозитория. Или же попытаться найти необходимую информацию по установке, на официальном сайте программы.
Для поиска программы в списке доступных пакетов воспользуйтеcь командами:
sudo apt-cache search keyword
где keyword — название программы, часть названия программы или слово из её описания.
Утилиты для работы/генерации содержимого DEBIAN/
Утилита dpkg-gencontrol
Осуществляет генерацию файла control на базе шаблона этого файла, составляемого майнтенером, а так же дополнительных параметров, передаваемых из командной строки. В частности, устанавливает номер версии пакета, архитектуру итп. Номер версии обычно берется из файла changelog, однако иногда бывает необходимо из одного src-пакета собрать несколько deb-пакетов с разными номерами версий. Опция -v поможет Вам в этом.
Утилита dpkg-shlibdeps
Вычисляет зависимости для исполняемых файлов и библиотек. Майнтенер обычно указывает Build-зависимости (зависимости сборки), а Depend-зависимости (зависимости необходимые для работы) вычисляются с помощью этой (или подобных) утилит. Такой подход дает возможность не привлекать майнтенера при смене имен библиотек от которых зависит пакет.
Утилита dpkg-parsechangelog
Позволяет извлекать из changelog-файла некоторые параметры, вроде номера версии, координат и имени майнтенера итп. Результаты работы этой утилиты могут использоваться как входные параметры для утилит вроде dpkg-gencontrol.
Утилита dpkg-architecture
Позволяет извлекать информацию (манипулировать ей) об архитектуре системы для которой собирается пакет или на которой собирается пакет. Выходные данные так же могут использоваться для использования в других утилитах. Например при генерации файла control утилитой dpkg-gencontrol.
How to download deb Package
You must go to the vendor’s website and download the executable file in .deb format. Don’t forget system architecture before downloading the .deb file. If you are running 32 bit then download deb file for 32 bit otherwise for 64 bit.
For the demonstration purpose, I am going to install TeamViewer on my Ubuntu operating system, then first I will have to go on the vendor’s website teamviewer.com then I will search for Teamviewer executable file in .deb format.
I found there are two types of the .deb packages, one is 32 bit another 64 bit. I have the installed Ubuntu operating system 64 bit. So I download 64 bit .deb file. The file name is teamviewer_14.5.1691_amd64.deb
Установка deb пакетов Ubuntu
Установить Deb пакет Ubuntu не так уж сложно, для этого даже есть несколько утилит. Можно устанавливать как с помощью графического интерфейса, так и в терминале.
Самый простой способ установки — в графическом интерфейсе, с помощью центра приложений, с него и начнем. Откройте файловый менеджер в папке с пакетом:
Выполните двойной клик по deb пакету, далее откроется центр приложений, где вы посмотреть информацию о пакете и запустить установку нажав кнопку установить.
Установка программ Ubuntu с помощью центра приложений мне не очень нравится, он обычно очень долго думает и не всегда правильно открывает программу, но можно воспользоваться другой графической утилитой — gdebi. Сначала ее нужно установить:
Теперь кликаем правой кнопкой мыши по файлу, выбираем открыть с помощью и gdebi:
Дальше осталось нажать кнопку установить и дождаться завершения установки пакета ubuntu. Программа автоматически установит все зависимости, если есть доступ к сети.
Установка deb из консоли Ubuntu выполняется не намного сложнее. Для этого используется утилита dpkg. Сначала переходим в папку куда был загружен deb пакет:
Затем устанавливаем:
Для этой команды доступны символы сокращений, например, можно написать вот так, чтобы установить все deb пакеты из этой директории:
$ sudo dpkg -i *.deb
Программа не умеет разрешать зависимости, даже если есть доступ к сети, она только устанавливает пакет, поэтому для установки зависимостей после установки deb ubuntu выполните:
$ sudo apt-get -f install
Теперь, когда зависимости были загружены, вы можете запускать и использовать программу.
Это не единственный способ установки пакетов ubuntu через терминал, утилиту gdebi тоже можно запустить таким способом:
Возможно, вы не знали, но apt тоже умеет устанавливать deb пакеты и даже более чем успешно разрешает зависимости. Только утилите нужно передать полный путь к файлу для установки. Если вы находитесь в папке с deb пакетом выполните:
Программа автоматически установит все зависимости и больше ничего не придется выполнять.
How to Install deb Packages on Ubuntu Linux
There are many ways you can install deb packages. Among them, the below list is the best and easy way to follow.
- Download the program and click on it.
- Using gdebi
- – Debian Package Management System
- apt to install packages
1. Double click the downloaded .deb file
This is the easiest and simple way to install a deb package onto the Ubuntu or Debian system. Users don’t need to do anything, download the desired .deb file and double-click it. The application will be opened in the software center and show an Install button. Just click on it, and voila, it’s done.
2. Using gdebi
gdebi is one of the best ways to install deb files on the Ubuntu Linux system. I personally prefer to use this system. gdebi will collect all the necessary dependencies before installing the main .deb file. It will always try to remove the dependency errors while performing deb file installation.
Resource Link: How To Install Software in Ubuntu Linux: A Complete Guide for Newbie
Install gdebi onto your system before you go installing the deb file. gdebi is available for both the ways “Terminal/Shell” and GUI – Graphical User Interface. Installing through the gdebi is efficient and fast compared to the Ubuntu software center.
Installing gdebi
Run the following command into the Terminal to install gdebi.
sudo apt install gdebi-core
Install .deb packages with gdebi
sudo gdebi /path/to/filename.deb
Example:
sudo gdebi google-chrome-stable_current_i386.deb
3. – Debian Package Management System
Installing a deb package through dpkg is a bit for advanced users but the most reliable one.
Install a package
To install a deb file, open the Terminal and run the following command:
sudo dpkg -i .deb
Example:
sudo dpkg -i google-chrome-stable_current_i386.deb
Resolve Dependency Errors
Run the below command if you get any dependency errors. It will fix all the errors.
sudo apt-get install -f
Remove the application
If you want to uninstall a software, run the command into the Terminal.
dpkg -r packagename.deb
To Reconfigure/Repair the deb installation.
sudo dpkg-reconfigure packagename
4. Apt to install packages ( apt-get tool )
There is another way to install deb files on the Ubuntu system that is an apt-get tool.
sudo apt install ./name.deb
( if in current dir) or ()
You must move the deb file into if the Ubuntu system is old enough. The above command will download all the necessary dependencies when running into the Terminal.
Final Thought
Debian or .deb packages are the executable files that can be installed on Ubuntu. If the user wants, they can install any deb files onto the Ubuntu Linux system. Most modern “apt-get” can install the deb packages, but the most reliable and simple way is to follow or gdebi installer.
Создание пакета Geany (A fast and lightweight IDE)
Geany IDE — A fast and lightweight IDE
-
Geany BuildingFromSource
-
PPA for Geany Developers Неофициальная сборка последних версий Geany IDE от Launchpad
$ mkdir -p /home/darkfire/deb/geany $ cd /home/darkfire/deb/geany $ wget http://download.geany.org/geany-0.17.tar.gz $ tar -zxvf geany-0.17.tar.gz $ cd /home/darkfire/deb/geany/geany-0.17
configure
Команда configure запущенная с ключем –help выводит список параметров, которые можно передать ей.
$ ./configure ... checking dependency style of gcc... (cached) gcc3 checking for g++... no checking for c++... no checking for gpp... no checking for aCC... no checking for CC... no checking for cxx... no checking for cc++... no checking for cl.exe... no checking for FCC... no checking for KCC... no checking for RCC... no checking for xlC_r... no checking for xlC... no checking whether we are using the GNU C++ compiler... no checking whether g++ accepts -g... no checking dependency style of g++... none configure: error: No C++ compiler not found. Please install a C++ compiler.
Просматриваем вывод команды, если в конце строки «no» это означает, что в системе нет необходимых для компиляции данной программы вспомогательных программ и библиотек. Вывод малоинформативен -нет явного соответствия между ошибкой и пакетом который требуется до установить.
Зная, что в Ubuntu часто пакеты с библиотеками бывают разбиты на два типа:
- динамическая библиотека, необходимая для работы уже скомпилированных программ;
- пакет с таким же именем и с суффиксом -dev, в котором находяться файлы требуемые для компиляции программ
Устанавливаем требуемые пакеты.
# aptitude install autoconf automake libtool autotools-dev dpkg-dev fakeroot intltool-debian intltool ... Следующие НОВЫЕ пакеты будут установлены: autoconf automake autotools-dev build-essential{a} dpkg-dev g++{a} g++-4.3{a} gettext{a} intltool intltool-debian libltdl7-dev{a} libstdc++6-4.3-dev{a} libtool m4{a} 0 пакетов обновлено, 14 установлено новых, 0 пакетов отмечено для удаления, и 0 пакетов не обновлено. Необходимо получить 10,2MБ архивов. После распаковки 35,9MБ будет занято. Хотите продолжить? [Y/n/?] Y ...
Проверяем. Снова запускаем ./configure.
$ ./configure ... checking pkg-config is at least version 0.9.0... yes checking for GTK... configure: error: Package requirements (gtk+-2.0 >= 2.8.0) were not met: No package 'gtk+-2.0' found Consider adjusting the PKG_CONFIG_PATH environment variable if you installed software in a non-standard prefix. Alternatively, you may set the environment variables GTK_CFLAGS and GTK_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details.
Ошибка. Требует пакет gtk+-2.0. Как показали поиски на английских форумах — пакет все же называется libgtk2.0-dev. Ставим. Как показывает вывод ниже — лучше найти УЖЕ скомпилированный DEB пакет — благо на это есть реальные шансы.
# aptitude install libgtk2.0-dev ... Следующие НОВЫЕ пакеты будут установлены: debhelper{a} html2text{a} libatk1.0-dev{a} libcairo2-dev{a} libdirectfb-dev{a} libdirectfb-extra{a} libexpat1-dev{a} libfontconfig1-dev{a} libfreetype6-dev{a} libglib2.0-dev{a} libgtk2.0-dev libice-dev{a} libjpeg62-dev{a} libmail-sendmail-perl{a} libpango1.0-dev{a} libpixman-1-dev{a} libpng12-dev{a} libpthread-stubs0{a} libpthread-stubs0-dev{a} libsm-dev{a} libsys-hostname-long-perl{a} libsysfs-dev{a} libx11-dev{a} libxau-dev{a} libxcb-render-util0-dev{a} libxcb-render0-dev{a} libxcb1-dev{a} libxcomposite-dev{a} libxcursor-dev{a} libxdamage-dev{a} libxdmcp-dev{a} libxext-dev{a} libxfixes-dev{a} libxft-dev{a} libxi-dev{a} libxinerama-dev{a} libxrandr-dev{a} libxrender-dev{a} po-debconf{a} x11proto-composite-dev{a} x11proto-core-dev{a} x11proto-damage-dev{a} x11proto-fixes-dev{a} x11proto-input-dev{a} x11proto-kb-dev{a} x11proto-randr-dev{a} x11proto-render-dev{a} x11proto-xext-dev{a} x11proto-xinerama-dev{a} xtrans-dev{a} zlib1g-dev{a} 0 пакетов обновлено, 51 установлено новых, 0 пакетов отмечено для удаления, и 0 пакетов не обновлено. Необходимо получить 11,4MБ архивов. После распаковки 39,4MБ будет занято. Хотите продолжить? [Y/n/?] Y
Проверяем. Снова запускаем ./configure. И видим ниже счастье:) Команда выполнилась успешно!!!
$ ./configure ... Install Geany in : /usr/local Using GTK version : 2.16.1 Build with GTK printing support : yes Build with plugin support : yes Use virtual terminal support : yes Use (UNIX domain) socket support : yes Configuration is done OK.
Компилируем в бинарные файлы
$ make
3.11. Поиск программ, установленных в системе Debian
Проблема
Требуется узнать, какие пакеты установлены в системе, к какому пакету относятся те или иные файлы и что находится в отдельных пакетах.
Решение
Воспользуйтесь средствами обработки запросов dpkg.
Следующая команда выводит список всех установленных пакетов и направляет его в файл:
$ dpkg -l | tee dpkglist |
Поиск всех пакетов, удовлетворяющих критерию поиска, и вывод информации об их состоянии:
$ dpkg -l '*gnome*' Desired=Unknown/Install/Remove/Purge/Hold | Status=Not/Installed/Config-files/Unpacked/Failed-config/Half-installed |/ Err?=(none)/Hold/Reinst-required/X=both-problems (Status,Err: uppercase=bad) ||/ Name Version Description +++-============================================================== pn gnome <none> (no description available) un gnome-about <none> (no description available) ii gnome-applets 2.4.2-1 Various applets for GNOME 2 panel rc gnome-bin 1.4.2-18 Miscellaneous binaries used by GNOME |
Поиск установленных пакетов, удовлетворяющих критерию поиска:
$ dpkg -l | grep gnome |
Вывод списка файлов, входящих в пакет:
$ dpkg -L gnome-applets . /usr/share /usr/share/lintian /usr/share/lintian/overrides /usr/share/lintian/overrides/gnome-applets ... |
Следующая команда определяет, к какому пакету относится файл:
$ dpkg -S boing.wav tuxkart-data: /usr/share/games/tuxkart/wavs/boing.wav |
Вывод полной информации о пакете:
$ dpkg -s kpoker Package: kpoker Status: install ok installed Priority: optional Section: games Installed-Size: 428 Maintainer: Daniel Schepler <schepler@debian.org> Source: kdegames Version: 4:3.1.5-1 .... |
Комментарий
Таблица, выводимая командой dpkg -l, выглядит довольно загадочно, поэтому я приведу расшифровку.
$ dpkg -l gnome* Desired=Unknown/Install/Remove/Purge/Hold | Status=Not/Installed/Config-files/Unpacked/Failed-config/Half-installed |/ Err?=(none)/Hold/Reinst-required/X=both-problems (Status,Err: uppercase=bad) ||/ Name Version Description +++-============================================================== pn gnome <none> (no description available) un gnome-about <none> (no description available) ii gnome-applets 2.4.2-1 Various applets for GNOME 2 panel rc gnome-bin 1.4.2-18 Miscellaneous binaries used by GNOME |
В строке pn gnome поднимитесь от буквы p наверх по «стрелке». Она приведет вас к строке Desired=Unknown/Install/Remove/Purge/Hold с расшифровками первого символа (Purge в данном случае).
От следующего столбца, n, стрелка ведет к строке Status. По ней можно определить, что символ n означает Not/Installed.
В третьем столбце отображается код ошибки. В нашем случае он пуст (и хорошо). Как указано в конце строки, любые символы верхнего регистра в столбцах Status и Err ни к чему хорошему не приведут.
Получаем: пакет gnome когда-то был установлен в системе, но потом он был удален.
Код un означает, что пакет никогда не устанавливался.
Код ii означает, что пакет установлен.
Код rc означает, что пакет был установлен, а затем удален, но после него остались конфигурационные файлы. Состав этих файлов определяется легко:
$ dpkg -L gnome-bin /etc/logcheck/ignore.d.server/gnome-bin /etc/logcheck/ignore.d.workstation/gnome-bin |