Comments 30
«Как нарисовать сову.»
На арче уже более пяти лет — лучший на мой взгляд дистрибутив
У меня Арч без переустановки живет около 6 лет, сменив пару дисков и четыре ноутбука.
pacman -U /var/cache/pacman/pkg/ansible-2.4.1.0-1-any.pkg.tar.xz
(ansible взят для примера)Мой рецепт — подписаться на рассылки, по крайней мере на arch-announce. Туда пишут, когда очередное обновление требует ручного вмешательства. Например, так было с упомянутым обновлением filesystem и переносом /{bin,lib} -> /usr/{bin,lib}. Пришлось немного повозиться, но система поломана не была.
Более того, при (нормально для меня) работающем софте и наличии обновлений появляется не то чтобы страх, но опасение, что после обновления что-то сломается.
Поэтому только обновления безопасности.
Как сказал один киношный персонаж, «я слишком стар для этого дерьма» ©.
В какой-то момент я понял, что слишком стар для этого дерьма и не хочу возиться с переустановкой. Теперь у меня Арч, который без переустановки уже лет 6 живет. Ломается он фантастически редко, и в этом случае ремонтируется за 5 минут с закрытыми глазами.
Тем не менее, для ПК это лучший дистрибутив, на мой взгляд.
- Регулярно обновляйтесь. Мелкие и частые обновления минимизируют риск что-то сломать при этих самых обновлениях
- Регулярно заходите на офсайт и читайте новости (или можно подписаться на рассылку). Если очередное обновление требует каких-то ручных махинаций, об этом обязательно напишут и лучше об этом узнать до, а не после обновления
- Не заигрывайтесь с Aur. Да, там много нужного и вкусного, но лучше для него пользоваться makepkg, чем автоматизированными средствами типа yaourt (или как там его,
жив кстати?) - Контролируйте появление *.pacnew и *.pacsave файлов в вашей системе (find / -name *.pacnew). Если формат конфигурационного файла какого-нибудь пакета изменился, актуализируйте свой конфиг, используя средства сравнения файлов
- Контролируйте список «pacman -Qm». Это пакеты, «установленные вручную». Сюда же попадают пакеты, которые когда-то были установлены из репозитория, но в будущем исключенные оттуда. Часто в таком случае оказывается, что данный пакет утратил свою актуальность/его функционал поглощен другим пакетом/… и он в вашей системе просто мусор
- Контролируйте список «pacman -Qdt». Это пакеты-сироты. Также в большинстве случаев достойны удаления
- Анализируйте назначение и историю происхождения пакетов из двух вышеприведенных списков, явно ненужное периодически подчищайте через «pacman -Rns». Кстати, если вам нужно установить пакет временно для тестирования или сборки чего-то, можно его установить с ключом --asdeps, тогда он автоматически получит статус сироты и в будущем не затеряется в вашей системе навечно, будет, так сказать, на примете
- Помните о принципе «не сломалось — не чини»
Первый пункт, согласен нужно это делать, но в зависимости от того какая репа(Обычные можно раз в неделю, testing раз в четыре дня, staging лучше каждые 12 часов.) используется.
Второй пункт, согласен.
Третий пункт, чем вам не угодил yaourt? (Не конечно я понимаю что можно городить связку git+makepkg, но зачем? (Сам по началу так делал пока про yaourt не вспомнил. Плюсом yaourt проверяет базу данных на наличие конфликтных файлов после установки пакетов pacman -Dk
))
Четвертый пункт, бесспорно, но некоторые *.pacnew можно игнорировать. (Пример pacman-mirrorlist создает pacnew этого mirrorlist'а, но у тебя есть reflector который этот лист генерирует.)
Насчет пунктов 4, 5 и 6 лучше поступить кардинальнее все пакеты сделать asdeps и затем выбрать нужные asexplicit и снести другие. (Но этот вариант многим опаснее вашего.)
Седьмой пункт, согласен.
В качестве дополнения не забывайте делать резервные копии!
sudo snapper -v undochange 0..НОМЕРРАБОЧЕГОСНАПШОТА
А далее уже можно смотреть что делать с пакетом виновником.
Топорно, но уже как год работает. Недавно как раз откатывался из за через одно место рабочего NetworkManager.
Не было печали, апдейтов накачали (Arch)