최근 클라우드 서비스를 너도나도 출시하고 있다. 가장 유명한 곳은 아무래도 Dropbox일 것이고, Google Drive, MS OneDrive, Apple iCloud, Naver nDrive, 정말 많다. 개인이 NAS를 구축하여 사용하는 일도 흔하다. WD나 Synology제품을 사용하면 된다.

여기에서는 ownCloud를 활용하여 개인이 운영하는 서버에 개인용 클라우드를 탑재하는 방법을 소개하려고 한다. ownCloud 는 https://owncloud.org/ 에서 다운로드하거나, 관련 문서들을 확인할 수 있다. 

1. 환경설정.

여기에서 설명하는 시스템은 Mac mini Server(Mid 2011) 모델이다. OS X El Capitan을 탑재하였으며, 애플의 Server App 버전 5.0.15을 사용하여 웹서버를 구동할 것이다. (참고로 ownCloud는 리눅스에 최적화되어 있으며, 웹서버 구동은 Apache를 이용하여 수행하는 것이 더 일반적이다.) 기본으로 '서버 웹 사이트'항목과 '서버 웹 사이트(SSL)'항목이 생성되어 있다. 

php 활성화를 체크한다.
php 활성화를 체크한다.

+ 버튼을 누르면 도메인을 입력하여 자신만의 새로운 사이트를 개설 할 수 있다. 하지만, 기존에 자신이 운영하던 Default 페이지 하위에 ownCloud를 설치하고 싶으면 새로 생성할 필요가 없고 프로그램만 설치하면 된다.

도메인이름을 입력한다. SSL 인증서를 설정하면 https 가 된다.
도메인이름을 입력한다. SSL 인증서를 설정하면 https 가 된다.

위에서도 언급했지만, 웹서버 구동은 Apache를 이용하여도 상관 없다. 결국엔 ownCloud를 구동하기 위한 php만 작동하면 되는 것이다. 그리고 '고급 설정 편집'을 클릭하여 ".htaccess 파일을 사용한 덮어쓰기 허용"을 체크한다.

2. 이제 owncloud를 설치해보자.

우측상단의 Downlod 버튼을 클릭
우측상단의 Downlod 버튼을 클릭


포스팅 작성일 기준(2015. 10. 23.) 다운받아지는 최신 버젼은 owncloud-8.2.0.tar.bz2 이다. 이를 아카이브 유틸리티를 사용하여 압축을 해제한다. 그러면 owncloud 라는 디렉토리가 생성되었을 것이다. 이제 터미널 윈도우를 켜고 다음 명령어를 수행하여 웹서버의 위치에 복사한다.

그 다음 중요한 것은, 권한 설정이다. 이것이 왜 필요한지 궁금하다면 직접 접속해보면 쉽게 알 수 있다. 다음과 같은 오류화면이 출력된다.

웹서버에 읽기/쓰기 권한이 없어서 그렇다.
웹서버에 읽기/쓰기 권한이 없어서 그렇다.

터미널을 실행하여 다음 명령어를 통해 권한을 부여한다.

이제 다시 웹브라우저를 통해 접속을 시도한다. 다음과 같이 초기 설정 화면이 나온다. 공식적으로 ownCloud는 Mac OS X를 지원하지 않는다고 하며, 최적화는 GNU/Linux 서버에서 안정적으로 사용할 것을 권장한다. 맥으로 하고있는데 큰 이상은 없어보인다.

사용자 계정 및 암호 설정
사용자 계정 및 암호 설정

아래에 저장소 및 데이터베이스를 설정하는 부분이 있다. 기본으로 설정되어있는 디렉토리를 사용하여도 되나, 위치가 복잡하여 번거로우므로 변경해주어도 된다. 중요한점은 또한 '권한설정'이다. 새롭게 지정할 디렉토리에 대해서도 위와 같이 권한 부여를 한번 더 해준다. 

예시) /Library/Server/Web/Data/Sites/owncloud_storage/ 로 설정한 경우 웹페이지의 '데이터 폴더'에 동일하게 /Library/Server/Web/Data/Sites/owncloud_storage/로 입력하고, 터미널에서 권한부여.


