W systemach operacyjnych Linux i UNIX, udział Windows może być zamontowany na określonym punkcie montowania w lokalnym drzewie katalogów używając opcji cifs
polecenia mount
.
Wspólny internetowy system plików (CIFS) jest sieciowym protokołem współdzielenia plików. CIFS jest formą SMB.
W tym poradniku wyjaśnimy, jak ręcznie i automatycznie montować udziały Windows w systemach Linux.
Instalacja pakietów narzędzi CIFS #
Aby zamontować udział Windows w systemie Linux, należy najpierw zainstalować pakiet narzędzi CIFS.
-
Instalacja narzędzi CIFS na Ubuntu i Debianie:
sudo apt update
sudo apt install cifs-utils
-
Instalacja narzędzi CIFS na CentOS i Fedorze:
sudo dnf install cifs-utils
Nazwa pakietu może się różnić w różnych dystrybucjach Linuksa.
Montowanie udziału CIFS Windows #
Montowanie zdalnego udziału Windows jest podobne do montowania zwykłych systemów plików.
Najpierw należy utworzyć katalog, który posłuży jako punkt montowania dla zdalnego udziału Windows:
sudo mkdir /mnt/win_share
Wykonaj poniższe polecenie jako root lub użytkownik z uprawnieniami sudoprivile, aby zamontować udział:
sudo mount -t cifs -o username=<win_share_user> //WIN_SHARE_IP/<share_name> /mnt/win_share
Zostaniesz poproszony o podanie hasła:
Password:
W przypadku powodzenia, nie zostanie wygenerowane żadne wyjście.
Aby sprawdzić, czy zdalny udział Windows został pomyślnie zamontowany, należy użyć polecenia mount
lub df -h
.
Po zamontowaniu udziału punkt montowania staje się katalogiem głównym zamontowanego systemu plików. Możesz pracować z plikami zdalnymi tak, jakby były to pliki lokalne.
Hasło może być również podane w wierszu poleceń:
sudo mount -t cifs -o username=<win_share_user>,password=<win_share_password> //WIN_SHARE_IP/<share_name> /mnt/win_share
Jeśli użytkownik jest w windowsowej grupie roboczej lub domenie, możesz ustawić je w następujący sposób:
sudo mount -t cifs -o username=<win_share_user>,domain=<win_domain> //WIN_SHARE_IP/<share_name> /mnt/win_share
Dla większego bezpieczeństwa zalecane jest użycie pliku poświadczeń, który zawiera nazwę użytkownika udziału, hasło i domenę.
Plik poświadczeń ma następujący format:
username=userpassword=passworddomain=domain
Plik nie może być odczytywany przez użytkowników. Aby ustawić prawidłowe uprawnienia i własność, uruchom:
sudo chown root: /etc/win-credentials
sudo chmod 600 /etc/win-credentials
Aby użyć pliku poświadczeń, zdefiniuj go w następujący sposób:
sudo mount -t cifs -o credentials=/etc/win-credentials //WIN_SHARE_IP/<share_name> /mnt/win_share
Domyślnie właścicielem zamontowanego udziału jest root, a uprawnienia są ustawione na 777.
Użyj opcji dir_mode
aby ustawić uprawnienia do katalogów i file_mode
aby ustawić uprawnienia do plików:
sudo mount -t cifs -o credentials=/etc/win-credentials,dir_mode=0755,file_mode=0755 //WIN_SHARE_IP/<share_name> /mnt/win_share
Domyślną własność użytkownika i grupy można zmienić za pomocą opcji uid
i gid
:
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
Aby ustawić dodatkowe opcje, dodaj je jako listę oddzieloną przecinkami po opcji -o
. Aby uzyskać listę wszystkich opcji montowania, wpisz man mount
w swoim terminalu.
Automatyczne montowanie #
Gdy udział jest montowany ręcznie za pomocą polecenia mount
, nie jest on zachowywany po ponownym uruchomieniu komputera.
Plik /etc/fstab
zawiera listę wpisów określających gdzie, jak i jaki system plików zostanie zamontowany przy starcie systemu.
Aby automatycznie zamontować udział w systemie Windows przy starcie systemu Linux, zdefiniuj montowanie w pliku /etc/fstab
. Wiersz musi zawierać nazwę hosta lub adres IP komputera z systemem Windows, nazwę udziału oraz punkt montowania na komputerze lokalnym.
Otworzyć plik /etc/fstab
w edytorze tekstu:
sudo nano /etc/fstab
Dodać następujący wiersz do pliku:
# <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
Uruchomić następujące polecenie, aby zamontować udział:
sudo mount /mnt/win_share
Polecenie mount
, odczyta zawartość folderu /etc/fstab
i zamontuje udział.
Przy następnym restarcie systemu udział Windows zostanie zamontowany automatycznie.
Umontowanie udziału Windows #
Komenda umount
odłącza (odmontowuje) zamontowany system plików od drzewa katalogów.
Aby odłączyć zamontowany udział w systemie Windows, należy użyć polecenia umount
, a następnie katalogu, w którym został zamontowany, lub zdalnego udziału:
sudo umount /mnt/win_share
Jeśli zamontowany udział CIFS ma wpis w pliku fstab
, należy go usunąć.
Polecenie umount
nie zdoła odłączyć udziału, gdy jest on w użyciu. Aby dowiedzieć się, które procesy mają dostęp do udziału windows, użyj polecenia fuser
:
fuser -m MOUNT_POINT
Gdy znajdziesz procesy, możesz je zatrzymać poleceniem kill
command i odmontować udział.
Jeśli nadal masz problemy z odmontowaniem udziału, użyj opcji -l
--lazy
), która pozwala odmontować zajęty system plików, gdy tylko przestanie być zajęty.
sudo umount -l MOUNT_POINT
Wniosek #
W Linuksie można zamontować współdzielony system Windows za pomocą polecenia mount
z opcją cifs
.