やるきなし

2015/01/21 18:02 / service autofs stop 時に mount point が削除される

autofs (automount) を停止すると,mount point が削除されてしまうという問題.NFS root (/ 自体を NFS でマウントしている状態)だったりすると,他の client が非常に困ることになる.

これに関しては autofs 4 時代に removes the toplevel mountpoint directories and fails to start the next time (Severity: grave) という bug report が出ていて,現在の autofs では mount 時に mount point がなくても

umount_autofs_indirect: mount point /home does not exist

という syslog を吐きつつ mkdir して mount してくれる仕様になっている.がしかし,umount 時に mount point を unlink する仕様はそのまま.

解決法は上記 bug report の中にあるように,予め mount point を mkdir しておき,chmod u-w (or chmod 555) しておくというもの.

とはいえ,NFS root で client 多数という状況では,各 client が mount point を open したまま保持しているので,一旦全 client で autofs stop して,mkdir, chmod した後に autofs start という対処が必要だった.

ちなみに上記 bug report は,autofs5 という package ができて,autofs (version 4) の package が削除される,というタイミングで,うやむやのうちに close された模様.その後 autofs5 は autofs (version 5) という package 名になる(この bug report は close されたまま).ということで,仕様として理解するしかなさげ.

追記(2015/5/8)

どうやら mount point (/home 等) の mode を 444 にしていても削除される(?) ようで,ほかの計算機の autofs が死んでしまう.

mount point の directory に何らかのファイルがもともとあれば削除されない(?) ようなので,ダミーのファイル(.dummy 等)を mount point に置いておくことにする.