Debian mount windows share

Mount Windows 11 Shares on Debian Linux

Do you know How To Mount Windows 11 Shares on Debian Linux? To mount a CIFS share on Linux, the following prerequisites are needed: a system that runs Linux, root or sudo access, and a shared folder or drive on a Windows machine. The CIFS-Utils package is required to mount SMB/CIFS shares on a Linux system. Installing the package varies depending on the Linux distribution. For systems based on Debian, the local package repository should be updated first to make sure the newest package is installed:

To mount Windows 11 shares on Debian Linux, you can use the cifs-utils package, which provides the tools and utilities for mounting Windows shares via the SMB/CIFS protocol. Here’s a step-by-step guide on how to do this:

Note: Before proceeding, make sure you have the necessary permissions and access credentials to connect to the Windows 11 share.

  1. Install cifs-utils:If you don’t already have cifs-utils installed, you can install it using the following command:sudo apt-get update

    sudo apt-get install cifs-utils
  2. Create a mount point:
  3. You need to create a directory on your Debian system where you will mount the Windows share. For example, let’s create a directory named “win_share” in your home directory:
  4. mkdir ~/win_share
  5. Mount the Windows Share: Use the mount.cifs command to mount the Windows Share. Replace the placeholders with your Windows share details (e.g., //server/share, username, and password):
    sudo mount -t cifs //server/share ~/win_share -o username=your_username,password=your_password,uid=your_linux_username,gid=your_linux_usergroup

    • //server/share: Replace this with the UNC path to the Windows share you want to mount.
    • ~/win_share: This is the local mount point you created earlier.
    • username=your_username and password=your_password: Replace these with your Windows username and password.
    • uid=your_linux_username and gid=your_linux_usergroup: Replace these with your Linux user’s username and group (you can find this information using the id command).
  6. Optional: Automate the Mounting Process (fstab): If you want the Windows share to be mounted automatically at boot, you can add an entry to your /etc/fstab file. Open the /etc/fstab file in a text editor with administrative privileges:sudo nano /etc/fstab

    Add a line at the end of the file in the following format:
    //server/share /path/to/mount/point cifs username=your_username,password=your_password,uid=your_linux_username,gid=your_linux_usergroup 0 0

    Save the file and exit the text editor.
  7. Mount the Share: To mount the share defined in /etc/fstab, use the mount command without any arguments:sudo mount -a

    This command will read the /etc/fstab file and mount all entries specified there.

Now, your Windows 11 share should be mounted on Debian Linux at the specified mount point, and it will also be automatically mounted on subsequent reboots if you added an entry to /etc/fstab.

How to Unmount CIFS Windows Share

sudo umount -f /mnt/winshare

The command “unmounts” the Windows share from the “/mnt/winshare” directory. If you have chosen a different directory as the mounting point during setup, you should mention that directory in the command.

If any issues occur while attempting to unmount the share, it could be due to a user currently accessing the share or a file that is open.

To forcibly unmount the share, execute the following command:

sudo umount -f /mnt/winshare

Conclusion

This guide provides instructions on how to connect a Windows share to a Linux machine using CIFS and how to disconnect it afterwards. The CIFS protocol is particularly useful when you need to access files from a Windows machine while using Linux.


How To Ubuntu

Обновлено:
Опубликовано:

Используемые термины: CIFS, Linux.

Протокол CIFS (SMB) позволяет работать с общими папками. В инструкции будет рассказано, как в системах на базе Linux можно настроить клиент для подключения к файловому серверу, который работает по данному протоколу.

Подготовительная работа
Синтаксис mount
Ручное монтирование
Автоматическое монтирование
Примеры
Дополнительная информация

Подготовка

Установка пакетов

Для монтирования общей папки необходимо установить набор утилит для работы с CIFS (в противном случае, мы получим ошибку mount.cifs команда не найдена).

а) Для систем RPM (РЕД ОС, Rocky Linux, CentOS):

yum install cifs-utils

б) Для DEB-систем (Astra Linux, Debian, Ubuntu):

apt update

apt install cifs-utils

Сетевые порты

