Система

ntfs-3g - это свободный драйвер файловой системы NTFS. Проект стабилен при работе с любыми NTFS разделами (включая запись), имеет большое и активное сообщество разработчиков и лицензируется под GNU General Public License.
scalpel - это средство быстрого восстановления файлов, которое читая из базы данных начало и конец файлов известных форматов, пытается найти их на диске.
sshfs - это файловая система для Linux, используемая для удаленного управления файлами по протоколу SSH таким образом, как будто они находятся на локальном компьютере.
davfs2 - Утилита для монтирования сетевых облачных хранилищ (дисков) по протоколу «WebDAV»
smbfs - Пакет предоставляет утилиты-обёртки для совместимости со старыми инструментами smbfs: smbmount, smbumount и mount.smbfs.
vlan - Управление виаланами
gpm - поддержка мыши в виртуальных консолях Linux.

msttcorefonts — MS Windows шрифты для Debian
xrdp - сервер для Unix-систем, реализованный поверх VNC, и предоставляющий доступ к рабочему столу терминального сервера по протоколу RDP.
rdesktop - открытый клиент для сервера терминалов Windows(RDP)
volti - альтернативный регулятор громкости

smbc или python-smbc - сетевой браузер для самбы
gadmin-samba - лёгкий в использовании инструмент на основе GTK+ для настройки SAMBA и сервера печати.
checkInstall - компьютерная программа для Unix-подобных операционных систем, созданная с целью облегчить установку и удаление программного обеспечения

molly-guard - устанавливает скрипт, который перекрывает существующие команды / reboot / halt / poweroff / coldreboot / pm-hibernate / pm-suspend и первым запускает набор сценариев, которые должны успешно пройти molly-guard, прежде чем запускается настоящая команда.

Графические примочки

compiz mdash; композитный менеджер окон для X Window System, использующий для ускорения 3D графики OpenGL. Он предоставляет множество новых графических эффектов, доступных в любых графических средах X Window, в том числе GNOME и KDE.
conky mdash; программа для системного мониторинга под X Window System.
tilda — всплывающие, наподобе как в играх, окно консоли.
dockbarx awn-applet-dockbarx - интересная графическа тулза


GUI программы

qutim — кроссплатформенный клиент мгновенного обмена сообщениями с открытым исходным кодом, распространяемый по лицензии GNU GPL. Поддержка Jabber, Mail.ru Агент, IRC. Всегда рассматривал его как ближайший аналог QIP
google-chrome-stable — браузер, разрабатываемый компанией Google на основе свободного браузера Chromium . Работает просто, быстро и надежно.
icedove icedove-l10n-ru - версия почтового клиента Thunderbird . Поддерживает различные типы почтовых ящиков (POP, IMAP, Gmail), Предлагает простую организацию писем с помощью меток и виртуальных папок. Дополнительные возможности реализуются установкой расширений.
libreoffice libreoffice-l10n-ru libreoffice-help-ru — свободный независимый офисный пакет с открытым исходным кодом, разрабатываемый как ответвление от разработки OpenOffice.org.
playonlinux mdash; надстройка над Wine, которая позволяет легко устанавливать и использовать в Linux большое количество игр, разработанных для Windows. PlayOnLinux предоставляет возможность использования скриптов для установки Windows-приложений, а также иметь под рукой несколько версий вайна.
doublecmd - это интересный, кроссплатформенный файловый менеджер, похожий на известный многим Total Commander (а так же он поддерживает плагины Total Commander). Из всех извесных мне файловых менеджеров он наиболее близок по к любимому мной и многоуважаемому Total Commander.
sublime-text-dev или sublime-text — кроссплатформенный, написанный с использованием python текстовый редактор и редактор исходных текстов программ. Программа изначально разработана как многофункциональное расширение Vim.
FoxitReader — бесплатное прикладное программное обеспечение, для просмотра электронных документов в стандарте PDF (в репозитории его пакетов нет, поэтому придется найти отдельный deb пакет)
meld — очень полезная программа для наглядного сравнения файлов и катологов в Linux.
gparted — это программа для создания, изменения и форматирования дисковых разделов. GParted позволяет изменять организацию разделов на дисковых устройствах без потери данных.
geany — свободная среда разработки программного обеспечения.
parcellite — многообещаюший менеджер буфера обмена на GTK
terminator — это небольшой проект, представляющий рациональный способ заполнения площади экрана терминалами. Всегда предпочитал его обычным терминалам.
keepassx — отличная программка для хранения паролей и их генерации.
gnome-mplayer или mplayer — это свободный медиаплеер. Программа работает на большинстве современных операционных систем. Простой, функциональный, удобный.
vlc — свободный, кроссплатформенный медиаплеер.
SMplaer — свободный, кроссплатформенный медиаплеер на Qt очень неплох в стабильности и функционале.
avidemux — приложение, предоставляющее возможности для быстрого (и несложного) редактирования видеофайлов. Аналог VirtualDub.

Консоль