3. 데이터베이스 설정 : 기본적으로 SQLite를 사용하도록 설정되어 있다. 이는 단순한 파일 몇개로 데이터베이스를 쉽게 관리할 수 있다는 장점이 있으나, 대규모 파일관리의 경우 성능 문제가 있다. 그러므로 여기에서 각자가 관리하고 있는 별도의 DB(Mysql, mariaDB, PostgreSQL)를 활용하여 ownCloud를 관리하도록 할 수 있다. 여기에서는 mariaDB를 기준으로 설명한다. 커맨드 명령어를 사용해도 되지만, MariaDB를 쉽게 관리해주는 Sequel 이라는 도구가 있다. 이를 사용하여 본인의 MariaDB에 접속한 후 owncloud라는 database를 생성하였다. 

개인 mariadb에 Sequel Pro를 이용해 접속 후 database 생성
개인 mariadb에 Sequel Pro를 이용해 접속 후 database 생성
이렇게 했으면 당연히 설치완료겠지?
이렇게 했으면 당연히 설치완료겠지?

혹시 다음과 같은 오류가 나시는 분들이 있을 수 있다.


Error while trying to create admin user: Failed to connect to the database: An exception occured in driver: SQLSTATE[HY000] [2002] Connection refused
MariaDB관련 오류
MariaDB관련 오류

구글링 끝에 알아냈다. 대부분의 어플리케이션이 Linux를 기준으로 구성되어있는바, 맥에서는 해당 정보가 달리 구성되어있기 때문이다. 정확히는 mysql.sock의 위치가 문제였던 것. 맥에서는 /tmp/mysql.sock에 있지만 리눅스는 /var/mysql/mysql.sock에 있으므로 owncloud가 관련파일을 찾지 못해서이다. 이를 옮겨주어도 되지만, 혹시모를 위험이 있으니 심볼릭 링크를 사용하여 간단히 해결할 수 있다. 터미널 윈도우를 연 후 다음과 같이 입력한다.

이제 설치 완료를 누르면 DB오류는 사라질 것이다!

최초 접속 화면
최초 접속 화면
파일관리 화면
파일관리 화면

다시 제조사 홈페이지에 들어가보자, 관리자용 프로그램들을 다운로드 할 수 있다.

 다음은 애플 iTunes 앱스토어에 있는 ownCloud 공식 앱이다. ( https://appsto.re/kr/PD8zG.i )

가격은 USD 1.09 이며, 비공식 앱의 경우 무료도 있다. 다운로드 후 서버 설정, 로그인 후 파일관리가격은 USD 1.09 이며, 비공식 앱의 경우 무료도 있다. 다운로드 후 서버 설정, 로그인 후 파일관리가격은 USD 1.09 이며, 비공식 앱의 경우 무료도 있다. 다운로드 후 서버 설정, 로그인 후 파일관리
가격은 USD 1.09 이며, 비공식 앱의 경우 무료도 있다. 다운로드 후 서버 설정, 로그인 후 파일관리



+. 추가적인 사항.

업로드 용량 제한을 변경하고자 하는 경우 관리자페이지에서 변경을 한다. 

기본적으로 2MB로 설정되어 있다.
기본적으로 2MB로 설정되어 있다.

그런데 가끔 짜증나게, 분명 변경했는데 계속 2MB로 설정이 되돌아와있는 경우가 있다. 그런 경우 가장 먼저 다음 파일을 확인한다. 우선 owncloud가 설치된 디렉토리로 들어가서, .htaccess라는 파일이 수정되었는지 확인한다. 해당 파일은 숨김처리 되어있으므로, ls -la 명령어로 확인해야 한다. 수정시에는 sudo 권한이 필요하다.


upload_max_filesze와 post_max_size를 수정한다. 만약 이렇게 했는데도 안되면, 서버의 php자체 설정을 의심해보아야 한다. 맥의 경우 /private/etc/php.ini 파일을 확인한다. 여기에도 똑같이 post_max_size와 upload_max_filesize 항목이 있다. 이를 위에서 수정했던 수치와 맞춰주면 된다.



CPUU님의 창작활동을 응원하고 싶으세요?