Вопрос или проблема
У меня есть QNAP TS-251 NAS с парой накопителей по 4 ГБ, настроенных в RAID 1, работающий в качестве сервера, в основном для резервного копирования. У него стоит операционная система по умолчанию QTS 4.2.0 (19.01.2016), я думаю, она актуальна. Это специализированный дистрибутив Linux с графическим интерфейсом, который я запускаю с рабочего стола Windows. У него IP-номер 169.254.100.101 на Ethernet-порту #1 и 169.254.100.102 на Ethernet-порту #2.
В качестве клиента у меня есть старый ноутбук Dell (Core 2 Duo T8100), на котором работает Ubuntu 14.04 LTS. Он подключен к Ethernet-порту #2 QNAP, и его IP-номер 169.254.100.99.
Примечание: Здесь я включу фоновые детали, которые, вероятно, можно пропустить (но отвечу на вопросы “Зачем ты это делаешь?”, которые я предвкушаю) в [скобках].
Также есть настольный компьютер с Windows, подключенный к Ethernet-порту #1 QNAP, который участвует в этом только для запуска графического интерфейса QNAP. Я также могу использовать PuTTY с него к QNAP, если мне нужен командный интерфейс.
[QNAP поставляется с несколькими общими папками по умолчанию: Download, Multimedia, Public, Recordings, Web, homes.]
Я создал общую папку с именем CrashPlan на сервере QNAP и точку монтирования на клиенте Ubuntu с именем /mnt/QNAP-CrashPlan. Я установил пакеты NFS-клиента на клиенте с помощью sudo apt-get install portmap nfs-client
[и установил autofs с помощью sudo apt-get install autofs
в неудачной попытке диагностировать проблемы].
Следуя советам в этом вопросе, я дал NFS права доступа, хост/IP/сеть 169.254.*, разрешение на чтение/запись, и опцию squash NO_ROOT_SQUASH. Анонимные поля остались недоступными.
Таким образом, в момент истины, с клиента я попробовал sudo mount 169.254.100.102:/CrashPlan /mnt/QNAP-CrashPlan
и sudo mount -t nfs 169.254.100.102:/CrashPlan /mnt/QNAP-CrashPlan
, и в обоих случаях получил mount.nfs: Connection timed out
.
В попытке диагностировать проблему я попробовал showmount -e 169.254.100.102
, но получил ответ clnt_create: RPC: Port mapper failure - Unable to receive: errno 111 (Connection refused)
.
Я много искал и много пробовал, но не нашел никаких дополнительных путей для диагностики проблемы. Есть идеи?
Я добавлю больше деталей по мере необходимости. Также это может заслуживать тег “qnap”, но у меня нет прав на создание тегов.
[Детали проблемы XY: Причина, по которой я назвал общую папку, которую я создал, CrashPlan, заключается в том, что я пытался запустить QNAP как сервер CrashPlan. Я не смог заставить это работать, кроме как смонтировав папку CrashPlan как диск Windows, используя net use
для её монтирования и запустив отдельный экземпляр клиента CrashPlan в режиме пользователя на Windows, потому что Windows не позволяет службам доступ к дискам net use
. Запуск сервера CrashPlan на моем старом ноутбуке с Ubuntu с монтированием QNAP через NFS описывался как конфигурация, которая избегала этой проблемы.]
У меня это произошло после недавнего обновления. Я отключил NFS4 на Qnap и включил его снова, и тогда это сработало для клиента.
IP-адреса, начинающиеся с 169.254.*
, являются ошибкой. Это адреса локальной сети, предназначенные для обеспечения связи между хостами в одной подсети. Вам нужно сначала это исправить, возможно, это можно исправить, настроив DHCP-сервер на NAS.
В остальном всё должно быть в порядке после этого.
Ответ или решение
Для успешной настройки клиентского устройства Ubuntu с сервером QNAP TS-251 через NFS необходимо учесть несколько важных аспектов, которые часто приводят к возникновению проблем, таких как "Connection timed out" или "RPC: Port mapper failure".
1. Проверка конфигурации IP-адресов
Ваши IP-адреса (169.254.100.x) принадлежат к классу "link-local", что указывает на то, что устройства не могут получать адреса от DHCP-сервера. Это может объяснять проблемы с доступом. Чтобы устранить это, рекомендуется:
- Подключите NAS к DHCP-серверу, который предоставит "нормальный" IP-адрес.
- Если у вас нет отдельного DHCP-сервера, настройте DHCP-сервер на QNAP, если такая опция доступна.
2. Настройка NFS на QNAP
Убедитесь, что настройки NFS на сервере QNAP правильные. Для этого выполните следующие действия:
- Зайдите в интерфейс веб-управления QNAP и перейдите в раздел настроек NFS для конкретной папки (в вашем случае, CrashPlan).
- Проверьте, чтобы был установлен флажок "NFS Access" с правами как на чтение, так и на запись и убедитесь, что установлен флажок "No_root_squash".
Также иногда полезно попробовать переключить между NFS версиями. Вы пробовали отключить и включить NFSv4, что, как показали ваши дальнейшие попытки, помогло, но это может зависеть от конкретной конфигурации и версии ПО.
3. Установка и проверка необходимых пакетов на Ubuntu
Убедитесь, что все необходимые пакеты установлены и правильно настроены на клиенте Ubuntu. Выполните команды:
sudo apt-get update
sudo apt-get install nfs-common
992/The next step is to check if the NFS service is running and reachable:
sudo systemctl status nfs-common
4. Подключение к NFS
Попробуйте выполнить команду монтирования с использованием правильного IP-адреса (укажите IP-адрес, который вы назначите вашему NAS):
sudo mount -t nfs <IP-адрес QNAP>:/CrashPlan /mnt/QNAP-CrashPlan
5. Диагностика проблем
Если вы все еще сталкиваетесь с ошибками, попробуйте выполнить команду для получения списка доступных экспортов с сервера:
showmount -e <IP-адрес QNAP>
Если вы получаете ответ об отказе подключения, это говорит о том, что NFS-сервис на сервере не отвечает. Убедитесь, что на вашем QNAP включены все необходимые службы NFS и нет блокировок на уровне брандмауэра.
6. Настройка брандмауэра
Если у вас стоит какой-либо брандмауэр, убедитесь, что он не блокирует порты, используемые NFS (обычно, порты 2049, 111 и другие, если используются дополнительные опции сервера).
Заключение
Убедитесь, что вы тщательно выполнили каждый из шагов, особенно сосредоточив внимание на проблемах с IP-адресами и настройкой NFS. Критически важно также иметь надежное сетевое соединение между вашим компьютером и NAS без ошибок конфигурации.
Если после всех этих шагов проблемы все еще сохраняются, может быть полезно обратиться в службу поддержки QNAP или исследовать форумы, где другие пользователи могут делиться своим опытом.