779 文字
4 分
Calibre-Web on TS-220

概要#

TS-220 バージョン 4.3.3.1677 (2021/06/08) 上で Calibre-Web を動作させる。

すべての操作は QNAP で言うところの admin ユーザで行う。

Entware-std のインストール#

※作業はクライアント側からブラウザ経由

  1. AppCenter にリポジトリを追加
    [設定] - [アプリリポジトリ] より
    https://www.qnapclub.eu/en/repo.xml を追加。

  2. qnapclub.eu から Entware-std をインストール
    Entware-std 1.03
    ※ Python3 系のみ

共有フォルダの作成#

※作業はクライアント側からブラウザ経由

[コントロールパネル] - [共有フォルダ] より Calibre-Web を作成。

[自動的にパスを指定] で /share/MD0_DATA/Calibre-Web に生成される。

レイアウトは下記を想定。

Calibre-Web
├── .venv
└── Calibre Library

パッケージのインストール#

※作業はクライアント側から SSH 経由

gcc#

opkg install gcc

不要かも知れない。

python 関連#

opkg install python3-dev
opkg install python3-pip

Python 仮想環境の作成#

※作業はクライアント側から SSH 経由

システムの Python 環境に影響しないよう仮想環境を作成する。

1. 作業ディレクトリに移動#

cd /share/MD0_DATA/Calibre-Web

2. 仮想環境を作成#

python -m venv .venv --without-pip

--without-pip を省くとエラーが発生する。

3. 仮想環境をアクティブに#

source .venv/bin/activate

4. 仮想環境の確認#

which python
which pip

pip が仮想環境下にないことを確認。

5. pip をインストール#

curl -O https://bootstrap.pypa.io/get-pip.py
python get-pip.py

6. 仮想環境を非アクティブ → アクティブに#

deactivate
source .venv/bin/activate

7. 仮想環境の再確認#

which python
which pip

pip が仮想環境下にあることを確認。

※ pip の位置が仮想環境下にない場合、pip install が意図しない動作になるので注意。

Calibre-Web のインストール#

※作業はクライアント側から SSH 経由

1. インストール#

仮想環境がアクティブになっていることを確認し

pip install calibreweb

途中 /root/.cache の容量を圧迫しシステムが不安定になるかも知れない。

その場合 /root/.cache 以下を削除。

2. 確認#

which cps

/share/MD0_DATA/Calibre-Web/.venv/bin/cps

この時点で Calibre-Web は起動可能。

Calibre Library の配置#

※作業はクライアント側から FTP や同期アプリ経由

/share/MD0_DATA/Calibre-Web/Calibre Library に配置。

自動起動の設定#

※作業はクライアント側から SSH 経由

1. autorun.sh の作成#

/share/MD0_DATA/.qpkg/autorun/autorun.sh を作成。

#!/bin/sh
/share/MD0_DATA/Calibre-Web/.venv/bin/cps

2. qpkg.conf の編集#

/etc/config/qpkg.conf に [Autorun] ブロックを追加。

[Autorun]
Name = Autorun
Version = 0.1
Author = hasenpfote
QPKG_FILE = Autorun.qpkg
Date = 2021-06-30
Shell = /share/MD0_DATA/.qpkg/autorun/autorun.sh
Install_Path = /share/MD0_DATA/.qpkg/autorun
Enable = TRUE

Calibre-Web の動作確認#

※作業はクライアント側からブラウザ経由

  1. http://<NASのアドレス>:8083 へアクセス
  2. Location of Calibre Database
    /share/MD0_DATA/Calibre-Web/Calibre Library
  3. ログイン(デフォルト)
    admin / admin123

※ DBを更新した場合、[Admin] - [Administration] - [Restart] などで反映。

その他#

作業コマンド#

pip 全消去#

pip freeze > piplist.txt
pip uninstall -y -r piplist.txt

opkg 確認#

opkg list-installed

opkg アンインストール#

opkg remove <package> –force-removal-of-dependent-packages

特定のユーザで操作を行う#

もしも特定のユーザで操作を行うなら…

※ opkg で sudo コマンドをインストールしないこと

1. sudoers の編集#

/usr/etc/sudoers直接編集

例えば特定グループ(administrators)に適用する場合は次の行を追加。

%administrators ALL=(ALL) ALL

特定グループ所属のユーザがコマンドを実行すると、そのユーザのパスワードを入力する形式になる。

2. profile の編集#

~/.profile に次の行を追加。

export PATH=/opt/bin:$PATH

参考#

Calibre-Web on TS-220
https://hasenpfote.netlify.app/posts/calibre-web-on-ts-220/
作者
Hasenpfote
公開日
2021-06-30
ライセンス
CC BY-SA 4.0