Linux32 - Блог



LINUX32

Свобода выбирать


ArchLinux
Блог >> 2013 >> Июль


15.07.2013

Переезд папок *BIN




Доброго времени суток.

Расскажу про недавнее обновление арча с "переездом" папок *bin.

Это обновление оказалось самым сложным для меня и заставило поволноваться. Сначала делал все по инструкции с форума арчеводов: обновился без bash и filesystem, потом обновил bash. Затем попытался обновить filesystem, но не вышло, пакман написал что папка /usr/sbin уже есть в системе. У меня видеокарта ATI и в папке /sbin были файлы каталиста, а в остальных "ненужных" папках были файлы plymouth и archiso-git. Это мелочи, подумал что если понадобиться, то удалю. И еще подумал, что раз уж я на арче больше 2 лет, то стал уже профи и не буду пока filesystem обновлять. Подожду когда обновят дрова на видеокарту, плимус и арчисо (чтобы не удалять их), а потом и filesystem обновлю. И на этом я нажал на перезагрузку...

И конечно комп не загрузился, написал что ошибка, что не найден /sbin/init и что мол разбирайся сам. Еще подвох в том что у меня в грубе2 был установлен таймаут 0. Пришлось с лайвсиди грузиться. Думаю, ладно, не беда, сколько раз уже с лайвсиди загружался. Загрузился, поправил в /boot/grub/grub.cfg строку с таймаутом. Теперь решил зайти в chroot-окружение и удалить все "машающие" программы и все-таки обновить filesystem. Но не тут-то было! Chroot выдал сообщение что /bin/bash не найден и отказался работать. Вот тут я подумал что переоценил себя и последствия могут быть весьма печальными - переустановка системы с нуля со всеми моими "личными" настройками которые я делал за время пользования арчем (а ведь я и не вспомню даже их все!)...

Теперь я решил что терять мне уже нечего и что буду пробовать восстановить систему любыми путями (если вообще смогу). Начал с того что скачал с арчевского сайта пакет filesystem и посмотрел что в нем внутри с намерением скопировать это все руками по нужным путям. Но намерение мое угасло когда я увидел что внутри у него (как можно было догадаться по названию) вся иерархия папок моей системы. И только тогда я сообразил что можно попробовать заменить только те папки, которые "перемещались" при этом обновлении, т.е. папки /bin, /sbin и /usr/sbin на симлинки папки /usr/bin (кстати, папки /bin и /sbin у меня удалились автоматически при обновлении). Удалил вручную остатки каталиста и папку /usr/sbin вместе с ними и сделал необходимые симлинки. Попробовал перезагрузиться, и, чудо! Загрузка пошла!. Правда загрузиться удалось только в консоль (из-за нерабочего драйвера для ATI), но это уже мелочи. Теперь я уже мог работать с пакманом. Далее я обновил таки filesystem, переустановил дрова для видеокарты (опишу этот процесс в подробностях в последующих статьях) и переустановил plymouth и archiso-git.

Мое вознаграждение - это снова работающая как и прежде система, ну и слегка завышенное ЧСВ.

Оставляйте комментарии, обсудим. У кого может что-то подобное было или возможно эта статья поможет тем, кто сейчас в такой ситуации.

И мораль напоследок - если есть мануал, делай по мануалу и без инициативы.

Статья


Ваш комментарий:

Имя:
E-mail:
Код с картинки:
Комментарий: