読者です 読者をやめる 読者になる 読者になる

なんとなく

誰得感満載な記事が多いかも。Mono関係とLinuxのサーバ関係、レビューとか。

RockDisk Nextのminidlnaのバグには続きがあった。。。

不安定だということで、実際に使ってみないとわからないなと判断して購入してみたRockDisk Next。 ちょっとお金をかけてしまってから、使えないことがわかったら嫌だったので、とりあえず、キットモデルを購入して、HDDなしの環境で運用してみた。

dsfファイルが2GB以上だとうまくid3tagを取得できないバグを承知で購入したのだけど、そのバグに起因して当方の環境だとスキャンにやたら時間がかかるというものだった。

使えるようになるか余っていたHDDを接続して試してみた。

HDDをつけてみた

HDDの環境下だと少しは改善、でも。

NFSでマウントしている先をRockDisk Nextのminidlnaでscanすると、書き出す速度が転送速度に引っ張られ、2GB程度で11分ほどかかっていた。そのため、余っていたHDDを取り付けて、HDDの運用だとどうなるか試してみた。

バグを引き起こすファイルは16個あり、

  • NFSでマウントしている先をminidlnaにスキャンさせる場合は200分程度かかっていた。
  • HDDにNFSでマウントしている先のファイルをrsyncして、同様に計測したしたところ17分程度になった。

ちなみにRaspberryPiではあるが、バグを修正して検証したところ1分程度でスキャンは終了した。

ファイル共有で急にアクセスできなくなる

HDDの運用にしたことで、sambaも同時に稼働させていて、ファイルを共有していたのだが、スキャン中にアクセスしたところ急にアクセスできなくなった。 名前でもIPアドレスでも接続できなかった。RockDisk Nextのプロセスを見てみたら、smbdおよびnmbdが上がっていなかった。

# /etc/init.d/smbd start

としてsmbdをあげたら、まだアクセスできなかった。minidlnaのスキャン終了後に同様にしてsmbdおよびnmbdをあげたら問題なくアクセスできた。 システムログを見てみたら、

Sep 23 12:32:41 iwa smbd[1135]: [2014/09/23 12:32:41,  0] lib/fault.c:41(fault_report)
Sep 23 12:32:41 iwa smbd[1135]: [2014/09/23 12:32:41,  0] lib/fault.c:41(fault_report)
Sep 23 12:32:41 iwa smbd[1135]:   ===============================================================
Sep 23 12:32:41 iwa smbd[1135]:   ===============================================================
Sep 23 12:32:41 iwa smbd[1135]: [2014/09/23 12:32:41,  0] lib/fault.c:42(fault_report)
Sep 23 12:32:41 iwa smbd[1135]: [2014/09/23 12:32:41,  0] lib/fault.c:42(fault_report)
Sep 23 12:32:41 iwa smbd[1135]:   INTERNAL ERROR: Signal 7 in pid 1135 (3.4.2-47.fc12)
Sep 23 12:32:41 iwa smbd[1135]:   INTERNAL ERROR: Signal 7 in pid 1135 (3.4.2-47.fc12)
Sep 23 12:32:41 iwa smbd[1135]:   Please read the Trouble-Shooting section of the Samba3-HOWTO
Sep 23 12:32:41 iwa smbd[1135]:   Please read the Trouble-Shooting section of the Samba3-HOWTO
Sep 23 12:32:41 iwa smbd[1135]: [2014/09/23 12:32:41,  0] lib/fault.c:44(fault_report)
Sep 23 12:32:41 iwa smbd[1135]: [2014/09/23 12:32:41,  0] lib/fault.c:44(fault_report)
Sep 23 12:32:41 iwa smbd[1135]:
Sep 23 12:32:41 iwa smbd[1135]:
Sep 23 12:32:41 iwa smbd[1135]:   From: http://www.samba.org/samba/docs/Samba3-HOWTO.pdf
Sep 23 12:32:41 iwa smbd[1135]:   From: http://www.samba.org/samba/docs/Samba3-HOWTO.pdf
Sep 23 12:32:41 iwa smbd[1135]: [2014/09/23 12:32:41,  0] lib/fault.c:45(fault_report)
Sep 23 12:32:41 iwa smbd[1135]: [2014/09/23 12:32:41,  0] lib/fault.c:45(fault_report)
Sep 23 12:32:41 iwa smbd[1135]:   ===============================================================
Sep 23 12:32:41 iwa smbd[1135]:   ===============================================================
Sep 23 12:32:41 iwa smbd[1135]: [2014/09/23 12:32:41,  0] lib/util.c:1480(smb_panic)
Sep 23 12:32:41 iwa smbd[1135]: [2014/09/23 12:32:41,  0] lib/util.c:1480(smb_panic)
Sep 23 12:32:41 iwa smbd[1135]:   PANIC (pid 1135): internal error
Sep 23 12:32:41 iwa smbd[1135]:   PANIC (pid 1135): internal error
Sep 23 12:32:41 iwa smbd[1135]: [2014/09/23 12:32:41,  0] lib/util.c:1584(log_stack_trace)
Sep 23 12:32:41 iwa smbd[1135]: [2014/09/23 12:32:41,  0] lib/util.c:1584(log_stack_trace)
Sep 23 12:32:41 iwa smbd[1135]:   BACKTRACE: 5 stack frames:
Sep 23 12:32:41 iwa smbd[1135]:   BACKTRACE: 5 stack frames:
Sep 23 12:32:41 iwa smbd[1135]:    #0 smbd(log_stack_trace+0x14) [0x2a2e03d4]
Sep 23 12:32:41 iwa smbd[1135]:    #0 smbd(log_stack_trace+0x14) [0x2a2e03d4]
Sep 23 12:32:41 iwa smbd[1135]:    #1 smbd(smb_panic+0x30) [0x2a2e04e8]
Sep 23 12:32:41 iwa smbd[1135]:    #1 smbd(smb_panic+0x30) [0x2a2e04e8]
Sep 23 12:32:41 iwa smbd[1135]:    #2 smbd(+0x2cfe7c) [0x2a2cfe7c]
Sep 23 12:32:41 iwa smbd[1135]:    #2 smbd(+0x2cfe7c) [0x2a2cfe7c]
Sep 23 12:32:41 iwa smbd[1135]:    #3 /lib/libc.so.6(__default_sa_restorer_v2+0) [0x4040d120]
Sep 23 12:32:41 iwa smbd[1135]:    #3 /lib/libc.so.6(__default_sa_restorer_v2+0) [0x4040d120]
Sep 23 12:32:41 iwa smbd[1135]:    #4 /lib/libc.so.6(memcpy+0x78) [0x40459db8]
Sep 23 12:32:41 iwa smbd[1135]:    #4 /lib/libc.so.6(memcpy+0x78) [0x40459db8]
Sep 23 12:32:41 iwa smbd[1135]: [2014/09/23 12:32:41,  0] lib/fault.c:321(dump_core)
Sep 23 12:32:41 iwa smbd[1135]: [2014/09/23 12:32:41,  0] lib/fault.c:321(dump_core)
Sep 23 12:32:41 iwa smbd[1135]:   dumping core in /var/log/samba/cores/smbd
Sep 23 12:32:41 iwa smbd[1135]:   dumping core in /var/log/samba/cores/smbd

