- Как в Linux монтировать шару CIFS
- Подготовка
- Установка пакетов
- Сетевые порты
- Синтаксис
- Ручное монтирование
- Автоматическое монтирование CIFS через fstab
- Примеры использования опций
- Версии SMB
- Монтирование от гостевой учетной записи
- Права на примонтированные каталоги
- Linux — монтируем шару CIFS
- Ссылки
- Установка пакета для работы CIFS
- Монтирование CIFS вручную
- Монтирование CIFS автоматически через fstab
- Дополнительно
- Теги
- Похожие материалы
- Установка VMware Tools на Ubuntu
- Олег
Как в Linux монтировать шару CIFS
Обновлено: 01.05.2023 Опубликовано: 18.07.2016
Что такое Linux и CIFS простыми словами. Работа с общими папками Windows происходит с использованием протокола CIFS (SMB). Все примеры в данном руководстве выполняются на Linux Ubuntu и CentOS.
Подготовка
Установка пакетов
Сетевые порты
Синтаксис
* вместо 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):
б) на Deb (Debian / Ubuntu / Astra Linux / Mint):
или, при необходимости авторизоваться на файловом сервере:
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
Для начала создаем файл, в котором будем хранить данные авторизации при подключении к общей папке:
И добавляем в него данные следующего вида:
username=dmosk
password=dPassw0rd
domain=dmosk.local
* в этом примере создана пара логин/пароль — dmosk/dPassw0rd; domain указывать не обязательно, если аутентификация выполняется без него.
Задаем права на созданный файл, чтобы доступ был только у пользователя, скажем, root:
chown root:root /root/.smbclient
Теперь открываем конфигурационный файл 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. Чтобы это исправить, указываем версию:
mount.cifs //192.168.1.10/share /mnt/ -o vers=1.0
* монтирование по протоколу SMB1.0
Монтирование от гостевой учетной записи
Если сервер принимает запросы без логина и пароля, то клиент подключается, как гость:
mount.cifs //192.168.1.10/share /mnt -o guest
//192.168.1.10/share /mnt cifs guest 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 .
Linux — монтируем шару CIFS
CIFS (Common Internet File System) — протокол передачи данных по сети с одного устройства на другое. CIFS также называют SMB (Server Message Block). Пример: сетевая папка или диск для общего доступа.
Для работы CIFS/SMB необходимы порты:
Для предоставления удалённого доступа используется TCP 445. Для разрешения имен NetBios используются порты UDP 137, 138 и TCP 139, без них будет работать только обращение по IP адресу.
В Windows поддержка CIFS/SMB есть по умолчанию. В Linux CIFS/SMB реализуется с помощью samba.
Ссылки
Установка пакета для работы CIFS
Монтирование CIFS вручную
mount.cifs или mount -t cifs
Пример монтирования общей папки public на сервере с IP адресом 10.20.30.40 в локальную папку /mnt:
mount.cifs //10.20.30.40/public /mnt
Пример монтирования папки share на сервере с IP адресом 10.20.30.40 в локальную папку /mnt от имени пользователя v.pupkin:
mount.cifs //10.20.30.40/share /mnt -o user=v.pupkin
Пример монтирования папки share на сервере с IP адресом 10.20.30.40 в локальную папку /mnt от имени пользователя v.pupkin в домене ilab.local:
mount.cifs //10.20.30.40/share /mnt -o user=v.pupkin,domain=ilab.local
Монтирование CIFS автоматически через fstab
Создаём файл для хранения логина и пароля. Лучше скрытый.
username=v.pupkin password=MySecretPassw0rd domain=ilab.local
Добавляем строку в /etc/fstab:
//10.20.30.40/share /mnt cifs user,rw,credentials=/root/.smbshare 0 0
- //10.20.30.40/share — путь к монтируемой папке
- /mnt — локальная папка для монтирования
- cifs — тип файловой системы
- user — позволяет монтировать любому пользователю
- rw — чтение/запись
- credentials — путь к файлу с логином и паролем для монтирования
- 0 — индикатор резервной копии (0 — не используется)
- 0 — порядок проверки раздела (0 — не проверять)
Монтируем перезагрузкой или командой:
Дополнительно
Монтирование CIFS с пробелом (заменяем пробел на \040):
//10.20.30.40/share\040with\040spaces /mnt cifs user,rw,credentials=/root/.smbshare 0 0
Монтировать от гостевой учётной записи:
//10.20.30.40/share /mnt cifs guest 0 0
Указать версию протокола SMB 3.0:
//10.20.30.40/share /mnt cifs user,rw,credentials=/root/.smbshare,vers=3.0 0 0
Монтировать под пользователем:
//10.20.30.40/share /mnt cifs defaults,uid=v.pupkin,gid=v.pupkin.group,rw,credentials=/root/.smbshare,vers=3.0 0 0
//10.20.30.40/share /mnt cifs defaults,uid=222,gid=222,rw,credentials=/root/.smbshare,vers=3.0,file_mode=0600,dir_mode=0700 0 0
Намекаем на виндовую шару:
//10.20.30.40/share /mnt cifs defaults,uid=222,gid=222,rw,credentials=/root/.smbshare,vers=3.0,file_mode=0600,dir_mode=0700,nounix 0 0
//fs.ilab.local/новая\040папка /mnt cifs defaults,uid=www-data,gid=www-data,rw,credentials=/root/.smbshare,vers=3.0,file_mode=0600,dir_mode=0700,nounix,codepage=cp1251,iocharset=utf8 0 0
Теги
Похожие материалы
Установка VMware Tools на Ubuntu
Олег
VMware Tools — бесплатный набор утилит для улучшения взаимодействия виртуальной машины и платформы VMware. В Интернете пишут про то, что от установки VMware Tools улучшается производительность виртуальной машины. В качестве примера указывают на то, что только в этом наборе утилит есть драйвера для сетевой карты vmxnet3. Не согласен, драйвера можно и отдельно поставить. В linux так и без этих драйверов сетевая карта работает нормально. А вот если у вас Windows Server — рекомендую vmxnet3, меньше глюков.