Booten von SD-Karte [gelöst]

Alles rund um die Systemverwaltung, die Administration und Konfiguration Eures Linuxsystems

Moderator: Moderatoren

Antworten
Spielwurm
Advanced Hacker
Advanced Hacker
Beiträge: 1301
Registriert: 30. Dez 2007, 11:55
Kontaktdaten:

Booten von SD-Karte [gelöst]

Beitrag von Spielwurm » 17. Nov 2011, 20:50

Ich habe bei meiner Zotac-Zbox das Betriebssystem auf einer SD-Karte installiert. Beim Starten erscheint vorschriftsmäßig Grub und lädt den Kernel von der Karte. Dann installiert der alle Treiber, darunter naürlich auch die USB-Treiber und danach erkennt er die Karte nicht mehr, er sucht sie und findet sie nicht. In der anschließenden Shell kann ich die Karte auch nicht mounten, es sei kein ext4-Dateisystem da drauf "oder der Superblock ist beschädigt".

An meinem Arbeitsrechner kann ich das Dateisystem überprüfen, es ist clean. Es muss also daran liegen, dass die Installation des USB-Treibers dazwischen funkt. Es hilft auch nicht, dass ich im BIOS einstelle, er soll die Karte als Festplatte "verkaufen". Gibt es eine Möglichkeit, beim Start Parameter zu übergeben, die mir helfen?

Oder liegt es am neuen Opensuse 12.1? Ich hatte schon mal einen Fehler in Sachen 11.4 und SCSI-Platten ...

Hartmut

PS: Die Installation via Netzwerk-Suse war ohne Probleme möglich, die SD-Karte wurde ohne Murren erkannt.
Zuletzt geändert von Spielwurm am 20. Nov 2011, 20:20, insgesamt 1-mal geändert.
HP Probook 6555b mit Opensuse 13.2, AMD Phenom und Nvidia GT210 für Video mit Opensuse 13.1, Zbox HD-ND01 als Server, Pentium III/600 für Audio mit Opensuse 12.3

Werbung:
josef-wien
Guru
Guru
Beiträge: 4914
Registriert: 23. Sep 2008, 17:09

Re: Booten von SD-Karte

Beitrag von josef-wien » 17. Nov 2011, 22:05

Ohne etwas von 12.1 zu wissen, kann es nach den Symptomen sein, daß in der initrd der Treiber für Ext4 fehlt. Wenn

Code: Alles auswählen

grep CONFIG_EXT4_FS= /einhängepunkt/von/boot/config-*
CONFIG_EXT4_FS=m ergibt und bei

Code: Alles auswählen

gzip -cd /einhängepunkt/von/boot/initrd | cpio -ivt | grep ext4
nichts herauskommt, dann ist es so, und Du mußt in /einhängepunkt/von/etc/sysconfig/kernel ext4 ergänzen sowie in einer chroot-Umgebung eine neue initrd erstellen (suche nach mkinitrd chroot, robi hat das mehrmals erklärt).

Spielwurm
Advanced Hacker
Advanced Hacker
Beiträge: 1301
Registriert: 30. Dez 2007, 11:55
Kontaktdaten:

Re: Booten von SD-Karte

Beitrag von Spielwurm » 17. Nov 2011, 22:21

Leider nicht. Die eingebaute Festplatte ist als /home dabei und ext4 bespielt und sichtbar und durchsuchbar in der Shell.

Ersteres ergibt=y
und "zweiteres": -rwxr-xr-x 1 root root 190440 Oct 29 18:55 sbin/fsck.ext4

Hartmut
HP Probook 6555b mit Opensuse 13.2, AMD Phenom und Nvidia GT210 für Video mit Opensuse 13.1, Zbox HD-ND01 als Server, Pentium III/600 für Audio mit Opensuse 12.3

josef-wien
Guru
Guru
Beiträge: 4914
Registriert: 23. Sep 2008, 17:09

Re: Booten von SD-Karte

Beitrag von josef-wien » 17. Nov 2011, 22:32

Spielwurm hat geschrieben:An meinem Arbeitsrechner kann ich das Dateisystem überprüfen, es ist clean.
Eine letzte Frage, dann steige ich mangels 12.1 aus: Hast Du bei der Prüfung den Parameter -f verwendet?

Spielwurm
Advanced Hacker
Advanced Hacker
Beiträge: 1301
Registriert: 30. Dez 2007, 11:55
Kontaktdaten:

Re: Booten von SD-Karte

Beitrag von Spielwurm » 17. Nov 2011, 23:05

