Hinweis: Das Forum wird geschlossen! Neue Registrierungen sind nicht mehr möglich!

 Zurück zu Pro-Linux   Foren-Übersicht   FAQ     Suchen    Mitgliederliste
Label von Festplatten auslesen

 
Neuen Beitrag schreiben   Auf Beitrag antworten    Pro-Linux Foren-Übersicht -> Hardware
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Karlomann
Gast





BeitragVerfasst am: 22. Jan 2007 14:51   Titel: Label von Festplatten auslesen

Hallo,

wenn ich einer Partition ein label zuweise, z.B mit: mke2fs -L VOLUME1 /dev/sda1, kann ich das später irgendwie auslesen?

Anders formuliert, kann ich mir irgendwie eine Liste aller Labels anzeigen lassen, die gerade im System vorhanden, aber nicht unbedingt eingebunden sind? Quasi so etwas wie /cat/proc/partitions, halt nur für Labels

Es geht darum, Wechselplatten anhand des Labels zu erkennen. Je nach eingelegter Platte soll ein script laufen, sprich:

Platte einlegen, dbus/hal/ivman(?) (damit muß ich mich noch beschäftigen) erkennt ein neues Ereignis, ließt daraufhin das Label aus und übergibt dieses Label dann an ein Skript, welches die Platte einbindet, nfs reexportiert usw. usf.

Da recht viel gewechselt wird, ist eine Festlegung anhand von Gerätenamen (/dev/sdx) nicht möglich, diese Option fällt also aus, und udev ist nicht in der Lage, Festplatten gleichen typs zu unterscheiden. Seriennummern o.ä. werden nicht ausgelesen
 

jochen
prolinux-forum-admin


Anmeldungsdatum: 14.01.2000
Beiträge: 699
Wohnort: Jülich

BeitragVerfasst am: 22. Jan 2007 15:27   Titel:

Hi,

die gewünschte Information liefert Dir im Falle von ext2/3 das tune2fs-Kommando:
Code:
[root@rechner ~]# file -s /dev/hda1
/dev/hda1: Linux rev 1.0 ext3 filesystem data (needs journal recovery) (large files)
[root@rechner ~]# tune2fs -l /dev/hda1
tune2fs 1.35 (28-Feb-2004)
Filesystem volume name:   /
Last mounted on:          <not available>
Filesystem UUID:          b43c990c-9eba-4b77-9a05-3aab174f653b
Filesystem magic number:  0xEF53
Filesystem revision #:    1 (dynamic)
Filesystem features:      has_journal ext_attr resize_inode dir_index filetype needs_recovery sparse_super large_file
Default mount options:    (none)
Filesystem state:         clean
Errors behavior:          Continue
Filesystem OS type:       Linux
Inode count:              1026144
Block count:              2048279
Reserved block count:     102413
Free blocks:              591408
Free inodes:              781304
First block:              0
Block size:               4096
Fragment size:            4096
Reserved GDT blocks:      500
Blocks per group:         32768
Fragments per group:      32768
Inodes per group:         16288
Inode blocks per group:   509
Filesystem created:       Mon Jun 27 16:43:48 2005
Last mount time:          Thu Dec 14 07:48:33 2006
Last write time:          Thu Dec 14 07:48:33 2006
Mount count:              25
Maximum mount count:      -1
Last checked:             Mon Jun 27 16:43:48 2005
Check interval:           0 (<none>)
Reserved blocks uid:      0 (user root)
Reserved blocks gid:      0 (group root)
First inode:              11
Inode size:               128
Journal inode:            8
First orphan inode:       863316
Default directory hash:   tea
Directory Hash Seed:      9dd4caa8-3e28-431c-b139-dd3926844fd2
Journal backup:           inode blocks
Gegebenenfalls ist ein Identifizieren der Platten per UUID dann der sicherere Weg - Volume Labels hat man schnell schon mal doppelt vergeben, aber die UUID soll immer eindeutig sein. In der bash ist das schnell gebastelt:
Code:
FS_UUID=$(tune2fs -l $FS_DEVICE | awk -F ': +' '$1 == "Filesystem UUID" {print $NF }')
Wenn Du doch lieber das Label verwenden möchtest, ersetze "Filesystem UUID" einfach durch "Filesystem volume name".

