[РЕШЕНО]установка на флешку (kernel panic не видит партиций)

SLAX, Deep Style, ZenWalk

Модератор: Модераторы разделов

Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

[РЕШЕНО]установка на флешку

Сообщение drBatty »

есть нетбук.

в нетбуке нет HDD(сломан, покупать не желаю), хочу поставить слаку.

Загружаюсь с одной флешки (стандартный usbboot.img из current x86) /dev/sdb, и пытаюсь поставить на другую флешку /dev/sda (она в BIOS видется как USB-HDD). Всё идёт нормально, однако после установки kernel panic, unknow block (8,1), rootfs not found

В момент kernel panic список партиций почему-то пуст.

ЧЯДНТ?
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:

Аватара пользователя
bormant
Сообщения: 1337

Re: [РЕШЕНО]установка на флешку

Сообщение bormant »

Передайте ядру параметр rootdelay=5 -- будет ждать 5 секунд перед попыткой монтировать корень. Время задержки стоит подобрать экспериментально, фразу дописать в append=. Если поддержка носителей usb собрана модулями, не забыть включить их в initrd.
Спасибо сказали:

Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: [РЕШЕНО]установка на флешку

Сообщение drBatty »

bormant писал(а):
14.07.2013 20:49
Передайте ядру параметр rootdelay=5 -- будет ждать 5 секунд перед попыткой монтировать корень. Время задержки стоит подобрать экспериментально, фразу дописать в append=

сейчас попробую, спасибо.

Если поддержка носителей usb собрана модулями, не забыть включить их в initrd.

1. а разве может быть модулями?
2. у меня почему-то mkinitrd с установочного образа не работает(какой-то библиотеки нет). Смогу-ли я сделать initrd на 64х битном десктопе?
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:

Аватара пользователя
bormant
Сообщения: 1337

Re: [РЕШЕНО]установка на флешку

Сообщение bormant »

drBatty писал(а):
14.07.2013 20:56
1. а разве может быть модулями?

Код: Выделить всё

$ find /boot/initrd-tree/lib/modules/3.2.45-smp/kernel/drivers/usb/ -name \*.ko
/boot/initrd-tree/lib/modules/3.2.45-smp/kernel/drivers/usb/storage/usb-storage.ko
/boot/initrd-tree/lib/modules/3.2.45-smp/kernel/drivers/usb/storage/ums-realtek.ko
/boot/initrd-tree/lib/modules/3.2.45-smp/kernel/drivers/usb/host/ehci-hcd.ko
/boot/initrd-tree/lib/modules/3.2.45-smp/kernel/drivers/usb/host/uhci-hcd.ko

drBatty писал(а):
14.07.2013 20:56
2. у меня почему-то mkinitrd с установочного образа не работает(какой-то библиотеки нет). Смогу-ли я сделать initrd на 64х битном десктопе?
Можно и доставить. Сам mkinitrd -- сценарий bash. Подготовленное дерево запаковывается cpio:

Код: Выделить всё

find . | cpio -o -H newc | gzip -9c > /boot/initrd.gz

Спасибо сказали:

Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: [РЕШЕНО]установка на флешку

Сообщение drBatty »

bormant писал(а):
14.07.2013 21:11
/boot/initrd-tree/lib/modules/3.2.45-smp/kernel/drivers/usb/storage/usb-storage.ko
/boot/initrd-tree/lib/modules/3.2.45-smp/kernel/drivers/usb/storage/ums-realtek.ko
/boot/initrd-tree/lib/modules/3.2.45-smp/kernel/drivers/usb/host/ehci-hcd.ko
/boot/initrd-tree/lib/modules/3.2.45-smp/kernel/drivers/usb/host/uhci-hcd.ko

этих модулей будет достаточно?
bormant писал(а):
14.07.2013 21:11
Можно и доставить.

сейчас попробую, спасибо.

http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:

Аватара пользователя
bormant
Сообщения: 1337

Re: [РЕШЕНО]установка на флешку

Сообщение bormant »

drBatty писал(а):
14.07.2013 21:20
достаточно?
usb-storage может использовать другой драйвер вместо ums-realtek, нужно у lsmod спросить.

А в остальном, если правильно помню, в kernel-huge есть всё необходимое. А после первой загрузки можно и на kernel-generic перейти и initrd собрать.
Спасибо сказали:

Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: [РЕШЕНО]установка на флешку

Сообщение drBatty »

bormant писал(а):
14.07.2013 21:34
usb-storage может использовать другой драйвер вместо ums-realtek, нужно у lsmod спросить.

не работает, хотя вроде как ums_realtek

