ウェブサイト検索

CentOS 8 でファイルを同期および共有するために Seafile をインストールする方法


Seafile は、Python を使用して構築された、オープンソース、高パフォーマンス、安全でエンタープライズ対応のファイル同期および共有ソリューションです。ライブラリを使用したシンプルなデータ編成、デバイス間の高速で信頼性の高い効率的な同期が特徴です。

暗号化機能が組み込まれており、ユーザーが選択したパスワードでライブラリが暗号化され、サーバーと同期する前にファイルが暗号化されます。追加のセキュリティは、2 要素認証、ファイルのウイルス スキャン、およびリモート ワイプによって実装されます。

推奨読書: CentOS 7 に Seafile をインストールする方法

また、バックアップとデータ回復、ファイル共有と権限制御もサポートしています (読み取り専用または読み取り/書き込み権限を使用して、ライブラリとディレクトリをユーザーまたはグループに共有できます)。 Seafile は、ファイル履歴 (またはバージョン管理) とライブラリ スナップショットもサポートしており、履歴内の任意のファイルまたはディレクトリ/フォルダーを簡単に復元できます。

さらに、Seafile Drive クライアントを使用すると、Seafile サーバー上のストレージ スペースをローカル マシン上の仮想ドライブとしてマッピングするだけで、Seafile サーバー上の大規模なストレージ容量でローカル ディスク スペースを拡張できます。

この記事では、Nginx をリバース プロキシ サービスとして使用し、MariaDB データベース サーバーをCentOS 8 上で使用して、Seafile をプライベート クラウド ストレージ サーバーとして簡単にデプロイする方法を説明します。

システム要求:

  1. 2 コア、2GB 以上の RAM、1GB 以上の SWAP、および Seafile データ用の 100GB 以上のストレージ スペースを備えた新しい CentOS 8 インストール サーバー。

CentOS 8 への Seafile ファイル ホスティング ソフトウェアのインストール

1. Seafile を初めて展開する場合は、次のコマンドを使用して、自動インストール スクリプトを使用してサーバーに Seafile サービスを簡単に展開することをお勧めします。

cd /root
wget --no-check-certificate https://raw.githubusercontent.com/haiwen/seafile-server-installer/master/seafile-7.1_centos
bash seafile-7.1_centos 7.1.0

スクリプトを呼び出した後、インストールする Seafile のエディションを選択するように求められます。コミュニティ エディション (CE)1 を選択して、Enter を押します。 。

2. インストールが完了すると、次のスクリーンショットのようなメッセージが表示され、インストールの詳細/パラメータが表示されます。

Seafile サーバー パッケージは次のコンポーネントで構成されています。

  1. Seafile サーバー (seaf-server) – 生ファイルのアップロード、ダウンロード、同期を処理するための主要なデータ サービス デーモン。デフォルトではポート 8082 で待機します。
  2. CCnet サーバー (ccnet-server) – 複数の内部コンポーネント間の通信を可能にする RPC (リモート プロシージャ コール) サービス デーモン。
  3. Seahub – Django Web フロントエンド。軽量の Python HTTP サーバー gunicorn を利用しています (デフォルトでは、Seahub は gunicorn 内のアプリケーションとして実行されます)。

3. Seafile のルート インストール ディレクトリは /opt/seafile で、ls コマンドを使用してその内容を表示できます。

cd /opt/seafile/
ls -lA

4. また、インストール中に、インストーラーは NginxMariaDBSeafileSeahub を起動します。現時点ではサービス、およびその他の必要なサービスを追加し、システムの再起動後にそれらのサービスが自動的に開始できるようにします。

各サービスのステータスを表示するには、次のコマンドを実行します (サービスに対して対応するアクションを実行するには、ステータスを stop、start、restart、is-enabled などに置き換えます)。

systemctl status nginx
systemctl status mariadb
systemctl status seafile
systemctl status seahub

5. デフォルトでは、アドレス seafile.example.com を使用して seahub にアクセスできます。 Nginx の Seafile 設定ファイルは /etc/nginx/conf.d/seafile.conf で、ここで示されているようにドメイン名を設定できます。

vi /etc/nginx/conf.d/seafile.conf

次の行を変更します。

server_name seafile.tecmint.lan;
to
server_name seafile.yourdomain.com;

6. 次に、Nginx サービスを再起動して、最新の変更を有効にします。

systemctl restart nginx

7. firewalld サービスを実行している場合は、ファイアウォールで HTTP および HTTPS プロトコルを開いてリクエストを許可します。それぞれポート 80443 の Nginx サーバーに送信します。

firewall-cmd --zone=public --permanent –add-service=http
firewall-cmd --zone=public --permanent –add-service=https
firewall-cmd --reload

8. すべての Seafile サービスを設定した後、Seahub にアクセスするには、Web ブラウザを開いてアドレスを指定します (ドメイン名を、Seafile の Nginx 構成ファイルで設定したものに置き換えます)。

http://seafile.tecmint.lan/

9. seahub ログイン インターフェイスが読み込まれるまで待ちます。次に、インストーラーによって作成された管理者ユーザーの認証情報を使用してログインします (cat /opt/seafile/aio_seafile-server.log を実行して、インストール ログ ファイルを表示し、ログイン認証情報を取得します)。

cat /opt/seafile/aio_seafile-server.log

10. 次のログイン インターフェイスに Seafile 管理者の電子メール アドレスとパスワードを入力します。

11. ログインすると、Seahub 管理者ユーザーのメイン管理インターフェイスが表示されます。これを使用して設定を編集できます。ライブラリの作成、暗号化、共有など。

NginxHTTPS を有効にするには、このガイドを参照してください: CentOS 8 で Let’s Encrypt を使用して Nginx を保護する方法

詳細については、Seafile の公式ドキュメントを参照してください。また、Seafile に関するご意見を、以下のフィードバック フォームからぜひお知らせください。