ja

Hartmut
HP Probook 6555b mit Opensuse 13.2, AMD Phenom und Nvidia GT210 für Video mit Opensuse 13.1, Zbox HD-ND01 als Server, Pentium III/600 für Audio mit Opensuse 12.3

Spielwurm
Advanced Hacker
Advanced Hacker
Beiträge: 1301
Registriert: 30. Dez 2007, 11:55
Kontaktdaten:

Re: Booten von SD-Karte

Beitrag von Spielwurm » 18. Nov 2011, 22:09

Ich habe ein wenig geforscht:

die Shell, auf der ich lande, ist ein wenig unkomfortabel. Deswegen habe ich einen USB-Stick mit ext4 formatiert, fdisk draufkopiert und den Stick zusätzlich eingesteckt. Jetzt kann ich mit fdisk sehen, dass die SD-Karte nicht erscheint, der Installations-Stick mit dem Netinstall-ISO ist von /dev/sdc1 zu /dev/sdb1 (und /dev/sdb1p1 wg ISO) geworden. Der neue Stick ist /dev/sdc1. Jetzt habe ich die SD-Karte einfach mal gezogen und wieder eingesteckt und siehe da: dmesg meldet ein neues schnelles USB-Device, allerdings nicht als Mass-Storage-Device. Stecke ich einen USB-Stick rein, dann wird der mir als Mass-Storage gezeigt.

Nun ist die SD-Karte von der neuen Sorte UHCI (schreiben mit 30MB) und vielleicht liegt es daran. Also der nächste Test: eine "normale" SD-Karte mit ext4 fertigmachen, irgendeine Datei draufkopieren (damit ich alle unterscheiden kann) und anstelle der UHCI-Karte einstecken. Jedoch: auch die wird nur als neues schnelles USB-Device erkannt und nicht auch als Mass-Storage-Device.

Fazit: der Kernel setzt einen USB-Erkennungsdienst in Gang, der die SD-Karte außen vor lässt und damit zieht er sich selbst den Boden unter den Füßen weg. Was kann ich dagegen tun?

Hartmut
HP Probook 6555b mit Opensuse 13.2, AMD Phenom und Nvidia GT210 für Video mit Opensuse 13.1, Zbox HD-ND01 als Server, Pentium III/600 für Audio mit Opensuse 12.3

spoensche
Moderator
Moderator
Beiträge: 7261
Registriert: 30. Okt 2004, 23:53
Wohnort: Siegen

Re: Booten von SD-Karte

Beitrag von spoensche » 19. Nov 2011, 02:43

Welche Module sind bei dir unter /etc/sysconfig/kernel in der Variablen MODULES_LOADED_ON_BOOT aufgeführt?
Spielwurm hat geschrieben:Was kann ich dagegen tun?
Was verwendest du für einen Cardreader, extern oder intern?

Poste mal die Ausgabe von

Code: Alles auswählen

fdisk -l
und wenn du die Karte eingesteckt hast die Ausgabe von

Code: Alles auswählen

dmesg | grep -i usb 

gropiuskalle
Guru
Guru
Beiträge: 4603
Registriert: 20. Nov 2007, 15:17
Wohnort: Berlin
Kontaktdaten:

Re: Booten von SD-Karte

Beitrag von gropiuskalle » 19. Nov 2011, 03:28

Spielwurm hat geschrieben:Jetzt habe ich die SD-Karte einfach mal gezogen und wieder eingesteckt und siehe da: dmesg meldet ein neues schnelles USB-Device, allerdings nicht als Mass-Storage-Device. Stecke ich einen USB-Stick rein, dann wird der mir als Mass-Storage gezeigt.
Das ist bei mir allerdings genau so (2GB SD-Karte mit Fat32):

Code: Alles auswählen

[50518.118084] usb 1-2: reset high speed USB device using ehci_hcd and address 7
[51426.710314] sd 4:0:0:0: [sdc] 3935232 512-byte logical blocks: (2.01 GB/1.87 GiB)
[51426.711462] sd 4:0:0:0: [sdc] Assuming drive cache: write through
[51426.713544] sd 4:0:0:0: [sdc] Assuming drive cache: write through
[51426.715736]  sdc: sdc1

Spielwurm
Advanced Hacker
Advanced Hacker
Beiträge: 1301
Registriert: 30. Dez 2007, 11:55
Kontaktdaten:

Re: Booten von SD-Karte

Beitrag von Spielwurm » 19. Nov 2011, 10:04

Kartenleser: intern