debian-keyring debian-archive-keyring GnuPG и ключи разработчиков
arno-iptables-firewall — это скрипт для настройки сетевого экрана (брандмауэра) как для одной так и для нескольких подсетей с поддержкой DSL/ADSL. В отличие от других оболочек к Iptables Arno-iptables-firewall создает и устанавливает параметры безопасности брандмауэра, изменяет таблицы маршрутизации задавая несколько простых вопросов во время настройки.
sshpass — это утилита, очень полезна для выполнения команд на удаленном сервере и применяется в скриптах.
htop — продвинутый монитор процессов, написанный для Linux. Он был задуман заменить стандартную программу top.
iftop mdash; утилита предназначена для мониторинга загрузки канала в реальном времени. По умолчанию программа отображает конечные точки сетевых соединений.
minicom — программа для использования последовательного порта в UNIX-подобных операционных системах
mc mdash; один из файловых менеджеров с текстовым интерфейсом типа Norton Commander для UNIX-подобных операционных систем, а также Microsoft Windows и Windows NT, OS/2, Mac OS X (но не Mac OS 9).
concalc — консольный калькулятор
unrar unzip p7zip — утилиты для разархивирования rar, zip b 7z.
lftp — консольный FTP-клиент. Кроме FTP программа также поддерживает протоколы FTPS, HTTP, HTTPS, HFTP, FISH и SFTP, используемый протокол автоматически определяется из URL-ссылки.
rsync — программа для UNIX-подобных систем, которая выполняет синхронизацию файлов и каталогов в двух местах с минимизированием трафика, используя кодирование данных при необходимости.
xclip выводит содержимое буфера обмена

snmp — простой протокол сетевого управления) — стандартный интернет-протокол для управления устройствами в IP-сетях на основе архитектур UDP/TCP

nmap — свободная утилита, предназначенная для разнообразного настраиваемого сканирования IP-сетей с любым количеством объектов, определения состояния объектов сканируемой сети (портов и соответствующих им служб).

expect — инструмент для автоматизации и тестирования в ОС Unix, написанный Don Libes как расширение к скрипт-языку Tcl, для интерактивных приложений таких, как telnet, ftp, passwd, fsck, rlogin, tip, ssh, и других.

zenity — вывод MesageBox из консоли
ipcalc — калькулятор для расчета адресов в подсети и сетевых масок

libnotify-bin — полезно тем кто пользуется notify-send (всплывающие системные уведомления)
dialog — одна из немногих, помогающих создавать дружелюбные скрипты и программы в консоли
moc — консольный двухпанельный клиент-серверный проигрыватель музыки
git - распределённая система управления версиями файлов.
uni2ascii - Утилита для преобразования URL из формата %-encoded (RFC 2396)
curl — свободная, кроссплатформенная служебная программа командной строки, позволяющая взаимодействовать с множеством различных серверов по множеству различных протоколов с синтаксисом URL.
xmlstarlet - парсер XML
bootlogd - Эта программа ведет лог загрузки, записывая в /var/log/boot то, что мы видим на начальном экране
Iperf — кроссплатформенная консольная клиент-серверная программа — генератор TCP и UDP трафика для тестирования пропускной способности сети.

Разное

xneur - программа для автоматического переключения между раскладками клавиатуры. Очень пригодится тем кто был рабом Punto switcher.

Если вы пользуетесь Debian , то наверняка знаете, что порой может понадобиться самая свежая версия какого-либо компонента. Или та, которой нет в стабильном выпуске, но её добавили в тестируемый. Ставить ради этого другой дистрибутив, в котором свежее ПО доступно всегда, вы наверняка не станете, если уже настроили себе систему и привыкли к ней. Можно собрать нужную вам программу из исходного кода. Но это тоже не всегда может получиться. Программа может не собраться, долго собираться или вообще иметь закрытый исходный код. В таких случаях, можно установить эту программу из тестовой или нестабильной ветки Debian. Делать это нужно правильно. И о том как правильно это сделать и пойдёт речь в статье.

Как известно, Debian существует в 4 ветках (есть ещё 5, но это полуветка для разработчиков): oldstable (предыдущий стабильный выпуск), stable (текущий стабильный выпуск), testing (тестируемый, будущий стабильный) и unstable (также известный как sid, нестабильная ветка, в которой идёт постоянный поток обновлений компонентов). На данный момент, oldstable - это Wheezy , или Debian 7 , stable - Debian 8 Jessie , testing - Debian 9 Stretch , ну и unstable - вечный sid . Также существует репозиторий Backports , в который переносятся свежие версии и некоторые программы, которые достаточно стабильны для stable, но не успели попасть в релиз (или просто могут быть установленны не нарушая работу системы). Но в Backports никогда не прилетят, скажем, новые версии графических окружений. И тут можно прибегнуть к установке оного из тестируемой или нестабильной ветке. Хочу обратить ваше внимание на то, что несмотря на то что это возможно, и есть способ настройки репозиториев, разработчики Debian этого не поощряют. Будьте очень внимательны устанавливая ПО из testing и unstable.

Для того чтобы при установке или обновлении программы из testing/unstable, вся система не превратилась в не пойми что, необходимо настроить приоритеты для пакетов. Более высокий приоритет означает, что пакет не заменится пакетом с низким приоритетом, если это не указать явно. Базовая система должна остаться stable. Для настройки приоритетов, существует файл под названием preferences . Давайте создадим его и впишем туда нужные настройки:

sudo nano /etc/apt/preferences

Package: *
Pin: release a=stable
Pin-Priority: 700

Package: *
Pin: release a=testing
Pin-Priority: 650

Package: *
Pin: release a=unstable
Pin-Priority: 600

Package - на какие пакеты распространяется приоритет. Звёздочка говорит что на все без исключения.
Pin - название ветки дистрибутива.
Pin-priority - собственно, приоритет. Чем он выше - тем жёстче будет закреплена ветка. Приоритет выше 1000 позволит произвести даунгрейд пакетов до той ветки, в которой он установлен. Потому если вы переборщили с экспериментами - выставляйте на stable приоритет 1001 , обновляйте список пакетов и делайте dist-upgrade .

