티스토리 뷰

공장 (factory)/- Linux CentOS

[CentOS7] 나만의 파일공유 서비스! owncloud 설치.

공부하는 나부랭이, 무중력고기 2016.03.02 20:30

   현재 아이폰을 사용하고 있는데, 용량이 적어서 icloud나 네이버 클라우드에 백업을 하곤 했다.


   근데 이번에 icloud가 용량이 부족하다고 용량을 늘리라는 알림이 떴다. 한 달에 얼마를 결제하면 용량을 늘려준다나.


   '뭐야 돈내야 돼? 그것도 다달이?? ㅠㅠ...  가만... 나 집에 서버있는데 그걸로 아이클라우드 만들면 되잖아? +_+'


   그래서 이것저것 오픈소스를 알아보던 중...  owncloud / pydio / elFinder / h5ai 등이 있다는 걸 알게 됐다.


   이중에 앱도 되고 디자인도 이쁜 owncloud를 설치하기로 결심.


   사실 이녀석과 초면도 아닌 게.. 이전 회사에서 일할 때, 팀 동료가 이걸 설치해서 사용하는 걸 본 적이 있었다. 물론 그땐 내가 설치한 게 아니고, 다 되어 있는 것을 한번 사용해본 게 전부다. 그때 참 괜찮았던 걸로 기억한다.


   자, 그래서 언제 어디서든지 백업하고 내려받을 수 있는 내 손안의 파일 서비스를 만들기 위해 반나절을 삽질하였으니...


   결론적으로 잘 설치하여 유용하게 사용하고 있다. ㅋㅋ





1. PHP, httpd, MySQL 설치.


   owncloud는 PHP와 httpd가 필수적으로 필요하고, MySQL이나 Postgre 같은 RDBMS가 있으면 좋다. DB를 설치하지 않으면 SQLite를 기본으로 사용하도록 되어있다.



   1-1. PHP 설치

   

   - 저장소 등록

rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm



   - 5.6버전 PHP 설치

yum -y install php56w php56w-opcache php56w-mysql



   만약 이미 설치되어 있다면?


   - PHP 버전 확인

# php -v | head -1

PHP 5.4.16 (cli) (built: Jun 23 2015 21:17:27)



   - 기존 PHP 패키지 삭제

yum remove php-common php-zend-optimizer-debuginfo



   - 5.6버전 PHP 설치

yum -y install php56w php56w-opcache php56w-mysql



   1-2. httpd 설치


   - httpd 설치

# yum -y install httpd


   아주 간단하다.



   1-3. MySQL 설치

   이 부분은 내가 쓴 블로그 글을 참고☞ http://zero-gravity.tistory.com/274


   MySQL을 제대로 설치했다면, root 권한으로 접속하여 owncloud에서 사용할 데이터베이스를 생성해준다.

   그리고 그 데이터베이스를 사용할 아이디에 권한을 부여해준다.


> create database DB이름 default character set utf8;

> grant all privileges on DB이름.* to '아이디'@'localhost';

> flush privileges;




2. owncloud 설치


# cd /etc/yum.repos.d/

# wget http://download.opensuse.org/repositories/isv:ownCloud:community/CentOS_CentOS-7/isv:ownCloud:community.repo

# yum -y install owncloud

   이렇게만 하면 설치완료다.



   2-1. 설정 파일 확인


# vi /etc/httpd/conf.d/owncloud.conf


Alias /owncloud "/var/www/html/owncloud/"

<Directory "/var/www/html/owncloud">

    Options +FollowSymLinks

    AllowOverride All


    <IfModule mod_dav.c>

      Dav off

    </IfModule>


    SetEnv HOME /var/www/html/owncloud

    SetEnv HTTP_HOME /var/www/html/owncloud

</Directory>


<Directory "/var/www/html/owncloud/data/">

  # just in case if .htaccess gets disabled

  Require all denied

</Directory>

   딱히 변경할 부분은 없다. 

   기본적으로 "AllowOverride All"로 쓰여져 있으므로, 실제 설정 파일은 /var/www/html/owncloud/.htaccess라는 거.




3. owncloud 로그인 및 설정


   위와 같이 해주고, 인터넷 브라우저에서 http://아이피주소/owncloud로 접속하면 아래와 같이 화면이 똭! 뜬다.




   여기서 관리자 아이디와 비밀번호를 처음 설정해준다. 신중하게 잘 입력할 것!





   그리고나서, 아래쪽에 저장소 및 데이터베이스를 설정할 수 있다. 여기서 MySQL/MariaDB를 선택하고, owncloud를 위해 생성해놨던 데이터베이스와 사용자 아이디/비밀번호를 입력한다.


   모든 입력을 마치고 "설치 완료" 버튼을 누르면 땡!... 이지만, 난 여기서 땡이 아니었다.


   데이터 폴더를 /var/www/html/owncloud/data(디폴트)가 아닌 내가 원하는 위치로 잡아줬더니, 권한 문제가 발생했다.


   이것저것 찾아본 결과, 두가지 작업을 더 해줘야 한다는 걸 발견.


   데이터 폴더 경로를 다른 경로로 할 경우,


# chown -R apache:apache [폴더 경로]

   해당 폴더의 소유자:소유그룹을 apache:apache로 변경해줘야 한다 (centos 기준이다. ubuntu의 경우 "www-data").

   이외에도 다른 방법이 있는 것 같았으나, 힘들어서 다음에 찾아보는 걸로 하고 이걸로 땡.



# chmod -R 0770 [폴더 경로]

   권한도 0770으로 해줘야 한다.



# systemctl restart httpd.service

   그리고나서 httpd를 재시작.




   브라우저를 새로고침 누르면, 쫘잔~



   다 끝났다.




   iOS는 앱스토어, 안드로이드는 구글스토어에서 "owncloud"로 검색하면 관련 앱이 나온다. 유료이긴 해도 1달러니까 비싼 편은 아니다.


   앱을 설치하고 접속하면 언제 어디서나 폰에 있는 사진/동영상을 업로드하고, 서버에 백업해놓은 파일들을 다운로드할 수 있다.






   사용하다보니 혼자만 쓰기 참 아까운 느낌이다. 관리자가 계정을 추가할 수 있고 그룹을 만들 수 있어서 여럿이 파일을 공유할 때 좋을 듯하다.






참고한 사이트

☞ https://www.lesstif.com/pages/viewpage.action?pageId=22643090

☞ http://www.itzgeek.com/how-tos/linux/centos-how-tos/install-owncloud-8-on-centos-7-rhel-7.html

☞ https://www.youtube.com/watch?v=nY3ALemZoJw



저작자 표시 비영리 변경 금지
신고
댓글
댓글쓰기 폼
Total
848,965
Today
175
Yesterday
788
«   2017/10   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31        
글 보관함