Если мы будем монтировать сетевую папку, сервер которой находится за брандмауэром, необходимо открыть следующие порты:

  • 137/UDP
  • 138/UDP
  • 139/TCP
  • 445/TCP

Данные команды нет необходимости выполнять на клиентах. Только на стороне сервера.

В зависимости от используемого типа фаервола, команды будут отличаться.

а) iptables (как правило, на системах DEB):

iptables -I INPUT -p tcp —dport 445 -j ACCEPT

iptables -I INPUT -p udp —dport 137:138 -j ACCEPT

iptables -I INPUT -p tcp —dport 139 -j ACCEPT

Применяем настройки:

apt install iptables-persistent

netfilter-persistent save

б) firewalld (как правило, на системах RPM):

firewall-cmd —permanent —add-service=samba

firewall-cmd —reload

Синтаксис

mount.cifs <папка на сервере> <во что монтируем> <-o опции>

* вместо mount.cifs можно написать mount -t cifs.

Пример:

mount.cifs //192.168.1.1/public /mnt

* простой пример монтирования папки public на сервере 192.168.1.1 в локальный каталог /mnt.

Если нам не известны расшаренные папки на сервере, мы можем воспользоваться утилитой smbclient. Для начала установим ее.

а) на RPM (Rocky Linux / РЕД ОС / Red Hat / CentOS / Fedora):

yum install samba-client

б) на Deb (Debian / Ubuntu / Astra Linux / Mint):

apt install samba-client

Теперь вводим:

smbclient -L 192.168.1.1

или, при необходимости авторизоваться на файловом сервере:

smbclient -L 192.168.1.1 -U username

Ручное монтирование

Теперь монтирование можно выполнить следующей командой:

mount.cifs //192.168.1.10/share /mnt -o user=dmosk

* в данном примере будет примонтирован каталог share на сервере 192.168.1.10 в локальную папку /mnt под учетной записью dmosk.

То же самое, с использованием домена:

mount.cifs //192.168.1.10/share /mnt -o user=dmosk,domain=dmosk.local

Автоматическое монтирование CIFS через fstab

Для начала создаем файл, в котором будем хранить данные авторизации при подключении к общей папке:

vi /root/.smbclient

И добавляем в него данные следующего вида:

username=dmosk
password=dPassw0rd
domain=dmosk.local

* в этом примере создана пара логин/пароль — dmosk/dPassw0rddomain указывать не обязательно, если аутентификация выполняется без него.

Задаем права на созданный файл, чтобы доступ был только у пользователя, скажем, root:

chmod 600 /root/.smbclient

chown root:root /root/.smbclient

Теперь открываем конфигурационный файл fstab:

vi /etc/fstab

и добавляем в него следующее:

//192.168.1.10/share /mnt cifs user,rw,credentials=/root/.smbclient 0 0

* в данном примере выполняется монтирование общей папки share на сервере с IP-адресом 192.168.1.10 в каталог /mnt. Параметры для подключения — user: позволяет выполнить монтирование любому пользователю, rw: с правом на чтение и запись, credentials: файл, который мы создали на предыдущем шаге.

Чтобы проверить правильность настроек, вводим следующую команду:

mount -a

Примеры использования опций

Версии SMB

Если на стороне Windows используется старая или слишком новая версия протокола SMB, при попытке монтирования мы можем получить ошибку mount error(112): Host is down. Чтобы это исправить, указываем версию:

mount.cifs //192.168.1.10/share /mnt/ -o vers=1.0

* монтирование по протоколу SMB1.0

Монтирование от гостевой учетной записи

Если сервер принимает запросы без логина и пароля, то клиент подключается, как гость:

mount.cifs //192.168.1.10/share /mnt -o guest

или в fstab:

//192.168.1.10/share    /mnt    cifs    guest    0 0

Для монтирования шары Windows, иногда, недостаточно указать опцию guest. Нужно делать так:

mount.cifs //192.168.1.10/share /mnt -o user=guest,pass=»

Или в fstab:

//192.168.1.10/share    /mnt    cifs    guest,pass    0 0

Права на примонтированные каталоги

При монтировании папки мы можем указать определенные права:

