- Подписка на печатную версию:
- Подписка на электронную версию:
- Подшивки старых номеров журнала (печатные версии)
LXF130:apt-get
Материал из Linuxformat.
- apt-get Обойдемся без графики, управляясь с пакетами из командной строки
Содержание |
apt-get: Хозяин пакетов
- Мечтали о едином средстве управления пакетами и «околопакетным» хозяйством? Энди Хадсон представляет дивный инструмент по теме.
В зависимости от рода своей деятельности в мире Linux, кто-то предпочитает portage, кто-то – Yum, кто-то просто собирает приложения из исходников вручную. Однако в растущей массе дистрибутивов на базе Debian есть только один правильный способ управления пакетами: apt-get. Нетрудно понять, почему племя дебианцев так почитает этот инструмент: apt-get был их оплотом много лет. Программа быстрая и удивительно простая в работе – при бесподобной функциональности.
Большинство пользователей не вникает в тонкую механику системы, поэтому на нашем уроке мы решили рассказать вам, как извлечь из этого мощного инструмента максимум и во мгновение ока превратиться из новичка в профессионала.
Предполагается, что вы пока не работали с apt-get: люди чаще используют Synaptic, стандартную графическую программу для Debian и Ubuntu. Итак, перейдите в командную строку и готовьтесь к бою. Поскольку apt-get проводит изменения системного масштаба, вам понадобится стать суперпользователем-root или получить его права, иначе сделать что-либо не удастся. На данном уроке мы будем считать, что вы вошли от имени root или (для Ubuntu) предваряете каждую команду префиксом sudo, чтобы получить необходимые привилегии. Итак, сначала наберите
apt-get update
Команда предписывает apt-get обновить информацию об имеющихся пакетах с помощью сведений, взятых из файла sources.list. Это необходимо: прежде чем двигаться дальше, следует получить наиболее свежую информацию о пакетах, доступных на текущее время. По окончании работы apt-get можно вводить команду
apt-get upgrade
Будут загружены самые свежие версии установленных приложений, вместе с зависимостями. Сопутствующие действия выполняются автоматически. Кроме того, на данном этапе нужно усвоить еще две базовых функции apt-get. Вот они:
apt-get install нечто
Эта команда добавляет приложение, а следующая – удаляет:
apt-get remove нечто
Теперь, зная базовые команды, рассмотрим возможности apt-get подробнее.
Поддерживаем чистоту
Начнем с того, что, хотя apt-get очень эффективный менеджер пакетов, со временем он образует немало «хлама», который не всегда удаляется системой Apt автоматически. Этот «хлам» состоит главным образом из пакетов, которые прошли процесс обработки и установки, но остались лежать в файловой системе.
Если система «молодая», то вы этой проблемы и не заметите (особенно если часто меняете дистрибутивы). Однако если у вас установлен Debian или одна из версий Ubuntu LTS, то регулярная уборка будет полезной. Просто наберите команду
apt-get clean
Apt уберет ненужные пакеты и освободит вам изрядный кус дискового пространства, особенно если вы давно не занимались очисткой или провели крупную серию обновлений. Единственный недостаток данного способа – если понадобится переустановка пакета, apt-get придется загрузить его заново. Чтобы этого избежать, когда о дисковом пространстве беспокоиться незачем, наберите такую команду:
apt-get autoclean
Будут удалены только лишние пакеты. Например, если вы недавно несколько раз обновляли какое-либо приложение, autoclean избавит вас от всех версий, кроме самой свежей (она может пригодиться для переустановки). Такой способ очистки стоит применять при частой переустановке приложений, даже если у вас быстрое интернет-подключение.
Для сверхчистюль – еще одна тонкость: использование переключателя purge вместо remove. Такая команда удаляет не только лишние пакеты, но и все конфигурационные файлы, использовавшиеся при установке.
Заключительная строка в очистительном арсенале apt-get –
apt-get autoremove
Команда autoremove удаляет пакеты, которые были загружены в качестве зависимостей, но больше не нужны.
Разобравшись с очисткой, поинтересуемся, не пригодится ли Apt при компиляции из исходных кодов, «а-ля Gentoo». Оказывается, с помощью apt-get компилировать не только можно, но даже предпочтительно: программа освободит вас от лишней мороки. Начнем с получения исходного кода – наберите
apt-get source нечто
Будут доставлены файлы исходных текстов, включая .dsc, который используется dpkg-source для пояснения apt-get, куда следует распаковать архив. Как правило, исходный код помещается в подкаталог текущей рабочей директории, а его название соответствует имени пакета исходников. Теперь все готово для компиляции обычным манером.
Прикладные фокусы
Если вас не прельщает перспектива ручной компиляции из исходных кодов, то у apt-get и тут есть козырь в рукаве: можно предписать программе скомпилировать пакет автоматически, сразу по окончании загрузки.
Приложений-отшельников, без зависимостей, не существует, и перед компиляцией нужно убедиться, что последние установлены. Здесь-то apt-get и приносит реальную пользу. Зная название пакета, который вы собираетесь компилировать, достаточно набрать такую команду:
apt-get build-dep нечто
и все зависимости для названного пакета будут установлены.
Apt-get опросит репозитории, найдет необходимые пакеты и установит их – хотя основной пока не тронет. По завершении этого процесса, наберите команду
apt-get source нечто -b
Исходный код будет доставлен и скомпилирован. Но не установлен: apt-get лишь формирует пакет deb в текущей рабочей директории. Устанавливать его придется самостоятельно – для этого воспользуйтесь командой dpkg:
dpkg -i название_пакета.deb
Поскольку о зависимостях мы с вами уже позаботились, пакет будет установлен, и – вуаля, пользуйтесь на здоровье!
Чушь… коровья
Если вы введете команду apt-get «как есть», то получите обычный перечень доступных параметров, часто в сопровождении шифрованной фразы This apt has Super Cow Powers («У этого apt суперкоровья сила»). Узреть свет поможет команда
apt-get moo
Вы увидите ASCII-изображение коровы и вопрос, который непременно вызовет у вас улыбку. У Aptitude, компаньона apt-get более высокого уровня, есть подобная функция – попробуйте набрать
aptitude moo && aptitude moo -v
и полюбуйтесь результатом. Теперь добавляйте лишнее v в конец второй команды – вы оцените юмор.