NASの起動時に calibre-web を自動実行する

QNAPのARMプロセッサ搭載NASの起動時に calibre-web を自動実行するように設定した。備忘録として記録しておく。

家にあるNASを整理していて、古い HS-210 を使わなくなったので、calibre 専用にすることにした。「QNAPのARMプロセッサ搭載NASに calibre-webをインストールする」では、自動実行の設定はしていなかったので、調査と少し試すことが必要だった。

環境

ハードウェア

QNAP NAS HS-210

ファームウェアのバージョンは、4.3.3.1252 Build 20200409 であった。

calibre-web のインストール

QNAPのARMプロセッサ搭載NASに calibre-webをインストールする」に従って /share/MD0_DATA/Public (Public ドライブ)の直下の calibre-web にインストールした。calibre-web 0.6.8 Beta がインストールされた。

設定

calibre-web を自動実行するためには、calibre-web を実行するためのシェルスクリプト autorun.sh を作成し、それをNASの起動時に呼び出すために、/etc/config/qpkg.conf の設定を行う必要がある。

/etc/config/qpkg.conf の設定

/share/MD0_DATA/.qpkg/autorun に autorun.sh を作成することにした場合には、以下のような設定を /etc/config/qpkg.conf に加える。

autorun.sh

/share/MD0_DATA/.qpkg/autorun の下に autorun.sh を以下の内容で作成した。

最初、python を /opt/bin/python のようにパスを指定することをしないで python としていたら、自動実行が行われなかった。

結果的に修正をして動作確認するためにはNASの再起動が必要になり、時間がかかった。

Control Panel

以前は、NAS の 「Control Panel」 の「ハードウェア」の「起動時にユーザ定義処理を実行」にチェックを入れることになっていたようであるが、チェックを入れなくても自動実行された。

設定の確認

autorun.sh が正しく設定されていれば、設定した autorun が AppCenter で見えるはず。見えない場合には、表示の更新が必要。

動作確認

設定が済んだら NAS を再起動して動作確認をする。NASが起動してから、autorun.sh が自動実行されるまでにはそこそこ時間がかかる。

NASの起動直後に calibre-web にアクセスしようとすると ERR_CONNECTION_REFUSED になる。

ちなみに、NASが起動していない時に calibre-web にアクセスしようとするとERR_CONNECTION_TIMED_OUT となる。

NASにインストールしてあるアプリによっても、calibre-webが自動実行されるまでの時間は異なると思われるが、手元の HS-210ではNASの起動後10分経過してからアクセスしたところ、以下のログイン画面になった。

HS-210が非力なのでしかたがないが、calibre-web の操作をしても反応が鈍い感じである。

参考にしたWeb

以下のWebが大変参考になりました。

QNAP TS-269Proでautorun.shを有効にする方法

QNAP起動時に自動的にスクリプトを起動するAUTORUNを使う