Как мы видим, репозиторий unstable у нас имеет наименьший приоритет. Возможно он вам не понадобится, но включить его нужно по той причине, что бывает программу переместили в testing, а часть её зависимостей осталась в unstable. И программа, естественно, не установится. Ок, приоритеты мы настроили. Теперь нужно подключить эти репозитории:

sudo nano /etc/apt/sources.list

Добавляем в конец следующие строки:

#Testing
deb http://mirror.yandex.ru/debian testing main contrib non-free
deb-src http://mirror.yandex.ru/debian testing main contrib non-free

#Unstable
deb http://mirror.yandex.ru/debian unstable main contrib non-free
deb-src http://mirror.yandex.ru/debian unstable main contrib non-free

sudo apt-get update

Установка программ идёт двумя способами:

sudo apt install -t testing имяпрограммы
sudo apt install имяпрограммы/testing

При первом способе установки, пакетный менеджер попытается обновить все те компоненты, которые нужны для программы. И установит её (разумеется после вашего согласия). При втором способе, пакетный менеджер попытается использовать существующие версии зависимостей. И если они не подойдут - то программу он не установит. Поэтому для более безопасной установки, рекомендуется второй способ. Ещё раз напоминаю, что этим лучше не увлекаться. Но при правильном использовании вы не только сохраните общую стабильность системы, но и получить свежие версии программ. Для более подробной информации по настройкам, наберите в терминале.

Для установки и распространения Debian-основанные дистрибутивы используют файлы с расширением *.deb. Но, как правило, программы распространяются не в виде отдельных пакетов, а в виде репозиториев - хранилищ большого числа файлов. Для поиска и установки пакетов существуют различные менеджеры. Польза такого подхода обусловлена тем, что очень редко программы могут работать сами по себе, без дополнительных библиотек, и для корректной работы системы менеджеры отслеживают зависимости и автоматически добавляют их в список установки.


Synaptic

Определенно это лучший графический менеджер пакетов в Debian.

Тут можно делать практически всё, что может понадобиться: как устанавливать, так и удалять пакеты, добавлять различные репозитории, включая диски.

Правда, он не является самостоятельной программой, так как для своей работы использует apt.


APT

Набор консольных утилит для работы с репозиториями. Вообще, консоль частенько бывает удобнее, чем оконный режим. Особенно если ты знаешь, что конкретно тебе требуется. Проще сразу написать что-то вроде apt-get install vlc, чем запускать синаптик, в поиск вбивать тот же vlc, потом его отмечать и жать "применить". А вообще вот самые используемые случаи apt:

# apt-get update - получить обновлённые списки пакетов с сервера;

# apt-cdrom add - добавить диск в список репозиториев;

# apt-get install package_name - установить/обновить пакет;

# apt-get upgrade - обновить пакеты, установленные в систему;

# apt-get remove package_name - удалить пакет, установленный в систему (файлы конфигурации остаются!);

# apt-get purge package_name - удалить пакет, установленный в систему, с удалением файлов конфигурации;

$ apt-cache search package_name - поиск пакета. Выдаёт довольно большой список (так как ищет в имени и описании), если надо искать более строго, то можно поступать следующим образом (на примере mplayer);

$ apt-cache search mplayer | grep mplayer - в список попадают только те пакеты, где в имени или кратком описании встречается "mplayer".


Aptitude

Имеет даже псевдографический интерфейс, который можно увидеть, если запускать без параметров.

Наиболее часто используемые клавиши в таком режиме:

"/" - поиск по имени пакета;

"n" - перейти к следующему пакету, удовлетворяющему условиям поиска;

"+" - установить пакет;

"-" - удалить пакет, оставив конфиги;

"_" - удалить пакет вместе с конфигами (purge);

"g" - перейти к следующему шагу работы с пакетами (установка/удаление);

"q" - возврат или выход.

Кроме того, aptitude можно использовать прямо из консоли подобно apt. Вот некоторые его параметры:

download - просто скачать нужный пакет;

install, remove, search, upgrade, update, purge - аналогично apt;

markauto/unmarkauto - поставить/снять отметку "установлено автоматически";

reinstall - переустановить пакет.

Небольшое замечание по использованию aptitude. Aptitude рекомендуется к использованию (и в инсталляторе используется именно он) - у него более интеллектуальный механизм решения проблем с зависимостями (в крайнем случае, он позволяет разобраться с ними вручную). Особенно это заметно при крупных обновлениях системы. В таких случаях apt даже может разрушить систему.


Классический способ установки (сборка из тарболов)

Исходные файлы представляют собой архивированные исходные тексты и имеют следующий вид:

name.tar.gz (иногда.tgz)

Сначала необходимо распаковать эти архивы. Это можно сделать при помощи какого-либо графического приложения, а можно и из консоли:

$ tar -xzf name.tar.gz

$ tar -xjf name.tar.bz2

После этого переходим в каталог с распакованными файлами:

Этот скрипт проверяет все зависимости и настраивает компилятор (и создает Makefile). При ошибке выдаётся сообщение об отсутствующих пакетах, которые надо поставить (обычно необходимо установить пакеты, название которых заканчивается на -dev).

Примечание. По умолчанию обычно не ставятся пакеты, необходимые для компиляции. Для того, чтобы всё работало, надо установить пакет build-essential:

# aptitude install build-essential

