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

Монтирование сетевой папки в 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.

Источник

Как быстро подмонтировать сетевой диск в Linux

Иногда нужно быстро подмонтировать к Linux сетевую шару Windows. Делается это очень просто одной командой в консоли с помощью mount -t cifs.

10.1.5.43 адрес шары
/mnt/documents точка монтирования
user1 пользователь с доступом к шаре
pass123 пароль пользователя

Если получаете ошибку примерно такого содержания:

Читайте также:  Joystick xbox 360 windows

Установите пакет 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?

Читайте также:  Sp1 обновление sp2 для windows

Думаю, что тут стоит копать проблему и разбираться, почему сетевой диск отваливается. По автозагрузке ничего не скажу, я такой кейс не эксплуатировал ни разу.

Команда для автоматического монтирования не сработала. Добавил в /etc/fstab. Подскажите в чем может быть проблема. Может какие-то логи можно посмотреть?

В логах должна отразиться ошибка. Если через fstab совсем не получается и не понятно почему, а через консоль монтирует, то можно команду для монтирования через консоль просто добавить в /etc/rc.local Эффект будет тот же самый.

слеши в начале строчки разверни в другую сторону, по линуксовому =)

Источник

Как подключить сетевой диск к Linux Mint 20

Mint очень популярный дистрибутив Linux. В большинстве случаев его ставят на предприятиях разного уровня в качестве альтернативы Windows. Это связанно в первую очередь с его простотой и удобством использования. Это касается и администрирования и простых пользователей. Например, подключить общею папку к Mint очень просто, не нужно даже прибегать к использованию терминала. Все делается через графическую оболочку. Но все же есть кое какие нюансы о которых сейчас вам расскажу.

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

Подключаем общею папку к Mint

И так у вас есть общая папка которая расположена на сервере с Windows. Для того чтобы подключить этот ресурс к Linux Mint нужно зайти в «Пуск» и выбрать «Сеть».

Далее в поле «Перейти к» вводим IP адрес компьютера на котором расположена эта папка.

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

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

После чего произойдет монтирование папки и ссылка на неё появиться в разделе «Сеть.»

Но после перезагруки компьютера она пропадет. Поэтому на неё нужно сделать закладку. Для этого выделаем общею папку которая появилась в разделе «Сеть», на панели инструментов выбираем пункт «Закладки» и «Добавить закладку».

Теперь у вас в постоянно будет закладка на общею папку. Таким образом можно подключить несколько сетевых папок. Это самый простой и быстрый способ подключения сетевого диска к Linux Mint.

Читайте также:  Linux windows слетает время

Источник

Как подключить сетевой диск Windows в Linux

Поддержку сетевых дисков Windows в Linux обеспечивает пакет cifs-utils. Если он у вас еще не установлен, в командной строке от имени суперпользователя введите

apt-get install cifs-utils

Эта команда проверит, установлен ли указанный пакет и, если нет, установит его.

Создайте в /mnt (или любом другом месте) папку, в которую мы будем подключать сетевой диск Windows:

И наконец само подключение сетевой папки Windows в Linux выполняется с помощью команды mount.cifs

mount.cifs //SERVER_IP/SHARE_NAME /mnt/winshare -o username=WIN_USER_NAME,password=WIN_USER_PASSWORD

Такая команда выполнит присоединение к фаловой системе Linux сетевого диска Windows с именем SHARE_NAME, расположенного на сервере с IP-адресом SERVER_IP от имени WIN_USER_NAME с паролем WIN_USER_PASSWORD. Следует понимать, что на стороне Windows уже логичным образом указанная папка должна быть расшарена и права на доступ к ней должны принадлежать указанному пользователю.

В большинстве случаев этого достаточно, если вы работаете от лица суперпользователя. Если же вы от лица суперпользователя производите только подключение сетевой папки Windows, а работать с ней планируете от лица обычного, непривелегированного пользователя, то в качестве опции команде mount.cifs необходимо передать значения UID и GID этого пользователя, иначе, скорее всего, вам не будут доступны операции редактирования файлов и каталогов. Получить UID и GID пользователя можно командой:

grep MY_USER_NAME /etc/passwd

Подставив вместо MY_USER_NAME имя пользователя, под которым вы работаете в Linux, вы получите примерно следующую строчку:

где 3-е и 4-е поле как раз указывают на UID и GID пользователя MY_USER_NAME. Теперь просто подставим полученные значения в качестве дополнительных аргументов команды mount.cifs:

mount.cifs //SERVER_IP/SHARE_NAME /mnt/winshare -o username=WIN_USER_NAME,password=WIN_USER_PASSWORD,uid=1000,gid=1000

где uid=1000,gid=1000 — uid и gid, полученные из примера выше.

Напротив, если сетевой диск публичен, и для доступа к нему не нужен ни логин ни пароль, в опциях вместо имени пользователя и его пароля необходимо указать, что доступ является гостевым:

mount.cifs //SERVER_IP/SHARE_NAME /mnt/winshare -o guest

И наконец, чтобы в Linux автоматически подключать сетевую папку после перезагрузки, вносим соответствующую информацию в /etc/fstab (дописываем в конец файла):

//SERVER_IP/SHARE_NAME /MOUNT_POINT_PATH cifs ALL_OPTIONS 0 0

Т.е. должно получиться что-то вроде

//192.168.0.1/share /mnt/winshare cifs user=WIN_USER_NAME,password=WIN_USER_PASSWORD,uid=1000,gid=1000 0 0

Вы скажите, что это плохо — хранить пароль в открытом виде в файле, доступном для чтения всем, и будете правы. К счастью, разработчики об это позаботились. Создаем файл с помощью редактора, например, nano:

nano /etc/credentials #имя файла может быть любым

Делаем его доступным для чтения и записи только для пользователя root:

chmod 600 /etc/credentials #указывайте файл, который создавали вы

и вместо всей обвязки из имен и паролей просто пишем в опциях credentials=/etc/credentials (или тот файл, который вы создали). Эта опция работает как при ручном монтировании сетевого диска Windows

mount.cifs //SERVER_IP/SHARE_NAME /mnt/winshare -o credentials=/etc/credentials,uid=1000,gid=1000

так и автоматическом, при внесении записи в /etc/fstab (из примера выше):

//192.168.0.1/share /mnt/winshare cifs credentials=/etc/credentials,uid=1000,gid=1000 0 0

Примечание. Если вы используете дистрибутив, основанный на SystemD (Debian версии 8 и выше, Ubuntu версии 15.04 и выше, Fedora, ArchLinux. ), применение файла /etc/fstab для автоматического монтирования файловых систем является нежелательным, так как SystemD использует несколько другой механизм для монтирования файловых систем, хотя он и обратно совместим с /etc/fstab. Узнать, как можно использовать возможности SystemD для монтирования файловых систем можно в статье SystemD Automount

Источник

Оцените статью