[linux] Booten van USB harddisk

Pagina: 1
Acties:
  • 117 views sinds 30-01-2008
  • Reageer

  • ekoopman
  • Registratie: April 2003
  • Laatst online: 07-02 21:10
Mijn laptop harddisk is vorige week overleden, en in de tussentijd probeer ik met een externe harddisk erbij een werkend systeem te krijgen. Knoppix is op zich natuurlijk een optie, maar niet echt wat ik wil.
Ik heb dus geprobeerd suse 9.0 pro te installeren, gaat op zich prima. Installatie gaat goed, harddisk wordt herkend, gepartitioneerd en geformateerd. Installatie files komen ook aan op de harddisk maar het probleem onstaat pas als ik voor de eerste keer wil booten van de disk.
Grub laadt netjes, de kernel probeert te starten maar stopt dan met een kernel panic omdat ie de root partitie niet kan openen.
Ik heb geprobeerd met mk_initrd de juiste modules (usb-storage) te laden voordat de er geprobeerd wordt de disk te mounten maar dat lukt niet echt. Het enige dat ik kan vinden zijn wat obscure doe het zelf kernel patches voor andere kernels dan de suse 9.0 kernel (ben sowieso niet 1337 genoeg om een kernel patch te installeren op een niet werkend systeem :'( ).
Is er iemand die een vergelijkbare situatie heeft gehad en daar misschien een oplossing voor heeft?

  • mOrPhie
  • Registratie: September 2000
  • Laatst online: 29-01 12:00

mOrPhie

❤️❤️❤️❤️🤍

Er komen mij de volgende vraagjes op:

De kernel staat ook op die USB-harddisk?
Heb je het al een keer geprobeerd met een rescuediskette (kernel vanaf diskette laden, maar als root-device de USB-harddisk nemen)?

Een experimentele community-site: https://technobabblenerdtalk.nl/. DM voor invite code.


Verwijderd

vmlinuz root=/dev/usb/<device>

dat misschien?

  • Dr. Malsain
  • Registratie: Juli 2002
  • Laatst online: 14-02-2023
Kan het misschien liggen aan de wijze dat de partitie gemount is en de lees- of schrijfrechten niet helemaal correct zijn ingevuld, zodat bepaalde acties niet kunnen worden uitgevoerd? Was even een gedachte zonder echt verder er goed over nagedacht te hebben.

  • Tony Vroon
  • Registratie: Juni 1999
  • Laatst online: 13-06-2020

Tony Vroon

Werkt nu ergens anders

Voor USB-storage heb je ook sd_mod nodig (SCSI disk support), omdat er SCSI-emulatie wordt toegepast. Zonder sd_mod werkt het allemaal prima, wordt je hardware gedetecteerd... alleen je kunt de volumes niet mounten (sterker nog, de partitietabel wordt niet eens gelezen).

Verder moet je even kijken of je je USB controller-drivers wel laadt, en of je de juiste hebt. USB 2.0 heeft EHCI (+ een USB 1.1 companion controller, daar moet je ook een driver voor laden), USB 1.1 heeft OHCI of UHCI. Via/Intel heeft UHCI, de rest gebruikt OHCI. (Drivernaam is Xhci-hcd).

Overigens heb ik betere ervaringen met het in de kernel compileren van drivers die je voor het booten absoluut nodig hebt. (Niet zo'n fan van initrd's, meer werk om de juiste drivers geladen te krijgen).

"Wie is deesen figuur, hier ten topic aangheduidt als 'hij', wiens mededelinghe soo eenen consternatie weet te ontluycken :? " -- dion_b


  • Mac_Cain13
  • Registratie: Juni 2003
  • Laatst online: 27-01 22:51
Die kernel panic krijg je omdat USB nogal traag reageerd. De kernel wel contact maken met je HD maar de respons laat ff op zich wachten omdat het via USB gaat. Je moet daarom je kernel patchen. Als je USB-HD dan niet optijd reageerd zal hij opnieuw proberen, net zolang tot je USB-HD zich heeft gemeld. (Meestal moet ie 2 of 3 keer proberen voor het lukt.)

Ik zal ff de patch voor je opzoeken, maar de search is kapot dus het word handwerk :P

Gevonden! Het is wel monnikenwerk dat zoeken zonder search, maar het resultaat mag er wezen. :D
Hier vind je mijn eigentopic over het booten vanaf een USB-HD, ik had exact het zelfde probleem als jou en dit is een draadje over het booten van Knoppix vanaf de USB-HD. Komen beide op het zelfde neer, maar die ene is specifiek op Knoppix gericht.
De patch die je moet gebruiken vind je hier. Deze moet je dus loslaten op je kernel source en dan het boeltje opnieuw compilen. In de draadjes staan genoeg aanwijzingen en mocht je er alsnog niet uitkomen kun je natuurlijk altijd nog ff vragen. :)