Die Ausgabe von fdisk: (ich beschreibe sie hier mal)

beim Laden des Kernels:
sda1: leere Festplatte für /home
sdb1: SD-Karte mit /
sdb2: SD-Karte mit /swap
sdc1: USB-Stick mit Netinstall

nach dem Laden:
sda1: leere Festplatte
sdb1: USB-Stick mit Netinstall
sdc existiert nicht mehr, auch nicht weitere, erst wenn ich einen weiteren Stick einstecke

Ausgabe von dmesg in Sachen USB:

das, was gropiuskalle schreibt

und es stimmt - mir fällt auf, dass am Arbeitsrechner die Karte auch nicht als "Mass-Storage-Device" gemeldet wird. Aber sie wird ohne Murren gemountet, wo also ist der Unterschied? Der Kartenleser scheint nicht mehr vorhanden zu sein!

Hartmut
HP Probook 6555b mit Opensuse 13.2, AMD Phenom und Nvidia GT210 für Video mit Opensuse 13.1, Zbox HD-ND01 als Server, Pentium III/600 für Audio mit Opensuse 12.3

Spielwurm
Advanced Hacker
Advanced Hacker
Beiträge: 1301
Registriert: 30. Dez 2007, 11:55
Kontaktdaten:

Re: Booten von SD-Karte

Beitrag von Spielwurm » 19. Nov 2011, 17:51

So, jetzt habe ich mühselig die Liste der geladenen Treiber geholt:

Code: Alles auswählen

Module                  Size  Used by
nouveau               778194  1 
ttm                    80953  1 nouveau
drm_kms_helper         42489  1 nouveau
drm                   252967  3 nouveau,ttm,drm_kms_helper
i2c_algo_bit           13423  1 nouveau
mxm_wmi                12979  1 nouveau
video                  19653  1 nouveau
wmi                    19256  1 mxm_wmi
button                 13949  1 nouveau
processor              45192  0 
thermal_sys            25017  2 video,processor
Meiner Meinung nach müsste es einen Treiber für den Kartenleser geben und ohne den kann die Karte nicht weiterarbeiten. Oder liege ich falsch? Wenn ja, welcher? Und wenn ich richtig liege, könnte ich das problem dadurch entsorgen, indem ich in der /etc/sysconfig/kernel den Treiber eintrage und mit mkinitrd eine neue Startdatei erzeuge. Richtig?

Hartmut

PS: Aber warum werden die normalen USB-Sticks erkannt?
HP Probook 6555b mit Opensuse 13.2, AMD Phenom und Nvidia GT210 für Video mit Opensuse 13.1, Zbox HD-ND01 als Server, Pentium III/600 für Audio mit Opensuse 12.3

Spielwurm
Advanced Hacker
Advanced Hacker
Beiträge: 1301
Registriert: 30. Dez 2007, 11:55
Kontaktdaten:

Re: Booten von SD-Karte

Beitrag von Spielwurm » 19. Nov 2011, 19:06

Und noch mehr Forschung:

Betriebsystem auf Festplatte gezogen und gestartet. Dann ein lsmod in Textdatei-vorher.txt, Karte einstecken, lsmod > Textdatei-nachher.txt und beide vergleichen. Es fehlen also die Module uas und ums-realtek.

Jetzt zwei Fragen an Fachleute: trage ich das zweite Modul mit einem Bindestrich oder einem Unterstrich ein? Und: muss usbcore mit dazu?

Hartmut
HP Probook 6555b mit Opensuse 13.2, AMD Phenom und Nvidia GT210 für Video mit Opensuse 13.1, Zbox HD-ND01 als Server, Pentium III/600 für Audio mit Opensuse 12.3

spoensche
Moderator
Moderator
Beiträge: 7261
Registriert: 30. Okt 2004, 23:53
Wohnort: Siegen

Re: Booten von SD-Karte

Beitrag von spoensche » 19. Nov 2011, 21:30

Du trägst das Modul mit einem "-" ein. Das Modul usbcore benötigst du nur, wenn der Kartenleser am USB-Bus hängt

Spielwurm
Advanced Hacker
Advanced Hacker
Beiträge: 1301
Registriert: 30. Dez 2007, 11:55
Kontaktdaten:

Re: Booten von SD-Karte

Beitrag von Spielwurm » 19. Nov 2011, 21:56

Deutet das darauf hin, dass der Kartenleser ein USB-Device ist?

Code: Alles auswählen

