SeaFile Server 간단 설치 후기

category 서버/리눅스 서버 2017.12.25 19:34

안녕하세요. 도정진입니다.


NextCloud 를 이어 사용하기 편한것 같은 파일서버 프로그램을 하나 찾아 보았습니다.


일단 사용해 보기 위해서는 설치를 진행해야겠죠? 아래와 같이 설치를 진행하면 되겠습니다.



https://www.seafile.com/en/home/





설치 진행하기 (데비안8)


일단 상기 프로그램은 SQLite 와 python 2.7 로 구현 하였습니다. (따로 mysql 이나 웹서버를 통해서도 구현이 가능합니다만, 개인 사용과 그냥 대략적으로 느낌이 어떤지 보기 위해서 간편하게 설치하는 방향으로 진행합니다.)


의존성 패키지 설치하기


root@debian:/opt/seafile# apt-get install python2.7 libpython2.7 python-setuptools python-imaging python-ldap python-urllib3 sqlite3

Reading package lists... Done

Building dependency tree       

Reading state information... Done

python-imaging is already the newest version.

python-setuptools is already the newest version.

python-setuptools set to manually installed.

python-urllib3 is already the newest version.

python-urllib3 set to manually installed.

python2.7 is already the newest version.

python2.7 set to manually installed.

The following packages were automatically installed and are no longer required:

  libvdpau1 libwayland-client0

Use 'apt-get autoremove' to remove them.

Suggested packages:

  python-ldap-doc sqlite3-doc

The following NEW packages will be installed:

  libpython2.7 python-ldap sqlite3

0 upgraded, 3 newly installed, 0 to remove and 41 not upgraded.

Need to get 1,303 kB of archives.

After this operation, 4,302 kB of additional disk space will be used.

Do you want to continue? [Y/n] 

Get:1 http://httpredir.debian.org/debian/ jessie/main libpython2.7 amd64 2.7.9-2+deb8u1 [1,081 kB]

Get:2 http://httpredir.debian.org/debian/ jessie/main python-ldap amd64 2.4.10-1 [120 kB]

Get:3 http://httpredir.debian.org/debian/ jessie/main sqlite3 amd64 3.8.7.1-1+deb8u2 [101 kB]

Fetched 1,303 kB in 1s (763 kB/s)

Selecting previously unselected package libpython2.7:amd64.

(Reading database ... 72105 files and directories currently installed.)

Preparing to unpack .../libpython2.7_2.7.9-2+deb8u1_amd64.deb ...

Unpacking libpython2.7:amd64 (2.7.9-2+deb8u1) ...

Selecting previously unselected package python-ldap.

Preparing to unpack .../python-ldap_2.4.10-1_amd64.deb ...

Unpacking python-ldap (2.4.10-1) ...

Selecting previously unselected package sqlite3.

Preparing to unpack .../sqlite3_3.8.7.1-1+deb8u2_amd64.deb ...

Unpacking sqlite3 (3.8.7.1-1+deb8u2) ...

Processing triggers for man-db (2.7.0.2-5) ...

Setting up libpython2.7:amd64 (2.7.9-2+deb8u1) ...

Setting up python-ldap (2.4.10-1) ...

Setting up sqlite3 (3.8.7.1-1+deb8u2) ...

Processing triggers for libc-bin (2.19-18+deb8u10) ...


설치 진행하기 (설치파일은 받아져 있다고 가정합니다.)


root@debian:/opt/seafile# ./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

-----------------------------------------------------------------



Checking packages needed by seafile ...


Checking python on this machine ...

Find python: python2.7


  Checking python module: setuptools ... Done.

  Checking python module: python-imaging ... Done.

  Checking python module: python-sqlite3 ... Done.


Checking for sqlite3 ...Done.


Checking Done.



What would you like to use as the name of this seafile server?

Your seafile users will be able to see the name in their seafile client.

You can use a-z, A-Z, 0-9, _ and -, and the length should be 3 ~ 15

[server name]: test


What is the ip or domain of this server?

For example, www.mycompany.com, or, 192.168.1.101


[This server's ip or domain]: 192.168.0.142


Where would you like to store your seafile data? 

Note: Please use a volume with enough free space.

[default: /opt/seafile-data ] 


What tcp port do you want to use for seafile fileserver?

8082 is the recommended port.

[default: 8082 ] 



This is your config information:


server name:        test

server ip/domain:   192.168.0.142

seafile data dir:   /opt/seafile-data

fileserver port:    8082


If 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 seafile fileserver:   8082

port of seahub:               8000


When problems occur, refer to


      https://github.com/haiwen/seafile/wiki


for more information.


설치가 완료 되었습니다.





서버 시작하기


서버 시작하기


root@debian:/opt/seafile# ./seafile.sh start


[12/25/17 18:50:40] ../common/session.c(132): using config file /opt/conf/ccnet.conf

Starting seafile server, please wait ...

Seafile server started


Done.


웹UI 시작하기


root@debian:/opt/seafile# ./seahub.sh start


LC_ALL is not set in ENV, set to en_US.UTF-8

Starting seahub at port 8000 ...


----------------------------------------

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 ] djj9404@gmail.com


What is the password for the admin account?

[ admin password ] 


Enter the password again:

[ admin password again ] 




----------------------------------------

Successfully created seafile admin

----------------------------------------





Seahub is started


Done.





WebUI 탐험



용량 제한 없이 업로드가 가능합니다. 그리고 웹 UI 반응도 빠른 편이네요. 무료버전은 총 3명의 유저를 생성하실 수 있습니다.





데스크톱 클라이언트 사용




이런식으로 동기화 프로그램도 존재하고 잘 작동하는 편입니다.





효용 가치 판단


일단 파일을 저장해 본 결과 파일이 그대로 저장되는것이 아니라 조각조각 되어 저장이 됩니다. 이걸 DB 에 저장하고 사용자가 요청시 합쳐서 다시 보내주는 것 같습니다.


한편, 외부 저장소를 라이브러리로 추가하는 기능이 있는데 이렇게 추가하면 넥스트클라우드와 같이 원본 파일이 그대로 보이게 설정이 가능한지는 잘 모르겠습니다.


스트리밍 용도로는 음.. 사용하기 어려울것 같습니다. 스트리밍하려고 하면 파일을 전체를 다운받아 버리네요.


그러나 파일을 단순한 저장용도나 백업 싱크 용도로는 괜찮은것 같습니다.


조금 더 매뉴얼을 살펴보고 활용 방법을 찾아보아야 할것 같습니다.


감사합니다.








댓글을 달아 주세요

  1. 괴ㅈ 신고">2018.02.03 16:28 신고

    프로 버전을 무료로 사용할때 사용자 3명까지 되고, 무료버전은 사용자 수 제한이 없습니다.