Pull to refresh

Comments 30

> 2. Определяем виновника проблемы и дату проблемного обновления

«Как нарисовать сову.»
Понял, сейчас распишу подробнее.
Да не поможет тут подробнее. У вас статья о том, как откатить апдейт, а это как раз ни разу не проблема, а вот как его найти — это да.
Дополнил статью. Всё ещё сова?
Уже ближе к массам — я виндовод, но +- понял что, куда, зачем и как.
Москва не сразу строилась. Статьи тоже пишутся итеративно)) Я думаю, в текущей редакции вопросов должно быть минимум.
Но если что, попробуйте откатить версию статьи на месяц назад и обновить — если вопросы исчезли, то вы на правильном пути!

спойлер
ну шутка же:) Вообще, довольно занятный механизм, в те времена, когда я сам возился с арчём, не знал почему-то про слепки репозиториев на дату. Оч полезно, как по мне.
На арче уже пару лет нет таких обновлений, которые ломают всё к чертям. Сходите на официальный форум — там уже давно скука смертная ). Хотя я помню времена переноса библиотек из /lib в /usr/lib и переход на systemd, было весело.

На арче уже более пяти лет — лучший на мой взгляд дистрибутив
Прям буквально недавно, когда в стейбл упал Gnome 3.26 — гномощель стала рандомно крашиться, часто при закрытии или сворачивании окна некоторых приложений. Это был довольно назойливый баг, который затронул очень большое количество пользователей. Пришлось откатываться. До этого (правда, давно) был косяк с проприетарными дровами нвидии, которые после обновления xorg до 1.18 перестали работать на системах с Optimus. Пришлось откатываться, лочить иксы в IgnorePkg и ждать пока починят — гребаных 4 месяца.

У меня Арч без переустановки живет около 6 лет, сменив пару дисков и четыре ноутбука.
Правда, что-ли? Я после того как 2 раза за неделю пришлось систему поднимать на ubuntu перешел. Вернуться что-ли. Дистрибутив тоже считаю лучшим.
аналогично, а для десктопа перешел с минта на antergos и уже года полтора никакие апдейты ничего не ломали
Буквально недавно pacman -Sy на старом ноуте сказал «а нету списка пакетов». Оказалось, они выбросили поддержку i686. Было неприятно. Я то перешел на Arch32. Но сам факт…
Разработчики еще год назад предупреждали об окончании поддержки.
Думаю надо упомянуть, что по дефолту арч не удаляет старые пакеты из кэша пакмана, поэтому в большинстве ситуаций откат выглядит так:
pacman -U /var/cache/pacman/pkg/ansible-2.4.1.0-1-any.pkg.tar.xz
(ansible взят для примера)
Ну я потому и написал, что у каждого свой способ. Как уже было сказано выше — проблема в поиске виновника, и статья посвящена в целом этому. Прежде чем сделать pacman -U %pkgname%, надо сперва откуда-то имя разузнать.
Спасибо за статью. А на Manjaro данный гайд поможет при случае?
Если там репы арчевские используются — без сомнения поможет.
На Manjaro свои репы, не арчевские. По данному гайду вы накатите арчевские пакеты на манджаро, а это нежелательно, версии могут различаться.
Я особо не разбираюсь в производных дистрах, похоже путаю Manjaro и Antegros.
На Арче 10 лет, прямо совсем ломающих обновлений не помню, кроме железо-специфичных — например, на моём старом компе, использовавшем 32-битный Арч, отваливалась звуковуха с новыми версиями ядра. Завёл об этом баг — ответ был, что с 64-битным драйвером всё работает, а 32 бита тестировать некому. Ну и правда, как мы знаем, 32-битная архитектура больше не поддерживается.

Мой рецепт — подписаться на рассылки, по крайней мере на arch-announce. Туда пишут, когда очередное обновление требует ручного вмешательства. Например, так было с упомянутым обновлением filesystem и переносом /{bin,lib} -> /usr/{bin,lib}. Пришлось немного повозиться, но система поломана не была.
Я тоже раньше был любителем всего нового, модного, молодёжного. А потом понял, что ОС нужна как драйвер между мной и машиной, и я её не должен замечать и чинить 3 раза в неделю. С тех пор я на stable дистрах и если меня всё устраивает, то обновляться не спешу.
Более того, при (нормально для меня) работающем софте и наличии обновлений появляется не то чтобы страх, но опасение, что после обновления что-то сломается.
Поэтому только обновления безопасности.

Как сказал один киношный персонаж, «я слишком стар для этого дерьма» ©.
А я был поначалу любителем «stable»-дистров, а именно Убунты. А потом понял, что ОС нужна как драйвер между мной и машиной, и я не должен её замечать и переустанавливать как минимум раз в квартал — с частотой мажорных обновлений, которые Убунта почему-то не переживала у меня ни разу. Я слышал истории, как люди обновлялись с одной мажорной версии на другую, потом на третью, и их система работала и не ломалась. Такие люди ещё любят обвинять меня в кривизне рук)) А у меня дошло до ситуации, когда я ставил опыты — пытался обновить систему до следующей мажорной версии, чтобы руки вообще не влияли. Чистая установка, разбивка диска по-умолчанию, никаких новых пакетов не устанавливается — система предлагает обновление, я нажимаю «ок». Система мертва. Опыт был повторен много раз.

В какой-то момент я понял, что слишком стар для этого дерьма и не хочу возиться с переустановкой. Теперь у меня Арч, который без переустановки уже лет 6 живет. Ломается он фантастически редко, и в этом случае ремонтируется за 5 минут с закрытыми глазами.
У меня один пк живет на юбунте уже 12 лет, без переустановок и допиливаний
И всё это время успешно обновляется с одной версии на другую?
Суть проблемы в первом же предложении. Убунту очень сложно назвать stable-дистром
Очень нравился арч одно время — и на ноуте стоял и на домашнем сервере. Но потом появился макбук, а домашний сервер перетащил на центос, потому что порой случались проблемы после обновлений, которые отнимали время. Да и не особо интересно стало возиться с этим, надо было, чтоб просто работало :-)
Тем не менее, для ПК это лучший дистрибутив, на мой взгляд.
На Арче со времен rc.conf. Навскидку несколько основных советов, чтобы минимизировать количество и частоту печалек:
  • Регулярно обновляйтесь. Мелкие и частые обновления минимизируют риск что-то сломать при этих самых обновлениях
  • Регулярно заходите на офсайт и читайте новости (или можно подписаться на рассылку). Если очередное обновление требует каких-то ручных махинаций, об этом обязательно напишут и лучше об этом узнать до, а не после обновления
  • Не заигрывайтесь с 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 и снести другие. (Но этот вариант многим опаснее вашего.)
Седьмой пункт, согласен.
В качестве дополнения не забывайте делать резервные копии!

У меня корень системы висит в brfs, а в .zshrc добавлен алиас update, где сначала делается снапшот, а потом уже pacman -Syu. В случае косяка:
 sudo snapper -v undochange 0..НОМЕРРАБОЧЕГОСНАПШОТА 

А далее уже можно смотреть что делать с пакетом виновником.
Топорно, но уже как год работает. Недавно как раз откатывался из за через одно место рабочего NetworkManager.
UFO just landed and posted this here
Sign up to leave a comment.

Articles

Change theme settings