наверное потом, что ehci_hcd юзает ehci_pci.

$

root@bx:/boot# mkinitrd -c -k 3.9.9-smp -m ehci_hcd:uhci-hcd:ehci_pci:ums-realtek:usb-storage cat: /proc/partitions: No such file or directory OK: /lib/modules/3.9.9-smp/kernel/drivers/usb/host/ehci-hcd.ko added. OK: /lib/modules/3.9.9-smp/kernel/drivers/usb/host/uhci-hcd.ko added. OK: /lib/modules/3.9.9-smp/kernel/drivers/usb/host/ehci-hcd.ko added. OK: /lib/modules/3.9.9-smp/kernel/drivers/usb/host/ehci-pci.ko added. OK: /lib/modules/3.9.9-smp/kernel/drivers/usb/storage/usb-storage.ko added. OK: /lib/modules/3.9.9-smp/kernel/drivers/usb/storage/ums-realtek.ko added. OK: /lib/modules/3.9.9-smp/kernel/drivers/usb/storage/usb-storage.ko added. cat: /proc/partitions: No such file or directory 13754 blocks /boot/initrd.gz created. Be sure to run lilo again if you use it. root@bx:/boot# /sbin/lilo Warning: LBA32 addressing assumed Warning: '/proc/partitions' does not exist, disk scan bypassed Warning: The boot sector and map file are on different disks. Added Linux + * 3 warnings were issued. root@bx:/boot# sed '/^#/d' /etc/lilo.conf boot = /dev/sda bitmap = /boot/slack.bmp bmp-colors = 255,0,255,0,255,0 bmp-table = 60,6,1,16 bmp-timer = 65,27,0,255 append=" vt.default_utf8=1" prompt timeout = 50 vga = normal image = /boot/vmlinuz initrd = /boot/initrd.gz append = "rootdelay=5" root = /dev/sda1 label = Linux read-only # Partitions should be mounted read-only for checking


так попробую
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:

Аватара пользователя
yars
Сообщения: 1144
Статус: Slacker!
ОС: Slackware64-current

Re: [РЕШЕНО]установка на флешку

Сообщение yars »

Вероятно, по каким-либо причинам меняется адресация флешек? Попробуйте

Код: Выделить всё

boot=<boot-device>
              Sets  the  name  of the device (e.g. a hard disk partition) that contains the boot sector. If this keyword is omitted, the boot
              sector is read from (and possibly written to) the device that is currently mounted as root.

              A raid installation is initiated by specifying a RAID1 device as the boot device; e.g., "boot=/dev/md0".  Note that  LILO  ver-
              sion 22.0 and later operate differently from earlier versions with respect to the actual location of the boot records.

              On newer systems you need an unique ID for the boot device. If the boot sector should write to a partition you can use its UUID
              in the same manner is for the root options.
              If your boot device is a hard disk you need a special ID, which is supported by udev. You find the right ID  in  the  directory
              /dev/disks/by-id, i. e.:

                  boot = /dev/disk/by-id/ata-SAMSUNG_SV1604N_S01FJ10X999999
Slackware64-current/Xfce 4.12/Acer TravelMate 5760
-------------
Registered Linux User #557010
Спасибо сказали:

Аватара пользователя
bormant
Сообщения: 1337

Re: [РЕШЕНО]установка на флешку

Сообщение bormant »

cat: /proc/partitions: No such file or directory
Если в chroot-е, сначала стоит подключить /proc:
mount --bind /proc /mnt/proc
либо примонтировать:
mount -t proc proc /proc

Кроме того, обратите внимание на:
Warning: The boot sector and map file are on different disks.


"append = " -- глобальная опция, в разделе image более уместна addappend = "rootdelay=5", добавляющая к имеющемуся в append.

И ещё вопрос: с huge ядром получилось загрузиться? Если kernel-panic, имелались ли в таблице устройств флешка? Если нет, стоит увеличить задержку в rootdelay.
Спасибо сказали:

Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: [РЕШЕНО]установка на флешку

Сообщение drBatty »

yars писал(а):
14.07.2013 22:53
Вероятно, по каким-либо причинам меняется адресация флешек?

именно так. Но я не хочу по UUID делать. Он у меня меняться чаще будет.

bormant писал(а):
14.07.2013 23:54
Если в chroot-е, сначала стоит подключить /proc:

это который proc хозяина в гостя? Сделаю, а что это изменит?
bormant писал(а):
14.07.2013 23:54
Кроме того, обратите внимание на

