SD Kartenleser ausnehmen

Hast Du Probleme mit Hardware, die durch die anderen Foren nicht abgedeckt werden? Schau auch in den "Tipps und Tricks"-Bereich.
Antworten
reox
Beiträge: 2464
Registriert: 06.06.2006 22:09:47
Lizenz eigener Beiträge: MIT Lizenz

SD Kartenleser ausnehmen

Beitrag von reox » 14.06.2020 16:55:29

Wenn ich grub aktualisiere, dann erhalte ich eine metrische Tonne von dieser Meldung:

Code: Alles auswählen

  /dev/sdb: open failed: No medium found
Selbige Meldung auch wenn ich zB vgscan ausführe.

sdb ist ein USB SD Kartenlesegerät, welches immer am Rechner hängt:

Code: Alles auswählen

$ ls -al /dev/disk/by-id
usb-Generic_Ultra_HS-SD_MMC_000000264001-0:0 -> ../../sdb
$ ls -al /dev/disk/by-path
pci-0000:00:1a.0-usb-0:1.1.1.1:1.0-scsi-0:0:0:0 -> ../../sdb
Ist es möglich das Gerät so lange von der Erstellung eines Blockdevice auszunehmen bis tatsächlich eine Karte gesteckt wird?
Es passiert zwar nichts wenn es sichtbar ist, aber es stört mich einfach...

KP97
Beiträge: 3440
Registriert: 01.02.2013 15:07:36

Re: SD Kartenleser ausnehmen

Beitrag von KP97 » 15.06.2020 14:31:16

Hast Du dazu einen Eintrag in der fstab? Vielleicht diesen erweitern mit nofail und noauto, wäre einen Versuch wert.

reox
Beiträge: 2464
Registriert: 06.06.2006 22:09:47
Lizenz eigener Beiträge: MIT Lizenz

Re: SD Kartenleser ausnehmen

Beitrag von reox » 15.06.2020 15:07:35

Nein, in der fstab ist nichts drin - aber systemd macht offenbar irgendwas magisches:

Code: Alles auswählen

 $ systemctl
  [...]
  sys-devices-pci0000:00-0000:00:1a.0-usb1-1\x2d1-1\x2d1.1-1\x2d1.1.1-1\x2d1.1.1.1-1\x2d1.1.1.1:1.0-host6-target6:0:0-6:0:0:0-block-sdb.device loaded active plugged   Ultra_HS-SD_MMC
  [...]
$ systemctl status sys-devices-pci0000:00-0000:00:1a.0-usb1-1\x2d1-1\x2d1.1-1\x2d1.1.1-1\x2d1.1.1.1-1\x2d1.1.1.1:1.0-host6-target6:0:0-6:0:0:0-block-sdb.device
● sys-devices-pci0000:00-0000:00:1a.0-usb1-1x2d1-1x2d1.1-1x2d1.1.1-1x2d1.1.1.1-1x2d1.1.1.1:1.0-host6-target6:0:0-6:0:0:0-block-sdb.device - /sys/devices/pci0000:00/0000:00:1a.0/usb1/1x2d1/1x2d1.1/1x2d1.1.1/1x2d1.1.1.1/1x2d1.1.1.1:1.0/host6/target6:0:0/6:0:0:0/block/sdb
     Loaded: loaded
     Active: inactive (dead)

Benutzeravatar
smutbert
Moderator
Beiträge: 8331
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: SD Kartenleser ausnehmen

Beitrag von smutbert » 15.06.2020 15:34:53

update-grub durchsucht glaube ich alle verfügbaren Blockgeräte und möglicherweise macht grub-install etwas ähnliches.

Für einen Großteil der Meldungen wird wohl Debianos-prober verantwortlich sein, das ja nach anderen Betriebssystemen sucht. Das könnte man normalerweise gezielt mit Einträgen wie

Code: Alles auswählen

GRUB_OS_PROBER_SKIP_LIST="UUID@device_path"
in der »/etc/default/grub« für bestimmte Geräte unterbinden, aber ohne Speichermedium gibt es kein Dateisystem und damit auch keine UUID und ich weiß nicht ob diese Variable auch noch andere Formate akzeptiert. Wenn du allerdings sowieso keine anderen Betriebssysteme installiert hast, könntest du einmal os-prober deinstallieren oder testweise deaktivieren, wieder in der »/etc/default/grub«

Code: Alles auswählen

GRUB_DISABLE_OS_PROBER=true
(Beim Deaktivieren gab es aber glaube ich einen Bug, dass das nicht funktioniert hat oder zumindest nicht das Durchsuchen aller Laufwerke verhindert hat – keine Ahnung ob das aktuell noch von Bedeutung ist.)

