Paperless

提供: ArchWiki
ナビゲーションに移動 検索に移動

Paperless は、スキャンした文書を索引付けし、文書を簡単に検索したり、文書と一緒にメタデータを保存することができるオープンソースの文書管理システムです。この記事は、Paperless-ngx に関するもので、これは Paperless-ng のコミュニティによって維持されているフォークであり、さらにそれは 元の Paperless プロジェクトのフォークであり、両方とも放棄されています。

インストール

paperless-ngxAUR パッケージをインストールします。

フォルダ

Paperless は /usr/share/paperless にインストールされます。Paperless の永続的なストレージは /var/lib/paperless に位置しており、media フォルダ、デフォルトで SQLite データベースを含む data フォルダ、文書を消費する consume フォルダ、一時的な uploads フォルダおよび tmp 変換フォルダを含んでいます。 consume フォルダは paperless グループのすべてのユーザーに対して書き込み権限があります。

消費フォルダの権限

ユーザー(例えば "http")が消費フォルダに文書を置くことを許可したい場合は、それらのユーザーを paperless ユーザーグループ に追加してください。

OCR 言語

Paperless で英語以外の言語の文書を処理したい場合、対応する tesseract 言語データパッケージをインストールする必要があります。ドイツ語の場合は tesseract-data-deu がそれに該当します。

生成された PDF 文書のサイズを減らす

生成された PDF 文書のサイズを減らすために、オプションの依存関係 jbig2enc-gitAUR をインストールすることができます。これにより Paperless は PDF のサイズを小さくすることが可能です。

Paperless-ng からの移行

もし paperless-ng がインストールされており、paperless-ngxAUR に移行したい場合、paperless-ngxAUR をインストールし、尋ねられた際に paperless-ng を削除することを選択できます。データは失われません。それでも、root として次のコマンドを実行する必要があります:

# paperless-manage makemigrations

その後、paperless ユーザーとして通常のデータベースマイグレーションを適用します:

[paperless]$ paperless-manage migrate

最後に、paperless.target再起動してください。

開始

paperless.target開始/有効化してください。 これで、Paperless インスタンスはポート 8000 で利用可能になるはずです。

設定

Paperless の設定の詳細については、その公式ドキュメントを参照してください。設定ファイルは /etc/paperless.conf にあります。

ノート: paperless-ngxAUR パッケージは paperless システムユーザーを作成し、常に paperless ユーザーとして実行されるべき paperless-manage コマンドを提供しています。例については 以下 を参照してください。公式ドキュメントで python3 manage.py と言及されている場所ではいつも paperless-manage コマンドを使用してください。

設定を変更した後は、paperless.target再起動するのを忘れないでください。

設定をニーズに合わせて調整

/etc/paperless.conf にある設定ファイルを開き、特に OCR に関するパラメーターを含む、あなたのニーズに合わせてパラメーターを調整してください。個々の設定の説明については、公式ドキュメントを参照してください。

シークレットキーの設定

初回インストール後、シークレットキーを生成して設定する必要があります。覚えておく必要はありませんが、署名付きデータのセキュリティに使用されるため、秘密にしておくべきです。シークレットキーを設定するには、以下の行のコメントを外して変更してください:

/etc/paperless.conf
#PAPERLESS_SECRET_KEY=change-me

キーを生成して設定ファイルに設定するには、次のコマンドを実行します:

# sed -i /etc/paperless.conf -e "s|#PAPERLESS_SECRET_KEY=change-me|PAPERLESS_SECRET_KEY=$(date | md5sum | awk '{print $1;}')|"

データベースマイグレーションの実行

初回インストール後およびアップデート後には、データベースマイグレーションを実行する必要があります:

[paperless]$ paperless-manage migrate

管理ユーザーの作成

初回インストール後、Paperless インスタンスの管理ユーザーを作成する必要があります:

[paperless]$ paperless-manage createsuperuser

Nginx

Nginx をインストールし、Paperless のバーチャルホストのための以下の設定を起点として使用してください:

/etc/nginx/sites-available/paperless.domain.tld
server {

    server_name paperless.domain.tld;
    listen 80;
    listen [::]:80;

    location / {

        # Adjust host and port as required.
        proxy_pass http://localhost:8000/;

        # These configuration options are required for WebSockets to work.
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";

        proxy_redirect off;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Host $server_name;
    }

}

Pacman フック

パッケージの更新時に Paperless データベースのマイグレーションを自動的に実行するために、含まれている pacman フック を利用できます:

# mkdir -vp /etc/pacman.d/hooks
# ln -sv /usr/share/paperless/docs/paperless.hook /etc/pacman.d/hooks/

トラブルシューティング

文書のインポート時に BadSignature エラーが記録される

文書のインポートを試みた際に BadSignature エラーが出る場合、/etc/paperless.conf にある設定ファイルが考慮されていない可能性が高いです。これは、テンプレートの設定ファイル /usr/share/paperless/paperless.conf が優先されているためです。この場合、/usr/share/paperless/paperless.conf を削除または名前を変更し、paperless.target再起動してください。

誤設定されたリトライとタイムアウトに関する警告

リトライとタイムアウトが誤設定されているという警告が出る場合、それは 安全に無視できます し、python-django-q における シンプルなアップストリームの修正 を待つことができます。警告は以下のように表示されるでしょう:

gunicorn[29457]: /usr/lib/python3.9/site-packages/django_q/conf.py:136: UserWarning: Retry and timeout are misconfigured. Set retry larger than timeout,
gunicorn[29457]:         failure to do so will cause the tasks to be retriggered before completion.
gunicorn[29457]:         See https://django-q.readthedocs.io/en/latest/configure.html#retry for details.
gunicorn[29457]:   warn("""Retry and timeout are misconfigured. Set retry larger than timeout,

ImageMagick でのサムネイル生成が失敗する

/etc/ImageMagick-7/policy.xml でポリシールールを無効にする必要があります。次の行をコメントアウトするために <!----> を追加してください:

/etc/ImageMagick-7/policy.xml
<!-- <policy domain="delegate" rights="none" pattern="gs" /> -->

ImageMagick 記事の冒頭で述べられている可能性のあるセキュリティ上の影響を考慮してください。また、ImageMagick のポリシールールが有効なままの場合、Paperless はとにかく ghostscript を使用するようにフォールバックすることも覚えておいてください。

コンシューマーサービスが常に 1 つの CPU コアを 100% で使用する

/etc/paperless.conf 設定ファイルの PAPERLESS_CONSUMER_POLLING 設定に関する行のコメントを解除してください:

/etc/paperless.conf
PAPERLESS_CONSUMER_POLLING=10
翻訳ステータス: このページは en:Paperless の翻訳バージョンです。最後の翻訳日は 2024/04/12 です。もし英語版に 変更 があれば、翻訳の同期を手伝うことができます。