ubuntuusers.de

Datenträger

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:

Dieser Artikel ist größtenteils für alle Ubuntu-Versionen gültig.

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

Umsteiger von Windows auf Linux fragen sich oft, wo die gewohnten Laufwerksbuchstaben zu finden sind. Die Antwort ist einfach: es gibt sie nicht. Datenträger und Dateisysteme werden unter Linux ganz anders und wesentlich flexibler gehandhabt. Wie, das erklärt dieser Artikel. (Hintergrundinformationen und weitere Erläuterungen finden sich unter Datenverwaltung.)

"Wo" sind die Datenträger?

Datenträger lassen sich auf zweierlei Arten beschreiben:

  1. Sie befinden sich physikalisch an einem bestimmten Ort (Partition einer Festplatte, CD-ROM, Netzwerkfreigabe, MP3-Player,...)

  2. Sie werden im System an einer bestimmten Stelle verwendet (C:, D:, E:, ... oder /home, /home/BENUTZER/mp3, /media/cdrom, /media/camera, ...)

Die ersten dieser Beispiele sind die von Windows bekannten Buchstaben, die letzteren sind schlicht Verzeichnisse in einem Linux-System. Beliebige Verzeichnisse? Im Prinzip ja. Unter Linux lässt sich der Ort, an dem man auf einen Datenträger zugreifen kann, beliebig festlegen. An der Stelle des Verzeichnisses /home/BENUTZER/mp3 könnte sich technisch gesehen eine Festplattenpartition befinden, eine CD-ROM, ein mobiles Gerät, eine USB-Platte - ganz wie man es gerade benötigt.

Wozu ist das nun gut? Ein Beispiel: Bei der Installation des Betriebssystems wurde einfach alles auf eine einzige Partition gelegt, das System wie auch die Dateien der einzelnen Benutzer. Was geschieht, wenn man jetzt diese Benutzerdaten auf eine andere Partition verlagern will? Unter Windows sind die Daten dann unter einem anderen Laufwerksbuchstaben erreichbar - statt C:\Dokumente und Einstellungen heißt es D:\Dokumente und Einstellungen. Und unter Linux? /home bleibt /home, ob darunter nun die einzige Partition der einzigen Festplatte liegt, die dritte Partition auf dem externen Firewirelaufwerk oder eine Netzwerkfreigabe auf irgendeinem Server.

Wie erfolgt der Zugriff auf Datenträger?

Jeder beliebige Datenträger kann jederzeit an einer beliebigen Stelle in den großen Verzeichnisbaum "eingehängt" werden. Dieser Vorgang wird auch als "einbinden" oder "mounten" bezeichnet. Zwischen dem physischen Ort und dem Zugriffsort besteht kein erzwungener und oft störender Zusammenhang. Das Einhängen erfolgt mit Hilfe des Befehls mount.

Wie heißen die Datenträger?

Die Geräte sind unter Linux nach einem einfachen Schema benannt:

  • Zuerst steht immer das Verzeichnis /dev/. In diesem Verzeichnis finden sich alle "Gerätedateien"; über Gerätedateien lässt sich die Hardware ansprechen (Anmerkung: Unter Linux ist alles eine Datei, was Daten annehmen und/oder liefern kann - also buchstäblich alles. Das ist eins der ebenso simplen wie genialen Grundprinzipien von unixartigen Systemen). An nächster Stelle kommt die Art des Geräts:

  • SATA-Festplatten (neuere interne Festplatten) und IDE-Festplatten (ältere interne Festplatten) beginnen mit den Buchstaben sd

    Hinweis:

    Vor der Einführung von libata wurde bei IDE- und SATA-Festplatten die Geräteangabe differenziert dargestellt. Seit Einführung von Ubuntu 7.04 im April 2007 werden alle Festplatten mit sd angesprochen. Im Internet findet man ab und zu noch die "alte Angabe" hd für IDE-Festplatten.

  • CD/DVD-Laufwerke (IDE, S-ATA) beginnen mit sr

  • SCSI-Festplatten und alle externen Speichermedien, die über USB oder Firewire angeschlossen sind, beginnen ebenfalls mit sd

  • externe oder SCSI-CD/DVD-Laufwerke beginnen mit scd