Sep 23 12:35:02 iwa nmbd[1121]: [2014/09/23 12:35:02,  0] lib/fault.c:41(fault_report)
Sep 23 12:35:02 iwa nmbd[1121]: [2014/09/23 12:35:02,  0] lib/fault.c:41(fault_report)
Sep 23 12:35:02 iwa nmbd[1121]:   ===============================================================
Sep 23 12:35:02 iwa nmbd[1121]:   ===============================================================
Sep 23 12:35:02 iwa nmbd[1121]: [2014/09/23 12:35:02,  0] lib/fault.c:42(fault_report)
Sep 23 12:35:02 iwa nmbd[1121]: [2014/09/23 12:35:02,  0] lib/fault.c:42(fault_report)
Sep 23 12:35:02 iwa nmbd[1121]:   INTERNAL ERROR: Signal 7 in pid 1121 (3.4.2-47.fc12)
Sep 23 12:35:02 iwa nmbd[1121]:   INTERNAL ERROR: Signal 7 in pid 1121 (3.4.2-47.fc12)
Sep 23 12:35:02 iwa nmbd[1121]:   Please read the Trouble-Shooting section of the Samba3-HOWTO
Sep 23 12:35:02 iwa nmbd[1121]:   Please read the Trouble-Shooting section of the Samba3-HOWTO
Sep 23 12:35:02 iwa nmbd[1121]: [2014/09/23 12:35:02,  0] lib/fault.c:44(fault_report)
Sep 23 12:35:02 iwa nmbd[1121]: [2014/09/23 12:35:02,  0] lib/fault.c:44(fault_report)
Sep 23 12:35:02 iwa nmbd[1121]:
Sep 23 12:35:02 iwa nmbd[1121]:
Sep 23 12:35:02 iwa nmbd[1121]:   From: http://www.samba.org/samba/docs/Samba3-HOWTO.pdf
Sep 23 12:35:02 iwa nmbd[1121]:   From: http://www.samba.org/samba/docs/Samba3-HOWTO.pdf
Sep 23 12:35:02 iwa nmbd[1121]: [2014/09/23 12:35:02,  0] lib/fault.c:45(fault_report)
Sep 23 12:35:02 iwa nmbd[1121]: [2014/09/23 12:35:02,  0] lib/fault.c:45(fault_report)
Sep 23 12:35:02 iwa nmbd[1121]:   ===============================================================
Sep 23 12:35:02 iwa nmbd[1121]:   ===============================================================
Sep 23 12:35:02 iwa nmbd[1121]: [2014/09/23 12:35:02,  0] lib/util.c:1480(smb_panic)
Sep 23 12:35:02 iwa nmbd[1121]: [2014/09/23 12:35:02,  0] lib/util.c:1480(smb_panic)
Sep 23 12:35:02 iwa nmbd[1121]:   PANIC (pid 1121): internal error
Sep 23 12:35:02 iwa nmbd[1121]:   PANIC (pid 1121): internal error
Sep 23 12:35:02 iwa kernel: UBIFS warning (pid 1121): ubifs_vm_page_mkwrite: out of space for mmapped file (inode number 28089)
Sep 23 12:35:02 iwa kernel: UBIFS warning (pid 1121): ubifs_vm_page_mkwrite: out of space for mmapped file (inode number 28089)
Sep 23 12:35:02 iwa nmbd[1121]: [2014/09/23 12:35:02,  0] lib/util.c:1584(log_stack_trace)
Sep 23 12:35:02 iwa nmbd[1121]: [2014/09/23 12:35:02,  0] lib/util.c:1584(log_stack_trace)
Sep 23 12:35:02 iwa nmbd[1121]:   BACKTRACE: 5 stack frames:
Sep 23 12:35:02 iwa nmbd[1121]:   BACKTRACE: 5 stack frames:
Sep 23 12:35:02 iwa nmbd[1121]:    #0 nmbd(log_stack_trace+0x14) [0x2a16edd0]
Sep 23 12:35:02 iwa nmbd[1121]:    #0 nmbd(log_stack_trace+0x14) [0x2a16edd0]
Sep 23 12:35:02 iwa nmbd[1121]:    #1 nmbd(smb_panic+0x30) [0x2a16eee4]
Sep 23 12:35:02 iwa nmbd[1121]:    #1 nmbd(smb_panic+0x30) [0x2a16eee4]
Sep 23 12:35:02 iwa nmbd[1121]:    #2 nmbd(+0x15e878) [0x2a15e878]
Sep 23 12:35:02 iwa nmbd[1121]:    #2 nmbd(+0x15e878) [0x2a15e878]
Sep 23 12:35:02 iwa nmbd[1121]:    #3 /lib/libc.so.6(__default_sa_restorer_v2+0) [0x40275120]
Sep 23 12:35:02 iwa nmbd[1121]:    #3 /lib/libc.so.6(__default_sa_restorer_v2+0) [0x40275120]
Sep 23 12:35:02 iwa nmbd[1121]:    #4 /lib/libc.so.6(memcpy+0x78) [0x402c1db8]
Sep 23 12:35:02 iwa nmbd[1121]:    #4 /lib/libc.so.6(memcpy+0x78) [0x402c1db8]
Sep 23 12:35:02 iwa nmbd[1121]: [2014/09/23 12:35:02,  0] lib/fault.c:321(dump_core)
Sep 23 12:35:02 iwa nmbd[1121]: [2014/09/23 12:35:02,  0] lib/fault.c:321(dump_core)
Sep 23 12:35:02 iwa nmbd[1121]:   dumping core in /var/log/samba/cores/nmbd
Sep 23 12:35:02 iwa nmbd[1121]:   dumping core in /var/log/samba/cores/nmbd