mount.cifs //192.168.1.10/share /mnt -o file_mode=0777,dir_mode=0777

Для указания владельца, который будет назначен для примонтированного каталога, используем:

 mount.cifs //192.168.1.10/share /mnt -o uid=33,gid=33

* чтобы посмотреть идентификаторы пользователя, вводим id -u <имя пользователя> и id -g <имя группы>.

Читайте также

Дополнительная информация по теме:

1. Как во FreeBSD примонтировать CIFS.

2. Как настроить автоматическое монтирование дисков в системах Linux.

3. Установка и настройка файлового сервера Samba на Ubuntu или Debian.

4. Установка и настройка файлового сервера Samba на CentOS.

5. Пример скрипта для создания резервной копии файлового сервера.

В этой статье мы рассмотрим, как в Linux смонтировать общую сетевую папку, расположенную на хосте Windows. В Windows для доступа к общим сетевым папкам используется протокол SMB (Server Message Block), который ранее назывался CIFS (Сommon Internet File System). В Linux для доступа к сетевым папкам Windows по протоколу SMB можно использовать клиент cifs-utils или Samba.

    Содержание:

  • Смонтировать сетевую папку в Linux с помощью cifs-util
  • Автоматическое монтирование сетевой папки в Linux
  • Linux: подключиться к сетевой папке с помощью клиента samba

Совет. Для доступа к сетевым папкам по SMB/CIFS используется порт TCP/445. Для разрешения имени используются порты UDP 137, 138 и TCP 139. Если эти порты закрыты, вы сможете подключиться к сетевой папке Windows только по IP адресу.

Смонтировать сетевую папку в Linux с помощью cifs-util

Вы можете смонтировать сетевую папку, находящуюся на Windows хосте, с помощью утилит из пакета cifs-util. Для установки пакета выполните команду:

  • В Ubuntu/Debian: $ sudo apt-get install cifs-utils
  • В CentOS/Oracle/RHEL: $ sudo dnf install cifs-utils

Создайте точку монтирования:

$ sudo mkdir /mnt/share

Теперь вы можете смонтировать сетевую папку с компьютера Windows под пользователем User03с помощью команды:

$ sudo mount.cifs //192.168.31.33/backup /mnt/share -o user=User03

Укажите пароль пользователя Windows для подключения к сетевой папке.

mount.cifs подключить сетевую папку smb в linux

При подключении сетевой SMB папки можно задать дополнительные параметры:

$ sudo mount -t cifs -o username=User03,password=PasswOrd1,uid=1000,iocharset=utf8 //192.168.31.33/backup /mnt/share

  • //192.168.31.33/backup – сетевая папка Windows
  • /mnt/share – точка монтирования
  • -t cifs – указать файловую систему для монтирования
  • -o опции монтирования (эту опцию можно использовать только с правами root, поэтому в команде используется sudo)
  • username=User03,password=PasswOrd1 – имя и пароль пользователя Windows, у которого есть права доступа к сетевой папке. Можно указать имя пользователя guest, если разрешен анонимный доступ к сетевой папке
  • iocharset=utf8 – включить поддержку кодировки UTF8 для отображения имен файлов
  • uid=1000 – использовать этого пользователя Linux в качестве владельца файлов в папке

команда mount cifs в linux

По умолчанию шары Windows монтируются в Linux с полными правами (0755). Если вы хотите изменить права по-умолчанию при монтировании, добавьте в команду опции:

dir_mode=0755,file_mode=0755

Если вы хотите использовать имя компьютера при подключении сетевого каталога Windows, добавьте в файл /etc/hosts строку:

IP_АДРЕС    ИМЯ_КОМПЬЮТЕРА

Чтобы не указывать учетные данные пользователя Windows в команде монтирования сетевой папки, их можно сохранить в файле.

Например:

$ mcedit ~/.windowscredentials

Добавьте в файл:

username=User03
password=PasswOrd1

Для подключения к папке под анонимным пользователем:

username=guest
password=

Если нужно указать учетную запись пользователя из определенного домена Active Directory, добавьте в файл третью строку:

domain = vmblog.ru

Измените права на файл:

$ chmod 600 ~/.windowscredentials

