Повесьте во время операции «касания» на монтировании NFS

У меня есть два клиента NFS, установленные на sharefiler 2.99 NFS на 192.0.2.3:

  • 192.0.2.1 устанавливает 192.0.2.3:/mnt/nfs01/volnfs01/share01 с rw,noatime,nodiratime,hard,rsize=32768,wsize=32768,noacl,nocto,tcp,nfsvers=3
  • 192.0.2.1 устанавливает 192.0.2.3:/mnt/nfs01/volnfs01/share02 с rw,noatime,nodiratime,hard,rsize=32768,wsize=32768,nfsvers=3,tcp,noacl,nocto
  • rw,noatime,nodiratime,hard,rsize=32768,wsize=32768,nfsvers=3,tcp,noacl,nocto с rw,noatime,nodiratime,hard,rsize=32768,wsize=32768,nfsvers=3,tcp,noacl,nocto

touch

Моя проблема связана с монтированием NFS 192.0.2.2. Когда я касаюсь файла на этом монтировании, процесс зависает бесконечно … Я использовал strace touch /mnt/share02/this и получил это далеко …

 rt_sigaction(SIGRTMIN, {0x3b71c05ae0, [], SA_RESTORER|SA_SIGINFO, 0x3b71c0f500}, NULL, 8) = 0 rt_sigaction(SIGRT_1, {0x3b71c05b70, [], SA_RESTORER|SA_RESTART|SA_SIGINFO, 0x3b71c0f500}, NULL, 8) = 0 rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0 getrlimit(RLIMIT_STACK, {rlim_cur=10240*1024, rlim_max=RLIM_INFINITY}) = 0 brk(0) = 0xafb000 brk(0xb1c000) = 0xb1c000 open("/usr/lib/locale/locale-archive", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=99158576, ...}) = 0 mmap(NULL, 99158576, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7fce244c0000 close(3) = 0 open("/mnt/share02/this", O_WRONLY|O_CREAT|O_NOCTTY|O_NONBLOCK, 0666 ^^^ stops touching | | 

Когда я проверяю ps -elf с другого терминала, я вижу процесс в состоянии «D» …

 [mpenning@host192_0_2_2 ~]$ ps -elf | awk '$2=="D"' 0 D mpenning 8157 8032 0 80 0 - 26293 rpc_wa 09:59 pts/2 00:00:00 touch /mnt/share02/this [mpenning@host192_0_2_2 ~]$ 

showmount не находит проблемы, хотя ….

 [mpenning@host192_0_2_2 ~]$ showmount -e 192.0.2.3 Export list for 192.0.2.3: /mnt/nfs01/volnfs01/share01 192.0.2.2/255.255.255.255,192.0.2.1/255.255.255.255 /mnt/nfs01/volnfs01/share02 192.0.2.2/255.255.255.255,192.0.2.1/255.255.255.255 [mpenning@host192_0_2_2 ~]$ 

Различные состояния служб NFS …

 [mpenning@host192_0_2_2 ~]$ service nfs status rpc.svcgssd is stopped rpc.mountd (pid 9168) is running... nfsd (pid 9232 9231 9230 9229 9228 9227 9226 9225) is running... rpc.rquotad (pid 9164) is running... [mpenning@host192_0_2_2 ~]$ service rpcbind status rpcbind (pid 9088) is running... [mpenning@host192_0_2_2 ~]$ service nfslock status rpc.statd (pid 9256) is running... [mpenning@host192_0_2_2 ~]$ 

Конфигурация сети (по умолчанию gw не требуется, поскольку это выделенный layer2 NFS vlan):

 [mpenning@host192_0_2_2 ~]$ sudo cat /etc/sysconfig/network-scripts/ifcfg-eth1 DEVICE=eth1 NM_CONTROLLED=no ONBOOT=yes BOOTPROTO=none IPADDR=192.0.2.2 NETMASK=255.255.255.0 DNS2=none TYPE=Ethernet GATEWAY= DNS1=none IPV6INIT=no USERCTL=no MTU=9000 [mpenning@host192_0_2_2 ~]$ 

Это выглядит довольно неприятно. Я сделал следующее на 192.0.2.2:

  • Перезапущено все NFS
  • init 6 машина
  • ping 192.0.2.3 чтобы убедиться, что он все еще имеет подключение к серверу
  • Проверено dmesg
  • Проверено showmount -e 192.0.2.3

Это похоже на проблему с разрешениями, но я не знаю, куда идти отсюда …

Как я могу исправить эту проблему, чтобы я мог читать / записывать в любой файл на 192.0.2.2 mount 192.0.2.3:/mnt/nfs01/volnfs01/share02 ?


touch работы

Если я выполняю ту же команду touch от 192.0.2.1, все в порядке …

 rt_sigaction(SIGRTMIN, {0xb096e0, [], SA_SIGINFO}, NULL, 8) = 0 rt_sigaction(SIGRT_1, {0xb09b80, [], SA_RESTART|SA_SIGINFO}, NULL, 8) = 0 rt_sigprocmask(SIG_UNBLOCK, [RTMIN RT_1], NULL, 8) = 0 getrlimit(RLIMIT_STACK, {rlim_cur=10240*1024, rlim_max=RLIM_INFINITY}) = 0 uname({sys="Linux", node="host192_0_2_1.localdomain.local", ...}) = 0 brk(0) = 0x8d4d000 brk(0x8d6e000) = 0x8d6e000 open("/usr/lib/locale/locale-archive", O_RDONLY|O_LARGEFILE) = 3 fstat64(3, {st_mode=S_IFREG|0644, st_size=99158544, ...}) = 0 mmap2(NULL, 2097152, PROT_READ, MAP_PRIVATE, 3, 0) = 0xb7574000 close(3) = 0 open("/mnt/share02/this", O_WRONLY|O_CREAT|O_NOCTTY|O_NONBLOCK|O_LARGEFILE, 0666) = 3 dup2(3, 0) = 0 close(3) = 0 utimensat(0, NULL, NULL, 0) = 0 close(0) = 0 close(1) = 0 close(2) = 0 exit_group(0) = ? 

/etc/exports из 192.0.2.3

 [root@T1-Netfile01 backups]# head /etc/exports # PLEASE DO NOT MODIFY THIS CONFIGURATION FILE! # This configuration file was autogenerated # by Openfiler. Any manual changes will be overwritten # Generated at: Fri Nov 8 9:35:39 CST 2013 /mnt/nfs01/volnfs01/share02 192.0.2.1/255.255.255.255(rw,anonuid=96,anongid=96,secure,root_squash,wdelay,sync) 192.0.2.2/255.255.255.255(rw,anonuid=96,anongid=96,secure,root_squash,wdelay,sync) /mnt/nfs01/volnfs01/share01 192.0.2.1/255.255.255.255(rw,anonuid=96,anongid=96,secure,root_squash,wdelay,sync) 192.0.2.2/255.255.255.255(rw,anonuid=96,anongid=96,secure,root_squash,wdelay,sync) [root@T1-Netfile01 backups]# 

One Solution collect form web for “Повесьте во время операции «касания» на монтировании NFS”

И если вы измените порядок IP-адресов в /etc/exports что произойдет? Поместите .2.2 IP 1st и .2.1 2nd.

Также я бы подтвердил, что экспорт представляет с помощью команды:

 $ showmount -e 192.0.2.3 

/etc/exports может быть очень особенным в форматировании!

Другие вещи, чтобы попробовать

  1. Обычно я указываю свои хосты в каталоге /etc/exports следующим образом:

     /cobbler/isos 192.168.1.0/24(rw,no_root_squash) 

    Таким образом, для вас с одним IP-адресом хоста:

     /mnt/nfs01/volnfs01/share02 192.0.2.1/32(rw,anonuid=96,anongid=96,secure,root_squash,wdelay,sync) 192.0.2.2/32(rw,anonuid=96,anongid=96,secure,root_squash,wdelay,sync) /mnt/nfs01/volnfs01/share01 192.0.2.1/32(rw,anonuid=96,anongid=96,secure,root_squash,wdelay,sync) 192.0.2.2/32(rw,anonuid=96,anongid=96,secure,root_squash,wdelay,sync) 
  2. Связанные с nfs сервисы

    Убедитесь, что nfslock и другие связанные службы работают на 192.0.2.2.

  3. Если вы используете jumbo-фреймы, убедитесь, что ping -s <jumbo_mtu> 192.0.2.3 работает с 192.0.2.2

  • Как поведение файловой системы ведет себя в разных системах, совместно использующих экспорт NFS?
  • Каталог «не найден» в HP-UX для точки монтирования NFS
  • запустите скрипт из rc.local, который существует на sharefiles
  • Использование NFS для gcc, Apache, PHP, MySQL, glibc
  • Есть ли способ проверить df -k, зависающую для проблем монтирования nfs?
  • Подключить в linux общую папку из окон
  • Как настроить NFS для соблюдения прав пользователей и групп?
  • система блокируется, когда хранилище отключается при использовании опций монтирования nfs bg, hard, nointr
  • Каковы последствия запуска исполняемых файлов над NFS?
  • Предотвращение разрыва соединения NFS от замораживания клиентской системы
  • Загрузка ядра через NFS
  • Interesting Posts

    Как заблокировать ввод данных на машине Linux?

    Общий HTTP-сервер, который просто сбрасывает запросы POST?

    Изменение цвета меню темы gtk 3.0

    Использовать nmcli для чередования пароля VPN?

    Использование среды bash из внешнего раздела ОС

    Как список пакетов в файле .deb?

    Написание сценария завершения вкладки для bash

    поиск строк в шаблонах сопоставления файлов, определенных в другом файле

    Скрипт, создающий оконные окна, неожиданно ждет закрытия каждого окна перед тем, как открыть следующий

    Арифметические операции с expr и переменными

    Я не могу включить или отключить службу пользователя: Не удалось выполнить операцию: нет такого файла или каталога

    Как заблокировать мой экран в Gnome 3.8 без GDM?

    DU: показывать только папки на глубине

    Как изменить изображения флагов XFCE Клавиатурные макеты, которые апплет использует для указания?

    Файловый дескриптор и вилка

    Linux и Unix - лучшая ОС в мире.