182.284052] usb 1-5: new high speed USB device number 3 using ehci_hcd
182.410710] usb 1-5: New USB device found, idVendor=0bda, idProduct=0158
182.410719] usb 1-5: New USB device strings: Mfr=1, Product=2, SerialNumber=3
182.410726] usb 1-5: Product: USB2.0-CRW
182.410731] usb 1-5: Manufacturer: Generic
182.410735] usb 1-5: SerialNumber: 20071114173400000
checking bus 1, device 3: "/sys/devices/pci0000:00/0000:00:04.1/usb1/1-5"
bus: 1, device: 3 was not an MTP device
182.534278] usbcore: registered new interface driver uas
182.539313] scsi6 : usb-storage 1-5:1.0
182.539657] usbcore: registered new interface driver ums-realtek
Hartmut
HP Probook 6555b mit Opensuse 13.2, AMD Phenom und Nvidia GT210 für Video mit Opensuse 13.1, Zbox HD-ND01 als Server, Pentium III/600 für Audio mit Opensuse 12.3

Spielwurm
Advanced Hacker
Advanced Hacker
Beiträge: 1301
Registriert: 30. Dez 2007, 11:55
Kontaktdaten:

Re: Booten von SD-Karte

Beitrag von Spielwurm » 20. Nov 2011, 20:19

So, ich habe es geschafft. War ein hartes Stück Arbeit.

Die Schwierigkeit: obwohl ich schnell auf die SD-Karte am Arbeitsrechner zugreifen kann, konnte ich mit mkinitrd am Arbeitsrechner keine neue initrd herstellen. Ausweg: ich musste "mal eben schnell" das OS auf der Festplatte installieren, dann die Karte mounten, unter /dev einen Knoten sdb1 erstellen, dann chroot und mkinitrd. Anschließend neu starten mit geänderter Bootreihenfolge und Erfolg.

Und natürlich vor mkinitrd in die /etc/sysconfig/kernel die beiden Module an die richtige Stelle schreiben. Allerdings ist die Aussage von spönsche falsch: Module werden genau so eingetragen, wie modprobe sie braucht, wenn also ein Trennstrich angesagt ist, dann ist das der Unterstrich.

Noch ein Ergebnis für Entwickler: der Kernel lädt allerhand ums_*-Module, nur das für realtek nicht. Schade.

Hartmut
HP Probook 6555b mit Opensuse 13.2, AMD Phenom und Nvidia GT210 für Video mit Opensuse 13.1, Zbox HD-ND01 als Server, Pentium III/600 für Audio mit Opensuse 12.3

Spielwurm
Advanced Hacker
Advanced Hacker
Beiträge: 1301
Registriert: 30. Dez 2007, 11:55
Kontaktdaten:

Re: Booten von SD-Karte [gelöst]

Beitrag von Spielwurm » 23. Nov 2011, 12:25

So, alles läuft. Der Rechner ist jetzt mein neuer Server. Ihr könnt ihn hier bewundern:
http://hartmut.homelinux.org/Technik/MeinServer.html

Viel Spaß beim Schauen

Hartmut
HP Probook 6555b mit Opensuse 13.2, AMD Phenom und Nvidia GT210 für Video mit Opensuse 13.1, Zbox HD-ND01 als Server, Pentium III/600 für Audio mit Opensuse 12.3

Spielwurm
Advanced Hacker
Advanced Hacker
Beiträge: 1301
Registriert: 30. Dez 2007, 11:55
Kontaktdaten:

Re: Booten von SD-Karte [nicht mehr gelöst]

Beitrag von Spielwurm » 11. Sep 2013, 20:18

Kapitel 2
Heute habe ich eine Kopie der Karte gemacht (mit dd) und die Kopie in den Server gesteckt. Sie startete einwandfrei. Danach habe ich auf der Kopie ein Update auf Opensuse 12.3 gemacht. Der Start danach endete mit einer Kernel-Panik. Ursache: kein Modul uas gefunden. Sch ... :zensur:

Nach einigem googlen folgendes gefunden:
http://forums.gentoo.org/viewtopic-t-95 ... art-0.html und https://bugzilla.kernel.org/show_bug.cgi?id=51031.
Das sagt mir einiges, aber leider fand ich nicht, ob es einen Ersatz für das Modul uas gibt. Weiß einer von Euch Rat? :???:

Spielwurm
HP Probook 6555b mit Opensuse 13.2, AMD Phenom und Nvidia GT210 für Video mit Opensuse 13.1, Zbox HD-ND01 als Server, Pentium III/600 für Audio mit Opensuse 12.3

Antworten

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 4 Gäste