突然sambaが不調になったので調べたらsmbXsrv_open_global.tdbが巨大化(?)してtmpfsを食い潰していたのでこのファイルを削除して再起動したら直ったというお話。
いきさつ
数日前からDebian Jessieで動かしているsambaサーバが不調に。それも全く繋がらないとかではなく、20ファイル転送しようとすると5ファイル目でエラーで止まるとかそんな感じ。
特に何も変えた覚えはないので困ったなあ…と思っていたのだけど、別のことをしてた時に何気なくdfしたら/run
の使用量が100%になってて、これか、と。
早速/run
以下で容量の多いファイルを調べてみたら/run/samba/smbXsrv_open_global.tdb
が4294967295バイトとか食い潰してる表示になってた。これって2^32-1なのでtmpfsの方が壊れたっぽいのかな。
そもそもsmbXsrv_open_global.tdb
は何者なのか、と思って検索してみたけどsmbd.8には「オープンファイルのハンドラー(継続性のあるハンドラーに使われるなど)」としか書いてないし、その他にもめぼしい情報がない。まあファイル自体は大丈夫なんだから削除しても問題ないだろう、ということでsambaサービス止めてファイル削除して再起動。これで無事再び使えるようになった。実際にはサービスの再起動だけで再作成されるっぽいのかな。
ということで一応問題は解決したのだけど、なぜそうなったのかが不明なので微妙。次にまたおかしくなったときのためにメモを残す。
(2017-11-28追記)
また同じ現象が発生したので今度はサービスの再起動だけしたけど、ちゃんと再作成された。