diff options
| author | vlapa <vlapa@ya.ru> | 2026-06-13 20:33:26 +0300 |
|---|---|---|
| committer | vlapa <vlapa@ya.ru> | 2026-06-13 20:33:26 +0300 |
| commit | e5abc1fe99340b979b18864d978179f71fe8f5c5 (patch) | |
| tree | 98fd0ad7c6d0744894d6e74e446daacd9e6dd1b5 /LINUX/CIFS.md | |
First
Diffstat (limited to 'LINUX/CIFS.md')
| -rw-r--r-- | LINUX/CIFS.md | 189 |
1 files changed, 189 insertions, 0 deletions
diff --git a/LINUX/CIFS.md b/LINUX/CIFS.md new file mode 100644 index 0000000..163bff7 --- /dev/null +++ b/LINUX/CIFS.md @@ -0,0 +1,189 @@ +```sh +sudo apt install cifs-utils -y + +# Монтирование ресурса выглядит так: +mount.cifs {ресурс} {путь к директории в которую монтируем } + +# Автоматическое монтирование директории происходит с использованием файла fstab. Для начала создадим дополнительный файл с учетными данными пользователя для авторизации. Оправданно будет создать этот файл в директории root. +sudo vim /root/.smbselus + +# вносим в файл: +username = vlapa +password = uspass + +sudo vim /etc/fstab + +# добавляем: +//10.10.10.2/что_монтируем /куда_монтирем cifs user,rw,crdentials=/root/.smbselus 0 0 + +# ======= +cifs user 一 разрешает монтировать любому пользователю; +rw 一 предоставляет права на чтение и запись; +credentials=/root/.smbselus 一 файл с учетными данными пользователя; +_0_ используется утилитой dump 0 一 выключен; +_0_ используется утилитой fsck 0 一 выключен. + +В некоторых случаях требуется добавить директиву domain в файл .smbselus. + +#================ +# Настройка сетевой корзны: +sudo mkdir /var/recycle +sudo chmod 777 /var/recycle + +sudo vim /etc/samba/smb.conf + +[Recycle] + comment = rec_dir + path = /var/recycle + public = yes + browseable = yes + writable = yes + vfs objects = recycle + recycle:repository = .recycle/%U + recycle:keeptree = Yes + recycle:touch = Yes + recycle:version = Yes + recycle:maxsize = *.tmp, ~$* + recycle:exclude_dir = /tmp + +#============== +[Recycle] 一 имя ресурса, отображаемое клиенту при подключении + +comment = rec_dir 一 комментарий + +path = /var/recycle 一 директория, в которой размещена сетевая корзина + +public = yes 一 доступ на чтение всем авторизованным пользователям, также гостевым + +browseable = yes 一 параметр устанавливает, будет ли общий ресурс отображаться в списке доступных общих ресурсов в сетевом окружении и в списке просмотра + +writable = yes 一 право записи в сетевой ресурс + +vfs objects = recycle 一 использование подсистемы recycle + +recycle:repository = .recycle/%U 一 место хранения удаленных объектов. В этой директиве настроено попадание удаленных файлов в каталог с именем пользователя, который создается автоматически в директории .recycle + +recycle:keeptree = Yes 一 удаление с сохранением дерева каталогов + +recycle:touch = Yes 一 изменение даты при перемещении файла в сетевую корзину + +recycle:versions = Yes 一 добавление номера версии при удалении файлов с одинаковыми именами + +recycle:maxsize = 0 一 параметр отвечает за максимальный размер файла, который может быть перемещен в корзину. При текущем значении возможно переместить файл любого размера + +recycle:exclude = *.tmp, ~$* 一 исключение файлов заданного типа + +recycle:exclude_dir = /tmp 一 исключение директории заданного типа + +``` +# Как в Linux монтировать шару CIFS + +  Обновлено: 19.06.2024  Опубликовано: 18.07.2016 + +Работа с общими папками Windows происходит с использованием протокола CIFS (SMB). Все примеры в данном руководстве выполняются на Linux Ubuntu и CentOS. + +### Установка пакетов + +`apt install cifs-utils + +### Сетевые порты + +Если мы будем монтировать сетевую папку, сервер которой находится за брандмауэром, необходимо открыть следующие порты: + +- 137/UDP +- 138/UDP +- 139/TCP +- 445/TCP + +## Синтаксис + +`mount.cifs <папка на сервере> <во что монтируем> <-o опции> + +_* вместо **mount.cifs** можно написать **mount -t cifs**._ + +Пример: + +`mount.cifs //192.168.1.1/public /mnt + +_* простой пример монтирования папки **public** на сервере **192.168.1.1** в локальный каталог **/mnt**._ + +`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 + +Для начала создаем файл, в котором будем хранить данные авторизации при подключении к общей папке: + +vim /root/.smbclient + +И добавляем в него данные следующего вида: + +```sh +username=dmosk +password=dPassw0rd +domain=dmosk.local +``` +_* в этом примере создана пара логин/пароль — **dmosk**/**dPassw0rd**;_ **domain** указывать не обязательно, если аутентификация выполняется без него. + +Задаем права на созданный файл, чтобы доступ был только у пользователя, скажем, root: +`chmod 600 /root/.smbclient +`chown root:root /root/.smbclient + +Теперь открываем конфигурационный файл fstab: +`vim /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 <имя группы>**._
\ No newline at end of file |