Если у вас всё сконфигурировалось нормально, то можно запускать компилятор:

Ждём. Процесс сборки может быть долгим (для некоторых приложений - несколько часов, особенно, если у вас слабый процессор). По окончанию, если не появилось каких-нибудь сообщений об ошибке, можно устанавливать то, что у нас получилось. Обычно это делается следующей командой:

Но в таком случае ваш пакет не будет отображаться в менеджерах. Для решения этой задачи нужно самостоятельно собрать deb-файл. Конечно, можно сделать это вручную, но можно и воспользоваться утилитой checkinstall, которая сделает всё сама - она и соберёт, и установит пакет (в этом случае не надо запускать make install).

# checkinstall -y

Ключ -y мы задали для того, чтобы нам не задавали никаких вопросов.

Примечание. Если вы ставите свежую версию пакета, установленного в системе, то стоит его предварительно удалить, иначе checkinstall выдаст ошибку при установке пакета.


Другие варианты установки

Если вам нужно поставить отдельный пакет не из репозитория (что не рекомендуется), то можно воспользоваться следующей командой.

# dpkg -i package.deb

Осторожнее с такой установкой! dpkg проверяет все зависимости после того, как скопируются все файлы. В случае ошибки корректность работы не гарантируется.

Иногда приходится устанавливать файлы формата rpm. Это не родные дебиановские файлы, поэтому гарантий корректной работы ещё меньше, чем в предыдущем случае (и не думайте ставить что-то системное таким образом!). Но можно поставить программу alien, которая пересоберёт deb-пакет, после чего его можно устанавливать как показано выше.

# aptitude install alien

Ну и вообще редкий случай - когда программы снабжаются собственным инсталлятором. Например, Opera имеет такой вариант установки. Как правило, достаточно просто его запустить, и он сам всё копирует. Но в таком случае ничего не будет отображаться в менеджерах.

Ну вот и всё. Теперь можно и поэкспериментировать с системой, посмотреть, что же у нас есть в дистрибутиве. Всё-таки Debian - огромное поле для экспериментов, и из него можно сделать всё, что угодно.

Для установки ПО в Debian чаще всего используются двоичные (binary) пакеты — файлы с расширением deb . DEB пакет обычно содержит исполняемые файлы, файлы настроек, справочные страницы в форматах man и информацию о необходимых для его работы зависимостях. Для распаковки deb пакетов можно использовать утилиту dpkg .

При установке программного обеспечения система управления пакетами проверяет и при необходимости устанавливает «зависимости» (dependencies), которые подобраны создателями пакета. Эти зависимости указаны в файле control, имеющемся в каждом пакете.

В Debian для управления пакетами имеется множество средств, от программ с графическими или текстовыми интерфейсами, до низкоуровневых утилит установки пакетов. Корректная работа всех доступных инструментов зависит от низкоуровневых утилит, и все они представлены здесь в порядке уменьшения уровня сложности.

Важно понимать, что высокоуровневые инструменты управления пакетами, такие как aptitude или dselect , для управления пакетами используют apt , который, в свою очередь, использует dpkg .

Подробнее об инструментах управления пакетами Debian написано в Chapter 2. Debian package management справочнике Debian .

8.1.1 dpkg

Это основная программа управления пакетами. dpkg может вызываться с многими параметрами. Наиболее часто используемые из них:

  • Показать список всех параметров:
    dpkg —help
  • Показать управляющий файл (и другую информацию) для указанного пакета:
    dpkg —info foo_VVV-RRR.deb
  • Установить пакет на жёсткий диск (т. е. распаковать и настроить):
    dpkg —install foo_VVV-RRR.deb
  • Распаковать архив Debian на жёсткий диск (но не настраивать):
    dpkg —unpack foo_VVV-RRR.deb . Учтите, что в результате данной операции пакет не обязан быть в рабочем состоянии; для правильной работы может потребоваться внесение изменений в некоторые файлы. Данная команда удаляет любую ранее установленную версию программы и запускает сценарий preinst указанного пакета (см. ).
  • Настроить пакет, который был распакован ранее:
    dpkg —configure foo . Кроме всего прочего, эта команда запускает сценарий postinst указанного пакета (см. Зачем нужны сценарии preinst, postinst, prerm и postrm?, раздел 7.6). Она также обновляет файлы, перечисленные в

    conffiles . Обратите внимание, что в качестве аргумента для параметра configure указывается имя пакета (т. е. foo), а не имя файла-архива Debian (т. е. foo_VVV-RRR.deb).

  • Извлечь единственный файл с именем «blurf» (или группу файлов с именами по шаблону «blurf*») из архива Debian:
    dpkg —fsys-tarfile foo_VVV-RRR.deb | tar -xf — blurf*
  • Удалить пакет (но не его файлы настроек):
    dpkg —remove foo
  • Удалить пакет (вместе с файлами настроек):
    dpkg —purge foo
  • Вывести состояние установки пакетов, содержащих в имени строку (или регулярное выражение) «foo*»:
    dpkg —list ‘foo*’

8.1.2 APT

APT (Advanced Package Tool ) - расшифровывается как усовершенствованный инструмент управления пакетами , в него входит программа apt-get . Эта программа позволяет легко получать и устанавливать из командной строки пакеты из разных источников. В отличие от dpkg , программа apt-get не понимает файлы.deb, она работает с именами пакетов, и может устанавливать архивы.deb только из источников, указанных в файле /etc/apt/sources.list . После скачивания архивов.deb команда apt-get запускает dpkg ..