Disclaimer: So funktioniert's mit ext2/3, bei anderen Dateisystemarten sollte es zumindest ähnliche Tools geben - wenn ein Volume Label überhaupt gesetzt werden kann (reiserfs3.6 kann es m.E. nicht, aber da könnte ich mich irren).

Viel Spass beim Basteln,
Jochen
_________________
Die grösste Lüge der EDV? "Mal eben..."
 
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen

sumsi
Gast





BeitragVerfasst am: 23. Jan 2007 18:12   Titel: udev

Hallo,

eleganter, hat man sich einmal in die Theamtik eingearbeitet, geht das mit der seit Kernel 2.6.x verfügbarer udev-Methode.
Damit kann man so gut wie alle Eigenschaften (irgend) eines Devices verwerten.

http://de.gentoo-wiki.com/Udev
http://de.gentoo-wiki.com/Udev_Rules

lg. sumsi
 

komsomolze



Anmeldungsdatum: 03.03.2006
Beiträge: 429

BeitragVerfasst am: 24. Jan 2007 1:12   Titel:

Zitat:
(reiserfs3.6 kann es m.E. nicht, aber da könnte ich mich irren).
reiserfs hat LABEL, jedoch behandeln die Tools es nicht wie bei anderen FS mit dem Schalter '-L', sondern '-l'.
Das Log muss zudem Standard-Werte haben, zBsp darf es keine selbstgewählte logsize haben oder extern sein.

Ich persönlich ziehe LABEL den UUID vor. Bei den vielen Zahlen in der fstab wurde ich ziemlich fusselig.

Frage:
cfdisk zeigt diese LABEL an jedoch nur "pro block-device".
Gibt es etwas, das ähnlich 'fdisk -l' auch eine cfdisk-artige Übersicht über alle Platten bietet? Also mit den LABEL!





--------------------------------------------------------------------
EDIT 2007-03-21
Doch, da gibt es etwas:
Code:
blkid -c/dev/null -sLABEL -sTYPE
bzw. die /etc/blkid.tab, in der die Informationen LABEL und UUID vorliegen.
_________________
mfg komsomolze


Zuletzt bearbeitet von komsomolze am 24. März 2007 11:27, insgesamt 2-mal bearbeitet
 
Benutzer-Profile anzeigen Private Nachricht senden

jochen
prolinux-forum-admin


Anmeldungsdatum: 14.01.2000
Beiträge: 699
Wohnort: Jülich

BeitragVerfasst am: 24. Jan 2007 9:36   Titel:

komsomolze hat folgendes geschrieben::
reiserfs hat LABEL, jedoch ...
Ah? Wieder was gelernt - danke.

In der fstab würde ich ebenfalls nur ungerne UUIDs verwenden. Für die festen Partitionen kann man dann ja Devicenamen/Labels nehmen und nur für die Wechselmedien die UUIDs.

Ein Tool für ein "fdisk -l à la cfdisk" kenne ich leider nicht.

Jochen
_________________
Die grösste Lüge der EDV? "Mal eben..."
 
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen

an.max.
Gast





BeitragVerfasst am: 24. Jan 2007 10:20   Titel: smart

OK. habe mich überzeugt, mit udev gleiche IDE-Plattten am gleichen Steckplatz geht nicht ...

Aber vielleicht damit:
http://www.linux-user.de/ausgabe/2004/10/056-smartmontools/

bye an.max.
 

2.
Gast





BeitragVerfasst am: 24. Jan 2007 10:35   Titel: serial

seiennr. bekommt man auch mit
Code:
hdparm -i
angezeigt
 

Karlomann
Gast





BeitragVerfasst am: 24. Jan 2007 22:21   Titel:

@jochen: Vielen Dank. Zur Info: Die UUIDs für xfs gibt es mit xfs_admin -u /dev/sdx und für reiserfs mit reiserfstune /dev/sdx. Letzeres bei mir ohne irgend einen Schalter, da die nur zum setzen, nicht aber zum auslesen dienen.

