Seltsame Laufwerkszuweisung für HDDs

Hallo, vielleicht habe ich den Titel des Threads nicht gut formuliert. Ich habe folgendes Problem bzw. Situation: SSD für /root, eine HDD für /home und eine gleich große HDD für ein 1:1- Backup meiner Daten, welche ich aber nur bei Bedarf einhänge. Da die beiden HDDs identisch sind, klemme ich vor einer Neuinstallation die Backup-HDD erstmal ganz ab, um nicht mein /home versehentlich auf die falsche Platte zu legen. Dabei ist dann, wie zu erwarten, die SSD Sda, die HDD Sdb. Wenn ich aber dann auch noch nachträglich die Backup-HDD anschließe, wird diese zu Sdb und die HDD mit /home wird instant zu Sdc. Mich nervt so etwas einfach, Irgendwas läuft doch da falsch, oder?

Im laufenden Betrieb sollte das nicht geschehen, sonst läuft in der Tat irgendwas "falsch".

Falls da ein Aus-/Einschalten dazwischen liegt, dann kann das durchaus passieren. Ist auch ein Grund, warum man UUID oder LABEL in /etc/fstab zum Identifizieren verwendet.

3 Likes

Ja ok, aber wie hilft mir das jetzt weiter?

Zeig uns doch mal wie Deine fstab aussieht, dann kann man das konkret erklären. Einfach Ergebnis von

cat /etc/fstab

und

lsblk -f

hier posten.

uwe@HAL ~]$ cat /etc/fstab
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a device; this may
# be used with UUID= as a more robust way to name devices that works even if
# disks are added and removed. See fstab(5).
#
# <file system>             <mount point>  <type>  <options>  <dump>  <pass>
UUID=D8F7-CAC7                            /boot/efi      vfat    umask=0077 0 2
UUID=6c8f0168-fa6c-4d25-968e-3a25454ea641 /              ext4    defaults,noatime,discard 0 1
UUID=956a8f86-6d4f-4585-9a76-a47208352356 swap           swap    defaults,noatime,discard 0 2
UUID=f1a4d87d-34ac-41b8-b3cd-67a1e13cfe69 /home          ext4    defaults,noatime 0 2
tmpfs                                     /tmp           tmpfs   defaults,noatime,mode=1777 0 0
[uwe@HAL ~]$ lsblk -f
NAME   FSTYPE LABEL UUID                                 FSAVAIL FSUSE% MOUNTPOINT
sda                                                                     
├─sda1 vfat         D8F7-CAC7                             299,1M     0% /boot/efi
├─sda2 ext4         6c8f0168-fa6c-4d25-968e-3a25454ea641  197,5G     4% /
└─sda3 swap         956a8f86-6d4f-4585-9a76-a47208352356                [SWAP]
sdb                                                                     
└─sdb1 ext4         76c9bf53-88a4-4d70-8949-b23a590140a8                
sdc                                                                     
└─sdc1 ext4         f1a4d87d-34ac-41b8-b3cd-67a1e13cfe69    1,3T    24% /home
[uwe@HAL ~]$ 

die sdb1 ist die derzeit nicht eingehängte Backup-HDD

Sieht eigentlich gut aus. Home wird durch den UUID-Eintrag immer richtig zugeordnet. Wo genau ist das Problem, dass sich die Plattenbezeichnung ändert? Spielt innerhalb von Manjaro eigentlich keine Rolle.

Ich als Laie denke auch, dass es keine Rolle spielt, ich mag es nur nicht, wenn etwas geschieht, was ich nicht verstehe.

1 Like

Die Frage war doch

Gibt's da noch ein anderes Problem als die Frage nach "ist das ok so"?
Dann bitte das Problem explizit benennen zu dem du dir hier Hilfe erwartest.

@freggel.doe: ich sagte doch eingangs schon, dass ich den Titel der Frage wahrscheinlich nicht ganz getroffen haben könnte :thinking:, aber das, wobei ich mir Hilfe erwarte, wie Du es ausdrückst, ist genau DAS, was ich beschrieben hatte: Die spontane Änderung der Festplattenbezeichnung.

Was heisst hier spontan, wann genau passiert das?

Das passiert, sobald ich nach einer Neuinstallation die Backup-HDD anstecke. Dabei ist es gleich, ob ich das im laufenden Betrieb tue oder bei ausgeschaltetem Rechner. Datenkabel rein, Sdb wird zu Sdc.

OK, im laufenden Betrieb hätte ich nicht damit gerechnet :thinking:. Anders sieht es aus, wenn mit/ohne externe Platte gebootet wird, dann kann das passieren und ist nicht unüblich, wenn auch lästig.