Часто используемые команды apt-get:

  • Обновить список пакетов, имеющихся в источниках: apt-get update

    (вы должны регулярно запускать эту команду для обновления списка пакетов)

  • Обновить все пакеты в системе (без установки дополнительных пакетов или удаления пакетов): apt-get upgrade
  • Установить пакет foo и все его зависимости: apt-get install foo
  • Удалить пакет из системы: apt-get remove foo
  • Удалить из системы пакет и все его файлы настроек: apt-get --purge remove foo
  • Обновить все установленные в системе пакеты с установкой или удалением дополнительных пакетов, если это потребуется для обновления какого-то пакета: apt-get dist-upgrade

    upgrade оставит старую установленную версию пакета, если для разрешения новых зависимостей при обновлении потребуется установка дополнительных пакетов. Команда

    dist-upgrade менее консервативна.)

Учтите, что для выполнения каких бы то ни было команд для изменения пакетов в системе вам нужно иметь права суперпользователя.

Обратите внимание, что в настоящее время apt-get по умолчанию устанавливает рекомендуемые пакеты, и эта программа является предпочтительной для управления пакетами из консоли при выполнении установки или больших обновлений системы вследствие её ошибкоустойчивости.

В комплект инструментов apt входит также программа для обработки запросов по списку пакетов apt-cache . Её можно использовать для поиска пакетов, имеющих определённую функциональность, с помощью простых текстовых запросов или регулярных выражений, а также для получения списка зависимостей из системы управления пакетами. Часто используемые команды apt-cache:

  • Найти пакеты, содержащие в своём описании слово: apt-cache search слово
  • Показать подробную информацию о пакете: apt-cache show пакет
  • Показать зависимости пакета: apt-cache depends пакет
  • Показать подробную информацию о доступных версиях пакета и о пакетах, от него зависящих (об обратных зависимостях пакета): apt-cache showpkg пакет

Дополнительную информацию можно найти в справочных страницах apt-get(8) , sources.list(5) из пакета apt и в файле /usr/share/doc/apt-doc/guide.html/index.html из пакета apt-doc .

8.1.3 aptitude

aptitude - это пакетный менеджер для систем Debian GNU/Linux, предоставляющий пользовательский интерфейс для инфраструктуры управления пакетами apt. aptitude имеет текстовый интерфейс, написанный с использованием библиотеки curses, позволяет удобно и быстро выполнять задачи управления пакетами.

Помимо функциональности dselect и apt-get , aptitude реализует много других дополнительных возможностей, которых нет ни в одной из этих программ:

  • обеспечивает лёгкий доступ ко всем версиям пакета;
  • позволяет легко отслеживать устаревшее ПО, занося его в «список устаревших пакетов и пакетов, созданных локально»;
  • включает достаточно мощную систему поиска и ограничения отображаемых пакетов. Пользователи, знакомые с mutt , освоятся быстро, так как синтаксис регулярных выражений был навеян этой программой;
  • можно использовать для установки заранее сформированных наборов для определённых задач. Подробности см. вtasksel, раздел 8.1.5 ;
  • в полноэкранном режиме имеет встроенную функциональность команды su и может запускаться от обычного пользователя. Когда действительно понадобятся права администратора, вызовет su (и, если нужно, запросит пароль суперпользователя).

С aptitude можно работать, используя визуальный интерфейс (просто запустить

aptitude), или непосредственно из командной строки. Используемый синтаксис командной строки очень похож на синтаксис apt-get . Например, для установки пакета foo , можно выполнить

aptitude install foo .

Заметим, что aptitude является предпочтительной программой для ежедневного управления пакетами из консоли.

Более подробную информацию можно найти в справочной странице aptitude(8) и в пакете aptitude-doc .

8.1.4 synaptic

8.1.5 tasksel

Иногда бывает трудно найти подходящий комплект пакетов для выполнения определённой задачи. Разработчики Debian определили

задачи, представляющие собой наборы из нескольких пакетов Debian, предназначенных для определённой деятельности. Задачи можно устанавливать с помощью программы tasksel или aptitude .

Обычно программа установки Debian автоматически устанавливает задачу создания стандартной системы и окружения рабочего стола. Тип устанавливаемого окружения рабочего стола зависит от используемого носителя CD/DVD, как правило это рабочий стол GNOME (задача

gnome-desktop). Также, в зависимости от ваших ответов во время установки, могут быть автоматически установлены другие задачи. Например, если вы выбрали какой-то язык, то также автоматически будет установлена задача, связанная с ним, и если программа установки обнаружит, что установка происходит на переносном компьютере, то также автоматически будет установлена задача

для ноутбука.

8.1.6 Другие инструменты управления пакетами

8.1.6.1 dselect

Основные возможности dselect:

  • помогает пользователю выбрать пакеты для удаления или установки, обеспечивает, что устанавливаемые пакеты не будут конфликтовать с другими, и что для каждого пакета будут установлены все пакеты, необходимые для его правильной работы;
  • предупреждает пользователя о несогласованности или несовместимости их выбора;
  • определяет правильную последовательность установки пакетов;
  • автоматически выполняет установку или удаление;
  • помогает пользователю пройти процесс настройки каждого из пакетов.

После запуска dselect показывает пользователю меню из 7 пунктов, каждый из которых выполняет определённое действие. Пользователь может выбрать одно из действий, перемещая с помощью клавиш со стрелками полосу подсветки, а затем нажав клавишу для выбора выделенного действия.

Метод (Access) или

