200 лучших программ для Linux
Шрифт:
Для работы с deb-пакетами используется утилита dpkg, основные параметры которой практически совпадают с rpm. Например, для установки deb-пакета следует выполнить команду dpkg –i package_name.deb, для удаления пакета dpkg вызывается с ключом –r (или –remove), получить список установленных пакетов поможет ключ –l (–list), ключи –force и –ignore-depends помогут проигнорировать проблемы, возникшие при установке или удалении пакета. В дистрибутиве Kubuntu такой пакет можно установить из контекстного меню файлового менеджера Konqueror, выполнив команду Kubuntu Package Menu -> Install Package (Меню пакета Kubuntu -> Установить пакет) (рис. 1.3).
Рис. 1.3. Установка
В составе Kubuntu есть графическая утилита gdebi, позволяющая устанавливать отдельные пакеты. Все просто, хотя не совсем удобно, так как если пакет требует для работы других пакетов, то их также придется предварительно скачать и установить одним списком, а таких пакетов может быть десяток, которые в свою очередь, потребуют еще несколько. В таком случае установка крайне неудобна. Кроме того, искать их по всем сайтам Интернета также непросто, поэтому разработчики собрали все пакеты в одном месте, а специальные программы отслеживают зависимости, поэтому установка приложений в Linux даже проще, чем в Windows. Инсталляция индивидуальных пакетов сегодня применяется в тех случаях, когда нужного пакета нет в репозитарии, а также для экономии трафика (когда необходимый пакет уже есть, его незачем скачивать повторно).
В последнее время наибольшее распространение получили системы управления пакетами, которые обеспечивают пользователя единым интерфейсом для поиска, установки, обновления и удаления. Наиболее известным является APT. Появившийся сначала в дистрибутиве Debian и изначально рассчитанный на работу с пакетами в формате deb, он быстро стал универсальным средством управления программами, в том числе и с пакетами в других форматах rpm (в дистрибутивах ALTLinux и Connectiva). Порт APT для работы с tgz-пакетами Slackware называется slapt-get и сегодня имеет несколько графических надстроек вроде Gslapt (рис. 1.4), хотя есть и другие варианты – swaret или slackpkg.
Рис. 1.4. Gslapt – графический интерфейс к slapt-get
Менее распространены другие системы управления пакетами – urpmi (Mandriva) и yum (Red Hat/Fedora и ASPlinux). Они ориентированы на работу с rpm-пакетами и широкого распространения не получили. Подробно рассматриваться эти системы не будут, тем более что после установки дистрибутива они, как правило, готовы к работе, а пользователю предоставлен понятный графический интерфейс. Например, программа установки приложений в дистрибутиве Mandriva выглядит так (рис. 1.5).
Рис. 1.5. Установка приложений в Mandriva
Так же просто устанавливаются приложения и в дистрибутивах RedHat/Fedora/ASPLinux (рис. 1.6).
Рис. 1.6. Менеджер пакетов в дистрибутиве Fedora
По причине большей распространенности и так как в комплекте данной книги идет дистрибутив Kubuntu, в котором для установки приложений используется APT, более подробно остановимся на работе с этой системой.
Все, что будет описано в данном разделе, практически полностью действительно и для других систем, использующих APT, – Debian, MEPIS, Linspire/Freespire, ALTLinux и клонов APT вроде slapt-get.
Описание репозитариев. Пакеты в репозитарии структурированы по назначению, платформе и прочим характеристикам. Список известных дистрибутиву репозитариев приведен в файле /etc/apt/sources.list. Заглянем внутрь (рис. 1.7).
Рис. 1.7. Список репозитариев, выведенный утилитой Synaptic
$ cat /etc/apt/sources.list
#deb cdrom:[Kubuntu 7.04 _Feisty Fawn_ – Beta i386 (20070322.1)]/ feisty main restricted
debfeisty main restricted
deb-srcfeisty main restricted
debfeisty-updates main restricted
debfeisty universe multiverse
debfeisty-backports main restricted universe multiverse
debfeisty-security main restricted
Рассмотрим, что получилось. Первая строка указывает на CD-ROM, точнее, на конкретный диск с указанной меткой. Для добавления любого другого диска с пакетами (он должен иметь специальную структуру, о чем будет рассказано далее) достаточно вставить его в привод и набрать в консоли команду sudo apt-cdrom add – программа попросит вставить диск, после чего нужно нажать Enter. Далее в файле описываются репозитарии, находящиеся на различных узлах в Интернете. В первой строке указан тип пакета (deb указывает, что будут загружаться пакеты с уже скомпилированными программами; а deb-src означает, что будут использоваться пакеты с исходными текстами). Периодически необходимо обновлять список пакетов, имеющихся в репозитариях. Это делается командой sudo apt-get update.
При большом количестве записей суммарный объем скачанных файлов может превышать 10 Мбайт, поэтому, если не планируется самостоятельная сборка/пересборка пакетов, строки, содержащие deb-src, можно закомментировать, поставив в начале знак #. Таким образом можно уменьшить нагрузку на канал и время обновления списка.
Следующая запись означает зеркало, с которого будут загружаться обновления. Официальный репозитарий Ubuntu располагается по адресуПри установке дистрибутива в зависимости от региона автоматически выбирается одно из многочисленных зеркал репозитария. Например, украинское зеркало имеет адресроссийское вместо ua использует ru, поэтому, читая зарубежные материалы, следует переносить их на местные реалии. Например, если в статье говорится, что для установки нужно добавить в список серверэто не значит, что нужно выполнять такой совет. У вас уже использовано локальное зеркало. Хотя здесь все не так просто, как кажется.
Во-первых, зеркала обновляются не мгновенно, а через некоторый период времени. Хотя это нестрашно. Интересней скорость доступа к зеркалу. Так, команда traceroute показывает 14 промежуточных узлов в случае с вариатом ua, при этом сам сервер находится в Лондоне, IP-адрес совпадает с официальным archive.ubuntu.com, а пакет проходит чуть менее шести тысяч километров, то есть фактически украинское зеркало совпадает с официальным репозитарием. Причем скорость закачки днем в случае автора равна приблизительно 128 Кбайт/сек, а ночью – в два раза ниже. При установке пакетов с итальянского сервера с префиксом gb пакет пройдет 12 узлов и на тысячу километров меньше. Польский (pl) сервер «находится» от автора в 6126 километрах, через 14 промежуточных узлов, но отклик отличный. Полный список репозитариев можно найти по адресу https://wiki.ubuntu.com/Mirrors?action=show&redirect=Archive.
Следующей строкой идет название версии дистрибутива: для 7.04 это feisty, 6.10 – edgy, 6.06 – dapper. Такая строка показывает, что будут использованы основные и тщательно протестированные пакеты, собираемые самими разработчиками. К названию дистрибутива может быть добавлено одно из четырех окончаний:
• backports – не протестированные, но часто очень полезные пакеты;
• proposed – предлагаемые, но пока не протестированные обновления;
• security – обновления безопасности;