Powerpill (Русский)

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

Состояние перевода: На этой странице представлен перевод статьи Powerpill. Дата последней синхронизации: 12 декабря 2022. Вы можете помочь синхронизировать перевод, если в английской версии произошли изменения.

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

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

Установка

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

Настройка

Powerpill имеет один файл настроек /etc/powerpill/powerpill.json — отредактируйте его по своему вкусу. Смотрите powerpill.json(1) для более подробной информации.

С помощью 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

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

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

Обратите внимание, что есть проверка, находятся ли базы данных и пакеты в официальном репозитории, через Reflector, поэтому его установка необходима для работы функции rsync.

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

Большинство операций в powerpill работают так же, как и в pacman, так как он является скриптом-обёрткой для pacman.

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

Чтобы обновить систему (синхронизировать и обновить установленные пакеты) используйте powerpill и опцию - как вы делаете это с 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)

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

gollark: Not that it'll ever be used, but you know.
gollark: I'm going to work on a "safe mode" toggle for the network which switches security to maximum, shuts off wireless access, disconnects autocrafting, and cuts off the P2P controller, so it can only be accessed via the dedicated terminals.
gollark: You must have a really inefficient ME network, <@404656680496791554>.
gollark: Per tick or what?
gollark: Though admittedly in my game running the ME system alone costs 600RF/t.
This article is issued from Archlinux. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.