Выбрать (Select) , то dselect просто продолжит выполнение указанного действия. Например, если пользователь выбрал действие

Удалить (Remove) , то dselect выполнит удаление всех файлов, помеченных для удаления пользователем, которые он выбрал в меню

Выбрать (Select) ранее.

Пункты меню

Метод (Access) и

Выбрать (Select) позволяют войти в дополнительные меню. В обоих случаях, меню представляют собой экран, разделённый надвое; в верхней части представлен список выбираемых пунктов, в нижней части выводится описание («справка») по каждому пункту.

Доступна подробная справка; к ней можно обратиться в любой момент, нажав клавишу «?».

Порядок представления действий в первом меню dselect соответствует тому порядку, в котором пользователь обычно выполняет действия для установки пакетов. Однако, любое действие из главного меню пользователь может выбирать как угодно часто (или совсем не выбирать - в зависимости от того, что он хочет сделать).

  • Начните с выбора метода доступа (Access Method) . Здесь выбирается способ, с помощью которого пользователь получает доступ к пакетам Debian; например, у некоторых есть компакт-диски с пакетами Debian, другие же скачивают эти пакеты по FTP. Выбранный «метод доступа» сохраняется и после выхода из dselect , поэтому, если он не изменился, то нет необходимости вызывать этот пункт меню каждый раз.
  • Затем обновите (Update) список доступных пакетов. Для этого dselect читает файл «Packages.gz», который находится в верхнем уровне дерева каталогов, в котором хранятся пакеты Debian (если его там нет, dselect предложит его создать).
  • Выберите (Select) нужные пакеты для установки в систему. После выбора данного пункта меню, пользователю будет показан экран помощи (если в командной строке не указан параметр «—expert»). После выхода из экрана помощи, будет показано разделённое меню для выбора устанавливаемых (или удаляемых) пакетов.Верхняя часть экрана представляет собой относительно узкое окно со списком 29000 пакетов Debian; нижняя часть экрана содержит описание пакета или группы пакетов, которые выделены выше.Для указания пакета или группы, над которым будет совершаться операция, следует навести подсветку на название пакета или метку группы. После этого можно выбрать требуемую операцию; Для установки: нажмите клавишу «+». Для удаления: пакеты можно удалить двумя способами.
    • Удалить (removed): эта команда удаляет большинство файлов принадлежащих пакету, но оставляет файлы, помеченные как настроечные (см. Зачем нужен файл conffile?, раздел 7.5) и информацию о настройке пакета. Выполняется нажатием клавиши «-».
    • Вычистить (purged): команда удаляет все файлы пакета. Выполняется нажатием клавиши «_».

    Заметим, что невозможно удалить «все пакеты». Если вы попытаетесь это сделать, то система будет сокращена до первоначально установленных базовых пакетов.

    Для «фиксации» Фиксация выполняется нажатием «=», и указывает dselect не выполнять обновление пакета, даже если установленная версия устарела по сравнению с той, что имеется в используемом вами хранилище пакетов Debian (указанном через метод доступа (Access Method) , и инициализируемом при выполненииобновления (Update) ).

    Если пакет зафиксирован, то вернуть его в нормальное состояние можно, нажав «:». Это указывает dselect , что пакет может быть обновлён, если доступна более новая версия. Такая настройка используется по умолчанию.

    Вы можете выбирать различный порядок показа пакетов, используя клавишу «o» для переключения между режимами сортировки. Изначально пакеты отсортированы по приоритету; в пределах каждого приоритета пакеты представлены в порядке появления в каталоге (также называемого разделом), в котором они хранятся. При задании такого порядка сортировки, сначала могут отображаться пакеты из раздела A (как пример), потом какие-то из раздела B, а за ними ещё пакеты (с меньшим приоритетом) из раздела A.

    Также можно получить описание значений меток в верхней части экрана, нажав клавишу «v». Данное действие увеличивает объём выводимого текста, и он выходит за правую границу экрана. Для прокрутки текста можно пользоваться клавишами со стрелками вправо и влево.

    Если вы выбрали пакет для установки или удаления, например, package/foo.deb , и этот пакет зависит от других пакетов (или рекомендует их), например, package/blurf.deb , то dselect выведет дополнительный экран, подобный основному экрану выбора. Там среди пакетов, относящихся к данному, вы сможете выбрать те, что следует установить. Вы можете принять предлагаемый вариант или отказаться от него. В последнем случае следует нажать Shift-D; для возврата к предлагаемому варианту нажмите Shift-U. В любом случае, свой выбор можно сохранить нажатием Shift-Q.

  • Возвратившись после выбора пакетов в главное меню, вы можете выбрать «Установить» (Install) для установки и настройки выбранных пакетов. Если вы отметили пакеты для удаления, то можете выбрать пункт «Удалить» (Remove). В любой момент времени можно выбрать пункт «Выход» (Quit) для выхода из dselect; при этом выбор пакетов, отмеченных для установки и удаления, dselect сохранит.

8.1.6.2 dpkg-deb

Данная программа позволяет манипулировать файлами-архивами Debian (

Deb файлами). Часто используемые команды:

  • Вывести список допустимых параметров:
    dpkg-deb —help
  • Определить, какие файлы содержатся в файле-архиве Debian:
    dpkg-deb —contents foo_VVV-RRR.deb)
  • Извлечь файлы из указанного архива Debian в определённый пользователем каталог:
    dpkg-deb —extract foo_VVV-RRR.deb tmp извлечёт все файлы из

    foo_VVV-RRR.deb в каталог

    tmp/ . Это удобно для просмотра содержимого пакета в отдельном каталоге без его установки в основное дерево каталогов.

  • Извлечь из пакета файлы с управляющей информацией:
    dpkg-deb —control foo_VVV-RRR.deb tmp .

