- Монтирование сетевой папки в Linux | Ubuntu
- Ручное монтирование сетевой папки
- Автоматическое монтирование сетевой папки при загрузки системы
- Монтирование сетевой папки в Linux
- Монтирование сетевой папки в Linux
- Монтирование SMB
- Как быстро подмонтировать сетевой диск в Linux
- Онлайн курс по Linux
- Помогла статья? Подписывайся на telegram канал автора
- Автор Zerox
- 20 комментариев
Монтирование сетевой папки в Linux | Ubuntu
Сегодня в статье рассмотрим пример монтирования сетевой папки в операционную систему Linux, на примере Elementary OS/
Для работы c сетевыми дисками SMB/CIFS (Windows или Samba) нам понадобиться утилита cifs-utils. Для её установки открываем терминал и набираем следующую команду:
Далее потребуется создать директорию, куда мы хотим примонтировать нашу расшаренную сетевую папку. Для этого давайте наберем вот такую команду:
- user — имя вашего пользователя
- share — название директория куда будем монтировать нашу сетевую папку
Ручное монтирование сетевой папки
Далее набираем команду для монтирования нашей сетевой папке.
Если используются русские буквы или пробел в имени сетевой папки, надо весь путь заключить в кавычки «//192.168.0.1/Документы»
Так же сразу можно задать права доступа и кодировку, тогда надо вписать следующие параметры
- mount -t cifs — тип устройства/директории
- //ip — IP адрес сервера
- /home/user/share — в эту директорию будет примонтирована сетевая папка
- -o — задаем дополнительные опции монтирования
- username=user2 — это имя пользователя на удаленном хосте (сервере)
- password=parol — это пароль пользователя user2
- domain — название домена (рабочей группы)
- iocharset=utf8 — указываем кодировку (cp1251, koi8-r)
- file_mode=0777 — права доступа к файлам
- dir_mode=0777 — права доступа к директориям
Автоматическое монтирование сетевой папки при загрузки системы
Для этого создадим файл, куда мы сможем вписать информацию о пользователе(логин, пароль, домен/рабочая группа)
Для безопасности ограничим доступ к файлу с нашими данными:
Редактируем файл /etc/fstab
Также если при попытки создать или удалить какие либо файлы у Вас не хватает прав, то необходимо добавить uid и gid параметры.
Если не было ошибок, проверяем
Видим примонтированную папку, при следующей загрузки системы, будет автоматически примонтирована сетевая папка.
Если есть вопросы, то пишем в комментариях.
Также можете вступить в Телеграм канал, ВК или подписаться на Twitter. Ссылки в шапки страницы.
Заранее всем спасибо.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Источник
Монтирование сетевой папки в Linux
В одной из прошлых статей мы рассматривали как настраивать сетевые папки в Linux с помощью NFS. Если в Windows используется для этих целей Samba, то в Linux принято организовывать общие папки с помощью сетевой файловой системы NFS.
В этой статье мы поговорим о том как монтировать такие папки вручную, а также как настроить их монтирование при обращении с помощью autofs. Так вы будете экономить трафик между серверами и получите неплохую производительность.
Монтирование сетевой папки в Linux
Для того чтобы примонтировать сетевую папку в системе должен быть установлен пакет nfs-commons. В Ubuntu его можно установить такой командой:
sudo apt install nfs-common
Затем можно выполнять монтирование с помощью обычной команды mount, которой надо передать адрес сервера NFS и путь к папке в файловой системе сервера. Например, чтобы смонтировать папку /var/nfs выполните:
sudo mount ip_адрес:/var/nfs /mnt
Никакой авторизации в NFS нет, поддерживается только ограничение доступа по IP адресу, поэтому монтирование должно пройти успешно. Если статическое монтирование работает хорошо, можно переходить к настройке autofs. Не забудьте размонтировать сетевую папку:
sudo umount /mnt
Сначала нужно установить этот сервис. Для этого в Ubuntu выполните команду:
sudo apt install autofs
Все настройки сетевых папок, которые надо монтировать находятся в файле /etc/auto.master. Каждая строчка представляет из себя отдельную папку и имеет такой синтаксис:
/точка/монтирования /файл/с/карты —timeout=значение
Здесь файл карты, обычно это /etc/auto.misc — файл в котором более подробно описано что и куда надо монтировать. Синтаксис одной записи в файле /etc/auto.misc такой:
/точка/монтирования опции_монтирования ip_адрес:/путь/к/сетевой/папке
Для примера будем монтировать ту же сетевую папку /var/nfs на сервере 185.117.155.209 в локальную папку /mnt. В файл /etc/auto.master надо добавить такую строчку:
sudo vi /etc/auto.master
/mnt /etc/auto.nfs —timeout=100
Здесь мы сообщаем, что общая папка монтирования для всех ресурсов, описанных в файле /etc/auto.nfs — /mnt и если к ресурсу не обращаются на протяжении 100 секунд, то её следует размонтировать. Далее надо добавить описание монтирования в файл /etc/auto.nfs:
sudo vi /etc/auto.nfs
share -fstype=nfs4,rw 185.117.155.209:/var/nfs
Здесь — share это точка монтирования нашей сетевой папки в папке /mnt, затем идут опции монтирования, а потом адрес сервера и путь к папке на удалённой машине. Далее надо перезапустить сервис autofs:
sudo systemctl restart autofs
Затем можно попытаться обратиться к этой папке и она автоматически смонтируется:
Как видите, всё достаточно просто. Так и выполняется автоматическое монтирование сетевых папок в Linux. Но чтобы у вас появилась возможность создавать файлы в этой папке, надо чтобы сервер NFS был правильно настроен. Об этом смотрите предыдущую статью про настройку NFS.
Источник
Монтирование SMB
Монтирование SMB не что иное как подключение сетевой папки WIndows в Linux. SMB (Server Message Block) — сетевой протокол удаленного доступа к сетевым ресурсам (файлы, папки, принтеры и т.п.). В первой версии протокола был известен также как CIFS (Common Internet File System). Протоком SMB повсеместно используется во всех ОС Microsoft Windows.
В современных дистрибутивах Linux уже можно совершенной спокойно путешествовать по сетевым дискам. Но куда удобнее если смонтировать сетевой диск сразу в папку, да еще и на рабочем столе, красота. Я создал папку с общим доступом на сервере Hyper-V, её и буду монтировать. Монтирование SMB буду делать под специально заведенным пользователем, дабы не светить пароль админа.
Монтируемая папка
Монтируемая директория доступна только администраторам и пользователю smb (создан специально для монтирования). Сделать общую папку на сервере Windows можно двумя способами: 1 — через свойства папки; 2 — через Powershell. Через свойства папки проще и быстрее как для новичка.
Но в моем случае с сервером HyperV 2019 сработал только второй способ, через Powershell.
Данной командой я сделал общей папку расположенную по пути F:\smb_mount и присвоил ей имя smb_mount. Права на доступ к папке выдал пользователю Administrator и smb.
Общая папка у меня доступна по пути \\hvs19\smb_mount, но монтировать я буду ее по ip адресу. Принципиального вопроса как монтировать нет, просто не всегда есть возможность использовать имя.
С монтируемой папкой закончили, создадим папку куда будем монтировать. Я создал папку в /opt и назвал её F (по имени диска где лежит монтируемая папка) для удобства.
Установим набор утилит для монтирования SMB
Для Ubuntu (и прочих Debian`ов)
Для Centos 8 (и прочих RPM дистрибутивов на YUM)
Монтирование SMB
Все необходимые папки мы создали, теперь приступим к монтированию файловой системы.
Пройдемся по параметрам:
- -t cifs — тип файловой системы cifs (полностью совместим с SMB)
- username — пользователь у которого есть доступ к монтируемой папке (на сетевом диске). Если разрешено, можно использовать гостя, без пароля. В таком случае указываем username=guest
- password — пароль от учетной записи этого пользователя
- //192.168.1.110/smb_mount — общая папка на сервере которую монтируем
- /opt/F — папка куда монтируем.
Посмотрим что все получилось, проверим свободное место в сетевой папке
Можно использовать дополнительные возможности при монтировании, используя ключи после параметра -o. Вот некоторые из них
- rw — запись и чтение
- ro — только чтение
- iocharset=utf8 — в данной кодировке будет выводится информация;
- codepage=cp866 — кодировка используемая на сервере с общей папкой. Обычно Windows устанавливает кодировку cp866.
- vers=3.0 — принудительно указать версию подключения SMB протокола. Для безопасного подключения используйте последнюю версию.
Используя команду mount мы монтируем папку в ручном режиме и после перезагрузки монтирования не произойдет. Для автоматического монтирования папки читаем следующий раздел.
Автоматическое монтирование SMB
Для постоянного монтирования папке при старте системы необходимо внести изменения в файл /etc/fstab. При монтировании сетевого диска с SMB используется пароль. Для большей сохранности не будем указывать его в файле fstab, а сохраним в директории root.
Создадим файл с учетными данными
Добавим в файл строки: имя пользователя, пароль, домен (если используется). У меня домена нет, поэтому добавлю только имя и пароль
Откроем файл /etc/fstab для редактирования
Добавим новую строку в конец файла
Сохраним файл и перезагрузим компьютер. После этого сетевая папка будет монтироваться автоматически.
Разберем указанные параметры
- //192.168.1.110 — ip адрес сервера где находится сетевая папка
- /smb_mount — сетевая папка на указанном выше сервере
- /opt/F — папка на локальном компьютере куда будем монтировать сетевую папку
- cifs — тип монтируемой файловой системы
- user — разрешение монтировать для любого пользователя
- rw — разрешения на чтение/запись на диск при монтировании
- credentials — путь к файлу с данными учетной записи используемых для подключения по SMB
- 0 — не использовать дамп
- 0 — не проверять файловую систему при старте программой fsck
Права на папки и файлы
Примонтированный диск по умолчанию монтируется от root и разрешает запись на диск только под ним. Рассмотрим опции позволяющие изменить доступ на примонтированные папки и файлы. Также рассмотрим настройки по смене владельца смонтированной папки.
- uid — задает владельца каталога. Узнать uid пользователей можно в файле /etc/passwd
- gid — задает группу владельца каталога. Узнать gid групп можно в файле /etc/passwd
- file_mode=0777 — права на доступ к файлам. 0777 — разрешено запись/чтение всем.
- dir_mode=0777 — права на доступ к папкам. 0777 — разрешено запись/чтение всем.
Пример записи в файле /etc/fstab монтирования от моего пользователя (не root) с полным доступом ко всем файлам и папкам
Размонтирование SMB
Размонтировать сетевую папку SMB можно используя команду umount
В параметрах команды umount указываем директорию куда была смонтирована сетевая папка. В моем случае это /opt/F
Если смонтированная файловая система сейчас занята, появится сообщение umount: target is busy . В таком случае размонтировать получиться с ключом -l
Решение проблем монтирования
Если по какой либо причине после ваших попыток папка все же не монтируется, необходимо смотреть системный журнал.
В системном журнале будет указана причина ошибки монтирования. Как пример не верный логин/пароль, не установленные утилиты cifs и т.п.
Источник
Как быстро подмонтировать сетевой диск в Linux
Иногда нужно быстро подмонтировать к Linux сетевую шару Windows. Делается это очень просто одной командой в консоли с помощью mount -t cifs.
10.1.5.43 | адрес шары |
/mnt/documents | точка монтирования |
user1 | пользователь с доступом к шаре |
pass123 | пароль пользователя |
Если получаете ошибку примерно такого содержания:
Установите пакет cifs-utils:
Debian/Ubuntu | # apt-get install -y cifs-utils |
Centos/RHEL | # yum install -y cifs-utils |
После этого должно монтироваться нормально, если нет других ошибок.
Чтобы подмонтировать виндовую шару навечно, надо отредактировать fstab:
Вот и все, после перезагрузки шара будет автоматически монтироваться.
Онлайн курс по Linux
Помогла статья? Подписывайся на telegram канал автора
Автор Zerox
20 комментариев
Доброго времени.
Ввожу команду
sudo mount -t cifs \\192.168.1.32/documents /media/sharefolder -o user=******,password=********
mount error(13): Permission denied
Куда копать?
Заранее Спасибо
Подключитесь рутом и сделайте без sudo. Вероятно с правами какие-то проблемы.
Добрый день, были ли у вас проблемы в монтировании шары в CentOS 8, а именно в моём случае если к шаре в течении получаса не было обращений, то он как бы отключается, и становится не доступна (настроена через fstab), причём если перезагрузиться то всё снова успешно монтируется.
Надо признать, что если тоже самое повторить в CentOS 7 — то там не таких проблем, шара живёт вечно :/
Не сталкивался с таким. Правда я и шары очень редко подключаю к linux серверам. А что конкретно происходит, когда шара недоступна? Она в системе остается? Какая ошибка при обращении к ней?
Как смонтировать папку тольк для чтения ?
Все объекты, что в шаре, стали иметь владельца root)))
Даже если монтировать через sudo.
Спасибо тебе большое , добрый человек, за правильную команду mount -t cifs //10.1.5.43/documents /mnt/documents -o user=user1,password=pass123 .
При попытке использовать опции -t и -o получаем отлуп — только рут может использовать данные ключи.
Как обойти это при монтировании смб-шары пользователем с обычными правами?
Внесу, пожалуй, свои 5 копеек:
1) Монтирование шары через fstab — не по феншую, ввиду наличия проблем с загрузкой, в случае недоступности шары. Давно уже придуманы systemd mount-unit’ы — они позволяют монтироваться автоматически, при обращении к шаре или, если это требуется, монтироваться после инициализации сети (aka network-online.target).
2) Замечу так же, что для получения нормальной скорости, при переходе на 4-ю версию самбы, требуется фиксить версии используемых протоколов. В противном случае получим значительный просад по скорости. Конфиги при этом требуется править как на сервере, так и на клиенте указывая минимальную версию протокола — SMB2. Примерно так:
server min protocol = SMB2
server max protocol = SMB3
client min protocol = SMB2
client max protocol = SMB3
min protocol = SMB2
max protocol = SMB3
client ipc min protocol = SMB2
В случае монтирования из консоли, так же лучше указать это в опциях, пример:
sudo mount \
-t cifs //10.1.5.43/documents /mnt/documents \
-o uid=$(id -u),gid=$(id -g),rw,vers=3.0,user=user1,password=pass123
где `vers=3.0` — версия протокола
Спасибо за содержательное и полезное дополнение. Сразу ответили на вопрос, который давно у меня зрел в голове, но никак не доходили руки уточнить. Как явно указать использовать определенную версию протокола smb.
Вы уверены что надо так: \\10.1.5.43\documents .
а не так: //10.1.5.43/documents
Пробовал у себя как у Вас в примере написано, не заработало, повернул слеши и шара подцепилась.
Правда у меня не CentOS, а Mageia, но fstab думаю и в Африке fstab :))
Спасибо за замечание. Вы правы, слеши должны быть в другую сторону, как и в команде на ручное монтирование. Это была ошибка.
Добрый день! Подскажите пож-та, может сталкивались с такой проблемой и решили её: Есть Ubuntu 18.04 Gui gnome, введена в домен AD, логинятся доменные пользователи. Доступ залогиненных доменных пользователей к обменной папке на win2008r2 производится следующим образом: через nautilus-> другие места-> smb://server/obmen. В Nautilus появляется примонтированный obmen. Нажимаю ПКМ и добавляю в закладки(закладка останется в списке постоянно). Но при интенсивной работе c файлами в обменнике, он периодически отваливается с одной из двух ошибок: 1. Не удалось показать «server-11(smb)». Неизвестный тип файла 2. Ой, что-то пошло не так. Недостаточно прав для получения доступа к запрошенному адресу. Если выполнить smbclient -L server, то папку obmen видно. К папкам на других серверах доступ остаётся. В smb.conf вписал client max protocol = NT1. Есть подозрение, что проблема кроется в libreoffice, который не совсем корректно работает с файлами по сети. Как можно примонтировать сетевую папку скриптом в автозагрузке доменного пользователя, чтобы была сквозная доменная авторизация(пароли доменных пользователей меняются раз два месяца) т.к. нет возможности явно указать пароли в fstab?
Думаю, что тут стоит копать проблему и разбираться, почему сетевой диск отваливается. По автозагрузке ничего не скажу, я такой кейс не эксплуатировал ни разу.
Команда для автоматического монтирования не сработала. Добавил в /etc/fstab. Подскажите в чем может быть проблема. Может какие-то логи можно посмотреть?
В логах должна отразиться ошибка. Если через fstab совсем не получается и не понятно почему, а через консоль монтирует, то можно команду для монтирования через консоль просто добавить в /etc/rc.local Эффект будет тот же самый.
слеши в начале строчки разверни в другую сторону, по линуксовому =)
Источник