Mit etwas Glück sind es danach schon einmal zumindest weniger Meldungen. Ein weiteres Skript, das für solche Meldungen verantwortlich sein könnte ist »/etc/grub.d/20_linux_xen«, das du nicht brauchst, wenn du xen nicht nutzt. Wahrscheinlich gibt es auch dafür einen Konfigurationseintrag zum Deaktivieren.

reox
Beiträge: 2464
Registriert: 06.06.2006 22:09:47
Lizenz eigener Beiträge: MIT Lizenz

Re: SD Kartenleser ausnehmen

Beitrag von reox » 15.06.2020 16:49:33

mh ja ok so kann man es zumindest für grub los werden.
Aber dann ist da ja noch vgscan:

Code: Alles auswählen

# vgscan
  /dev/sdb: open failed: Kein Medium gefunden
Ich denke mal es wird schon Sinn machen, dass der Kartenleser ohne Gerät als Blockdevice angezeigt wird.
Ich hab auch grad mal getestet was mit einem anderen Kartenleser passiert wenn ich den anstecke:

Code: Alles auswählen

[34617.694351] usb 2-1: new high-speed USB device number 2 using xhci_hcd
[34617.842868] usb 2-1: New USB device found, idVendor=14cd, idProduct=168a, bcdDevice= 0.01
[34617.842872] usb 2-1: New USB device strings: Mfr=1, Product=3, SerialNumber=2
[34617.842874] usb 2-1: Product: USB Mass Storage Device
[34617.842876] usb 2-1: Manufacturer: USB Device
[34617.842877] usb 2-1: SerialNumber: 816820120306
[34617.843345] usb-storage 2-1:1.0: USB Mass Storage device detected
[34617.843535] scsi host7: usb-storage 2-1:1.0
[34618.866810] scsi 7:0:0:0: Direct-Access     USB Mass  Storage Device       PQ: 0 ANSI: 0 CCS
[34618.867039] sd 7:0:0:0: Attached scsi generic sg2 type 0
[34618.886903] sd 7:0:0:0: [sdc] Attached SCSI removable disk
Man merke, es ist keine Karte drin. Interessanterweise sagt der ebenfalls integrierte CF Kartenleser nix.

Noch einen anderen Kartenleser aus dem Fundus gekramt:

Code: Alles auswählen

[34723.913743] usb 2-1: new high-speed USB device number 3 using xhci_hcd
[34724.263342] usb 2-1: New USB device found, idVendor=048d, idProduct=1345, bcdDevice= 1.00
[34724.263344] usb 2-1: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[34724.263345] usb 2-1: Product: Mass Storage Device
[34724.263346] usb 2-1: Manufacturer: Generic
[34724.263347] usb 2-1: SerialNumber: 000000000000100
[34724.263800] usb-storage 2-1:1.0: USB Mass Storage device detected
[34724.263937] scsi host7: usb-storage 2-1:1.0
[34725.311029] scsi 7:0:0:0: Direct-Access     Generic  Compact Flash    0.00 PQ: 0 ANSI: 2
[34725.328194] scsi 7:0:0:1: Direct-Access     Generic  SM/xD-Picture    0.00 PQ: 0 ANSI: 2
[34725.345373] scsi 7:0:0:2: Direct-Access     Generic  SDXC/MMC         0.00 PQ: 0 ANSI: 2
[34725.362543] scsi 7:0:0:3: Direct-Access     Generic  MS/MS-Pro/HG     0.00 PQ: 0 ANSI: 2
[34725.362860] sd 7:0:0:0: Attached scsi generic sg2 type 0
[34725.363002] scsi 7:0:0:1: Attached scsi generic sg3 type 0
[34725.363091] scsi 7:0:0:2: Attached scsi generic sg4 type 0
[34725.363191] sd 7:0:0:3: Attached scsi generic sg5 type 0
[34725.391928] sd 7:0:0:3: [sdf] Attached SCSI removable disk
[34725.392836] sd 7:0:0:1: [sdd] Attached SCSI removable disk
[34725.394430] sd 7:0:0:0: [sdc] Attached SCSI removable disk
[34725.395457] sd 7:0:0:2: [sde] Attached SCSI removable disk
Dort werden alle gleich mal als Gerät hinzugefügt...
Ich vermute, man müsste das irgendwo im Kernel abdrehen, dass er da die Blockdevices erzeugt? Nur vielleicht braucht er das ja, um später beim einstecken der Karte dann richtig zu arbeiten?

KP97
Beiträge: 3440
Registriert: 01.02.2013 15:07:36

Re: SD Kartenleser ausnehmen

Beitrag von KP97 » 15.06.2020 18:54:32

