このチュートリアルでは、CentOS 8でファイルを同期および共有するためにSeafileをインストールする方法を学習します。Seafileは、Pythonを使用して構築された、オープンソース、高性能、安全でエンタープライズ対応のファイル同期および共有ソリューションです。ライブラリを使用したシンプルなデータ編成、デバイス間の高速で信頼性の高い効率的な同期が特徴です。
Seafileを使用すると、ファイルを独自のサーバーに配置し、さまざまなデバイスで同期してアクセスできるようになります。仮想ディスクとしてすべてのファイルにアクセスすることもできます。 Seafile Driveクライアントを使用すると、Seafileサーバーのストレージスペースをローカルマシンの仮想ドライブとしてマッピングするだけで、Seafileサーバーの大容量ストレージでローカルディスクスペースを拡張できます。
まず、SELinuxをPermissiveモードにして、実行するインストールが妨げられないようにします。
setenforce 0
sed -i 's/^SELINUX=.*/SELINUX=permissive/g' /etc/selinux/config
reboot
cat /etc/selinux/config | grep SELINUX=

SELinuxが許容モードになっているので、次のコマンドを使用してCentOS8を更新します。
dnf -y update

次に、次のコマンドを使用して、hostsファイルを構成し、サーバーのホスト名を設定します。
hostnamectl set-hostname seafile.vultr.com
/ etc/hostsファイルに設定されているIPとホスト名を次のように更新します。
nano /etc/hosts
次の行を追加します:
10.0.2.15 seafile.vultr.com #example

次に、再起動して構成を適用します。
EPELリポジトリを追加して依存関係をインストールします:
まず、以下のコマンドを使用してSeafileの依存関係と必要なパッケージをインストールします;
dnf -y install vim epel-release
dnf -y install python3 python3-devel python3-imaging MySQL-python3 python3-simplejson python3-setuptools mariadb mariadb-server nginx gcc mysql-devel


次に、PIP3モジュールをインストールします;
pip3 install --upgrade pip
python3 -m pip install --upgrade Pillow
pip3 install pylibmc captcha jinja2 django-pylibmc django-simple-captcha python3-ldap mysqlclient
pip3 install future sqlalchemy==1.4.3


MariaDBデータベースサーバーを構成します:
MariaDBを起動し、システムの起動時に起動できるようにします。
systemctl start mariadb
systemctl enable mariadb
次のコマンドを使用して、mariadbのインストールを保護し、rootパスワードを設定します。
mysql_secure_installation

Seafileデータベースの作成:
Seafileユーザーとデータベースを作成します。以下のコマンドを使用してMySQLに接続し、上記で設定したパスワードを入力します。
mysql -u root -p
MySQLに接続したら、次のコマンドを実行して必要なデータベースを作成します。
create database ccnet_db character set = 'utf8';
create database seafile_db character set = 'utf8';
create database seahub_db character set = 'utf8';
create user seacloud@localhost identified by 'w';
grant all privileges on ccnet_db.* to seacloud@localhost identified by 'w';
grant all privileges on seafile_db.* to seacloud@localhost identified by 'w';
grant all privileges on seahub_db.* to seacloud@localhost identified by 'w';
flush privileges;
exit

Seafileのインストール:
Seafileを/var/wwwパスにインストールします。
mkdir -p /var/www/seafile
cd /var/www/seafile
wgetコマンドでSeafileをダウンロードし、次のコマンドを使用してアーカイブを抽出します。
dnf install -y wget
wget https://s3.eu-central-1.amazonaws.com/download.seadrive.org/seafile-server_8.0.7_x86-64.tar.gz
tar xvf seafile-server_8.0.7_x86-64.tar.gz

ディレクトリの名前を「seafile-server」に変更し、そのディレクトリに切り替えます。
mv seafile-server-8.0.7/ seafile-server
rm -f seafile-server_8.0.7_x86-64.tar.gz
Seafileの構成:
「setup-seafile-mysql.sh」ファイルを実行してデータベースを構成します。
cd seafile-server
./setup-seafile-mysql.sh
次に、以下の図を参照して構成してください。





これで、seafileおよびseahubサービスを開始できます。次のコマンドでseafileを起動します:
./seafile.sh start

次のコマンドを使用してseahubサービスを開始します:
./seahub.sh start

ファイルウォールがアクティブな場合は、ファイアウォールを介してseafileポートを開いてください:
firewall-cmd --permanent --add-port=8000/tcp
firewall-cmd --permanent --add-port=8082/tcp
firewall-cmd --reload

ブラウザでSeafileにアクセスする:
ポート8000のホスト名/IPアドレスを使用してブラウザからseafileにアクセスします: http://
nano /var/www/seafile/conf/gunicorn.conf.py

次に、seahubサービスを再起動します
./seahub.sh restart

これで、Seafileにログインできるようになります。 seahubサービスの開始時に設定したユーザー名とパスワードを入力します。


新しいフォルダ/ファイルの追加を開始するには、[新しいライブラリ]をクリックし、新しいフォルダに名前を付けてから、[送信]をクリックします。


新しいライブラリを選択して、フォルダ/ファイルを作成またはアップロードできるはずです。

これで、SeafileがCentOS8システムにインストールされました。これで、必要に応じて使用できます。