はじめに
タイトルはあれなんだが、使い古したMac MiniにUbuntu18.04.4を入れて、
さらにそこにSamba(4.11.9)を入れて、そこにTimeMachineのバックアップ取ったり、
そこにiTunesのライブラリ(音楽ファイル)を置いてたりしてました。
(という話も書こうと思ってまだ書いてない。)
そしてある日からTimeMachineのバックアップや、
iPhoneの同期(ミュージックの同期)に失敗するようになりました。
失敗したときには、Sambaがハングアップしているので、これが原因だろうと調査しました。
ログを見てみる
まずは/var/log/samba/log.smbd
を見てみると
[2020/07/05 23:24:37.465274, 0] ../../source3/lib/util.c:501(reinit_after_fork)
messaging_reinit() failed: NT_STATUS_DISK_FULL
とか出てたり、/var/log/samba/log.%m
の方にも、
NT_STATUS_NOT_FOUND
とか、NT_STATUS_UNSUCCESSFUL
とか出てる。
DISK FULL??
いや、どこもディスク溢れてないが、、、、
90%超えたくらいでSambaはそう言ったりするとかの話もあるけど、そうでもないが。。
DISK FULLになっていたのは/run/lockパーティション
なんか色々調べていたら/run/lockパーティションが溢れて、Sambaがパニックを起こしていたらしい。
$ df -h /run/lock
Filesystem Size Used Avail Use% Mounted on
tmpfs 16M 6.2M 9.9M 39% /run/lock
このパーティションはシステムが勝手にマウントする領域らしく、自分の場合は5MBでマウントされていました。
とりあえず16MBでマウント。
サイズを変えるには、/etc/fstab
に以下の行を追加して、再起動。
tmpfs /run/lock tmpfs rw,nosuid,nodev,noexec,relatime,size=16m 0 0
一時的なら以下のコマンドでも変更可能。
# mount -o remount,size=16M,noatime /run/lock
これでバックアップ中でも、iPhoneの同期中でも/run/lockパーティションが溢れずに、
Sambaがパニックにならず、処理が完了できるようになりました。