개인 설치형 웹하드 Seafile 꾸며보기

블로그 서버에 남는 용량을 뭐에 써볼까 고민하다가 웹하드에 다시 도전해봤습니다.
이전에 Pydio를 가지고 삽질하다가 대용량 파일 문제로 포기했었는데 (Pydio 부스터 설치 실패기) 이번엔 다른 설치형 웹하드로 시도해봤습니다.
Seafile이라는 설치형 웹하드인데 별다른 세팅없이 대용량 파일이 그냥 업로드 됩니다. (5기가 단일파일 까지 테스트 해봄)

여기에 설치법을 정리해 봅니다.

 

1. 파일 다운로드

https://www.seafile.com/en/download/ 에서 클라이언트가 아닌 서버 파일을 다운로드 해야 합니다.
저는 6.0.9 64bit 으로 받아서 설치 했습니다.

2. 설치

linsoo@ubuntu:~/webhard/seafile-server$ ./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]: Linsoo_Webhard


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]: webhard.linsoo.co.kr

Where would you like to store your seafile data?
Note: Please use a volume with enough free space.
[default: /home/linsoo/webhard/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:        Linsoo_Webhard
server ip/domain:   webhard.linsoo.co.kr
seafile data dir:   /home/linsoo/webhard/seafile-data
fileserver port:    8082

If you are OK with the configuration, press [ENTER] to continue.

Generating ccnet configuration in /home/linsoo/webhard/ccnet...

done
Successly create configuration dir /home/linsoo/webhard/ccnet.

Generating seafile configuration in /home/linsoo/webhard/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.

linsoo@ubuntu:~/webhard/seafile-server$

사실 설치는 간단합니다. 다운 받은 파일 압축 풀고 setup-seafile.sh 실행한뒤 서버이름과 주소 그리고 포트만 지정해주면 됩니다.
설치 후엔 seafile.sh start,  seahub.sh start로 실행 시켜주고요.

seafile은 실제 전송기능은 c로 만들어진 부분이고 seahub는 파이썬으로 만들어진 간단한 웹서버입니다.

linsoo@ubuntu:~/webhard/seafile-server$ ./seafile.sh start
.
[06/06/17 09:58:20] ../common/session.c(132): using config file /home/linsoo/webhard/conf/ccnet.conf
Starting seafile server, please wait ...
Seafile server started

Done.
linsoo@ubuntu:~/webhard/seafile-server$ ./seahub.sh start-fastcgi

LC_ALL is not set in ENV, set to en_US.UTF-8
Starting seahub (fastcgi) at 127.0.0.1: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 ] 

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.

linsoo@ubuntu:~/webhard/seafile-server$

처음 실행시 관리자 설정이 나옵니다. 여기까지 왔다면 별탈없이 작동 할 것입니다.

 

3. 추가 할것들

이건 nginx와 달리 설치시 자동으로 서비스 등록이 되지 않습니다. 서버 재부팅마다 매번 실행해야 한다는 단점이 있습니다.
그래서 크론탭에 등록해줍니다.

sudo vi /etc/crontab

입력해서 맨 아래에 다음과 같이 추가합니다.

@reboot "실행할계정" /home/linsoo/webhard/seafile-server-latest/seafile.sh start
@reboot "실행할계정" /home/linsoo/webhard/seafile-server-latest/seahub.sh start-fastcgi

예시)
@reboot root /home/linsoo/webhard/seafile-server-latest/seafile.sh start
@reboot root /home/linsoo/webhard/seafile-server-latest/seahub.sh start-fastcgi

 

4. 후기

요즘은 구글 드라이브 성능이 좋아서 굳이 이런거 사용할 필요는 없어보이긴 하지만 그래도 용량 제한 없다는점은 좋네요.
성능은 그럭저럭 무난하게 쓸만합니다.

크리에이티브 커먼즈 라이선스 Linsoo 의 저작물인 이 저작물은(는) 크리에이티브 커먼즈 저작자표시-동일조건변경허락 4.0 국제 라이선스에 따라 이용할 수 있습니다.

댓글 1개

댓글 달기

이메일 주소는 공개되지 않습니다.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.