Im Kernel nicht, aber evtl. in einer udev Rule. Ich würde erstmal in /lib/udev/rules.d schauen, ob es da was gibt. Falls ja, nach /etc/udev/rules.d schieben, aber das weißt Du ja.
Oder selbst eine schreiben?
Sonst wüßte ich nicht, was man da ändern könnte, Du willst die Funktion ja behalten. Sonst den Leser abziehen und nur bei Bedarf anstecken.

Mein Chipkartenleser Reiner SCT macht das nicht, dann habe ich noch einen Leser als USB-Stick, der bringt aber auch keine Fehler.
Wenn ich den eingesteckt lasse und neustarte, gibt es im Log drei Einträge und dann ist Ruhe:
Jun 15 18:40:58 MB kernel: scsi 1:0:0:0: Direct-Access Multiple Card Reader 1.00 PQ: 0 ANSI: 0
Jun 15 18:40:58 MB kernel: sd 1:0:0:0: Attached scsi generic sg1 type 0
Jun 15 18:40:59 MB kernel: sd 1:0:0:0: [sdb] Attached SCSI removable disk

reox
Beiträge: 2464
Registriert: 06.06.2006 22:09:47
Lizenz eigener Beiträge: MIT Lizenz

Re: SD Kartenleser ausnehmen

Beitrag von reox » 15.06.2020 19:23:10

KP97 hat geschrieben: ↑ zum Beitrag ↑
15.06.2020 18:54:32
Mein Chipkartenleser Reiner SCT macht das nicht, dann habe ich noch einen Leser als USB-Stick, der bringt aber auch keine Fehler.
Wenn ich den eingesteckt lasse und neustarte, gibt es im Log drei Einträge und dann ist Ruhe:
Komisch, denn auch deiner wird ja als Blockdevice angemeldet.
KP97 hat geschrieben: ↑ zum Beitrag ↑
15.06.2020 18:54:32
Sonst den Leser abziehen und nur bei Bedarf anstecken.
Leichter gesagt als getan - der ist im Bildschirm verbaut und über den habe ich auch Maus und Tastatur angehängt.
Aber ja, eigentlich würde ich ihn gerne abstecken, er verwirrt auch regelmäßig das BIOS :/

Benutzeravatar
ingo2
Beiträge: 1124
Registriert: 06.12.2007 18:25:36
Lizenz eigener Beiträge: GNU Free Documentation License
Wohnort: Wo der gute Riesling wächst

Re: SD Kartenleser ausnehmen

Beitrag von ingo2 » 16.06.2020 11:59:30

Hast du schon im BIOS nachgeschaut?

Ist dort der Kartenleser evtl. als Boot-Device konfiguriert (unabhängig davon, ob ein Medium eingesetzt ist) - und dann womöglich noch an erster Stelle in der Boot-Reihenfolge?

Dann schalte das ab und mach

Code: Alles auswählen

update-grub

reox
Beiträge: 2464
Registriert: 06.06.2006 22:09:47
Lizenz eigener Beiträge: MIT Lizenz

Re: SD Kartenleser ausnehmen

Beitrag von reox » 16.06.2020 12:57:23

Nein das BIOS ist unabhängig von den Meldungen IMO.

Naja Problem ist auch übertrieben - es tut ja eh was es soll :D Stellt man die SSD als Primäres Boot device ein aber hat auch gleichzeitg "boot from removable devices" aktiviert, so glaubt das BIOS jedes mal wenn ich den Rechner mal stromlos hatte, dass er doch von dem removable device aka card reader booten soll. Das geht natürlich nicht, weil dort kein Medium drin ist aka keine SD Karte. Leider meint das BIOS dann, dass es jetzt nicht klug wäre irgendwas anderes zu booten und schreibt an, dass es nix zum booten gibt. Einmal Strg+Alt+Entf, F10, SSD auswählen (die immer noch an erster Stelle steht!) und er merkt sich das solange bis ich mal den Strom abziehe oder das USB Kabel woanders anstöpsel. Offenbar merkt sich das Ding, dass ich dieses eine Mal nicht von dem card reader booten wollte und lässt das dann so.
Dieses "Feature" kam mit irgendeinem BIOS update daher. Tja, das hätten sie auch in die release notes schreiben können :P

Ich hab versucht irgendwas in die Richtung zu finden, leere Blockdevice nicht anzuzeigen aber es schaut so aus, als ob das der Kernel gar nicht vorsieht.
Wenn ich zB ein

Code: Alles auswählen

$ echo 1 | sudo tee /sys/block/sdb/device/delete
mache, dann ist /dev/sdb zwar nicht mehr da, aber ein einstecken einer SD Karte führt nicht dazu, dass das Gerät wieder sichtbar wird. Dazu muss ich den Bildschirm einmal powercyclen oder das USB Kabel abziehen und wieder anstecken.

Antworten