
Auf Linux- und UNIX-Betriebssystemen kann eine Windows-Freigabe mithilfe von cifs
an einem bestimmten Einhängepunkt in der lokalen Verzeichnisstruktur bereitgestellt werden Option des mount
Befehl.
Das Common Internet File System (CIFS) ist ein Netzwerk-Dateifreigabeprotokoll. CIFS ist eine Form von SMB.
In diesem Tutorial erklären wir, wie Sie Windows-Freigaben manuell und automatisch auf Linux-Systemen mounten.
Installieren der CIFS-Dienstprogrammpakete #
Um eine Windows-Freigabe auf einem Linux-System bereitzustellen, müssen Sie zuerst das CIFS-Dienstprogrammpaket installieren.
-
Installieren von CIFS-Dienstprogrammen unter Ubuntu und Debian:
sudo apt update
sudo apt install cifs-utils
-
Installieren von CIFS-Dienstprogrammen auf CentOS und Fedora:
sudo dnf install cifs-utils
Der Paketname kann je nach Linux-Distribution unterschiedlich sein.
Mounten einer CIFS-Windows-Freigabe #
Das Mounten einer entfernten Windows-Freigabe ähnelt dem Mounten normaler Dateisysteme.
Erstellen Sie zunächst ein Verzeichnis, das als Einhängepunkt für die entfernte Windows-Freigabe dienen soll:
sudo mkdir /mnt/win_share
Führen Sie den folgenden Befehl als Root oder Benutzer mit sudoprivileges aus, um die Freigabe zu mounten:
sudo mount -t cifs -o username=<win_share_user> //WIN_SHARE_IP/<share_name> /mnt/win_share
Sie werden aufgefordert, das Passwort einzugeben:
Password:
Bei Erfolg wird keine Ausgabe erzeugt.
Um zu überprüfen, ob die Remote-Windows-Freigabe erfolgreich gemountet wurde, verwenden Sie entweder die Datei mount
oder df -h
Befehl.
Sobald die Freigabe gemountet ist, wird der Mount-Punkt zum Stammverzeichnis des gemounteten Dateisystems. Sie können mit den entfernten Dateien arbeiten, als wären es lokale Dateien.
Das Passwort kann auch auf der Kommandozeile angegeben werden:
sudo mount -t cifs -o username=<win_share_user>,password=<win_share_password> //WIN_SHARE_IP/<share_name> /mnt/win_share
Wenn sich der Benutzer in einer Windows-Arbeitsgruppe oder -Domäne befindet, können Sie ihn wie folgt festlegen:
sudo mount -t cifs -o username=<win_share_user>,domain=<win_domain> //WIN_SHARE_IP/<share_name> /mnt/win_share
Für eine bessere Sicherheit wird empfohlen, eine Anmeldedatei zu verwenden, die den Benutzernamen, das Passwort und die Domäne der Freigabe enthält.
Die Datei mit den Anmeldeinformationen hat das folgende Format:
/etc/win-credentialsusername=user
password=password
domain=domain
Die Datei darf für Benutzer nicht lesbar sein. Um die richtigen Berechtigungen und Eigentumsrechte festzulegen, führen Sie Folgendes aus:
sudo chown root: /etc/win-credentials
sudo chmod 600 /etc/win-credentials
Um die Anmeldeinformationsdatei zu verwenden, definieren Sie sie wie folgt:
sudo mount -t cifs -o credentials=/etc/win-credentials //WIN_SHARE_IP/<share_name> /mnt/win_share
Standardmäßig gehört die gemountete Freigabe root und die Berechtigungen sind auf 777 gesetzt.
Verwenden Sie den dir_mode
Option zum Festlegen der Verzeichnisberechtigung und des file_mode
So legen Sie die Dateiberechtigung fest:
sudo mount -t cifs -o credentials=/etc/win-credentials,dir_mode=0755,file_mode=0755 //WIN_SHARE_IP/<share_name> /mnt/win_share
Der standardmäßige Benutzer- und Gruppenbesitz kann mit uid
geändert werden und gid
Optionen:
sudo mount -t cifs -o credentials=/etc/win-credentials,uid=1000,gid=1000,dir_mode=0755,file_mode=0755 //WIN_SHARE_IP/<share_name> /mnt/win_share
Um zusätzliche Optionen festzulegen, fügen Sie diese als kommaseparierte Liste nach dem -o
hinzu Möglichkeit. Um eine Liste aller Einhängeoptionen zu erhalten, geben Sie man mount
ein in Ihrem Terminal.
Automatisches Mounten #
Wenn die Freigabe manuell mit mount
gemountet wird Befehl, bleibt es nach einem Neustart nicht bestehen.
Die /etc/fstab
Datei enthält eine Liste von Einträgen, die definieren, wo wie und welches Dateisystem beim Systemstart eingehängt wird.
Um eine Windows-Freigabe beim Start Ihres Linux-Systems automatisch einzuhängen, definieren Sie das Einhängen in /etc/fstab
Datei. Die Zeile muss den Hostnamen oder die IP-Adresse des Windows-PCs, den Freigabenamen und den Einhängepunkt auf dem lokalen Rechner enthalten.
Öffnen Sie die /etc/fstab
Datei mit Ihrem Texteditor:
sudo nano /etc/fstab
Fügen Sie der Datei die folgende Zeile hinzu:
/etc/fstab# <file system> <dir> <type> <options> <dump> <pass>
//WIN_SHARE_IP/share_name /mnt/win_share cifs credentials=/etc/win-credentials,file_mode=0755,dir_mode=0755 0 0
Führen Sie den folgenden Befehl aus, um die Freigabe bereitzustellen:
sudo mount /mnt/win_share
Der mount
Befehl, liest den Inhalt von /etc/fstab
und mounten Sie die Freigabe.
Beim nächsten Neustart des Systems wird die Windows-Freigabe automatisch gemountet.
Unmounten von Windows-Freigabe #
Die umount
Der Befehl trennt (unmountet) das gemountete Dateisystem vom Verzeichnisbaum.
Um eine gemountete Windows-Freigabe zu trennen, verwenden Sie den umount
Befehl, gefolgt von entweder dem Verzeichnis, in dem es gemountet wurde, oder der Remote-Freigabe:
sudo umount /mnt/win_share
Wenn der CIFS-Mount einen Eintrag in der fstab
hat Datei, entfernen Sie sie.
Die umount
Der Befehl kann die Freigabe nicht trennen, wenn sie verwendet wird. Um herauszufinden, welche Prozesse auf die Windows-Freigabe zugreifen, verwenden Sie den fuser
Befehl:
fuser -m MOUNT_POINT
Sobald Sie die Prozesse gefunden haben, können Sie sie mit kill
stoppen Befehl und unmounten Sie die Freigabe.
Wenn Sie immer noch Probleme beim Unmounten der Freigabe haben, verwenden Sie den -l
(--lazy
)-Option, mit der Sie ein ausgelastetes Dateisystem aushängen können, sobald es nicht mehr ausgelastet ist.
sudo umount -l MOUNT_POINT
Schlussfolgerung #
Unter Linux können Sie eine Windows-Freigabe mit mount
mounten Befehl mit dem cifs
Option.
Wenn Sie Fragen oder Feedback haben, können Sie gerne einen Kommentar hinterlassen.