Как правильно отредактировать /etc/fstab для сетевого диска?

Как правильно отредактировать /etc/fstab для сетевого диска?

Я пытаюсь автоматически монтировать сетевой диск при запуске путем редактирования, /etc/fstabно это не работает.

Если я выполню эту линию,

sudo mount.cifs //192.168.0.67/test /home/pi/test -o username=myname,password=123

это работает отлично. Но я не знаю, как правильно написать то же самое в /etc/fstab.

решение1

Каждая строка в /etc/fstabфайле содержит следующие поля, разделенные пробелами или табуляциями:

file_system    dir    type    options    dump    pass

Типичная точка монтирования, добавленная в /etc/fstab, будет выглядеть следующим образом:

# <file system>        <dir>         <type>    <options>             <dump> <pass>
/dev/sda1              /             ext4      defaults,noatime      0      1

Вы не можете просто добавить оператор монтирования в файл.

Добавьте эту строку в конец вашего /etc/fstabфайла:

 //192.168.0.67/test  /home/pi/test  cifs  username=myname,password=123,iocharset=utf8,sec=ntlm  0  0

После редактирования /etc/fstab вы можете провести тестирование, смонтировав файловую систему, mount -aкоторая проверит fstab и попытается смонтировать все, что в ней присутствует.

решение2

В дополнение к ответу 에이바, вы можете захотеть поместить учетные данные в специальный файл, который называется .smbcredentialsв вашем домашнем каталоге, для большей безопасности. Это хорошая практика, особенно для многопользовательских систем. Таким образом вы защитите свой пароль cifs. Создайте файл: /home/myname/.smbcredentialsи включите всего две строки:

username=myname
password=123

Установите свои разрешения: $ chmod 600 .smbcredentials

Затем /etc/fstabвключите следующую строку:

//192.168.0.67/test  /home/myname/test  cifs  credentials=/home/myname/.smbcredentials,iocharset=utf8,sec=ntlm  0  0

Обязательно проверьте с помощью mount -aперезагрузки.

решение3

Извините, если это кажется вам вторжением в вашу ветку обсуждения, но это связано, и я потратил часы, пытаясь заставить размещенный здесь совет работать с моим Raspberry Pi, прежде чем сдался и придумал эту альтернативу для пользователей Raspberry Pi... обратите внимание, что это также должно работать в Ubuntu 18.04.

Я попытался применить приведенные выше советы к рабочему столу Raspberry Pi Raspbian Buster на моем Raspberry Pi 3+, но единственное, что мне удалось заставить работать надежно, это версия для командной строки, опубликованнаяпользователь6354в начале этой ветки. Однако мне удалось поместить эту строку с небольшим редактированием в файл в папке /home/user/.config/autostart на моем pi и заставить ее работать.

Содержимое файла должно выглядеть следующим образом (внесите изменения в соответствии с вашей ситуацией — см. ниже):

[Desktop Entry] Encoding=UTF-8 Name=OurCloud_share Name[en_GB]=OurCloud_share GenericName=OurCloud_share Comment=Script to mount OurCloud_share TryExec=lxterminal Exec=lxterminal -e "sudo mount.cifs //192.168.1.xxx/sourcefolder /home/pi/targetfolder -o username=loginID,password=userpassword" Icon=lxterminal Type=Application StartupNotify=true Categories=GTK;Utility;TerminalEmulator; Name[en_US]=mount_OurCloud.desktop

Где:

OurCloud_share = как бы вы ни называли свой доступ к NAS-диску

192.168.1.xxx = замените это на TCP/IP-адрес вашего NAS в сети

sourcefolder = общая папка на вашем NAS-диске

targetfolder = папка, в которой вы хотите разместить содержимое смонтированной папки NAS (создайте эту папку и убедитесь, что она доступна для чтения и записи, если вы хотите получить к ней двусторонний доступ)

loginID = идентификатор пользователя для входа в NAS через сеть

userpassword = пароль для использования с loginID

Назовите файл осмысленно (здесь я использую «mount_OurCloud.desktop». Тип файла «.desktop» обязателен).

Сохраните это, а затем используйте права root, чтобы задать разрешение на исполняемый файл.

Перезагрузите компьютер, и ваша папка NAS должна быть видна в целевой папке.

Связанный контент