とあり、どうやら/がfullになってしまうことに起因して、smbd,nmbdが落ちているようだ。

Sep 23 12:35:07 iwa smbd[2801]: [2014/09/23 12:35:07,  0] lib/pidfile.c:143(pidfile_create)
Sep 23 12:35:07 iwa smbd[2801]: [2014/09/23 12:35:07,  0] lib/pidfile.c:143(pidfile_create)
Sep 23 12:35:07 iwa smbd[2801]:   ERROR: can't write to file /var/run/smbd.pid: No space left on device
Sep 23 12:35:07 iwa smbd[2801]:   ERROR: can't write to file /var/run/smbd.pid: No space left on device

スキャン中に起動しようとしてもpidが書き込めないので起動しないようだ。

/var/logもあふれる

これを数度繰り返すと/var/logがcoreであふれるようだ。そのためシステムログなどが書き出されないことになる。。。 RockDisk Nextを再起動するか、coreを削除すればいいのだが。

対処方法

/tmpをHDDに

/の使用率を100%にしないためにHDDに/tmpを移してみた。

# rm -fr /tmp
# mkdir /home/tmp
# ln -s /home/tmp /tmp
# chmod 777 /home/tmp

この状態でminidlnaをスキャンしても、/の使用率が100%になることはなく、結果的にsambaのプロセスは落ちないようになった。 ただ、スキャン時間は45分程度と伸びた。理由は、2GB以上のファイルを書き出しているのが、容量が足りているので全て書き出せ、その後の処理に入りその処理に時間が掛かるためと推測する。

我慢

/var/logも100%になり、sambaのプロセスも落ちるがnas-serviceが動いていれば、再起動してくれるので、coreを吐いて、結果的にシステムログが書き出されなくなっても気にしないという事もできる。気分の問題かもしれない。NANDの書き換え回数とか気になる程度かも。

バイナリ作るしかないなぁ

ちょっと通常使用に支障が出る程度なので、specファイルを含んだソースを開示してもらえたら、ファームウェアの更新を期待して待つことはせずに、rpm作ってインストールして使えるようにしてしまおう。購入当初からバグがあるので直してと掲示板に書いても反応無く、サポートにバグ報告しても開発部門に伝えますとのことだったけど、ファームウェアの更新は予定されていないとの回答だったので、対応は期待できない。製品として保証されなくなったとしてもそれまでだ。

RockDisk Nextを購入して、この件やGPLに基づくソースの開示など、いろいろとやりとりして、あちら側の対応はおおよそわかったので、何も期待することはない。