V tomto tutoriálu vám ukážeme, jak nainstalovat Seafile na Ubuntu 20.04 LTS. Pro ty z vás, kteří to nevěděli, Seafile je open source, vlastní hostovaná synchronizace souborů, která sdílí řešení s vysokým výkonem a spolehlivostí. Seafile vám umožňuje umístit soubory na váš vlastní server a umožnit ostatním a vašim různým zařízením synchronizaci a přístup k nim. Seafile je napsán v programovacím jazyce C a Python a poskytuje podobné funkce jako Dropbox, mega. co.nz a další.
Tento článek předpokládá, že máte alespoň základní znalosti Linuxu, víte, jak používat shell, a co je nejdůležitější, hostujete svůj web na vlastním VPS. Instalace je poměrně jednoduchá a předpokládá, že běží v účtu root, pokud ne, možná budete muset přidat 'sudo
‘ k příkazům pro získání oprávnění root. Ukážu vám krok za krokem instalaci open-source systému pro hostování souborů a cloudového úložiště Seafile na Ubuntu 20.04 (Focal Fossa). Můžete postupovat podle stejných pokynů pro Ubuntu 18.04, 16.04 a jakoukoli jinou distribuci založenou na Debianu, jako je Linux Mint.
Předpoklady
- Server s jedním z následujících operačních systémů:Ubuntu 20.04, 18.04, 16.04 a jakoukoli jinou distribucí založenou na Debianu, jako je Linux Mint.
- Abyste předešli případným problémům, doporučujeme použít novou instalaci operačního systému.
- Přístup SSH k serveru (nebo stačí otevřít Terminál, pokud jste na počítači).
non-root sudo user
nebo přístup kroot user
. Doporučujeme jednat jakonon-root sudo user
, protože však můžete poškodit svůj systém, pokud nebudete při jednání jako root opatrní.
Instalace Seafile na Ubuntu 20.04 LTS Focal Fossa
Krok 1. Nejprve se ujistěte, že všechny vaše systémové balíčky jsou aktuální, spuštěním následujícího apt
příkazy v terminálu.
sudo apt update sudo apt upgrade
Krok 2. Krok 2. Nainstalujte požadované závislosti.
Nyní instalace vyžaduje všechny závislosti potřebné pro instalaci serveru Seafile pomocí apt
níže uvedené příkazy:
sudo apt install python3 python3-{pip,pil,ldap,urllib3,setuptools,mysqldb,memcache,requests} sudo apt install ffmpeg memcached libmemcached-dev sudo pip3 install --upgrade pip sudo pip3 install --timeout=3600 Pillow pylibmc captcha jinja2 sqlalchemy==1.4.3 sudo pip3 install --timeout=3600 django-pylibmc django-simple-captcha python3-ldap mysqlclient
Krok 3. Instalace zásobníku LEMP.
Je vyžadován server Ubuntu 20.04 LEMP. Pokud nemáte nainstalovaný LEMP, můžete postupovat podle našeho průvodce zde.
Krok 4. Konfigurace MariaDB pro.
Ve výchozím nastavení není MariaDB tvrzená. MariaDB můžete zabezpečit pomocí mysql_secure_installation
skript. měli byste si pozorně přečíst a níže každý krok, který nastaví heslo root, odstraní anonymní uživatele, zakáže vzdálené přihlášení root a odstraní testovací databázi a přístup k zabezpečené MariaDB:
mysql_secure_installation
Nakonfigurujte to takto:
- Set root password? [Y/n] y - Remove anonymous users? [Y/n] y - Disallow root login remotely? [Y/n] y - Remove test database and access to it? [Y/n] y - Reload privilege tables now? [Y/n] y
Dále se budeme muset přihlásit do konzole MariaDB a vytvořit databázi pro Seafile. Spusťte následující příkaz:
mysql -u root -p
To vás vyzve k zadání hesla, takže zadejte své root heslo MariaDB a stiskněte Enter. Vytvoříme databázi pro každou z těchto serverových komponent.
MariaDB [(none)]> CREATE DATABASE seafile_server; MariaDB [(none)]> CREATE DATABASE ccnet_server; MariaDB [(none)]> CREATE DATABASE seahub_server;
Potom vytvořte uživatele databáze a udělte oprávnění pro vytvořené databáze:
MariaDB [(none)]> CREATE USER 'seafile'@'localhost' IDENTIFIED BY 'Your-Strong-Password'; MariaDB [(none)]> GRANT ALL ON seafile_server.* TO 'seafile'@'localhost'; MariaDB [(none)]> GRANT ALL ON ccnet_server.* TO 'seafile'@'localhost'; MariaDB [(none)]> GRANT ALL ON seahub_server.* TO 'seafile'@'localhost'; MariaDB [(none)]> QUIT;
Krok 5. Instalace Seafile na Ubuntu 20.04.
Ve výchozím nastavení není Seafile k dispozici v základním úložišti Ubuntu 20.04. Nyní spusťte následující příkaz níže a stáhněte si nejnovější verzi Seafile z oficiální stránky:
wget https://s3.eu-central-1.amazonaws.com/download.seadrive.org/seafile-server_9.0.4_x86-64.tar.gz
Dále rozbalte stažený soubor:
sudo tar -xvf seafile-server_9.0.4_x86-64.tar.gz -C /srv sudo mv /srv/seafile-server_9.0.4_x86-64 /srv/seafile
Potom spusťte instalační skript:
cd /srv/seafile/ sudo ./setup-seafile-mysql.sh
Během instalace budete požádáni o zodpovězení několika otázek týkajících se vašeho serveru (název, adresa, port atd.). Budete také dotázáni na inicializaci databáze.
Po dokončení instalace nyní spusťte server Seafile pomocí následujících příkazů:
cd /srv/seafile sudo ./seafile.sh start
Pak spusťte webovou frontendovou službu Seahub (Django):
sudo ./seahub.sh start
Krok 6. Vytvořte Seafile Systemd Service.
Nyní jsme nastavili seafile a seahub jako systemd
služba:
sudo tee /etc/systemd/system/seafile.service<<EOF [Unit] Description=Seafile After= mysql.service After=network.target [Service] Type=forking ExecStart=/srv/seafile-server-latest/seafile.sh start ExecStop=/srv/seafile-server-latest/seafile.sh stop [Install] WantedBy=multi-user.target EOF
Vytváříme také jeden pro Seahub:
sudo tee /etc/systemd/system/seahub.service<<EOF [Unit] Description=Seafile After= mysql.service After=network.target [Service] Type=forking ExecStart=/srv/seafile-server-latest/seahub.sh start ExecStop=/srv/seafile-server-latest/seahub.sh stop [Install] WantedBy=multi-user.target EOF
Uložte a zavřete soubor a poté znovu načtěte systemd
správce, aby změny proběhly:
sudo systemctl daemon-reload sudo systemctl start seafile && sudo systemctl enable seafile sudo systemctl start seahub && sudo systemctl enable seahub
Krok 7. Nakonfigurujte Nginx jako Reverse-Proxy.
Nyní vytvoříme nový konfigurační soubor pod /etc/nginx/conf.d/seafile.conf
pomocí následujících příkazů:
server { listen 80; listen [::]:80; server_name seafile.your-domain.com; autoindex off; client_max_body_size 100M; access_log /var/log/nginx/seafile.com.access.log; error_log /var/log/nginx/seafile.com.error.log; location / { proxy_pass http://127.0.0.1:8000; 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; proxy_read_timeout 1200s; } location /seafhttp { rewrite ^/seafhttp(.*)$ $1 break; proxy_pass http://127.0.0.1:8082; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_connect_timeout 36000s; proxy_read_timeout 36000s; proxy_send_timeout 36000s; send_timeout 36000s; } location /media { root /srv/seafile-server-latest/seahub; } }
Uložte a zavřete soubor, poté restartujte webový server Nginx, aby se změny provedly:
nginx -t sudo systemctl restart nginx
Krok 8. Nakonfigurujte bránu firewall.
Ve výchozím nastavení je brána UFW na Ubuntu povolena. V závislosti na konfiguračním souboru virtuálního hostitele Nginx otevřete porty 80 a 443, abyste umožnili provoz HTTP a HTTPS:
sudo ufw allow 80/tcp sudo ufw allow 443/tcp sudo ufw reload
Krok 9. Přístup k webovému rozhraní Seafile.
Po úspěšné instalaci otevřete webový prohlížeč a přejděte na webové rozhraní Seafile pomocí adresy URL http://seafile.your-domain.com
. Měli byste vidět následující stránku:
Blahopřejeme! Úspěšně jste nainstalovali Seafile. Děkujeme, že jste použili tento návod k instalaci open source systému pro hostování souborů a cloudového úložiště Seafile v systému Ubuntu 20.04 LTS Focal Fossa. Další pomoc nebo užitečné informace , doporučujeme vám zkontrolovat oficiální web Seafile.