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


APT HOWTO
Глава 7 - Технические приёмы и хитрости


7.1 Установка пакетов "по запросу"

Вы собираете программу, и вдруг, остановка! Произошла ошибка из-за того, что нет какого-то нужного файла .h. От такого поворота событий вас может спасти программа auto-apt, доступная в одноимённом пакете. Это программа спросит вас об установке пакетов, если они нужны, при этом останавливается соответствующий процесс и затем продолжается уже после установки пакета.

Для этого, в основном, запустите:

     # auto-apt run command

Where command is the command to be executed that may need some unavailable file. For example:

     # auto-apt run ./configure

Она запросит установку необходимых пакетов и вызовет apt-get автоматически. Если вы работаете в X, то графический интерфейс заменит обычный текстовый интерфейс.

Auto-apt сохраняет базы данных в обновленном состоянии, чтобы быть более эффективной. Это достигается вызовом команд auto-apt update, auto-apt updatedb и auto-apt update-local.


7.2 Кеширование пакетов

Если вы общаетесь с другими компьютерами в сети -- может оказаться полезной система кеширования пакетов; таким образом вам не понадобиться загружать пакеты на каждый компьютер. Это руководство описывает работу с пакетом apt-proxy, выполняющим представленную задачу. Хотя имеются и другие решения -- например, apt-cacher. Вы можете перепробовать все имеющиеся средства, чтобы выбрать то, которое лучше подойдет для вас.

Для начала, установите пакет apt-proxy. Программа зарегистрирует себя в службе inetd для прослушивания запросов по порту 9999; возможно, вам потребуется перезапустить inetd.

Далее вы можете отредактировать файл /etc/apt-proxy/apt-proxy.conf. В нём содержится список настоящих серверов, с которых apt-proxy будет загружать списки пакетов и сами пакеты. Вы можете использовать для передачи методы http, ftp и rsync. Файл настроек по умолчанию может иметь следующий вид:

     add_backend /debian/                                    \
             $APT_PROXY_CACHE/debian/                        \
             http://ftp.us.debian.org/debian/                \
             http://ftp.de.debian.org/debian/                \
             http://ftp.uk.debian.org/debian/                \
             +ftp.us.debian.org::debian/

Это означает, что когда клиент пытается что-то получить из /debian/, apt-proxy будет использовать собственный кеш, список http-зеркал Debian и один rsync-сервер, который более предпочтителен для загрузки списков пакетов (знак "+" показывает предпочтительность загрузки управляющих файлов).

Как же клиент сможет воспользоваться этим буфером? Просто добавлением следующей строки в файл /etc/apt/sources.list на стороне клиента (включая и систему, на которой установлен apt-proxy):

     deb http://server:9999/debian/ stable main

Указанная строка выглядит как обычная. Отличие лишь в том, что вы используете сервер apt-proxy там, где обычно указываются http или ftp зеркала, также используется значение некоторого порта (9999) и выбирается буфер (/debian/). После завершения настройки можно обновить список пакетов на одной из машин и обновить её; таким образом пакеты будут загружаться один раз. После обновления первой машины можно обновлять оставшиеся.

Вы можете использовать команду apt-proxy-import для импорта пакетов, находящихся в текущем кеше APT (/var/cache/apt/archives/), запустив apt-proxy-import /var/cache/apt/archives. Заметим, что перед использованием apt-proxy-import -- вы должны запустить процесс обновления на каком-либо клиенте для инициализации кеша apt-proxy.

Вы можете узнать гораздо больше о apt-proxy, прочитав комментарии в файле /etc/apt-proxy/apt-proxy.conf. Например, в конце файла вы сможете найти примеры настройки http и ftp прокси для использования совместно с apt-proxy.


7.3 Определение наилучшего зеркала для включения в файл source.list: netselect, netselect-apt

Наиболее часто возникаемый вопрос, в основном у новичков: "какое зеркало Debian включать в sources.list?". Для выбора зеркала есть множество способов. Эксперты вероятно пользуются сценариями, которые измеряют продолжительность ping`ов до некоторых зеркал. Но такая программа для вас уже имеется: netselect.

Чтобы установить netselect, сделайте как обычно:

     # aptitude install netselect

При запуске программы без параметров отображается справка. При запуске с указанными в качестве параметров, разделенных пробелами, именами компьютеров (зеркал), она выдаст оценку и имя одного из компьютеров. Эта оценка учитывает ожидаемую продолжительность ping'а и количество переходов (компьютеров, которые должны быть пройдены до того, как пакеты дойдут до цели) и обратно пропорциональна ожидаемой скорости загрузки (т.е., чем она меньше, тем лучше). Программа указывает имя компьютера, который имеет наименьшую оценку (полный список оценок можно просмотреть с помощью опции -vv ). См. пример:

     # netselect ftp.debian.org http.us.debian.org ftp.at.debian.org download.unesp.br ftp.debian.org.br
       365 ftp.debian.org.br
     #

Это означает, что из указанных в качестве параметров зеркал, наилучшим является ftp.debian.org.br, с оценкой 365. (Внимание!! Приведенные значения действительны только для моей машины, и для других машин все может быть совсем по-другому).

Сейчас, просто поместите найденное netselect зеркало в файл /etc/apt/sources.list (см. Файл /etc/apt/sources.list, раздел 3.1) и следуйте советам в Управление пакетами, Глава 4.

Примечание: список зеркал можно всегда найти в файле http://www.debian.org/mirror/mirrors_full.

Начиная с версии 0.3, пакет netselect включает сценарий netselect-apt, который делает вышеописанные процедуры автоматически. Просто введите в качества параметра имя дерева дистрибутива (по умолчанию это stable) и файл sources.list будет настроен на наилучшие зеркала main и non-US и будет сохранен в текущем каталоге. Следующий пример генерирует sources.list стабильного дистрибутива:

     # ls sources.list
     ls: sources.list: File or directory not found
     # netselect-apt stable
     (...)
     # ls -l sources.list
     sources.list
     #

Помните: Файл sources.list генерируется в текущем каталоге, и должен быть перемещен в каталог /etc/apt.


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

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

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

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


7.5 Как получить информацию об изменениях в пакете.

Каждый пакет устанавливает в свой каталог документации (/usr/share/doc/packagename) файл, называемый changelog.Debian.gz, который содержит список изменений, сделанных в пакете в последней версии. Вы можете прочесть эти файлы, например, утилитой zless', но в общем-то не слишком удобно после полного обновления системы искать changelog`и для каждого обновленного пакета.

Можно автоматизировать эту задачу с помощью инструмента apt-listchanges. Для начала надо установить пакет apt-listchanges. В течение инсталляции, Debconf настроит его. Отвечайте на вопросы так, как вам будет удобнее.

Опция "Should apt-listchanges be automatically run by apt?" очень полезна, так как показывает список изменений, сделанных в каждом установленном при обновлении пакете, и позволяет вам проанализировать ситуацию перед тем, как продолжить. Опция "Should apt-listchanges prompt for confirmation after displaying changes?" запрашивает у вас разрешения продолжать после чтения списка изменений. Если вы скажете, что не хотите продолжать, то apt-listchanges вернет ошибку и apt прервет установку.

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


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


APT HOWTO

2.0.2 - October 2006

Gustavo Noronha Silva kov@debian.org