@sumsi: udev kann keine Platten gleichen Typs unterscheiden, daß ist mein großes Dilemma und hat mich von der Sinnlosigkeit eines software RAID5 überzeugt, da es absolut nicht möglich ist, die defekte Platte ausfindig zu machen. Außer man legt eine extra Partition an, anhand derer die Platten identifiziert werden können.

@2. hdparm geht bei mir nicht:
Code:

# hdparm -i /dev/sda
/dev/sda1:
 HDIO_GET_IDENTITY failed: Inappropriate ioctl for device


fstab soll in meinem Fall nicht verwedet werden, sondern das wird dereinst über ein Skript geregelt, welches von einem noch herauszufindenden hotplug Ereignis/Dienst aufgerufen wird.
 

Karlomann
Gast





BeitragVerfasst am: 24. Jan 2007 22:32   Titel:

Ups, da ist mir ein Fehler unterlaufen. Keine Ahnung, wo die "1" hinter sda bei hdparm herkommt.

Nachtrag: smartctl klappt auch hervorragend:
Code:

# smartctl -i -d ata /dev/sda
smartctl version 5.36 [x86_64-pc-linux-gnu] Copyright (C) 2002-6 Bruce Allen
Home page is http://smartmontools.sourceforge.net/

=== START OF INFORMATION SECTION ===
Device Model:     SAMSUNG HD160JJ
Serial Number:    S08HJ1MYC04503
Firmware Version: WU100-33
User Capacity:    160,041,885,696 bytes
Device is:        In smartctl database [for details use: -P show]
ATA Version is:   7
ATA Standard is:  ATA/ATAPI-7 T13 1532D revision 4a
Local Time is:    Wed Jan 24 22:27:29 2007 CET
SMART support is: Available - device has SMART capability.
SMART support is: Enabled


Schade, das udev die Seriennummer nicht ausliest.
 

Janka



Anmeldungsdatum: 11.02.2006
Beiträge: 3569

BeitragVerfasst am: 25. Jan 2007 16:53   Titel:

Udev ist ein Haufen Skripte. Es ist prinzipiell kein Problem, die Funktion nachzurüsten. Mein Gefühl sagt mir, dass du nicht der einzige mit diesem Problem bist.

Ich habe mit udev noch nicht soooo viel gemacht, aber vielleicht kriegen wir ja zusammen was hin.

Janka
_________________
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.
 
Benutzer-Profile anzeigen Private Nachricht senden

sumsi
Gast





BeitragVerfasst am: 27. Jan 2007 13:24   Titel: es gibt noch ...

Hallo,
es gibt noch speziell für LABEL

ext2/3 : e2label /dev/partition
xfs: xfs_admin -l /dev/label

bye sumsi
 

CSa
Gast





BeitragVerfasst am: 29. März 2007 16:47   Titel: vol_id

Schon mal vol_id versucht (Benutzt udev auf Debian, um z.B. Links in /dev/disk/by-label/ zu erzeugen)?

# /lib/udev/vol_id --export /dev/sda1
ID_FS_USAGE=filesystem
ID_FS_TYPE=ext2
ID_FS_VERSION=1.0
ID_FS_UUID=038361dc-ce14-463c-8874-e13b5e01fc39
ID_FS_LABEL=boot
ID_FS_LABEL_SAFE=boot
 

sumsi
Gast





BeitragVerfasst am: 31. März 2007 9:28   Titel: genial

Hallo allerseits,

einfach genial - CSa hat 's gefunden - ich glaub bei Linux lernt man nieee aus Wink

Dann bringt uns einfach
Code:
vol_id /dev/hda11|grep LABEL|grep -v SAFE|cut -f2 -d=

das Ergebnis.

Schönes WE
sumsi
 

Beiträge vom vorherigen Thema anzeigen:   
     Pro-Linux Foren-Übersicht -> Hardware Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehen Sie zu:  

Powered by phpBB © phpBB Group
pro_linux Theme © 2004 by Mandaxy