Теперь при подключении сетевой папки вместо явного указания имени пользователя и пароля можно указать путь к файлу:

$ sudo mount -t cifs -o credentials=/home/sysops/.windowscredentials,uid=1000,iocharset=utf8 //192.168.31.33/backup /mnt/share

Отмонтировать сетевую SMB папку:

$ sudo umount /mnt/share

Автоматическое монтирование сетевой папки в Linux

Можно настроить автоматическое монтирование сетевой папки Windows через /etc/fstab.

$ sudo mcedit /etc/fstab

Добавьте в файл следующую строку подключения SMB каталога:

//192.168.31.33/backup /mnt/share cifs user,rw,credentials=/home/sysops/.windowscredentials,iocharset=utf8,nofail,_netdev 0 0
  • rw – смонтировать SBM папку на чтение и запись
  • nofail – продолжить загрузку ОС если не удается смонтировать файловую систему
  • _netdev – указывает что подключается файловая система по сети. Linux не будет монтировать такие файловые системы пока на хосте не будет инициализирована сеть.

Вы можете указать версию протокола SMB, которую нужно использовать для подключения (версия SMB 1.0 считается небезопасной и отключена по-умолчанию в современных версиях Windows). Добавьте в конец строки с настройками подключения параметр vers=3.0.

//192.168.31.33/backup /mnt/share cifs user,rw,credentials=/home/sysops/.windowscredentials,iocharset=utf8,nofail,_netdev,vers=3.0 0 0

Если на стороне хоста Windows используется несовместимая (старая версия) SMB, при подключении появится ошибка:

mount error(112): Host is downилиmount error(95): Operation not supported

Чтобы сразу смонтировать сетевую папку, выполните:

$ mount -a

Linux: подключиться к сетевой папке с помощью клиента samba

Установите в Linux клиент samba:

  • В Ubuntu/Debian: $ sudo apt-get install smbclient
  • В CentOS/Oracle/RHEL: # dnf install smbclient

Для вывода всех SMB ресурсов в локальной сети:

$ smbtree -N

Вывести список доступных SMB папок на удаленном хосте Windows:

smbclient -L //192.168.31.33 -N

Если в Windows запрещен анонимный доступ, появится ошибка:

session setup failed: NT_STATUS_ACCESS_DENIED

В этом случае нужно указать учетную запись пользователя Windows, которую нужно использовать для подключения:

smbclient -L //192.168.31.33 -U User03

Если нужно использовать учетную запись пользователя домена, добавьте опцию –W:

smbclient -L //192.168.31.33 -U User03 –W Domain

smbclient вывести список общих папок на компьютере windows

Для интерактивного подключения к сетевой папке Windows используется команда:

smbclient //192.168.31.33/backup -U User03 -W Domain

или

smbclient //192.168.31.33/backup -U User03

Для анонимного доступа:

smbclient //192.168.31.33/backup -U Everyone

После успешного входа появится приглашение:

smb: \>

Вывести список файлов в сетевой папке:

dir

smbclient вывести список файлов в сетевой папке linux

Скачать файл из сетевой папки Windows:

get remotefile.txt /home/sysops/localfile.txt

Сохранить локальный файл из Linux в SMB каталог:

put /home/sysops/localfile.txt  remotefile.txt

Можно последовательно выполнить несколько команд smbclient:

$ smbclient //192.168.31.33/backup -U User03 -c "cd MyFolder; get arcive.zip /mnt/backup/archive.zip"

Полный список команд в smbclient можно вывести с помощью команды help. Команды smbclient схожи с командами ftp клиента.

При использовании команды smbclient может появиться ошибка:

Unable to initialize messaging contextsmbclient: Can't load /etc/samba/smb.conf - run testparm to debug it.

Чтобы исправить ошибку, создайте файл /etc/samba/smb.conf.

Если на хосте Windows отключен протокол SMB 1.0, то при подключении с помощью smbclient появится ошибка:

Reconnecting with SMB1 for workgroup listing.
protocol negotiation failed: NT_STATUS_CONNECTION_RESET
Unable to connect with SMB1 -- no workgroup available.

Иногда, при организации совместных сетей между Windwos и Linux системами, в последних может появиться необходимость монтирования расшаренных SMB-ресурсов прямо к файловой системе. Прежде всего такая необходимость появляется при использовании легковесных рабочих сред (XFCE, OpenBox, LXDE и др), файловые менеджеры которых не поддерживают прямой доступ к samba.

Например, в среде Gnome доступ к ресурсу Windows можно получить прямо из файлового менеджера Nautilus, введя в адресной строке путь вида smb://192.168.0.11/ (где вместо необходимого ip-адреса также может быть просто указано сетевое имя windows-системы). Но многие другие файловые менеджеры (к примеру, быстрый и удобный PCMan File Manager до определённой версии) не поддерживают такой возможности, поэтому универсальным решением становится монтирование SMB к конкретному пути вашей файловой системы, в результате вы получите доступ к расшаренному ресурсу удаленной системы точно так же, как вы его получаете к своим дискам. Для этой цели нам потребуется установленный пакет cifs-utils, в Ubuntu и Debian установить его можно командой:

sudo apt-get install cifs-utils

В Fedora, CentOS и других RedHat based дистрибутивах:

sudo yum install cifs-utils

Также, как заметили в комментариях, рекомендуется установить пакеты ntfs-3g и ntfs-config, если они у вас ещё не установлены.

Теперь для начала давайте разберем как монтировать расшаренные папки вручную. Потребуется создать путь куда будем монтировать SMB-папку, пусть это, к примеру, будет /media/sharefolder:

sudo mkdir /media/sharefolder

Вот такой командой можно примонтировать папку, требующую авторизации по логину и паролю:

sudo mount -t cifs //192.168.0.11/share /media/sharefolder -o username=windowsuser,password=windowspass,iocharset=utf8,file_mode=0777,dir_mode=0777

где вместо //192.168.0.11/share – ip-адрес и имя необходимой общей папки (если имя расшаренной папки содержит пробел, то необходимо заключить весь путь в кавычки, как это показано в следующем примере), /media/sharefolder – путь куда будет монтироваться ресурс, windowsuser – имя пользователя с необходимыми правами доступа к этому ресурсу Windows, windowspass – пароль этого пользователя.

Если необходимая папка не требует обязательной авторизации, то подключить ресурс можно такой командой:

sudo mount -t cifs "//192.168.0.11/общие документы" /media/sharefolder -o guest,rw,iocharset=utf8,file_mode=0777,dir_mode=0777

Если гостевой доступ к необходимой папке включен только в режиме чтения, то будет достаточно такой команды:

sudo mount -t cifs //192.168.0.11/общие /media/sharefolder -o guest,iocharset=utf8

При удачном выполнении этих команд не должно произойти никакого уведомления – можете смело проверять как примонтировалась папка перейдя по вашему пути (в нашем примере – /media/sharefolder).
Отмонтируется папка командой:

sudo umount /media/sharefolder

Для того чтобы осуществить автомонтирование таких папок нам придется отредактировать системный файл fstab. Также, если доступ к необходимому windows-ресурсу требует обязательной авторизации, то потребуется предварительно создать файл, в котором будут прописаны логин и пароль доступа (сделать это можно текстовым редактором nano):

sudo nano /root/.smbcredentials

В этот новый файл добавьте две строки:

username=windowsuser
password=windowspass

где, соответственно, windowsuser – имя пользователя с необходимыми правами доступа к ресурсу Windows, windowspass – пароль этого пользователя. Измените права созданного файла так, что редактировать и смотреть его смог только root, то есть сама система:

sudo chmod 700 /root/.smbcredentials

Сохраните изменения и переходите к редактированию файла /etc/fstab:

sudo nano /etc/fstab

И здесь в самом конце добавьте строку типа:

//192.168.0.11/share /media/sharefolder cifs credentials=/root/.smbcredentials,iocharset=utf8,file_mode=0777,dir_mode=0777 0 0

Если авторизации по имени и паролю не требуется, а требуется только гостевой доступ, то создавать файл .smbcredentials не потребуется, этот шаг можно было пропустить и сразу в /etc/fstab добавить строку:

//192.168.0.11/общие\040документы /media/sharefolder cifs guest,rw,iocharset=utf8,file_mode=0777,dir_mode=0777 0 0

Обратите внимание, что здесь если ваша папка содержит пробелы, то вариант аналогичный командной строке – заключении пути в кавычки – не поможет, для того, чтобы fstab понял пробелы – их необходимо заменить на четыре символа: \040
И, соответственно, если требуется только лишь гостевой доступ в режиме чтения к windows-папке, то будет достаточно такой строки:

//192.168.0.11/общие /media/sharefolder cifs guest,iocharset=utf8 0 0

Для того, чтобы проверить корректно ли монтируется shared-папка из fstab без перезагрузки нужно выполнить такую команду:

sudo mount -a

Также к этому стоит добавить, что если вы хотите получать доступ к windows-шаре не через ip-адрес, а через имя машины, то вам потребуется установить winbind, в Debian-based:

sudo apt-get install winbind

Или в RedHat-based системах:

sudo yum install samba-winbind

После этого отредактируйте файл /etc/nsswitch.conf:

sudo nano /etc/nsswitch.conf

Где в строке:

hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4

перед dns добавьте wins, то есть после редактирования она должна выглядеть вот так:

hosts: files mdns4_minimal [NOTFOUND=return] wins dns mdns4

После перезагрузки для получения доступа к windows-ресурсу через CIFS можно будет указывать не только ip, но и сетевое имя windows-ресурса (netbios name). Но мы всеже рекомендуем использовать непосредственно ip-адрес (как было описано в статье) – к нему обращение идет напрямую, быстрее.

