-
Seafile- prosta oraz bezpieczna chmura dla CentOS i nie tylko
Pojęcie „chmury” jest dosyć rozległe i niezwykle często spotykane. Dzisiaj skupię się na aspekcie przechowywania i współdzielenia plików/folderów. Istnieje wiele aplikacji dostępnych za darmo lub drobną opłatą, które to umożliwiają np. Dropbox, Google Drive, OneDrive. Wszystkie one mają jedną wadę, nie mamy kontroli nad tym gdzie przechowywane są naszego dane oraz kto tak naprawdę ma do nich dostęp.
Narzędzie, którego instalację, przedstawię poniżej, daje nam pewność i wyłączność naszych danych. Możemy nawet szyfrować , tworzone kolekcje (zbiory plików / folderów). Wpierw jednak zainstalujmy niezbędne pakiety do działania opisywanej „chmury”.
yum install python-setuptools python-imaging python-sqlite3
adduser seafile
użytkownik nie musi tak się nazywać
su seafile
wget https://bitbucket.org/haiwen/seafile/downloads/seafile-server_3.1.5_x86-64.tar.gz
tar xvsf seafile-server_3.1.5_x86-64.tar.gz
mv seafile-server-3.1.5 seafile-server
cd seafile-server
Użytkownik z którego uruchamiamy skrypt instalacyjny, musi mieć uprawnienia do zapisu w folderze o poziom wyżej, aby utworzyć folder „ccnet” ( w opisywanym przypadku- /opt/ccnet )
./setup-seafile.sh
-----------------------------------------------------------------
This script will guide you to config and setup your seafile server.Make sure you have read seafile server manual at
https://github.com/haiwen/seafile/wiki
Note: This script will guide your to setup seafile server using sqlite3,
which may have problems if your disk is on a NFS/CIFS/USB.
In these cases, we sugguest you setup seafile server using MySQL.Press [ENTER] to continue
-----------------------------------------------------------------What would you like to use as the name of this seafile server?
[server name]: testowaWhat is the ip or domain of this server?
[This server's ip or domain]: test-cloud.centos.plWhat tcp port do you want to use for ccnet server?
[default: 10001 ]Where would you like to store your seafile data?
default: /opt/seafile-data ]What tcp port would you like to use for seafile server?
default: 12001 ]What tcp port do you want to use for seafile fileserver?
default: 8082 ]This is your config information:
server name: testowa
server ip/domain: test-cloud.centos.pl
server port: 10001
seafile data dir: /opt/seafile-data
seafile port: 12001
fileserver port: 8082If you are OK with the configuration, press [ENTER] to continue.
Generating ccnet configuration in /opt/ccnet...
done
Successly create configuration dir /opt/ccnet.Generating seafile configuration in /opt/seafile-data ...
Done.
-----------------------------------------------------------------
Seahub is the web interface for seafile server.
Now let's setup seahub configuration. Press [ENTER] to continue
-----------------------------------------------------------------Creating seahub database now, it may take one minute, please wait...
Done.
creating seafile-server-latest symbolic link ... done
-----------------------------------------------------------------
Your seafile server configuration has been completed successfully.
-----------------------------------------------------------------run seafile server: ./seafile.sh { start | stop | restart }
run seahub server: ./seahub.sh { start <port> | stop | restart <port> }-----------------------------------------------------------------
If the server is behind a firewall, remember to open these tcp ports:
-----------------------------------------------------------------port of ccnet server: 10001
port of seafile server: 12001
port of seafile fileserver: 8082
port of seahub: 8000uruchamianie serwera:
/opt/seafile-server/seafile.sh start
/opt/seafile-server/seahub.sh start
Zatrzymywanie przebiega podobnie, tylko zamiast „start”, podajemy „stop”. W przypadku pierwszego użycia, zostaniemy poproszeni o skonfigurowanie konta administracyjnego. Poniżej przykład takowej operacji:
----------------------------------------
It's the first time you start the seafile server. Now let's create the admin account
----------------------------------------What is the email for the admin account?
[ admin email ] admin@test-cloud.unixa.infoWhat is the password for the admin account?
[ admin password ]Enter the password again:
[ admin password again ]----------------------------------------
Successfully created seafile admin
----------------------------------------Loading ccnet config from /opt/ccnet
Loading seafile config from /opt/seafile-dataSeahub is started
Done.
Pamiętajmy o otwarciu na firewallu wspomnianych wcześniej portów. Wersje mobilne i desktopowe można pobrać ze strony http://seafile.com/en/download/#server. Dostęp do naszych zasobów, mamy również przez stronę www, wpisując do przeglądarki jako url to co podaliśmy w polu „server ip/domain”:”port of seahub”. Pierwsze zalogowanie odbywa się z użyciem konta administracyjnego, utworzonego w czasie instalacji. Później można oczywiści, tworzyć dodatkowych użytkowników. Miłego „chmurowania” 🙂
Krótko, zwięźle, konkretnie – dzięki wielkie:)
Widzę że seafile ma też wersję płatna więc podejrzewam że nie będzie żadnych problemów, jakie zdarzały się w owncloud
Mnie owncloud działa dobrze… jedynie na tel z androidem czasem jakiś kwiatek …
Używałem kiedyś owncloud i przy dużej ilości plików, miał trochę problemów. Narzędzia klienckie nie działają poprawnie z niektórymi dystrybucjami. Owncloud ma za to dużo więcej możliwości niż seafile. Jednym słowem, każdy używa tego co mu bardziej odpowiada.
Owncloud, kombajn do wszystkiego, z masą bugów, strach w tym trzymać cokolwiek.
Testowałem go przez 8 miesięcy, zanim padł mi domowy serwer. Aplikacja synchronizująca
była do bani, sypała się, wieszała, miała wycieki pamięci, a najgorsze że potrafiła nagle przywrócić stare wersje plików, po prostu nadpisując nowe, co jest niedopuszczalne.
Dla mnie to była wieczna beta niezależnie od wersji.
Chłopaki za bardzo się skupiali nad gnaniem do przodu i tworzeniem nowych funkcji zamiast nad porządnym testowaniem i poprawianiem błędów.
Ale to było półtora roku temu, podejrzewam że teraz się nieco poprawiło.
Seafile testowałem kilka dni, trudno powiedzieć coś o stabilności, bo za mało go używałem.
Wadą jest to że na serwerze nie trzyma plików w normalnej strukturze plików i katalogów, tylko dzieli każdy plik na małe fragmenty oraz zapisuje je w drzewiastej strukturze o wygenerowanych dziwnych nazwach.
Być może przyspiesza to jakieś operacje, zwłaszcza przy dużej ilości użytkowników, ale za to jeżeli padnie nam serwer, to odzyskanie z niego danych może być bardzo utrudnione.
Jest jeszcze kilka podobnych chmur, ale żadna z nich nie spełniła moich oczekiwań.
A nie oczekuję dużo, jedynie stabilność i integralność danych, cała reszta bejerów jest nieistotna.