VNX: Byla zjištěna smyčka systému souborů při spuštění příkazu "find" v Control Station
Summary: VNX: Smyčka systému souborů byla rozpoznána při spuštění příkazu "find" v Control Station.
Symptoms
Uživatel spouští find na řídicí stanici při hledání souboru v souborovém systému připojeném k přenašeči dat.
Uživateli se při spuštění systému Linux zobrazí chyba "Byla zjištěna smyčka systému souborů". find Spusťte příkaz jako uživatel root z kořenového adresáře "/" řídicí stanice a pokuste se vyhledat soubor.
“.find: Filesystem loop detected; `/nasmcd/quota/slot_7/fs03group61/mail/61'" má stejné číslo zařízení a inodu jako adresář, který je o tři úrovně výše v hierarchii souborového systému.
Skript find příkaz přestane reagovat při spuštění na řídicí stanici.
Cause
Při použití find příkaz na řídicí stanici VNX nebo Celerra jako uživatel root z kořenového adresáře "/", find Vyhledá zadané klíčové slovo v celém systému. To zahrnuje všechny souborové systémy zákazníka připojené na přenášecích dat (např.: "/nas/quota/slot_2/fs_name/"). Vzhledem k tomu, že adresářová struktura řídicí stanice je odlišný fyzický souborový systém než systémy souborů zákazníka připojené k přenašeči dat. Každý z těchto dvou souborových systémů může sdílet stejná čísla inodů.
Až se find Příkaz zjistí stejné číslo inodu z předchozího adresáře, ve kterém již hledal, zobrazí se chyba a příkaz může přestat reagovat.
Vzhledem k tomu, že adresářová struktura řídicí stanice a adresářová struktura zákazníka jsou v tomto scénáři v samostatných fyzických systémech souborů, lze chybu ignorovat.
Pomocí příkazu "ls -ial" můžeme zkontrolovat inody # mezi dvěma různými systémy souborů a potvrdit, že čísla inodů jsou duplicitní.
V níže uvedeném příkladu je inode # zobrazen v levém sloupci výstupu "ls -ial".
Příklad:
[root@VNX001 /]# find / -name rpt_file /nasmcd/quota/slot_7/fs03install/.etc/rpt_file /nasmcd/quota/slot_7/fs03db99/.etc/rpt_file /nasmcd/quota/slot_7/fs03sub/.etc/rpt_file /nasmcd/quota/slot_7/fs03audit/.etc/rpt_file /nasmcd/quota/slot_7/fs03group99/.etc/rpt_file <<<<<Filesystem loop detected here
“.find: Filesystem loop detected; `/nasmcd/quota/slot_7/fs03group61/dir/99'" má stejné číslo zařízení a inodu jako adresář, který je o tři úrovně výše v hierarchii souborového systému.
Všimněte si, že při porovnání adresářových struktur o 3 úrovně výše, dva soubory pojmenované "." a "99" sdílejí stejný inode #.
[root@VNX001 slot_7]# ls -ial /nasmcd/quota/slot_7/ total 552 2 drwxr-xr-x 37 root root 2048 Aug 10 2015 . <<<inode # is 2 5695 drwxr-xr-x 17 root root 0 Jul 15 01:00 .. 4 dr-xr-xr-x 13 root bin 2048 Apr 16 2015 .etc 18446744071562067968 drwxr-xr-x 6 root root 1024 Sep 8 2013 .etc_common 3 drwxr-xr-x 2 root root 8192 Sep 8 2013 lost+found ....(output omitted).... [root@VNX001 slot_7]# [root@VNX001 slot_7]# ls -ial /nasmcd/quota/slot_7/fs03group99/mail/ <<<Note different directory total 2448 75 drwxrwx--- 102 103 101 4096 Oct 10 2013 . 95 drwxrwx--- 7 103 101 1024 Sep 12 2013 .. ....(output ommited)... 2 drwxrwx--- 301 103 101 25600 Jul 26 20:24 99 <<<inode # is 2 ....(output ommited)... [root@VNX001 slot_7]#
Resolution
Nejedná se o problém s přerušením/opravou. Nahlášená chyba je očekávané chování příkazu. Control Station má přístup k připojeným souborovým systémům přesouvání dat v umístění /nas/quota/, takže find může najít inodovou smyčku, protože jsou připojeny různé souborové systémy.
Při spuštění find příkaz nenarušuje produkční prostředí, nedoporučuje se spouštět kořenový adresář příkazu na úrovni adresáře "/" nebo "/nas" v řídicí stanici.