Dann kommt der Anschluss an die Reihe - es gibt ja mehrere S-ATA-, IDE/ATAPI- oder SCSI-Anschlüsse:

  • bei SATA- und SCSI-Festplatten werden die Buchstaben der Reihe nach verwendet (/dev/sda, /dev/sdb, /dev/sdc usw.)

  • bei IDE-Geräten (interne Festplatten und CD-ROM-Laufwerke) ist wichtig, mit welchem IDE-Anschluss das Gerät verbunden ist. Jeder Anschluss kann zwei Geräte aufnehmen (sogenannte "Master" und "Slave"; bei S-ATA nicht relevant):

    • Das Master-Gerät am ersten IDE-Anschluss bekommt den Buchstaben a (/dev/sda)

    • Das Slave-Gerät am ersten IDE-Anschluss bekommt den Buchstaben b (/dev/sdb)

    • Das Master-Gerät am zweiten IDE-Anschluss bekommt den Buchstaben c (/dev/sdc)

    • Das Slave-Gerät am zweiten IDE-Anschluss bekommt den Buchstaben d (/dev/sdd)

  • SCSI- oder externe CD-ROMS werden mit Zahlen bei 0 beginnend nummeriert (/dev/scd0, /dev/scd1 usw.)

Im Abschnitt Welches ist das gesuchte Gerät? gibt es ein Beispiel, wie man sich die angeschlossenen Festplatten auf der Kommandozeile anzeigen kann.

Hinweis:

Bei Verwendung von mehreren Festplatten an unterschiedlichen Controllern (z.B. IDE, SATA), ist die Vergabe der Device-Bezeichnungen nicht eindeutig. Nach einem Bootvorgang kann es dazu kommen, das mal die eine Festplatte als /dev/sda geführt wird, ein anderes mal eine andere Festplatte.

Bei optischen Laufwerken wurde inzwischen die Benennung vereinfacht (siehe unten).

  • Festplatten sind darüber hinaus in Partitionen unterteilt. Es gibt zwei Arten von Partitionen:

    • die klassischen "primären" Partitionen werden von 1 bis 4 nummeriert (/dev/sda1 bis /dev/sda4)

    • eine der primären Partitionen kann als "erweiterte" Partition weitere Partitionen, die sogenannten "logischen Laufwerke" enthalten. Deren Benennung beginnt in jedem Fall bei der Ziffer 5 (/dev/sda5, /dev/sda12 usw.)

  • RAID-Geräte beginnen mit md und werden dann mit 0 beginnend hochgezählt (dev/md0, /dev/md1 usw.)

  • Logische Volumes, wie sie von LVM oder EVMS erzeugt werden, finden sich an gesonderter Stelle. Hierzu empfiehlt sich die Lektüre der jeweiligen Anleitung.

Alternativen zu "Gerätenamen"

Die Benennung von Geräten (wie /dev/sda5) kann sich verändern, zum Beispiel bei mobilen Datenträgern oder wenn Festplattenkabel im Computer umgesteckt werden. Um dies zu umgehen, können der UUID oder das Label des Geräts (Name der Festplatte, zum Beispiel Daten) angegeben werden:

UUID=fca07690-be07-4520-858b-ff817ceab744  /media/geraet_1  [...]

LABEL=Daten  /media/geraet_2  [...]

Sollten diese Angaben nicht bekannt sein, kann man, nachdem alle Gerät normal eingehängt wurden, mit dem Befehl blkid aus dem folgenden Abschnitt, diese auflisten.

Hinweis:

Laufwerke werden daher unter Ubuntu aktuell nicht mehr per Geräteangabe /dev/... eingebunden, sondern per UUID. In manchen Fällen geht dies aber schief. Dann kann man nach wie vor die herkömmliche Angabe benutzen, also statt der UUID die alte Bezeichnung wie beispielsweise /dev/sda1.

Geräte im Dateimanager verstecken

Die Anzeige lässt sich unterbinden, indem man mit Root-Rechten eine Datei /etc/udev/rules.d/99-hide-partitions.rules anlegt und dort Folgendes einträgt:

1
KERNEL=="sdXY", ENV{UDISKS_IGNORE}="1"

Es ist darauf zu achten, dass XY durch die zu versteckende Partition ersetzt wird.