Wahrscheinlich kann man eine Udev-Regel erstellen.

Dass das im laufenden Betrieb geschieht, ist kurios. Bitte mal Output von

$ journalctl -f --grep sd

während des An- und Absteckens der Backup-Platte posten.

  • das Kommando absetzen
  • Platte ran und warten bis sie erkannt wurde
  • Platte wieder abziehen
  • Kommando beenden: Strg+C

Hier ist eine schöne Beschreibung, wie eine Udev-Regel angelegt werden kann. Da Manjaro auf Arch basiert, sollte das auch in Manjaro so funktionieren.
https://wiki.archlinux.de/title/Einbindung_von_USB-Geräten

Platte abgesteckt:`[uwe@HAL ~]$ journalctl -f --grep sd
-- Logs begin at Mon 2019-08-12 15:53:16 CEST. --
Aug 29 21:03:58 HAL udisksd[981]: Unmounted /dev/sdb1 on behalf of uid 1000
Aug 29 21:05:19 HAL kernel: sd 6:0:0:0: [sdd] Synchronizing SCSI cache
Aug 29 21:05:19 HAL kernel: sd 6:0:0:0

Platte wieder angesteckt; `[uwe@HAL ~]$ journalctl -f --grep sd
-- Logs begin at Mon 2019-08-12 15:53:16 CEST. --
Aug 29 21:03:58 HAL udisksd[981]: Unmounted /dev/sdb1 on behalf of uid 1000
Aug 29 21:05:19 HAL kernel: sd 6:0:0:0: [sdd] Synchronizing SCSI cache
Aug 29 21:05:19 HAL kernel: sd 6:0:0:0
``

nochmal nach der Reihenfolge von freggle.do gemacht:

uwe@HAL ~]$ journalctl -f --grep sd
-- Logs begin at Mon 2019-08-12 15:53:16 CEST. --
Aug 29 21:03:58 HAL udisksd[981]: Unmounted /dev/sdb1 on behalf of uid 1000
Aug 29 21:05:19 HAL kernel: sd 6:0:0:0: [sdd] Synchronizing SCSI cache
Aug 29 21:05:19 HAL kernel: sd 6:0:0:0: [sdd] Synchronize Cache(10) failed: Result: hostbyte=DID_NO_CONNECT driverbyte=DRIVER_OK
^C
[uwe@HAL ~]$ 

Hier ist ein anderer interessanter Link:
https://wiki.archlinux.org/index.php/Persistent_block_device_naming

Ich glaube nicht, dass sich die Gräte Namen im normalen störungsfreien Betrieb ändern. Allerdings kann ich mir vorstellen, dass die SATA Anschlüsse nicht so richtig hotswappable sind. Den im laufen Betrieb eine SATA Festplatte dran stecken ist nichts anderes als ein Hotswap oder schlimmer noch eine einfach so abziehen. Es könnte passieren das beide Platten raus geschissen werden und somit beide neu hinzugefügt werden. Wenn z.B. beide am selben Stecker auf dem Mainboard sind. Aber im normal Fall sollten die gebrauchten Buchstaben nicht wieder verwendet werden wenn es zu einem Problem kommt und die Platte nicht richtig ausgeworfen werden konnte. Daher würde ich eher sdd und so weiter erwarten. Bzw. wenn es am Anfang nur sda und sdb gab, geht es mit sdc wieder neu los.

Grundsätzlich gilt aber die Gerätenamen mit sd* sind nicht stabil und können sich ändern. Deswegen wenn irgendwie möglich immer auf eindeutige Bezeichnungen und Gerätenamen zurück greifen. Gerade wenn man oft Festplatten an und wieder ab steckt.

Die Gerätedateien in /dev/disk/by-* machen es auch sehr einfach eindeutige Namen zu finden. Diese Dateien können wie /dev/sdb1 verwendet werden, z.B. /dev/disk/by-id/ata-Samsung_SSD_A-part1 für die erste Partition. Mache Programme oder Konfigdateien können auch bestimmte Präfixe ( LABEL=, UUID=)verwenden um die Benutzung einfacher zu machen.

1 Like

Ich denke die Zuordnung zum Beispiel zum /home sollte über die fstab immer gegeben sein. Nur dass die Platte unterschiedliche Device-Letter sieht.
Wenn der Computer über mehr als einen SATA-, SCSI- oder IDE-Festplattencontroller verfügt, ist die Reihenfolge, in der die entsprechenden Geräteknoten hinzugefügt werden, beliebig.

Forum kindly sponsored by Bytemark