Powerpill (Русский)

From ArchWiki
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.
Состояние перевода: На этой странице представлен перевод статьи Powerpill. Дата последней синхронизации: 24 ноября 2015. Вы можете помочь синхронизировать перевод, если в английской версии произошли изменения.

Powerpill - это оболочка pacman, которая использует параллельную и сегментированную загрузку, чтобы ускорить загрузку пакетов. Для достижения этой цели используются Aria2 и Reflector. Powerpill также может использовать rsync для официальных зеркал, которые его поддерживают. Это может быть эффективно для пользователей, которые уже используют полную полосу пропускания при скачивании с одного зеркала. Pacserve также поддерживается с помощью файла настроек и будет использоваться перед загрузкой из внешних зеркал. Пример: выполняете команду pacman -Syu, сообщается список из 20 пакетов которые доступны для обновления, общим размером 200 МегаБайт. Если загружать их с помощью Pacman, они будут загружаться в порядке очереди по одному. Если загружать их с помощью Powerpill, они будут загружаться одновременно, во многих случаях в несколько раз быстрее (в зависимости от скорости соединения, наличии пакетов на серверах, и скоростью от сервера / нагрузки, и т.д.)

Испытание "Pacman против Powerpill" на одной системе показало 4Х ускорение, загрузка Pacman в среднем 300 кБ / сек, и powerpill загрузка в среднем 1.2 Мб / сек.

Установка

Вы можете установить пакет из AUR powerpillAUR или непосредственно из репозитория Xyne.

Настройка

Powerpill имеет один файл настроек /etc/powerpill/powerpill.json отредактируйте его по своему вкусу. Обратитесь к пользовательской странице документации man powerpill.json .

С помощью Reflector

По умолчанию, Powerpill настроен на использование Reflector чтобы получить текущий список зеркал из веб-API сервера Arch Linux и использовать их для параллельных загрузок. Для значительных улучшений скорости, убедитесь, что есть достаточно серверов в списке.

С помощью rsync

Некоторые зеркала поддерживают Rsync. Когда он включен, синхронизация базы данных (pacman -Sy) и другие операции могут выполняться значительно быстрее, так как используется одно соединение. Сам протокол rsync также ускоряет проверку обновлений, а иногда и передачу файлов.

Чтобы найти подходящее зеркало с поддержкой rsync, используйте reflector:

$ reflector -p rsync

Кроме того, воспользуйтесь этим, чтобы отфильтровать быстро количество серверов n (опция -f) так же m количество недавно обновленных серверов (опция -l):

$ reflector -p rsync -f n -l m

Выберите какое хотите использовать зеркало(а). Опция -c также может быть использована для фильтрации по вашей стране (reflector --list-countries чтобы увидеть полный список, используйте имя в кавычках с учетом регистра!). После этого, отредактируйте /etc/powerpill/powerpill.json, прокрутите вниз до секции rsync, и добавить столько серверов, сколько хотите, в поле server.

После этого, все официальные базы данных и пакеты будут загружены из Rsync сервера когда это возможно.

Основы использования

Для большинства операций, powerpill работает как Pacman, так как он является оболочкой сценарияpacman.

Обновление системы

Чтобы обновить систему (синхронизировать и обновить установленные пакеты) используйте powerpill и опцию -Syu - как вы делаете это с pacman:

# powerpill -Syu

Установка пакетов

Чтобы установить пакет и его зависимости, просто используйте powerpill (вместо pacman) с опцией -S:

# powerpill -S package

Вы также можете установить несколько пакетов, как и при работе с pacman:

# powerpill -S package1 package2 package3

Решение проблем

Получение [err] для файлов <repo>.db.sig:

   b5d7d7|ERR |       0B/s|/var/lib/pacman/sync/extra.db.sig
   899e91|ERR |       0B/s|/var/lib/pacman/sync/multilib.db.sig
   8fcc32|ERR |       0B/s|/var/lib/pacman/sync/core.db.sig
   85eb3d|ERR |       0B/s|/var/lib/pacman/sync/community.db.sig

Это происходит потому, что нет файлов подписей для этого репозитория, и вы не установили:

   SigLevel = PackageRequired

в /etc/pacman.conf как описано в этом посте из форума Arch (En)

Смотрите также

  • Powerpill - официальная страница проекта
  • [1] - Быстрая загрузка пакетов, при помощи Powerpill (Рус.)
  • powerpill reborn - powerpill is back :)