Für den Administrator

Zugriff auf Windows-Freigaben unter Linux

Bei Linux-Systemen, auf dem der CONZEPT 16-Server eingerichtet ist, handelt es sich häufig um einen reinen Datenbank-Server. Um zum Beispiel Replikations-Sätze oder Datensicherungskopien der Datenbank auf einen Windows-Rechner zu übertragen, wird ein entsprechender Zugriff benötigt. Diese Artikel zeigt, wie dieser Zugriff realisiert weden kann.


Zugriff auf Datenquellen

Damit unter Linux auf Daten eines Datenträgers oder Rechnern im Netzwerk zugegriffen werden kann, müssen die Datenquellen zuvor in das Dateisystem von Linux "eingehängt" werden. Dieser Vorgang wird als mounten bezeichnet. Zum Einhängen einer Datenquelle steht der Befehl mount zur Verfügung. Bei Aufruf des Befehls wird diesem mitgeteilt, welche Datenquelle in welches Linux-Verzeichnis eingehängt werden soll. Dieser Ort wird auch als mount point bezeichnet.

Wahl des "mount points"

Vor dem Mounten einer Windows-Freigabe stellt sich zunächst die Frage, in welches Linux-Verzeichnis die Datenquelle am besten eingehängt werden soll. Grundsätzlich hat der Anwender die Wahlfreiheit. Da ein Linux-System aus zahlreichen Dateien besteht, sind die Dateien innerhalb einer Verzeichnisstruktur gemäß FHS (Filesystem Hierarchy Standard) organisiert. Als Einhängepunkt von Datenquellen hat Linux die beiden Verzeichnisse /mnt und /media vorgesehen. Laut Definition ist das media-Verzeichnis für Wechseldatenträger und das mnt-Verzeichnis für temporär gemountete Dateisysteme vorgesehen. Da wir eine Windows-Freigabe mounten wollen, entscheiden wir uns für das /mnt Verzeichnis.

Windows-Freigabe mit dem Kommando "mount" einhängen

In unserem Beispiel wollen wir die Freigabe database des Rechners vm-backup in ein Linux-System einbinden. Mount point soll ein Verzeichnis mit Namen db-backup sein, welches unterhalb von /mnt angelegt wurde.

Beispiel:

mount -t cifs //vm-backup/database /mnt/db-backup -o user=MyName,password=MyPasswd

Mit der Option -t wird das Dateisystem spezifiziert. CIFS steht für Common Internet File System. Hierbei handelt es sich um eine erweiterte Version des Protokolls SMB (Server Message Block).

Nach dem Absetzen des Befehls kann das auf dem Windows-Rechner freigegebene Verzeichnis verwendet werden. Für das "Aushängen" der Quelle steht der Befehl umount zur Verfügung.

Beispiel:

umount /mnt/db-backup

Das gemountete Verzeichnis steht bei Verwendung des mount-Befehls nur bis zu einem Neustart des Rechners zur Verfügung. Damit die Windows-Freigabe automatisch beim Start des Systems eingebunden werden kann, ist ein Eintrag in der Datei /etc/fstab notwendig. In dieser Datei sind alle Dateisysteme, welche vom System gemountet werden sollen, eingetragen.

Windows-Freigabe über "fstab" einhängen

Bei der Datei fstab (file system table) handelt es sich um eine normale ASCII-Datei. Der Eintrag kann mit einem entsprechenden Editor vorgenommen werden.

Beispiel:

//vm-backup/database /mnt/db-backup cifs user=MyName,password=MyPasswd

Die Datei fstab ist in sechs Spalten eingeteilt:

  • Spalte 1
    Name des Device (//vm-backup/database)
  • Spalte 2
    Mountpoint (/mnt/db-backup)
  • Spalte 3
    Dateisystem (cifs)
  • Spalte 4
    Optionale Angaben durch Komma getrennt (user=MyName,password=MyPasswd)

    Die Spalten 5 und 6 sind in unserem Fall ohne Bedeutung und werden nicht angegeben. In diesem Fall wird für beide Spalten der Wert 0 engenommen.

Inhalt fstab:

/dev/sda1            swap           swap defaults       0 0
/dev/sda2            /              ext4 acl,user_xattr 1 1
//vm-backup/database /mnt/db-backup cifs user=MyName,password=MyPasswd

Um zu prüfen, ob der Eintrag korrekt ist und das mounten klappt, muss der Rechner nicht neu gestartet werden. Mit dem Kommando mount und der Option -a werden alle in der fstab eingetragenen Dateisysteme gemountet. Damit das Ergebnis des Vorgangs auf dem Bildschirm erscheint, kann zusätzlich die Option v verwendet werden.

Beispiel:

mount -av

Die Standardberechtigungen der fstab erlauben jeden Benutzer die Datei zu lesen. Dadurch sind auch Benutzer und Kennwort zu lesen, da alle Angaben im Klartext erfolgen. Alternativ können Benutzer und Kennwort in eine separate Datei, die nur von root lesbar ist, ausgelagert werden. Der Name der Datei ist nicht vorgegeben. In der Datei fstab wird dann mittels der Option credentials auf diese Datei verwiesen.

Beispiel:

//vm-backup/database /mnt/db-backup cifs credentials=/etc/share.cred
1 Kommentar

1 Kommentar zu “Zugriff auf Windows-Freigaben unter Linux”

Kommentar abgeben