Я пытаюсь автосмонтировать диск NAS, который я имею к Серверу Ubuntu, но он дает мне проблему, где это, кажется, не находит название NAS в сети, когда я монтирую его.
Тянуть доли как это хорошо работает и дает мне печать из долей на NAS.
smbclient -L //NASNAMEHERE
Я продолжил добавлять долю, я хочу к/etc/fstab использование строки ниже. .smbcredentials
файл содержит комбинацию пользователя/передачи для доступа RW к доле.:
//NASNAMEHERE/Archive /home/user/Archive cifs credentials=/home/user/.smbcredentials,iocharset=utf8,file_mode=0777,dir_mode=0777 0 0
Однако, когда я работаю sudo mount -a
для монтирования нового устройства это дает мне это.
mount error: could not resolve address for martinez-nas: Unknown error
Это, кажется, сетевая проблема, поскольку я, может казаться, не проверяю с помощью ping-запросов NAS по имени непосредственно, но я смущен тем, почему это не будет работать, если smbclient
может правильно найти NAS и перечислить доли.
Рабочий сервер Ubuntu 14.04.2
Найденный этот вопрос , который отвечает на это для меня. В основном Samba может сделать поиски имени хоста, в то время как монтирование не может. Я установил IP-адрес вместо имени хоста в /etc/fstab
, и это работало как очарование.
Различием является клиент самбы, делает поиски имени netbios, в то время как mount.cifs делает поиски имени хоста, который требует некоторой стороны локальной сети механизм DNS. CIFS понятия не имеет, каково имя netbios.
Существуют некоторые решения:
[1] Некоторые маршрутизаторы предоставляют той стороне локальной сети механизм DNS автоматически. Вот почему только подмножество пользователей CIFS испытывает эту проблему определения имен. Возможно, Ваш маршрутизатор делает это, но он не включен - это стоит исследовать.
[2] Вы могли дать Вашему nas статический IP-адрес. Это может также быть сделано на маршрутизаторе, если Вы не хотите делать это на самом nas. Затем просто получите доступ к серверу тем IP-адресом.
[3] Вы могли использовать квалифицированное имя хоста mDNS (hostname.local), если Ваш nas имеет тот. В настоящее время Linux, Win10 (необходимо включить его), Apple Mac и эти сетевые устройства, разработанные для работы с Mac, у всех есть эти имена хостов. Если Вы знаете текущий IP-адрес nas, можно использовать эту команду (с корректным IP-адресом), чтобы видеть, имеет ли это тот:
avahi-resolve -a 192.168.1.208
Используйте имя от того вывода и присоедините .local в конце, если это уже не имеет этого.
[4] И наконец очень неправильно понятый и неправильно истолкованный winbind "трюк":
Если приложение хочет разрешить IP-адрес имени хоста, это смотрит на/etc/nsswitch.conf файл, чтобы знать как. При рассмотрении файла, Вы будете видеть различные способы, которыми он делает это: "файлы" (/etc/hosts), "mdns4" (mDNS), и сам "DNS". Нигде там не ссылка на netbios. Поэтому добавьте его путем размещения побед параметра перед параметром DNS.
победам в свою очередь нужна libnss_wins.so библиотека, и Вы получаете это при установке следующего пакета:
sudo apt install libnss-winbind
Установка того пакета также устанавливает сам winbind.
Таким образом, Вы заканчиваете тем, что установили что-то (winbind), разработанный для чего-то совершенно другого, чтобы сделать netbios имя, появляются как имя хоста к вещам как CIFS и ping. Назад в день это "решение" имело последствия, поскольку оно иногда замедляло доступ в Интернет, но, учитывая увеличения относительной скорости за эти годы я предполагаю, что никто не заметил бы.