Cifs utils что это
Как в Linux монтировать шару CIFS
Что такое Linux и CIFS простыми словами.
Работа с общими папками Windows происходит с использованием протокола CIFS (SMB). Все примеры в данном руководстве выполняются на Linux Ubuntu и CentOS.
Подготовка
Установка пакетов
Для монтирования общей папки необходимо установить набор утилит для работы с CIFS.
yum install cifs-utils
apt-get install cifs-utils
Сетевые порты
Если мы будем монтировать сетевую папку, сервер которой находится за брандмауэром, необходимо открыть следующие порты:
Синтаксис
mount.cifs //192.168.1.1/public /mnt
* простой пример монтирования папки public на сервере 192.168.1.1 в локальный каталог /mnt.
Ручное монтирование
Теперь монтирование можно выполнить следующей командой:
* в данном примере будет примонтирован каталог share на сервере 192.168.1.10 в локальную папку /mnt под учетной записью dmosk.
То же самое, с использованием домена:
Автоматическое монтирование CIFS через fstab
Для начала создаем файл, в котором будем хранить данные авторизации при подключении к общей папке:
И добавляем в него данные следующего вида:
username=dmosk
password=dPassw0rd
domain=dmosk.local
* в этом примере создана пара логин/пароль — dmosk/dPassw0rd; domain указывать не обязательно, если аутентификация выполняется без него.
Теперь открываем конфигурационный файл 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: файл, который мы создали на предыдущем шаге.
Чтобы проверить правильность настроек, вводим следующую команду:
Примеры использования опций
Версии SMB
Если на стороне Windows используется старая или слишком новая версия протокола SMB, при попытке монтирования мы можем получить ошибку mount error(112): Host is down. Чтобы это исправить, указываем версию:
* монтирование по протоколу SMB1.0
Монтирование от гостевой учетной записи
Если сервер принимает запросы без логина и пароля, то клиент подключается, как гость:
//192.168.1.10/share /mnt cifs guest 0 0
Права на примонтированные каталоги
При монтировании папки мы можем указать определенные права:
Для указания владельца, который будет назначен для примонтированного каталога, используем:
📑 Монтирование расшаренных сетевых папок в Ubuntu
Файловая система CIFS, встроенная в ядро Linux — это предпочтительный метод для монтирования расшаренных сетевых ресурсов SMB/CIFS. CIFS (сокр. от англ. Common Internet File System, Единая Файловая Система Интернета) — сетевой протокол прикладного уровня для удалённого доступа к файлам, принтерам и другим сетевым ресурсам, а также для межпроцессного взаимодействия.
CIFS VFS является виртуальной файловой системой для Linux, обеспечивающей доступ к серверам и устройствам хранения, совместимым с версией 1.0 спецификации CIFS SNIA или поздней. Популярные серверы, такие как Самба, Windows 2000, Windows XP и многие другие поддерживают CIFS по умолчанию.
VFS CIFS оказывает некоторую поддержку для более старых серверов, основанных на более примитивном SMB (Server Message Block) протоколе (Вы также можете использовать файловую систему Linux smbfs в качестве альтернативы для доступа к ним). CIFS VFS была разработана, чтобы использовать продвинутые сетевые особенности файловой системы, такие как захват, Unicode (передовая интернационализация), hardlinks, dfs (иерархическое, реплицируемое пространство имени), распределенное кэширование и использует родные имена TCP (а не RFC1001, названия Netbios). В отличие от некоторых других сетевых файловых систем, вся ключевая сетевая функция включая идентификацию обеспечена в ядре, начиная с версии 2.5.42.
Файловая система CIFS поддерживается набором утилит пространства пользователя. Тот пакет инструментов называют CIFS-utils. Эти инструменты были первоначально частью пакета Samba, но по некоторым причинам их выделили в отдельный проект.
Для работы (монтирования) с расшаренными сетевыми дисками SMB/CIFS (Windows или Samba) необходимо установить пакет cifs-utils, который присутствует в репозиториях практически всех дистрибутивов Linux. Далее будем рассматривать только Ubuntu.
Теперь можно монтировать расшаренные сетевые ресурсы:
Для монтирования публичных сетевых ресурсов имя пользователя и пароль не задаются:
Для того, чтобы расшаренный сетевой ресурс (папка) монтировался при загрузке системы, необходимо в конфигурационный файл /etc/fstab добавить строчку:
В последних версиях Ubuntu/Mint может появляться ошибка:
а в syslog можно найти следующее:
В этом случае необходимо явно указать диалект, то-есть добавить в конец строки vers=1.0
Centos
один из способов (протокол) передачи данных по сети с одного устройства на другое. Самый распространенный пример использования — сетевой диск или сетевая папка для общего доступа. CIFS (Common Internet File System) также называют SMB (Server Message Block) — по сути, это одно и тоже.
В Windows клиент и сервер встроены в операционную систему. В Linux протокол может быть реализован с помощью samba.
Подготовка
yum install cifs-utils
Синтаксис
mount.cifs //192.168.1.1/public /mnt
* простой пример монтирования папки public на сервере 192.168.1.1 в локальный каталог /mnt.
Ручное монтирование
Теперь монтирование можно выполнить следующей командой:
* в данном примере будет примонтирован каталог share на сервере 192.168.1.10 в локальную папку /mnt под учетной записью andr.
То же самое, с использованием домена:
Автоматическое монтирование CIFS через fstab
Для начала создаем файл, в котором будем хранить данные авторизации при подключении к общей папке:
vi /root/.smbclient
И добавляем в него данные следующего вида:
username=andr
password=dPassw0rd
domain=andr.local
* в этом примере создана пара логин/пароль — andr/dPassw0rd; domain указывать не обязательно, если аутентификация выполняется без него.
Теперь открываем конфигурационный файл 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: файл, который мы создали на предыдущем шаге.
Чтобы проверить правильность настроек, вводим следующую команду:
Примеры использования опций
Версии SMB
Монтирование от гостевой учетной записи
Если сервер принимает запросы без логина и пароля, то клиент подключается, как гость:
//192.168.1.10/share /mnt cifs guest 0 0
Права на примонтированные каталоги
При монтировании папки мы можем указать определенные права:
cifs-utils-6.14
Introduction to cifs-utils
The cifs-utils package provides a means for mounting SMB/CIFS shares on a Linux system.
This package is known to build and work properly using an LFS-11.0 platform.
Package Information
Download MD5 sum: e918d1246adb841c61e562538c2cc78e
Download size: 408 KB
Estimated disk space required: 4.1 MB
Estimated build time: 0.1 SBU
cifs-utils Dependencies
Required
Optional
Kernel Configuration
Enable the following options in the kernel configuration and recompile the kernel if necessary:
Depending on your server configuration, additional kernel options may be required.
Installation of cifs-utils
Install cifs-utils by running the following commands:
This package does not come with a test suite.
Now, as the root user:
Command Explanations
Contents
Short Descriptions
cifs.idmap
is a userspace helper program for the linux CIFS client filesystem. There are a number of activities that the kernel cannot easily do itself. This program is a callout program that does these things for the kernel and then returns the result. It is not intended to be run from the command-line
cifs.upcall
is a userspace helper program for the linux CIFS client filesystem. It is intended to be run when the kernel calls request-key for a particular key type. It is not intended to be run from the command-line
cifscreds
is a tool for managing credentials (username and password) for the purpose of establishing sessions in multiuser mounts
getcifsacl
is a userspace helper to display an ACL in a security descriptor for Common Internet File System (CIFS)
mount.cifs
mounts a Linux CIFS filesystem. It is usually invoked indirectly by the mount(8) command when using the «-t cifs» option
mount.smb3
mounts a SMB3-based filesystem. It is usually invoked indirectly by the mount(8) command when using the «-t smb3» option
setcifsacl
is intended to alter an ACL of a security descriptor for a file system object
smb3-quota
displays quota information for a SMB filesystem
smbinfo
displays SMB-specific file information, such as security descriptors and quotas
Как смонтировать общий ресурс Windows в Linux с помощью CIFS
Common Internet File System (CIFS) — это сетевой протокол обмена файлами. CIFS — это форма SMB.
В этом руководстве мы объясним, как вручную и автоматически монтировать общие ресурсы Windows в системах Linux.
Установка пакетов утилит CIFS
Чтобы смонтировать общий ресурс Windows в системе Linux, сначала необходимо установить пакет утилит CIFS.
Установка утилит CIFS в Ubuntu и Debian:
Установка утилит CIFS на CentOS и Fedora:
Имя пакета может отличаться в зависимости от дистрибутива Linux.
Монтирование общего ресурса CIFS Windows
Подключение удаленного общего ресурса Windows аналогично монтированию обычных файловых систем.
Сначала создайте каталог, который будет точкой монтирования для удаленного общего ресурса Windows:
Выполните следующую команду от имени пользователя root или пользователя с привилегиями sudo, чтобы смонтировать общий ресурс:
Вам будет предложено ввести пароль:
В случае успеха вывод не производится.
После монтирования общего ресурса точка монтирования становится корневым каталогом смонтированной файловой системы. Вы можете работать с удаленными файлами, как если бы они были локальными.
Пароль также можно указать в командной строке:
Если пользователь находится в рабочей группе или домене Windows, вы можете установить его следующим образом:
Для большей безопасности рекомендуется использовать файл учетных данных, который содержит имя пользователя, пароль и домен общего ресурса.
Файл учетных данных имеет следующий формат:
Чтобы использовать файл учетных данных, определите его следующим образом:
По умолчанию подключенный общий ресурс принадлежит пользователю root, а права доступа установлены на 777.
Используйте параметр dir_mode чтобы установить права file_mode к каталогу, и file_mode чтобы установить права file_mode к файлу:
Владение пользователем и группой по умолчанию можно изменить с помощью параметров uid и gid :
Автоматический монтаж
Файл /etc/fstab содержит список записей, определяющих, где, как и какая файловая система будет монтироваться при запуске системы.
Добавьте в файл следующую строку:
Выполните следующую команду, чтобы смонтировать общий ресурс:
Команда mount прочитает содержимое /etc/fstab и смонтирует общий ресурс.
В следующий раз, когда вы перезагрузите систему, общий ресурс Windows будет подключен автоматически.
Отключение общего ресурса Windows
Команда umount отсоединяет (размонтирует) смонтированную файловую систему от дерева каталогов.
Чтобы отсоединить смонтированный общий ресурс Windows, используйте команду umount за которой следует либо каталог, в котором он был смонтирован, либо удаленный общий ресурс:
Команда umount не сможет отсоединить общий ресурс, когда он используется. Чтобы узнать, какие процессы обращаются к общему ресурсу Windows, используйте команду fuser :
Как только вы найдете процессы, вы можете остановить их с помощью команды kill и отключить общий ресурс.
Выводы
Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.