Я пытаюсь автоматически монтировать сетевой диск при запуске путем редактирования, /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 должна быть видна в целевой папке.