automatische erkennung und mount von hdd

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
mclien
Beiträge: 2427
Registriert: 06.12.2005 10:38:46
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Baustelle

automatische erkennung und mount von hdd

Beitrag von mclien » 22.08.2016 20:14:55

es geht um ein backup auf eine externe hdd (verschlüsselt).

Normal mache ich das immer halbautomatisch. Ich schaue in /var/log/messages wie die Platte heute erkannt wird, binde sie mit cryptseup ein und lasse dann mein rsync script laufen.
Da ich jetzt einer weniger versierten Anwenderin ein backup verschaffen muß, merke ich gerade, dass mir das Wissen zu einer zuverlässigen automatischen Erkennung der Platte fehlt.
Ich weiß, dass es über udev läuft, aber das war es schon.
Gebe ich der Platte ein label das dann erkannt wird, nehme ich die UID?
(Problem ist ja immer, dass ohne extra Maßnahmen gerne mal ein USB Stick dafür sorgt die Platte /dev/sdc zu nenen statt /dev/sdb wie die Male davor)

den rest bekomme ich dann hin denke ich.

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

Re: automatische erkennung und mount von hdd

Beitrag von KP97 » 22.08.2016 20:48:35

Ein Label ist immer besser, da es eindeutig und "menschenlesbar" ist. Nach der Benennung ist die /dev/... Bezeichnung dann egal.
Alle meine internen oder externen Platten und Sticks haben Label.

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

Re: automatische erkennung und mount von hdd

Beitrag von smutbert » 22.08.2016 21:48:14

Ein Label ist insofern praktisch, weil zumindest Gnome und Mate die Platte unter /media/[username]/[label] mounten. So kann man also wenn man das Backup abwechselnd auf mehrere externe Datenträger macht, den Dateisystemen einfach dasselbe Label geben.

mclien
Beiträge: 2427
Registriert: 06.12.2005 10:38:46
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Baustelle

Re: automatische erkennung und mount von hdd

Beitrag von mclien » 23.08.2016 10:47:07

was mir noch nicht ganz klar ist: Wenn die Platte ein Label hat, erkennst das system sie dann gleich richtig? Sprich taucht die Platte dann gleich mit dem Label in der /var/log/messages auf und ich kann in meinem script davon ausgehen, dass ich sie immer mit /dev/<labelname> (oder ladet das woanders?) ansprechen?
oder braucht es dafür noch eine udev regel mit der disk ID?

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

Re: automatische erkennung und mount von hdd

Beitrag von smutbert » 23.08.2016 11:12:08

/var/log/messages gibts bei mir nicht - dazu kann ich also nichts sagen ;).
In den Meldungen des Kernels taucht das Label erst mein Mounten des Dateisystems auf, also zB

Code: Alles auswählen

[ 4008.449933] usb 4-5.4: new SuperSpeed USB device number 3 using xhci_hcd
[ 4008.467006] usb 4-5.4: New USB device found, idVendor=0951, idProduct=1666
[ 4008.467008] usb 4-5.4: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 4008.467010] usb 4-5.4: Product: DataTraveler 3.0
[ 4008.467010] usb 4-5.4: Manufacturer: Kingston
[ 4008.467011] usb 4-5.4: SerialNumber: 94DE807246B3B040C91949B8
[ 4008.468272] usb-storage 4-5.4:1.0: USB Mass Storage device detected
[ 4008.468353] scsi host7: usb-storage 4-5.4:1.0
[ 4009.466428] scsi 7:0:0:0: Direct-Access     Kingston DataTraveler 3.0 PMAP PQ: 0 ANSI: 6
[ 4009.466716] sd 7:0:0:0: Attached scsi generic sg6 type 0
[ 4009.466826] sd 7:0:0:0: [sdf] 121110528 512-byte logical blocks: (62.0 GB/57.8 GiB)
[ 4009.466990] sd 7:0:0:0: [sdf] Write Protect is off
[ 4009.466992] sd 7:0:0:0: [sdf] Mode Sense: 45 00 00 00
[ 4009.467153] sd 7:0:0:0: [sdf] Write cache: disabled, read cache: enabled, doesn't support DPO or FUA
[ 4009.616403]  sdf: sdf1 sdf2
[ 4009.617245] sd 7:0:0:0: [sdf] Attached SCSI removable disk
[ 4009.680135] BTRFS: device label BTRFS.USB devid 1 transid 1813 /dev/sdf2
[ 4009.748414] BTRFS info (device sdf2): disk space caching is enabled
[ 4009.748416] BTRFS: has skinny extents
zuerst bemerkt der USB-Teil, dass ein neues Gerät da ist und udev lädt den usb-storage-Treiber. Dann erscheint es als "scsi"-Gerät und schließlich das eigentliche Blockgerät.
Bei mir mountet dann nautilus/Gnome den Stick und dabei gibt der Dateisystemtreiber (hier btrfs) das Label aus.

