The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Каталог документации / Раздел "Документация для Linux" / Оглавление документа

[ назад ] [ Содержание ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ вперед ]

APT HOWTO
Глава 4 - Весьма полезные помощники


4.1 Как установить локально скомпилированные пакеты: equivs

Иногда, люди хотят использовать определенную версию программы, доступную только в исходных текстах, без пакета Debian. Но этому может помешать система пакетов. Предположим, вы хотите скомпилировать новую версию вашего почтового сервера. Все отлично, но многие пакеты в Debian зависят от MTA. Так как вы устанавливаете нечто, собранное вами вручную, то система пакетов об этом не будет знать.

Тут на сцену выходит весь в белом пакет equivs. Чтобы его использовать, установите пакет с тем же именем. Он создает пустой пакет, который содержит полный набор зависимостей, уведомляя таким образом систему пакетов, что все зависимочти удовлетворены.

Прежде, чем мы начнем, хорошо бы сообщить вам, что есть более безопасные способы компиляции программ, для которых уже есть пакеты Debian с различными опциями, и что в этом случае лучше не использовать equivs для замены зависимостей, если вы не уверены в том, что все делаете правильно. См. подробности в разделе Работа с пакетами исходных текстов, Глава 6.

Давайте вернемся к примеру с MTA, вы только что установили свежесобранный postfix и переходите к установке mutt. Сразу же вы обнаружите, что mutt нужен установленный MTA. Но ведь он у вас уже есть.

Зайдите в какой-нибудь каталог (/tmp, например) и запустите:

     # equivs-control name

Замените name на имя управляющего файла, который вы создаете. Будет создан следующий файл:

     Section: misc
     Priority: optional
     Standards-Version: 3.0.1
     
     Package: <enter package name; defaults to equivs-dummy>
     Version: <enter version here; defaults to 1.0>
     Maintainer: <your name and email address; defaults to username>
     Pre-Depends: <packages>
     Depends: <packages>
     Recommends: <packages>
     Suggests: <package>
     Provides: <(virtual)package>
     Architecture: all
     Copyright: <copyright file; defaults to GPL2>
     Changelog: <changelog file; defaults to a generic changelog>
     Readme: <README.Debian file; defaults to a generic one>
     Extra-Files: <additional files for the doc directory, commaseperated>
     Description: <short description; defaults to some wise words>
      long description and info
      .
      second paragraph

Нам просто нужно поправить его, как нам нужно. Формат полей и их описаний понятен визуально, так что давайте сделаем требуемое:

     Section: misc
     Priority: optional
     Standards-Version: 3.0.1
     
     Package: mta-local
     Provides: mail-transport-agent

Да, это все. mutt зависит от mail-transport-agent, это виртуальный пакет, обеспечиваемый всеми MTA, я мог бы использовать имя пакета mail-transport-agent, но я придерживаюсь принятой схемы именования, используя Provides.

Сейчас вам нужно только построить пакет:

     # equivs-build name
     dh_testdir
     touch build-stamp
     dh_testdir
     dh_testroot
     dh_clean -k
     # Add here commands to install the package into debian/tmp.
     touch install-stamp
     dh_testdir
     dh_testroot
     dh_installdocs
     dh_installchangelogs
     dh_compress
     dh_fixperms
     dh_installdeb
     dh_gencontrol
     dh_md5sums
     dh_builddeb
     dpkg-deb: building package `name' in `../name_1.0_all.deb'.
     
     The package has been created.
     Attention, the package has been created in the current directory,

И установите полученный .deb файл.

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

Важно заметить, что примеры управляющих файлов есть в каталоге /usr/share/doc/equivs/examples. Посмотрите их.


4.2 Удаление неиспользуемых файлов локали: localepurge

Многие пользователи Debian используют только одну локаль. Бразильские пользователи Debian, например, обычно используют локаль pt_BR и не интересуются локалью es.

localepurge - это очень полезный инструмент для таких пользователей. Вы можете освободить много места, если оставите только те локали, которые вы действительно используете. Просто дайте команду apt-get install localepurge.

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


4.3 Как узнать, какие пакеты можно обновить

apt-show-versions - это программа, которая показывает, какие пакеты в системе можно обновить и еще некоторую полезную информацию. Опция -u отображает список обновляемых пакетов:

     $ apt-show-versions -u    
     libeel0/unstable upgradeable from 1.0.2-5 to 1.0.2-7
     libeel-data/unstable upgradeable from 1.0.2-5 to 1.0.2-7

[ назад ] [ Содержание ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ вперед ]

APT HOWTO

1.8.2 - Ноябрь 2002

Gustavo Noronha Silva kov@debian.org





Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру