Как смонтировать общий ресурс Windows в Linux с помощью CIFS

В операционных системах Linux и UNIX общий ресурс Windows можно cifs к определенной точке монтирования в локальном дереве каталогов с cifs опции cifs команды mount .

Common Internet File System (CIFS) — это сетевой протокол обмена файлами. CIFS — это форма SMB.

В этом руководстве мы объясним, как вручную и автоматически монтировать общие ресурсы Windows в системах Linux.

Установка пакетов утилит CIFS

Чтобы смонтировать общий ресурс Windows в системе Linux, сначала необходимо установить пакет утилит CIFS.

  • Установка утилит CIFS в Ubuntu и Debian:

     sudo apt update sudo apt install cifs-utils
  • Установка утилит CIFS на CentOS и Fedora:

     sudo dnf install cifs-utils

Имя пакета может отличаться в зависимости от дистрибутива Linux.

Монтирование общего ресурса CIFS Windows

Подключение удаленного общего ресурса Windows аналогично монтированию обычных файловых систем.

Сначала создайте каталог, который будет точкой монтирования для удаленного общего ресурса Windows:

sudo mkdir /mnt/win_share

Выполните следующую команду от имени пользователя root или пользователя с привилегиями sudo, чтобы смонтировать общий ресурс:

sudo mount -t cifs -o username=<win_share_user> //WIN_SHARE_IP/<share_name> /mnt/win_share

Вам будет предложено ввести пароль:

Password:

В случае успеха вывод не производится.

Чтобы убедиться, что удаленный общий ресурс Windows успешно смонтирован, используйте команду mount или df -h .

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

Пароль также можно указать в командной строке:

sudo mount -t cifs -o username=<win_share_user>,password=<win_share_password> //WIN_SHARE_IP/<share_name> /mnt/win_share

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

sudo mount -t cifs -o username=<win_share_user>,domain=<win_domain> //WIN_SHARE_IP/<share_name> /mnt/win_share

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

Файл учетных данных имеет следующий формат:

/etc/win-credentials
username=user
password=password
domain=domain

Файл не должен быть доступен для чтения пользователям. Чтобы установить правильные разрешения и владение , запустите:

sudo chown root: /etc/win-credentialssudo chmod 600 /etc/win-credentials

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

sudo mount -t cifs -o credentials=/etc/win-credentials //WIN_SHARE_IP/<share_name> /mnt/win_share

По умолчанию подключенный общий ресурс принадлежит пользователю root, а права доступа установлены на 777.

Используйте параметр dir_mode чтобы установить права file_mode к каталогу, и file_mode чтобы установить права file_mode к файлу:

sudo mount -t cifs -o credentials=/etc/win-credentials,dir_mode=0755,file_mode=0755 //WIN_SHARE_IP/<share_name> /mnt/win_share

Владение пользователем и группой по умолчанию можно изменить с помощью параметров uid и 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

Чтобы установить дополнительные параметры , добавьте их в виде списка, разделенного запятыми, после параметра -o . Чтобы получить список всех параметров монтирования, введите в терминале man mount .

Автоматический монтаж

Когда общий ресурс монтируется вручную с помощью команды mount , он не сохраняется после перезагрузки.

Файл /etc/fstab содержит список записей, определяющих, где, как и какая файловая система будет монтироваться при запуске системы.

Чтобы автоматически монтировать общий ресурс Windows при запуске системы Linux, определите монтирование в /etc/fstab . Строка должна включать имя хоста или IP-адрес ПК с Windows, имя общего ресурса и точку монтирования на локальном компьютере.

Откройте файл /etc/fstab текстовом редакторе :

sudo nano /etc/fstab

Добавьте в файл следующую строку:

/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

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

sudo mount /mnt/win_share

Команда mount прочитает содержимое /etc/fstab и смонтирует общий ресурс.

В следующий раз, когда вы перезагрузите систему, общий ресурс Windows будет подключен автоматически.

Отключение общего ресурса Windows

Команда umount отсоединяет (размонтирует) смонтированную файловую систему от дерева каталогов.

Чтобы отсоединить смонтированный общий ресурс Windows, используйте команду umount за которой следует либо каталог, в котором он был смонтирован, либо удаленный общий ресурс:

sudo umount /mnt/win_share

Если для CIFS-монтирования есть запись в fstab , удалите ее.

Команда umount не сможет отсоединить общий ресурс, когда он используется. Чтобы узнать, какие процессы обращаются к общему ресурсу Windows, используйте команду fuser :

fuser -m MOUNT_POINT

Как только вы найдете процессы, вы можете остановить их с помощью команды kill и отключить общий ресурс.

Если у вас все еще есть проблемы с --lazy ресурса, используйте параметр -l ( --lazy ), который позволяет вам отключить занятую файловую систему, как только она больше не будет занята.

sudo umount -l MOUNT_POINT

Выводы

В Linux вы можете cifs к Windows с помощью команды mount с опцией cifs .

Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.

Оставьте комментарий