Allerdings auch ohne Desktopumgebung lädt udev alle notwendigen Kernelmodule und stellt das Blockgerät zur Verfügung unter
- /dev/sdx und die Partitionen unter /dev/sdxy
und außerdem Links entsprechend UUID, Label, Partitionsname,… unter
- /dev/disk/by-.../...
das heißt das System kennt natürlich auch vor dem Mounten UUID, Label, usw.

schwedenmann
Beiträge: 5528
Registriert: 30.12.2004 15:31:07
Wohnort: Wegberg

Re: automatische erkennung und mount von hdd

Beitrag von schwedenmann » 23.08.2016 11:21:45

Hallo


Warum nicht einfach fdisk -l auswerten ?

und dann /dev/xyz setzen ?

sda und falls vorhanden sdb ändern sich ja nicht, ergo ist das nächste device der externe hdd.

mfg
schwedenmann

mclien
Beiträge: 2427
Registriert: 06.12.2005 10:38:46
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Baustelle

Re: automatische erkennung und mount von hdd

Beitrag von mclien » 23.08.2016 11:30:43

Ganz am Ziel bin ich damit dann ja noch nicht.
Ich brauch im Grunde ja "nur" in Lösung die mir die hdd immer eindeutig vor dem mounten zur Verfügung stellt, damit dann das script beim mounten immer das richtige device bekommt.

das problem scenario ist ja: Rechner läuft an den USb stick wird gerade nicht gedacht und die backupplatte ist dann eben /dev/sdc, was unpraktisch ist.
Dazu wäre halt hilfreich, wenn das script einfach immer /dev/backup-platte mounten kann und da zuverlässig die Platte hängt, egal ob sie nun /dev/sdb, sdc ,sde oder was auch immer abbekommen hat.
oder kann ich auch /dev/disk/by-.../... mounten?

ansonsten bleibt dann doch nur UDEV oder?

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

Re: automatische erkennung und mount von hdd

Beitrag von smutbert » 23.08.2016 11:40:03

mclien hat geschrieben:[…]
oder kann ich auch /dev/disk/by-.../... mounten?
natürlich, dazu ist es ja da. Das sind einfach symbolische Links, die auf /dev/sdxy verweisen.

mclien
Beiträge: 2427
Registriert: 06.12.2005 10:38:46
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Baustelle

Re: automatische erkennung und mount von hdd

Beitrag von mclien » 23.08.2016 11:52:57

(habe gerade kein Linux system mit ge-labelten Platten zur Verfügung)
Sobald es eine Platte mit Label gibt, habe ich dann auch ein /dev/disk/by-label ?

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

Re: automatische erkennung und mount von hdd

Beitrag von smutbert » 23.08.2016 12:23:26

Ja, wobei das Label zum Dateisystem gehört. Wenn du die Platte mit GPT partitionierst könntest du zusätzlich oder stattdessen der Partition einen Namen verpassen (PARTLABEL).

Antworten