Linux Mint и его Cinnamon. Очерки применителя - Алексей Федорчук
Шрифт:
Интервал:
Закладка:
$ mint-md5sum opera-stable_26.0.1656.60_amd64.deb
выведет её для пакета opera-stable в таком виде:
О команде search говорилось в очерке про утилиты CLI. А об остальных двух для полноты картины скажу здесь же.
Утилита pastebin предназначена для быстрого размещёния в Сети фрагментов текста, которые почему-либо нежелательно делать доступными каким-либо иным образом. Делается это через сервис, предоставляемый проектом Mint. Так, командная конструкция
$ echo 'Утилита pastebin предназначена для быстрого размещёния в Сети' | pastebin
даст ткакой вывод:
http://paste.linuxmint.com/view/u5i0
То есть введённый фрагмент будет доступен по указанному в выводже адресу (например, через браузер). Правда, русскоязычный текст по умолчанию окажется там в кодировке ISO 8859-5, так что надо озаботься тем, чтобы браузер поддерживал перекодирование страницы на лету.
Ну а утилита highlight обеспечивает подсветку произвольного текстового фрагмента, заданного как её аргумент. Например, командная конструкция
$ echo 'Утилита pastebin предназначена для быстрого размещёния в Сети' | highlight code
на выходе даст подсвеченным фрагмент code:
Теоретически рассуждая, если вывод этой конструкции передать по конвейеру команде pastebin, то и в Сети соответствующий фроагмент будет размещён в «подсвеченном» виде. Однако эксперимент показал, что сервис проекта Mint этого не поддерживает.
Применение
Утилита apt для Mint запускается одноимённой командой CLI с указанием внутренней команды, определяющей цель действия и, в большинстве случаев, аргумента (аргументов), в качестве которых выступает имя пакетов (или имена — их может быть сколько угодно):
$ apt command pkgname1 ... pkgname#
Некоторые часто используемые внутренние команды apt аргументов не требуют.
Полный список внутренних команд apt для Mint можно получить «голой» командой
$ apt
вывод которой выглядит следующим образом:
apt
Usage: apt command [options]
apt help command [options]
Commands:
autoclean - Erase old downloaded archive files
autoremove - Remove automatically all unused packages
build - Build binary or source packages from sources
build-dep - Configure build-dependencies for source packages
changelog - View a package's changelog
check - Verify that there are no broken dependencies
clean - Erase downloaded archive files
contains - List packages containing a file
content - List files contained in a package
deb - Install a .deb package
depends - Show raw dependency information for a package
dist-upgrade - Perform an upgrade, possibly installing and removing packages
download - Download the .deb file for a package
dselect-upgrade - Follow dselect selections
held - List all held packages
help - Show help for a command
hold - Hold a package
install - Install/upgrade packages
policy - Show policy settings
purge - Remove packages and their configuration files
rdepends - Show reverse dependency information for a package
reinstall - Download and (possibly) reinstall a currently installed package
remove - Remove packages
search - Search for a package by name and/or expression
show - Display detailed information about a package
source - Download source archives
sources - Edit /etc/apt/sources.list with nano
unhold - Unhold a package
update - Download lists of new/upgradable packages
upgrade - Perform a safe upgrade
version - Show the installed version of a package
This apt has Super Cow Powers
Здесь для начала следует сказать о внутренних командах version и help. Первая теоретически должны выводить номер текущей версии apt для Mint, но практически не выводит ничего — лишь пустую строку. Команда же help без аргументов выведет список внутренних команд, идентичный приведённому выше. При указании аргумента — любой из внутренних команд она выведет её эквиваленты для apt-cache, apt-get или dpkg. Например:
$ apt help search
"apt search" is equivalent to "aptitude search"
$ apt help install
"apt install" is equivalent to "sudo apt-get install"
$ apt help deb
"apt deb" is equivalent to "sudo dpkg -i"
Внутренние команды apt для Mint можно разделить на три группы, которые предназначены для:
1. получения информации о пакетах;
2. установки и удаления отдельных бинарных пакетов;
3. общего обновления системы
4. работы с пакетами исходных текстов.
Команды первой группы могут быть выполнены обычным пользователем, второй и третьей — требуют прав администратора. Однако для получения их утилита apt для Mint не нуждается в команде sudo, данной явным образом: она автоматически вызывается при попытке исполнения соответствующих внутренних команд. Например:
$ apt install geany
[sudo] password for alv:
Тем не менее, внутренние команды apt для Mint целесообразно рассмотреть по трём указанным группам.
Информация о пакетах
Пакетный менеджмент начинается с поиска нужного пакета, для чего предназначена внутренняя команда search, требующая аргумента в виде ключевого слова. Поиск по ключевому слову осуществляется в именах пакетов и их кратких описаниях (т.н. резюме). Например, команда
$ apt search geany
отыщет одноимённый пакет для установки этого текстового редактора (называемого, однако, «Небольшой и быстрой IDE») и все его плагины:
p geany - Небольшая и быстрая IDE
v geany-abi-69 -
v geany-api-216 -
p geany-common - Небольшая и быстрая IDE — общие файлы
p geany-plugin-addons - Различные дополнительные модули для Geany
p geany-plugin-codenav - Модуль навигации по коду для Geany
...
p geany-plugin-xmlsnippets - XMLSnippets plugin for Geany
p geany-plugins - Набор плагинов для Geany
p geany-plugins-common - Набор плагинов для Geany (переводы)
Важное отличие от аналога — команды apt-cache search: apt search показывает основной пакета (i — установленный, p — не установленный или «чисто» удалённый, и так далее) и дополнительный (A — автоматически установленный, h — с фиксированной версией, и так далее) статусы пакетов.
Внутренняя команда held позволяет отсортировать пакеты с фиксированной версией, то есть те, которые не будут обновляться по команде apt upgrade (о ней буде сказано в следующем разделе).
Подробную информацию об отдельном пакете можно получить с помощью внутренней команды show. Например,
$ apt show geany
выведет следующее:
Пакет: geany
Состояние: не установлен
Версия: 1.23.1+dfsg-1
Приоритет: необязательный
Раздел: universe/devel
Сопровождающий: Ubuntu Developers <[email protected]>
Архитектура: amd64
Размер в распакованном виде: 2671 k
Зависимости: libc6 (>= 2.15), libcairo2 (>= 1.6.0), libgcc1 (>= 1:4.1.1),
libgdk-pixbuf2.0-0 (>= 2.22.0), libglib2.0-0 (>=
2.35.9), libgtk2.0-0 (>= 2.22.0), libpango1.0-0 (>=
1.18.0), libstdc++6 (>= 4.1.1), geany-common (=
1.23.1+dfsg-1)
Пред-зависимости: multiarch-support
Предлагает: libvte9, doc-base
Конфликтует: geany
Повреждает: geany-plugins-common (< 0.21), geany-plugins-common (< 0.21)
Предоставляет: geany-abi-69, geany-api-216
Описание: Небольшая и быстрая IDE
Geany — нетребовательная к ресурсам интегрированная среда разработки программ,
маленькая и быстрая, с небольшим количеством зависимостей от других пакетов.
использует только GTK2, поэтому для запуска Geany необходимы только
runtime-библиотеки GTK2.
The basic features of Geany are:
* syntax highlighting
* code completion
* auto completion of constructs like if, for and while, XML and HTML
* call tips
* folding
* many supported filetypes like C, Java, PHP, HTML, Python, Perl, Pascal
* symbol lists
* embedded terminal emulation
Сайт: http://www.geany.org
А сведения о смене версий пакета получаются с помощью внутренней команды changelog. Для Geany это выглядит так:
geany (1.23.1+dfsg-1) unstable; urgency=low
* [3b1ced4] Imported Upstream version 1.23.1+dfsg
* [b418909] Update debian-branch in gbp.conf
— Chow Loong Jin <[email protected]> Mon, 20 May 2013 00:18:56 +0800
geany (1.23+dfsg-2) unstable; urgency=low
* Upload to unstable, fixes FTBFS (Closes: #707368)
* [a472a80] Enable parallel builds
* [17a6378] No-change bump of Standards-Version to 3.9.4
* [ea78f31] Add README.source describing git branch structure
— Chow Loong Jin <[email protected]> Fri, 10 May 2013 15:27:35 +0800
...
И так далее.
Более подробные, нежели вывод команды show, сведения о зависимостях пакета даёт пара внутренних команд depends и rdepends. Первая выводит полный список пакетов, от которых зависит заданный в качестве её аргумента — жёстких, рекомендуемых, предлагаемых и конфликтующих:
$ apt depends geany
geany
Зависит: libc6
Зависит: libcairo2
Зависит: libgcc1
Зависит: libgdk-pixbuf2.0-0
Зависит: libglib2.0-0
Зависит: libgtk2.0-0
Зависит: libpango1.0-0
Зависит: libstdc++6
Зависит: geany-common
ПредЗависит: multiarch-support
multiarch-support:i386
Предлагает: libvte9
Предлагает: doc-base
Ломает: geany-plugins-common
Ломает: <geany-plugins-common:i386>
Конфликтует: geany:i386
Команда же rdepends решает обратную задачу — выводит список пакетов, зависящих от данного:
$ apt depends geany
geany
Reverse Depends:
geany:i386
geany-plugins-common
geany-plugins
geany-plugin-xmlsnippets
geany-plugin-webhelper