я уже обратил. А вот если сделать /sbin/lilo не на десктопе, а на самом нетбуке, загрузившись из установочного образа, то получается ещё интереснее: она "находит" sda и sdb (sdb это загрузочный образ от Патрега, который я уже вынул), и даже монтирует sda, но не может запустить всё остальное (tty например, и ещё что-то). В итоге намертво зависает.

Пойду гуглить, как эту карту подменить...

bormant писал(а):
14.07.2013 23:54
"append = " -- глобальная опция

угу. Хотя в примерах я видел и внутри секций. А в мане ещё нашёл AddAppend. Исправил, всунул в глобальную.

bormant писал(а):
14.07.2013 23:54
И ещё вопрос: с huge ядром получилось загрузиться?

с него и пытаюсь. Не получается.

bormant писал(а):
14.07.2013 23:54
Если kernel-panic, имелались ли в таблице устройств флешка?

имелась старая карта устройств.
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:

Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: [РЕШЕНО]установка на флешку

Сообщение drBatty »

UDP: вроде появилось, но не успевает немного, монтирует на 6й сек, и пишет "no /sbin/init found". Очевидно надо rootdelay до 10и увеличить.
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:

Аватара пользователя
bormant
Сообщения: 1337

Re: [РЕШЕНО]установка на флешку

Сообщение bormant »

Насчёт времени задержки -- тут надо экспериментально подбирать и немного с запасом.
Если используется initrd, вполне можно вместо длинного человеконенавистного UUID применить LABEL (навешивать при помощи e2label).

ps.
root = должно соответствовать имени устройства на будущий момент загрузки с этого устройства.
boot =, image =, initrd = должны соответствовать имени устройства, куда ставится загрузчик, и расположению файлов на момент выполнения команды lilo.
Спасибо сказали:

Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: [РЕШЕНО]установка на флешку

Сообщение drBatty »

bormant писал(а):
15.07.2013 11:27
Насчёт времени задержки -- тут надо экспериментально подбирать и немного с запасом.

не получается. Всё равно не может найти /etc/mtab, sbin/init

bormant писал(а):
15.07.2013 11:27
root = должно соответствовать имени устройства на будущий момент загрузки с этого устройства.
boot =, image =, initrd = должны соответствовать имени устройства, куда ставится загрузчик, и расположению файлов на момент выполнения команды lilo.

почему-то всё равно определяется sda (это так и должно быть, оно есть, и именно sda, и именно то что надо в обоих случаях), но ещё почему-то оно пытается определить sdb. Сейчас ещё раз проверю...
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:

Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: [РЕШЕНО]установка на флешку

Сообщение drBatty »

bormant писал(а):
15.07.2013 11:27
root = должно соответствовать имени устройства на будущий момент загрузки с этого устройства.
boot =, image =, initrd = должны соответствовать имени устройства, куда ставится загрузчик, и расположению файлов на момент выполнения команды lilo.

всё правильно: я ставлю на sda, и у меня в lilo.conf везде sda ( root=, boot= ). А вот вторая флешка -- /dev/sdb, с неё я и настраиваю.
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:

Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: [РЕШЕНО]установка на флешку

Сообщение drBatty »

очевидно каких-то модулей не хватает.

Есть ли способ посмотреть, какие модули подключаются в рабочем initrd? В смысле какой-нить добавочный ключ к ядру append="lsmod"?
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:

Аватара пользователя
yars
Сообщения: 1144
Статус: Slacker!
ОС: Slackware64-current

Re: [РЕШЕНО]установка на флешку

Сообщение yars »

initrd - это cpio-архив, распаковывайте, смотрите, что там в lib/modules/`uname -r.`
Slackware64-current/Xfce 4.12/Acer TravelMate 5760
-------------
Registered Linux User #557010
Спасибо сказали:

Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: [РЕШЕНО]установка на флешку

Сообщение drBatty »

разобрался я с модулями, для моего девайса нужны эти

Код: Выделить всё

Module                  Size  Used by
ehci_hcd               34730  1 ehci_pci
ehci_pci                2980  0
f2fs                   90398  0
hid                    68623  2 hid_generic,usbhid
hid_generic              741  0
loop                   14654  0
ums_realtek             6123  0
usb_storage            36311  2 ums_realtek
usbhid                 32049  0

(f2fs пока не нужно, ну ладно)
теперь носитель определяется:

Код: Выделить всё

