-
Notifications
You must be signed in to change notification settings - Fork 0
FAQ.ru
EN · EL · FR · ES · IT · RU · ZH · AR · HI · PT · DE
Частые вопросы и устранение неполадок. См. также Configuration, Security и Repositories and Priority.
Нет — и никогда не будет. slacker нацелен на Slackware -current: 64-бит (x86_64) и, начиная с 0.9.0, 32-бит (i586/i686). См. Status and Roadmap.
Да — это slacker upgrade-dist {current|VERSION}. Он перенаправляет ваше зеркало и
репозитории на целевой выпуск и заменяет каждый пакет сборкой из цели (единственная
команда, намеренно обходящая модель приоритетов), затем выполняет install-new +
clean-system и напоминает о ядре перед перезагрузкой. Всегда сначала делайте
--dry-run и храните резервные копии. Учтите, что для обновления системы 15.0
нужен бинарник slacker, работающий на более старой glibc 15.0 (распространяемый
пакет собран для -current); а опция локального источника
(DISTRO_UPGRADE_MIRROR) ещё не протестирована. Подробности в
Distribution Upgrade.
Это защита соответствия выпуска. Репозиторий, собранный для другого выпуска
Slackware (например, репозиторий alienbob -current, всё ещё активный на 15.0),
может пройти GPG/md5 и всё же установить пакеты, ломающие систему, поэтому slacker
отказывает. Нацельте репозиторий на выпуск вашей системы или передайте --yes,
чтобы переопределить, если уверены. slacker status показывает то же
несоответствие в строке Repo release. См. Security.
Нет. Бинарный пакет ставит файлы конфигурации на место в /etc/slacker/. Вы
редактируете только два — mirrors (выберите один) и repos (задайте приоритеты).
См. Installation.
Выполните slacker find-mirror. Он опрашивает официальный список зеркал Slackware,
замеряет каждое, отбрасывает отставшие от вышестоящего мастера, ранжирует остальные
по скорости и печатает самое быстрое как строку для mirrors — он никогда не меняет
вашу конфигурацию сам. Он работает до того, как настроено любое зеркало, поэтому
это естественная первая команда на свежей установке. Позже slacker status отмечает
зеркало, которое устарело (более чем на 48 часов отстаёт от вышестоящего). См.
Quick Start.
Этот репозиторий — поддерево дистрибутива (extra, patches, testing,
pasture) и требует флага subtree в repos. Его PACKAGES.TXT указывает
расположения относительно корня дистрибутива; флаг велит slacker брать пакеты и ключ
из родительского URL. См. Repositories and Priority.
Приоритеты бинарных репозиториев должны быть различными. Дайте каждому бинарному репозиторию уникальный номер. (Строки tag-priority могут разделять приоритет — это нормально.)
В mirrors должна быть раскомментирована ровно одна строка. Ноль оставляет
официальный URL пустым; две или более — ошибка.
Приоритет. slacker никогда не мигрирует установленный пакет к источнику с другим
приоритетом и не понижает его. Кандидат предлагается только из репозитория с
бóльшим или равным приоритетом. Если вы хотите сборку конкретного
репозитория, закрепите её: slacker upgrade alienbob:vlc. Чтобы источник всегда
побеждал, дайте ему приоритет по метке. См. Repositories and Priority.
Да, для официальных пакетов на -current. slacker revert-pkg NAME
перечисляет предыдущие сборки этого пакета (из removed_packages), скачивает
выбранную вами из накопительного архива (проверена GPG против закреплённого ключа
Slackware) и понижает её через upgradepkg --reinstall. Сначала попробуйте
--dry-run, чтобы увидеть точную сборку. Затем он предлагает заморозить пакет,
чтобы upgrade-all не вытянул его снова вперёд, — снимите это позже через
slacker unfrozen NAME. Сторонние пакеты не охвачены (накопительный архив несёт
только официальные), и это работает только на -current: код читает
VERSION_CODENAME и отказывает на стабильном выпуске (жёсткая защита,
fail-closed). См. Common Workflows.
slacker unfrozen RULE — пара к frozen. Запустите slacker unfrozen без
аргумента, чтобы перечислить текущие правила, затем передайте одно точно как
показано (сопоставление буквальное, поэтому .* / * / / никогда не трактуются
как шаблон). Править /etc/slacker/blacklist вручную тоже можно. См. Blacklist.
install-new — для пакетов, чьё имя только что добавлено в дистрибутив, а не
для удалённых вами пакетов (те уже существуют в дереве). Чтобы вернуть удалённый
пакет, используйте slacker install NAME (или install @repo). См. Commands.
Имена совпадают точно. Если пакет — aircrack-ng, то history aircrack ничего
не найдёт — используйте точное имя. См. Package History.
Каталог removed_packages/ от pkgtools хранит по одному файлу на идентификатор
пакета, поэтому более позднее удаление перезаписывает более раннюю запись — часть
истории теряют сами инструменты. slacker восстанавливает столько, сколько может, и
выводит потерянную цель обновления из следующей известной записи. См.
Package History.
slacker помещает в карантин репозиторий, не прошедший проверку (недоступный или с
искажёнными/враждебными метаданными). Перепроверьте через slacker vet-repo NAME;
если сочтёте это ложным срабатыванием, slacker trust-repo NAME снимает его (под
вашу ответственность). См. Security.
slacker закрепляет отпечаток GPG каждого репозитория при первом импорте (trust on
first use). Более поздний ключ с другим отпечатком отклоняется. Если ключ сменился
законно, понадобится удалить pin этого репозитория в STATE_DIR
(/var/lib/slacker/gpg/<repo>.fpr) и импортировать заново. См. Security.
Пометьте эти репозитории как immutable в repos. Их установленные пакеты тогда
сохраняются без занесения каждого в чёрный список. См. Common Workflows.
У slacker нет подстановочного знака * для выбора пакетов. Целый репозиторий —
это @repo (напр. install @gnome); одиночный пакет — его точное имя; подстрока
соответствует семейству. Незакавыченный * раскрывается вашей оболочкой в имена
файлов текущего каталога до запуска slacker — slacker никогда не видит * и не
читает ваш каталог. Когда это даёт поток аргументов, не являющихся пакетами, slacker
распознаёт это и отказывает в команде, ничего не меняя (remove * не удалит
реальные пакеты, случайно разделяющие подстроку с именем файла). Заключите буквальный
шаблон в кавычки или используйте @repo. Учтите, что чёрный список — иное:
frozen принимает glob и regex — см. Blacklist.
Да. search, info, file-search, check-updates, show-changelog, history
и find-mirror работают под любым пользователем. Всё, что меняет систему, требует
root.
Изменяющие команды берут эксклюзивную блокировку (/run/slacker.lock); за раз
выполняется только одна. Блокировка снимается автоматически, если slacker завершился
или был убит. Запросы блокировку не берут.
Установите NO_COLOR=1 (цвет также отключается автоматически, когда вывод не в
терминал). Пейджер для длинного вывода — $PAGER или less -FRX.
Откройте задачу на https://forge.slackware.nl/rizitis/slacker/issues.
slacker - slackpkg + slackpkg+ in one - Apache-2.0 - by Ioannis Anagnostakis (rizitis) - beta / WIP, for Slackware -current (64-bit & 32-bit)
Getting started
Using slacker
- Commands
- Common Workflows
- Distribution Upgrade
- Repositories and Priority
- Package History
- Dependencies
- Docker
- Templates
- Blacklist
Trust & safety
Reference
For contributors