mount.nfs: вказано неправильний параметр кріплення


12

Я намагаюся встановити обсяг NFS на сервері centos 7.2:

Коли я намагаюся встановити точку поділу NFS, я отримую відповідь:

[root@web1:~] #mount -t nfs nfs1.example.com:/var/nfs/home /home
mount.nfs: an incorrect mount option was specified

Я перевірив, і я nfs-utils-1.3.0-0.21.el7.x86_64встановив на обох машинах. Як клієнт nfs, так і ОС nfs-сервера є Centos 7.2

Щоб вирішити цю проблему, я скоротив списки у файлі / etc / export на сервері NFS лише до наступного:

/var/nfs/home web1.example.com(rw,sync,no_root_squash,no_all_squash)

Якщо я роблю showmountз сервера, на якому я намагаюся встановити nfs share, це те, що я бачу:

[root@web1:~] #showmount -e nfs1.example.com
Export list for nfs1.example.com:
/var/nfs/home web1.example.com

Якщо я роблю mount -vце, я отримую:

[root@web1:~] #mount -v -t nfs nfs1.example.com:/var/nfs/home /home
mount.nfs: timeout set for Fri Jan 13 11:04:19 2017 mount.nfs: trying text-based options 'vers=4,addr=162.xxx.xxx..94,clientaddr=162.xxx.xxx.6'
mount.nfs: mount(2): Invalid argument mount.nfs: an incorrect mount option was specified

У dmesg я знаходжу:

[44428.405419] nfsd: last server has exited, flushing export cache

І я бачу це в dmesg:

[ 7.373186] FS-Cache: Netfs 'nfs' registered for caching
[ 7.422181] Key type dns_resolver registered
[ 7.456581] NFS: Registering the id_resolver key type
[ 7.462309] Key type id_resolver registered
[ 7.462386] Key type id_legacy registered
[ 7.514441] SELinux: initialized (dev 0:40, type nfs4), uses genfs_contexts
[ 8.474503] NFSD: starting 90-second grace period (net ffffffff819a29c0) –
[ 16.952180] perf samples too long (2623 > 2500), lowering kernel.perf_event_max_sample_rate to 50000
[ 24.429251] SELinux: initialized (dev tmpfs, type tmpfs), uses transition SIDs
[ 38.368207] perf samples too long (5162 > 5000), lowering kernel.perf_event_max_sample_rate to 25000
[ 38.427323]

Невказання -t nfsв команді дає той самий результат:

[root@nfs1:~] #mount nfs1.example.com:/var/nfs/home /home
mount.nfs: an incorrect mount option was specified

Це файлові системи nfs у мене:

[root@nfs1:~] #grep nfs /proc/filesystems
nodev   nfsd
nodev   nfs
nodev   nfs4

Ось модулі, завантажені для nfs:

[root@nfs1:~] #lsmod | grep ^nfs
nfsv4                 474203  0
nfs                   241266  1 nfsv4
nfsd                  284378  13
nfs_acl                12837  1 nfsd

Це не проблема брандмауера, оскільки я отримую такий самий точний збій, коли запускаю команду mount з самого сервера NFS. Він отримує таку ж помилку, що і клієнти.

Я хочу наголосити, що це свого часу спрацювало чудово. Але тепер він розбитий до того, коли його не можна використовувати.

Чи може хтось допомогти мені вирішити це? Я справді застряг у цьому пункті.


Мені спало на думку, що ваша проблема може бути пов’язана з правилами брандмауера. Чи можете ви розмістити вихід firewall-cmd --query-service=nfs --query-service=mountd --query-service=rpc-bindз сервера NFS?
virtex

1
Власне кажучи, "Permissive" не вимкнено, і все одно генеруватиме повідомлення SELinux - але SELinux нічого не заборонятиме в Permissive. У цьому режимі ви можете ігнорувати будь-які відхилені в журналах.
Джейсон Мартін

Джейсон Мартін отримав! Дякуємо за підказку на SELinux.
користувач99201

3
Будь ласка, запустіть rpcdebug -m nfs -s mountще раз, а потім надрукуйте все, що виходить із dmesg. Потім бігайте rpcdebug -m nfs -c mount. Це звучить як помилка розбору, можливо, через погані зміни в nfsmount.conf - вона повинна відображатися, якщо ви це зробите в ядрі dmesg.
Метью Іфе

Ви rpcbindвстановили на машині, яка забезпечує частку?
13димітар

Відповіді:


5

Потрапте в цю ж проблему і сьогодні. Я натрапив на варіант, nfsversколи шукав пояснення. Монтаж працював з nfsvers=3і nfsvers=4. Я б радий більш детального пояснення, хоча.

root@localhost:~# uname -rm
4.1.15 armv7l
root@localhost:~# mount -t nfs 10.0.0.5:/srv/nfs tmp
mount.nfs: an incorrect mount option was specified
root@localhost:~# mount -t nfs -o nfsvers=1 10.0.0.5:/srv/nfs tmp
mount.nfs: mount system call failed
root@localhost:~# mount -t nfs -o nfsvers=2 10.0.0.5:/srv/nfs tmp
mount.nfs: requested NFS version or transport protocol is not supported
root@localhost:~# mount -t nfs -o nfsvers=3 10.0.0.5:/srv/nfs tmp
root@localhost:~# mount -t nfs -o nfsvers=4 10.0.0.5:/srv/nfs tmp
root@localhost:~#

Останні дві команди вдалися.


1

Я знайшов цю проблему сьогодні на Tiny Core Linux, виявився той факт, що служба клієнтів nfs не була запущена. Як тільки я запустив цю послугу ( /usr/local/etc/init.d/nfs-client start), експорт NFS встановлений без проблем.


1
/usr/local/etcвиглядає як неправильна установка nfs-client, оскільки файл повинен бути у /etc/init.dвідповідному файлі та пов'язаний з ним /etc/rc? .dдля запуску автоматично.
Ян

@JanHudec так, у звичайному дистрибутиві, але архітектура Tiny Core цього не дозволяє. Ми могли б сперечатися зі стандартами, поки корови не повернуться додому, але JeOS летить перед стандартами, як є.
Аарон Мейсон
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.