[    6.242738] scsi 6:0:0:0: Direct-Access     Generic- Multi-Card       1.00 PQ: 0 ANSI: 0 CCS
[    6.474097] usb 4-2: new full-speed USB device number 3 using uhci_hcd
[    6.659211] usb 4-2: New USB device found, idVendor=0a12, idProduct=0001
[    6.659366] usb 4-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[    7.100832] sd 6:0:0:0: [sda] 1990656 512-byte logical blocks: (1.01 GB/972 MiB)
[    7.102196] sd 6:0:0:0: [sda] Write Protect is off
[    7.102330] sd 6:0:0:0: [sda] Mode Sense: 03 00 00 00
[    7.103438] sd 6:0:0:0: [sda] No Caching mode page present
[    7.103570] sd 6:0:0:0: [sda] Assuming drive cache: write through
[    7.108312] sd 6:0:0:0: [sda] No Caching mode page present
[    7.108453] sd 6:0:0:0: [sda] Assuming drive cache: write through
[    7.110101]  sda: sda1
[    7.114332] sd 6:0:0:0: [sda] No Caching mode page present
[    7.114490] sd 6:0:0:0: [sda] Assuming drive cache: write through
[    7.114647] sd 6:0:0:0: [sda] Attached SCSI removable disk

далее пауза rootdelay, и потом пишет, что не смогла смонтировать rootfs, и потом не нашла /sbin/init
И вываливается в shell. В шелле можно посмотреть содержимое рамдиска

Код: Выделить всё

total 52
drwxr-xr-x    2 root     root             0 Nov 26  2008 bin
drwxr-xr-x   10 root     root          4340 Jul 15 20:50 dev
drwxr-xr-x    3 root     root             0 Jul 15 20:51 etc
-rwxr-xr-x    1 root     root         11475 Jun 22 05:27 init
-rw-r--r--    1 root     root            16 Jul 15 20:24 initrd-name
-rw-r--r--    1 root     root             0 Apr  3  2008 keymap
drwxr-xr-x    4 root     root             0 Jul 15 20:24 lib
-rwxr-xr-x    1 root     root           335 Jul 15 20:24 load_kernel_modules
-rw-r--r--    1 root     root             0 Jun 27  2007 luksdev
-rw-r--r--    1 root     root             0 Dec 19  2009 lukskey
drwxr-xr-x    2 root     root             0 Feb 29  2004 mnt
dr-xr-xr-x   90 root     root             0 Jul 15 20:50 proc
-rw-r--r--    1 root     root             0 Feb 20  2008 resumedev
drwxr-xr-x    2 root     root             0 Nov 26  2008 root
-rw-r--r--    1 root     root             0 May 26  2004 rootdev
-rw-r--r--    1 root     root             0 May 26  2004 rootfs
drwxr-xr-x    3 root     root            60 Jul 15 20:50 run
drwxr-xr-x    2 root     root             0 Jul 15 20:24 sbin
dr-xr-xr-x   13 root     root             0 Jul 15 20:50 sys
drwxr-xr-x    3 root     root             0 Jul 15 20:24 usr
-rw-r--r--    1 root     root             2 Oct  9  2007 wait-for-root
drwxr-xr-x   21 root     root          4096 Jul 15 20:22 x

но главное: можно создать каталог, и смонтировать туда /dev/sda1 (мою корневую ФС). По каким-таким причинам оно сама не может -- загадка. Подскажите, если кто знает, пожалуйста.

А если вбить exit, то вываливается ессно кернелпаник.
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:

Аватара пользователя
yars
Сообщения: 1144
Статус: Slacker!
ОС: Slackware64-current

Re: [РЕШЕНО]установка на флешку

Сообщение yars »

Может, в fstab что-то не так?
Slackware64-current/Xfce 4.12/Acer TravelMate 5760
-------------
Registered Linux User #557010
Спасибо сказали:

Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: [РЕШЕНО]установка на флешку

Сообщение drBatty »

yars
всё так

Код: Выделить всё

cat etc/fstab
/dev/sda1        /                ext4        defaults         1   1
#/dev/cdrom      /mnt/cdrom       auto        noauto,owner,ro,comment=x-gvfs-show 0   0
/dev/fd0         /mnt/floppy      auto        noauto,owner     0   0
devpts           /dev/pts         devpts      gid=5,mode=620   0   0
proc             /proc            proc        defaults         0   0
tmpfs            /dev/shm         tmpfs       defaults         0   0
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:

Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: [РЕШЕНО]установка на флешку

Сообщение drBatty »

решил таки
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:

Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: [РЕШЕНО]установка на флешку

Сообщение drBatty »

проблема в том, что я забыл задать
drBatty писал(а):
14.07.2013 22:17
# mkinitrd -c -k 3.9.9-smp -m ehci_hcd:uhci-hcd:ehci_pci:ums-realtek:usb-storage

ключи -r и -f подробнее здесь: http://emulek.blogspot.ru/2013/07/slackware-f2fs.html
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали: