Обновил slackware (Cannot open root)
Модератор: Модераторы разделов
-
splinter
- Сообщения: 33
- ОС: Linux slackware 11
Обновил slackware
Всем здрям. Обновил slackware как сказанно в UPGRADE.TXT, правда обновлял с 12.0 до 12.2, изменил lilo.conf, после перезагрузки вываливается ошибка VFS: Cannot open root device "341" or unknown(3,65). Заметил что сменились названия разделов. раньше linux был на /dev/hdb1 стал /dev/sdb1, MBR прописан в /dev/sda1, переделал lilo.conf и fstab, указав в качестве root=/dev/sdb1 записал lilo в MBR /dev/sda ошибка все равено осталась. Подскажите как запустить систему 
-
seeman
- Сообщения: 1
- ОС: Slackware,rpm-based,FreeBSD
Re: Обновил slackware
У меня тоже самое при попытке поставить свежее ванильное ядро с kernel.org. Имена разделов-это во всех новых ядрах теперь sd* вместо hd* (унификация)
Опцию отключающую унификацию в конфиге ядра не нашел. Подсовывал oldconfig-бесполезно. Кто-нибудь делал?
2 splinter: Я восстановил старую систему так-
Загрузись с дистрибутивного cd-rom со слакой,
затем
Верни в систему старый каталог /boot, со старым ядром (надеюсь есть бэкап или оно по крайней мере на месте осталось).
далее отредактируй lilo.conf, пропиши в нем свое старое ядро.
Типа:
затем так:
Должно запуститься старое ядро.
Новое сам пока не могу запустить
Опцию отключающую унификацию в конфиге ядра не нашел. Подсовывал oldconfig-бесполезно. Кто-нибудь делал?
2 splinter: Я восстановил старую систему так-
Загрузись с дистрибутивного cd-rom со слакой,
затем
Код: Выделить всё
mkdir /mnt/hd
mount /dev/hda2 /mnt/hd (подразумеваю, что boot,sbin и etc на одном разделе-hda2)
chroot /mnt/hdВерни в систему старый каталог /boot, со старым ядром (надеюсь есть бэкап или оно по крайней мере на месте осталось).
далее отредактируй lilo.conf, пропиши в нем свое старое ядро.
Типа:
Код: Выделить всё
image=/boot/vmlinuz(образ ядра)
label=linux
read-onlyзатем так:
Код: Выделить всё
/sbin/lilo -C /etc/lilo.conf
rebootДолжно запуститься старое ядро.
Новое сам пока не могу запустить
У тебя изощренный ум, Гэндальф, но ты не мудр.
Саруман Белый.
Саруман Белый.
-
bormant
- Сообщения: 1354
Re: Обновил slackware
Тут нужно несколько уточнений:
1) какое из новых ядер стало текущим, huge или generic?
2) какой версии mkinitrd использовался для изготовления initrd?
3) все ли .new файлы были рассмотрены и проставлены вместо старых?
Стоит поставить обновленные mkinitrd-1.3.3-i486-1_slack12.2.tgz и udev-141-i486-2_slack12.2.tgz, там именно это (обработка симлинка на симлинк на / (/dev/root)) было исправлено.
1) какое из новых ядер стало текущим, huge или generic?
2) какой версии mkinitrd использовался для изготовления initrd?
3) все ли .new файлы были рассмотрены и проставлены вместо старых?
Стоит поставить обновленные mkinitrd-1.3.3-i486-1_slack12.2.tgz и udev-141-i486-2_slack12.2.tgz, там именно это (обработка симлинка на симлинк на / (/dev/root)) было исправлено.
-
splinter
- Сообщения: 33
- ОС: Linux slackware 11
Re: Обновил slackware
bormant писал(а): ↑13.05.2009 15:26Тут нужно несколько уточнений:
1) какое из новых ядер стало текущим, huge или generic?
2) какой версии mkinitrd использовался для изготовления initrd?
3) все ли .new файлы были рассмотрены и проставлены вместо старых?
Стоит поставить обновленные mkinitrd-1.3.3-i486-1_slack12.2.tgz и udev-141-i486-2_slack12.2.tgz, там именно это (обработка симлинка на симлинк на / (/dev/root)) было исправлено.
huge, .new не менял, mkinitrd подозреваю что должен был обновиться с дистрибутивом.
-
bormant
- Сообщения: 1354
Re: Обновил slackware
а как же п.6 UPGRADE.TXT ?
6. Fix your config files. Some of the config files in /etc are going to
need your attention. You'll find the new incoming config files on
your system with the ".new" extension. You may need to fill these in
with information from your old config files and then move them over.
Feel brave? You can use this little script to install all of the
.new config files in /etc. If you've made any local changes you'll
need to add them to the newly installed files. Your old config files
will be copied to *.bak. Anyway, it might be an easier starting
point. Here it is:
#!/bin/sh
cd /etc
find . -name "*.new" | while read configfile ; do
if [ ! "$configfile" = "./rc.d/rc.inet1.conf.new" \
-a ! "$configfile" = "./group.new" \
-a ! "$configfile" = "./passwd.new" \
-a ! "$configfile" = "./shadow.new" ]; then
cp -a $(echo $configfile | rev | cut -f 2- -d . | rev) \
$(echo $configfile | rev | cut -f 2- -d . | rev).bak 2> /dev/null
mv $configfile $(echo $configfile | rev | cut -f 2- -d . | rev)
fi
done
Так что, думаю, нужно
1а) попробовать загрузиться в установленную слаку с диска 12.2 (на boot: ответить согласно подсказке isolinux-а про загрузку (после = пробел!) hugesmp.s root=/dev/sdb1 rdinit= ro). Не исключено, что не загрузится, тогда
1б) загрузиться с диска 12.2, на boot: нажать enter, смонтировать корень (например в /mnt) и
2) в etc все-таки разобраться с .new файлами, пусть и с помощью процитированного выше скрипта (в случае п.1б скорректировав вторую строку с cd /etc на cd /mnt/etc). перегрузиться.
3) Если не исправилось, выполнить п.1б, проапгрейдится до udev-141-i486-2_slack12.2.tgz (скачать, выполнить "#ROOT=/mnt upgradepkg udev-141-i486-2_slack12.2.tgz"), снова выполнить п.2
Просьба в случае любого (положительного или отрицательного) результата отписаться тут.
Обновление mkinitrd будет нужно до перехода на generic* ядро. Тот, который в дистре, имеет связанную с тем-же (/dev/root) багу.