Также стоит отметить, что таким образом можно монтировать только конкретные общие папки (например: //192.168.0.11/share), но не весь windows-ресурс целиком (то есть просто: //192.168.0.11).

CIFS is a network-based file-sharing protocol which is used to share file, folders, and data over the network. The Windows, Linux, MacOSX, and other operating systems support the CIFS which makes it very useful to share files and folders over different operating systems. Both the SMB and CIFS protocols are developed by Microsoft and they work together without a problem. A Windows SMB share can be accessed with a CIFS client which is installed on a Linux system. In this tutorial, we will learn how to access and use SMB or CIFS Windows share from the Linux system.

Install CIFS Client For Linux

Linux distributions like Ubuntu, Debian, CentOS, Fedora, RHEL do not provides the CIFS client and tools by default. The CIFS should be installed explicitly. The CIFS client and tools are provided with the package named cifs-utils.

Debian, Ubuntu, Mint, Kali:

sudo apt install cifs-utils

Fedora, CentOS, RHEL:

sudo dnf install cifs-utils

If you are using different distributions than above the package name for the CIFS can be different. so use the term “cifs” to search and find the exact package name for your distributions.

After installing the CIFS client and tool we can use it to mount a Windows share or SMB share. The CIFS is a file system and can be used with the mount command. The mount command is used to mount different types of file systems. The -t option is used to mount Windows share by using the CIFS file system. The “cifs” is the file system name for the mount command. In the following example, we mount the windows share located in the host named FILESERVER in the path “/D/Backup” into the local Linux path “/mnt/backup”.

sudo mount -t cifs -o username=ismail //FILESERVER/D/Backup /mnt/backup

Windows shares can be accessed by using credentials which are username and password. In order to mount a windows share the username can be specified by using the “-o username=” option. In this case, we use the username “ismail”. After running this command the password is prompted with the following line. While typing the password the characters are do not shown for security reasons. So just type and press Enter.

Password:

Alternatively the remove Windows share hostname can be specified as IP address. In the following example the share is located in 192.168.1.10.

sudo mount -t cifs -o username=ismail //192.168.1.10/D/Backup /mnt/backup

List Mounted Windows Shares

After mounting a Windows share with the CIFS we can check the mount and list mounted paths in different ways. The most basic way is listing the local mount path by using the ls command.

ls /mnt/backup

Alternatively GUI based file managers can be used to list mounted local paths.

Another command to list currently monuted paths is the df command which also lists all local partitions and mount. Use following df command to list mounted windows shares.

df -l

Provide Password To Mount Windows Share

The windows share can be access with a username and password. The username and password can be provided in different ways. Generally the username is provided via the command line and password is entered into the password prompt. If we need to mount windows share in a batch mod or non-interactive mode we should provide the password with the mount command. The password can be provided with the mount command via command line interface with the password option.

sudo mount -t cifs -o username=ismail,password=Pss123 //FILESERVER/D/Backup /mnt/backup

Set Domain Name or WorkGroup Name

Windows share can be access with diffrent accounts and different authentication sources. Active Directory/Domain or WorkGroup can be used to specify user. The user domain or workgroup can be specified with the domain option like below.

sudo mount -t cifs -o username=ismail,domain=windowstect //FILESERVER/D/Backup /mnt/backup

Read Credentials From File

The windows share access crendentials can be specified via the command line interface. But this is not so secure. The executed commands are stored in the history file or logged in to a file. The credentials can be easily grabbed by others. There is a more secure way where crendetials (username and password) are stored in a file. The credential file format is like below.

username=ismail
password=Pass123
domain=windowstect

The credential file is provided with the credentials option like below. There is no need to add a username, password, or domain explicitly. All of these parameters read from the credentials file.

sudo mount -t cifs -o credentials=/home/ismail/cifs_credentials //FILESERVER/D/Backup /mnt/backup

Specify the Access Permissions

The windows share is mounted with the sudo command this makes the local share path can be read only by the current user. If we want to make the share available for all other Linux users we can use the access permissions option named dir_mode and file_mode.

  • dir_mode is used to specify the directories access permissions like 0755.
  • file_mode is used to specify the files access permissions like 0755.
sudo mount -t cifs -o user=ismail,dir_mode=0755,file_mode=0755 //FILESERVER/D/Backup /mnt/backup

Specify User and Group ID

While mounting via the CIFS protocol the mounted partition is owned by its current owner user and group. This may create some problems with the access, modification permissions. Different user and group ID can be specified for the local share path. This changes the local share path to the specified user and group as the owner. In the following example, we set the user ID as 1001 and group ID as 1001.

sudo mount -t cifs -o user=ismail,uid=1001,gid=1001 //FILESERVER/D/Backup /mnt/backup

Auto Mount SMB Share with CIFS

Upto now we have used the mount command in order to mount a windows share with the CIFS. The mount command is generally used to mount files shares and file systems interactively via the command line interface. If we need to mount a windows share automatically when the Linux system starts and do not want to type commands the /etc/fstab can be used. The /etc/fstab configuration file stores mount information about the current Linux system which is applied during boot. We can also add network based shares to mount via CIFS.

Open the /etc/fstab file with your favouritte text editor with root privileges by using sudo command. In this case we use nano text editor. Alternatively you can be GUI based text editor like Kwrite.

sudo nano /etc/fstab

Add the following line to the fstab file.

#WINDOWS SHARE             LOCAL DIR          TYPE    OPTIONS
//FILESERVER/D/Backup      /mnt/backup        cifs    username=ismail,uid=1001

Unmount Windows Share

After mounting a windows share we may need to unmount this share too. Unmounting detaches the mounted windows share and can not be used locally unless mounted again. The umount command is used to unmount windows share. Just provide the local mount point or path to the umount command. The unmounting operation also requires root privielges which is provided with the sudo.

sudo umount /mnt/backup

In some cases the share can allready used by other users. In this case it can not be unmounted to prevent data corruption. First the allready used files can be listed with the fuser command.

fuser -m /mnt/backup

If you do not care for data corruption or other proeblems you can use the -l option which is used to lazy unmount for the windows share. This unmounts the file system when the usage is over.

sudo umount -l /mnt/backup

Понравилась статья? Поделить с друзьями:
0 0 голоса
Рейтинг статьи
Подписаться
Уведомить о
guest

0 комментариев
Старые
Новые Популярные
Межтекстовые Отзывы
Посмотреть все комментарии
  • Windows server 2016 забыл пароль администратора
  • Программа apple для windows для передачи файлов
  • Latencymon for windows xp
  • Управление яркостью экрана windows xp
  • Windows 10 ltsc последний билд