Учтите, что любые пакеты, просто распакованные командой

dpkg-deb —extract , будут установлены некорректно, для установки следует использовать

dpkg —install .

Дополнительную информацию можно найти в справочной странице dpkg-deb(1) .

8.1.6.3 dpkg-split

Эта программа делит большие пакеты на файлы меньшего размера (например, для записи на дискеты), а также может использоваться для объединения набора разделённых файлов обратно в один файл. Она может использоваться только в системах Debian (т. е. в системах, содержащих пакет dpkg), т. к. вызывает программу

dpkg-deb для разделения файла пакета на отдельные компоненты.

Например, для того чтобы разделить большой.deb файл на N частей, нужно:

  • Выполнить команду
    dpkg-split —split foo.deb . В результате в текущем каталоге получится N файлов, приблизительно по 460 Кбайт каждый.
  • Скопировать эти N файлов на дискеты.
  • Скопировать содержимое дискет на жёсткий диск другой машины.
  • Объединить эти части файлов вместе командой
    dpkg-split —join «foo*» .

8.2 Говорят, что Debian способен обновить работающую программу; как это делается?

Ядро (файловая система) в системах Debian GNU/Linux поддерживает замену файлов, даже когда они используются.

Мы также предоставляем программу start-stop-daemon , которая используется для запуска служб при загрузке компьютера или их останова при изменении уровня выполнения (например, при переключении из многопользовательского в однопользовательский или для выключения компьютера). Эта же программа используется сценариями установки при установке нового пакета со службой, для остановки работающей службы и её перезапуска при необходимости.

8.3 Как узнать, какие пакеты установлены в системе Debian?

Чтобы получить список всех установленных пакетов, выполните команду

Dpkg --list

Эта команда выведет для каждого пакета однострочную сводку, включающую два символа состояния (объясняемые в заголовке), имя пакета, установленную версию и краткое описание.

Чтобы узнать состояние пакетов, имена которых начинаются с «foo», выполните команду:

Dpkg --list "foo*"

Чтобы получить более подробный отчёт о состоянии определённого пакета, выполните команду:

Dpkg --status имя_пакета

8.4 Как посмотреть список файлов установленного пакета?

Чтобы вывести список файлов установленного пакета

foo , выполните команду

Dpkg --listfiles foo

Учтите, что файлы, созданные сценариями установки, не отображаются.

8.5 Как определить пакет, которому принадлежит определённый файл?

Чтобы определить, в каком пакете содержится файл с именем

foo , выполните одну из следующих команд:

  • dpkg —search имя_файла Эта команда ищет

    имя_файла в установленных пакетах. (Это, в настоящий момент, эквивалентно поиску всех файлов с расширением

    List в каталоге

    /var/lib/dpkg/info/ и выводу имён всех пакетов, которые содержат заданное имя файла и отклонения (diversions).)

    Более быстрая альтернатива этому - программа dlocate .

    Dlocate -S имя_файла

  • zgrep foo Contents-ARCH.gz Эта команда ищет файлы, содержащие в своих полных именах путей подстроку

    foo . Файлы

    Contents-ARCH.gz (где ARCH представляет нужную архитектуру) расположены в основных каталогах пакетов (main, non-free, contrib) на FTP-сайте Debian (то есть, в

    /debian/dists/wheezy). Файл

    Contents относится только к тем пакетам, что расположены в структуре подкаталогов того же каталога, где находится и он сам. Поэтому, чтобы найти пакет, содержащий файл

    foo , пользователю нужно искать более чем в одном файле

    Преимущество этого метода над

    dpkg —search состоит в том, что будут найденыфайлы в тех пакетах, которые могут быть не установлены в вашей системе.

  • apt-file search foo Если вы установите пакет apt-file , то приведённая выше команда выполнит поиск файлов, содержащих в своих полных путях подстроку или регулярное выражение

    foo . Преимущество этой команды перед приведёнными ранее в том, что вам не нужно будет получать файлы

    Contents-ARCH.gz , так как это будет сделано автоматически для всех источников, описанных в /etc/apt/sources.list , при запуске (с правами суперпользователя) команды

    apt-file update .

8.6 Почему при удалении «foo» не удаляется «foo-data»? Как вычистить старые неиспользуемые пакеты библиотек?

Некоторые пакеты разделены на программы («foo») и данные («foo-data») (или на «foo» и «foo-doc»). Так в Debian сделано для многих игр, мультимедийных приложений и словарей, и объясняется это тем, что некоторым пользователям может быть нужно получить только данные без установки программ, или эти программы могут работать без данных, что делает их установку необязательной.

Подобное относится и к библиотекам: обычно они устанавливаются, так как пакеты приложений зависят от них. Когда пакет приложения вычищается, пакет библиотеки может остаться в системе. Или когда пакет приложения больше не зависит, скажем, от libdb4.2, а зависит от libdb4.3, то пакет libdb4.2 может остаться в системе при обновлении пакета приложения.

В таких случаях «foo-data» не зависит от «foo», поэтому при удалении пакета «foo» большинство инструментов управления пакетами не станет удалять его автоматически. То же самое относится и к пакетам библиотек. Это необходимо для избежания циклических зависимостей. Тем не менее, если для управления пакетами вы используете программу aptitude (см. aptitude, раздел 8.1.3), то она отслеживает автоматически устанавливаемые пакеты и удаляет их, когда в системе не остаётся пакетов, от них зависящих.