Je kunt als je dat liever hebt ook nog een andere constructie met Runt bouwen, dat heeft I.R. Butcher nog een poosje gebruikt. Alleen is een nieuwe kernel wel netter en cooler 8)

De oplossing van mOrPhie zal ook niet werken, omdat je dan nog die time-out houd volgens mij, iig als je hem bij het booten mee geeft. (dus 'vmlinuz root=/dev/usb/<device>' doet oid) Je kan hem wel ná het booten chrooten, omdat de kernel dan iets meer geduld heeft.

Je moet natuurlijk wel zorgen dat alle USB modules geladen zijn (zoals Tony Vroon aangeeft) en in de kernel moet ook 'Probe all LUNs' aan staan. Anders gaat de kernel je partitietabel niet volledig inlezen.

[ Voor 66% gewijzigd door Mac_Cain13 op 09-04-2004 09:59 ]


  • ekoopman
  • Registratie: April 2003
  • Laatst online: 07-02 21:10
Dank jullie allemaal :). Ik ga gelijk even alle suggesties proberen (na het ontbijt)

* Even een update. De kernel patch bleek niet te werken op de suse 9 kernel (2.4.21-99), moest dus met de hand de patch proberen in te bouwen, ik gok dat het in init/do_mounts.c moet, daar staat het stuk code wat tijdens het booten de foutmelding geeft.
Na veel gepruts (suse wil cd 2-5 met kernel source en compiler pas hebben na eerste boot) is het toch gelukt om de kernel dus aan te passen. Staat nu te compilen en het lijkt tot zover goed te gaan...alleen errug traag om te compilen op een externe harddisk :).

[ Voor 76% gewijzigd door ekoopman op 09-04-2004 16:55 ]


  • ekoopman
  • Registratie: April 2003
  • Laatst online: 07-02 21:10
D'oh! Het gaat bijna goed. De kernel patch werkte dus, hij is fanatiek aan het herproberen om /dev/sda4 te mounten maar na 10 minuten gebeurt er nog steeds niet. Ik krijg alleen maar
code:
1
2
3
kmod: failed to exec /sbin/modprobe -s -k  block-major-8, errno = 2
VFS: Cannot open root device "sda4" or 08:04
Please append a correct "root=" boot option


Ik heb dus met mk_initrd usb-storage en usbcore al als module geladen op dit moment (sd_mod wordt er ook vanzelf bijgezet).
Ik gok dus dat er iets mis gaat bij de eerste regel? :|

*laatste edit*

het is eindelijk gelukt! Bleek dat ik de usb host controller modules vergeten was 8)7 . Draai nu netjes suse 9 vanaf m'n draagbare harddiskje!
Veel dank voor alle goed suggesties _/-\o_

[ Voor 19% gewijzigd door ekoopman op 10-04-2004 17:23 ]


  • Dr. Malsain
  • Registratie: Juli 2002
  • Laatst online: 14-02-2023
Kroxigor schreef op 09 april 2004 @ 17:37:

het is eindelijk gelukt! Bleek dat ik de usb host controller modules vergeten was 8)7 . Draai nu netjes suse 9 vanaf m'n draagbare harddiskje!
Veel dank voor alle goed suggesties _/-\o_
Het kan ook belangrijk zijn wat de volgorde is waarin je de drivers laadt.
Pagina: 1