Welches ist das gesuchte Gerät?

Wenn man nicht sofort weiß, welche Platten angeschlossen sind, welche Partitionen oder welches Dateisysteme vorhanden sind usw., kann man sich alle angeschlossenen Geräte (auch Wechseldatenträger) im Terminal [1] mit den folgenden Befehlen anzeigen lassen:

  1. Angeschlossene Festplatten und Wechseldatenträger inkl. der Partitionen anzeigen:

    • aus den Systeminformationen ohne /dev/-Angabe:

      cat /proc/partitions 

      Das Ergebnis sieht dann so ähnlich aus:

      major   minor    #blocks name
      
         8        0  156290904 sda
         8        4          1 sda1
         8        5   99996561 sda5
         8       16  312571224 sdb
         8       17          1 sdb1
    • nur die Festplatten - ohne Partitionen - inkl. /dev/:

      sed -ne 's/.*\([sh]d[a-zA-Z]\+$\)/\/dev\/\1/p' /proc/partitions 

      Das Ergebnis sieht dann so ähnlich aus:

      /dev/sda
      /dev/sdb
    • nur die Partitionen - inkl. /dev/:

      sed -ne 's/.*\([sh]d[a-zA-Z]\+[0-9]\+$\)/\/dev\/\1/p' /proc/partitions 

      Das Ergebnis sieht dann so ähnlich aus:

      /dev/sda1
      /dev/sda5
      /dev/sdb1
  2. Eine Übersicht der Partitionen in Form einer Liste:

    sudo blkid -o list -w /dev/null 

    Das Ergebnis sieht dann so ähnlich aus:

    device               fs_type        label           mount point                    UUID
    ------------------------------------------------------------------------------------------------------------------------
    /dev/sda1             ntfs          WindowsXP       /media/windows                5339e963-71a9-4e60-aee5-63f1122f9f9a
    /dev/sda2             ext4          Ubuntu          /                             1847456f-c740-48ac-bff9-198f2591c90c
    /dev/sda5             ext4          Home            /home                         69979c60-4739-4a50-aac2-f74654478544
    /dev/sdb1             ext3                          /media/Daten                  0f8ad5b2-381d-4a79-9c47-d3cefb83bf32
    /dev/sdb2             ext4          Musik           /media/Musik                  4e7beaec-1991-446d-86b7-25433c0237d8
    /dev/sdc1             vfat          PENDRIVE        (not mounted)                 CCB6-9B80

Sollten dann immer noch Schwierigkeiten bei der Zuordnung bestehen, kann man weitere Auflistungsformen, wie unter Systeminformation ermitteln beschrieben, benutzen.

Problembehebung

Optische Laufwerke

CD-/DVD-Laufwerke waren bis Ubuntu 13.04 über zusätzliche Gerätedateien ansprechbar, die ihre Fähigkeiten darstellten (/dev/cdrom für CD-ROMs, /dev/cdrw für CD-Brenner, /dev/dvd für DVD-Laufwerke usw.). Mit Ubuntu 13.10 wurde endgültig eine bereits vor Jahren erfolgte Änderung bei der Hardwareerkennung auch in Ubuntu umgesetzt (926976), so dass diese ehemals verwendeten Gerätedateien nun fehlen können.

Während die automatische Hardwareerkennung von Linux und neuere Programme in der Regel damit keine Probleme haben, stolpern viele ältere Programme z.B. über ein scheinbar fehlendes DVD-Laufwerk. Abhilfe schafft die Angabe der bzw. die Umstellung auf die Gerätedatei /dev/sr0, in seltenen Fällen auch /dev/scd0 oder das Anlegen eines Symlinks. Beispiel:

sudo ln -s /dev/sr0 /dev/dvd 

Besitzt man mehr als ein optisches Laufwerk, wird einfach hochgezählt. Beispiel:

sudo ln -s /dev/sr0 /dev/dvd
sudo ln -s /dev/sr1 /dev/cdrom 

Diese Symlinks gehen allerdings beim nächsten Systemstart verloren. Abhilfe schafft ein fester Eintrag in der Datei /etc/rc.local.

Diese Revision wurde am 5. März 2018 21:55 von Heinrich_Schwietering erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen: Datenträger, Partitionierung, System, Festplatte