Каждому пользователю ОС Linux, да и любых других операционных систем приходится сталкиваться с установкой дополнительных программ на свой компьютер. Если в Windows для этого существует специальный файл (setup.exe), который пошагово проведет вас по всем этапам и установит программу, то в Linux дела с этим обстоят немного по другому, но все равно с небольшим опытом это делается очень просто. Довольно часто пользователи (особенно новички) спрашивают: Как устанавливать программы в Linux? Постараюсь ответить на этот вопрос.

В мире Linux существует несколько типов установочных пакетов, и каждый дистрибутив имеет свой собственный, предпочтительный формат пакетов. Стандартной системой установки для Linux, является RPM, разработанной компанией Red Hat и используется в основной в дистрибутивах Fedora, Mandriva, Red Hat и Suse. Файл пакета RPM обычно имеет название имя_программы-версия.rpm .

Еще одним очень популярным форматом пакетов является DEB. Который, как не сложно догадаться используется в системах Debian GNU/Linux, и на ее основе, в том числе Ubuntu, Knoppix и Mepis. Файл пакета DEB обычно имеет название имя_программы-версия.deb .

Ну и наконец архивы, так называемые тарболы (Tar Balls). Как правило имеют расширение.tar , .tar.gz , .tgz. Которые сначала необходимо распаковать, а уже потом устанавливать или компилировать.

Все действия по установке программ необходимо выполнять под суперпользователем!

Кстати, если вам нужен виртуальный выделенный сервер или обычный хостинг по низким ценам, с отличным аптаймом и дружественной техподдержкой, то смело обращайтесь к этим ребятам , советую!

Установка программ на Debian, Ubuntu

Для работы с DEB пакетами существует множество инструментов, но пожалуй самый простой и часто используемый, это apt-get , входящий в стандартный набор инструментов. apt-get позволяет не только с легкостью устанавливать новые пакеты в систему, но и показывать какие пакеты доступны для установки и скачивать их с интернета в случае необходимости. Для установки приложения , введите в командную строку:

Apt-get install имя_пакета

Для удаления:

Apt-get remove имя_пакета

Несмотря на то, что содержимое пакетов может хранится на сервере в интернете или где нибудь на диске, APT хранит локальную базу данных со списком всех доступных для установки пакетов и ссылок где их брать. Эту базу необходимо периодически обновлять. Для обновления базы APT используется команда:

Apt-get update

Очень часто программы изменяются (выходят обновления, патчи, системы безопасности и т.д.), можно также использовать APT для обновления устаревший пакетов (программ) в системе. Для обновления нужно сначала обновить список пакетов, а потом уже установить все обновления. Для этого выполняется следующая команда, которая сразу сделает все необходимое:

Apt-get update; apt-get upgrade

Установка программ на Fedora, Red Hat

Для пакетов RPM есть замечательная утилита yum , которая делает примерно тоже самое, что и apt-get делает для пакетов Debian. Как и apt-get, yum позволяет загрузить и установить пакет из настроенного хранилища (репозитория):

Yum install имя_пакета

Удалить программу также легко и просто:

Yum remove имя_пакета

yum не сохраняет локальную базу данных списка пакетов, поэтому нет необходимости постоянно ее обновлять. Для установки всех доступных обновлений и патчей достаточно прописать команду:

Yum update

или же выбрать определенную программу для обновления:

Yum update имя_пакета

Установка программ в Mandriva

Mandriva Linux (бывший Mandrake и Connectiva) имеет свой набор инструментов для работы с пакетами установки, называется он urpmi . Для установки программ необходимо ввести:

Urpmi имя_пакета

Для удаления:

Urpme имя_пакета

Для обновления локальной базы данных списка пакетов:

Urpmi.update -a

Для установки обновлений:

Urpmi --auto-select

Установка программ из архивов (тарболов)

Дистрибутив с программой, представляет из себя архив с кучей файлов и обычно имеет расширение.tar , .tar.gz , .bz, .tgz ну или что то похожее.

Для архивов сжатых с помощью GZIP (gz, gz2 и т.д.) выполняем:

Tar -xvzf имя_файла

Для архивов сжатых с помощью BZIP (bz, bz2 и т.д.) выполняем:

Tar -xvjf имя_файла

Команды Tar:

  • x — извлечь файлы из архива;
  • v — подробный вывод информации на экран;
  • f — Обязательная опция. Если не указать, Tar будет пытаться использовать магнитную ленту вместо файла;
  • z — обработать архив сжатый gzip’ом;
  • j — обработать архив сжатый bzip’ом.

После выполнения, будет создана папка с именем, идентичным названию пакета.

Cd имя_папки

Далее все зависит от того, как была собрана программа, в виде исполняемого файла, или в исходном коде, который сначала необходимо скомпилировать и лишь потом устанавливать. В любом случае для начала лучше прочитать инструкцию, которая должна присутствовать в распакованном архиве и, как правило, называется README, или что то похожее.

Если программа собрана в виде исполняемого файла, то в папке будет находиться файл, с расширением.sh, обычно он так и называется install.sh. Его достаточно просто запустить на исполнение:

./install.sh

Если же программа представлено в исходном коде, выполняем следующие команды:

./configure make make install

После установки делаем:

Make clean

Все, как ведите ничего сложного в установке программ в Linux нет.