Подключение сетевых дисков Windows в Linux (Samba)
В качестве сетевого хранилища (NAS) у меня сервер на базе Openmediavault (OMV). В нем несколько дисков с файловой системой EXT4. Настроен плагин SMB/CIFS, по-простому Samba.
Для автоматического монтирования дисков в Linux редактируем файл (добавляем строки) /etc/fstab в такой вид:
//192.168.1.100/2000WD2018 /home/nikolay/2000WD2018 cifs username=nikolay,password=parol,vers=3.0,file_mode=0777,dir_mode=0777 0 0
//192.168.1.100/1500WD /home/nikolay/1500WD cifs username=nikolay,password=parol,vers=3.0,file_mode=0777,dir_mode=0777 0 0
//192.168.1.100/2000WD /home/nikolay/2000WD cifs username=nikolay,password=parol,vers=3.0,file_mode=0777,dir_mode=0777 0 0
//192.168.1.100/2000HI /home/nikolay/2000HI cifs username=nikolay,password=parol,vers=3.0,file_mode=0777,dir_mode=0777 0 0
//192.168.1.100/2000USB /home/nikolay/2000USB cifs username=nikolay,password=parol,vers=3.0,file_mode=0777,dir_mode=0777 0 0
//192.168.1.100/1000WDRaid /home/nikolay/1000WDRaid cifs username=nikolay,password=parol,vers=3.0,file_mode=0777,dir_mode=0777 0 0
Тут:
192.168.1.100/2000WD2018 — общая папка на сервере с IP адресом 192.168.1.100
/home/nikolay/2000WD2018 — папка в гостевой (вашей) ОС, в которую будет смонтирован сетевая папка. Должна быть предварительно создана.
cifs — протокол подключения.
username=nikolay,password=parol — имя вашего пользователя и его пароль, заданные в OMV.
vers=3.0 — версия протокола Samba. Раньше казывать этот параметр было не обязательно, но сейчас в Linux Mint 19, например, это очень важно. Тут пишут почему.
file_mode=0777,dir_mode=0777 — предоставить полные права на чтение/запись для файлов и каталогов.
В принципе можно просто через файловый менеджер подключить все ресурсы, внести их в закладки и после перезагрузки ОС всё будет работать, но, например в KDE будет невозможно проигрывать видео файлы в Smplayer, это просто бесит.
Монтирование ресурсов Samba в Linux
Путем долгих поисков был добыт богатый опыт. Имеется сервер на базе Openmediavault, там несколько дисков с файлами, который нужны на основной машине (сейчас Linux Mint 19). Необходимо монтировать ресурсы Samba автоматически при входе в систему.
Делается редактированием файла /etc/fstab:
//192.168.1.100/2000WD /home/nikolay/2000WD cifs username=nikolay,password=parol,vers=3.0,file_mode=0777,dir_mode=0777 0 0
Папку /home/nikolay/2000WD создаем заранее. Насчет vers=3.0, раньше все работало без использования этого параметра, но в Linux Mint 18.3 стало невозможно подключить шары, вот что нагуглилось:
(https://forums.linuxmint.com/viewtopic.php?t=222087
The Linux Kernel starting with 4.13 changed the default CIFS smb dialect from 1.0 to 3.0 so now we have the opposite problem. If version of Windows or samba is very old you need to pass vers=1.0 in the mount command:
//server/share /media/Share cifs username=nnn,password=ppp,uid=1000,vers=1.0,noauto,user 0 0)
Есть гиперпроблема, которую я не победил в течении всего опыта эксплуатации Linux: KDE является одной из самых популярных оболочек, но если подключать «шару» напрямую, без редактирования fstab, то невозможно выполнить проигрывание видео файлов проигрывателями, кроме VLC.
Установка и настройка домашнего сервера на Ubuntu Server 14.10. Часть 5
Часть 1 — тут. Часть 2 — тут. Часть 3 — тут. Часть 4 — тут.
В домашней сети у меня несколько компьютеров с ОС Windows, поэтому нужно установить Samba для возможности доступа с этих машин на сервер.
Установка и настройка Samba сервера.
sudo apt-get install samba
Правим файл конфигурации:
/etc/samba/smb.conf
workgroup = HOME
server string = Nas
security = share
[Video]
path = /mnt/2000/video_2000
guest ok = yes
writeable = yes
[Video_p$]
path = /mnt/2000/lol
guest ok = yes
writeable = yes
Больше никакие настройки не трогал.
Затем захотел конфигурацию по имени пользователя и пароля (делал по этому руководству: http://help.ubuntu.ru/wiki/samba):
security = user
;null passwords = true
; Файл для альясов имен юзеров(например у меня на компе пользователю Dom сопоставляем имя nikolay на сервере)
;username map = /etc/samba/smbusers
[Video]
path = /mnt/2000/video_2000
browseable = yes
read only = no
guest ok = no
create mask = 0644
directory mask = 0755
; Привязка к определенному имени пользователя или группе, имена через пробел
; force user = user1 user2
; force group = group1 group2
[Video_p$]
path = /mnt/2000/lol
browseable = yes
read only = no
guest ok = no
create mask = 0644
directory mask = 0755
; Привязка к определенному имени пользователя или группе, имена через пробел
force user = nikolay
; force group = group1 group2
Добавляем нашего пользователя базу данных SMB и назначить пароль для доступа к общим ресурсам:
nikolay@nas:~$ sudo smbpasswd -a nikolay
New SMB password:
Retype new SMB password:
Added user nikolay.
И подключаем его:
nikolay@nas:~$ sudo smbpasswd -e nikolay
Enabled user nikolay.
sudo touch /etc/samba/smbusers
sudo nano /etc/samba/smbusers
Впишите в файл пару строк
# Unix_name = SMB_name1 SMB_name2
nikolay = Dom
Перезапуск самбы:
sudo service smbd restart