본문 바로가기
서버/Server

[Server]OwnCloud 'data 폴더' 바꾸기 (Ubuntu/Debian)

by jamong1014 2022. 2. 22.
반응형

가정

  • 현재 폴더 : /var/www/owncloud/data
  • 새 폴더 : /mnt/owncloud/data
  • 아파치로 웹 서버 사용 중
  • OwnCloud의 데이터베이스 이름은 'owncloud'

단계 설명

  1. 아파치 중지
  2. 인스턴스에 대한 유지 관리 모드 활성화
  3. Rsync를 사용하여 디렉터리에서 새 디렉터리로 파일 동기화
  4. 새 디렉터리에 대한 디렉터리 권한 확인(www-data)
  5. 데이터베이스 경로 변수 수정
  6. 새 데이터 디렉터리를 가리키도록 owncloud 구성 변경
  7. 인스턴스의 유지 관리 모드 비활성화
  8. 아파치 다시 시작

1. 아파치 중지
2. 인스턴스에 대한 유지 관리 모드 활성화

- 먼저 원활한 설정을 위해 구동하고 있던 아파치 서버 중지와 인스터스 유지 관리 모드를 활성화하여 cron 작업 실행을 방지하도록 설정해야 합니다.

sudo service apache2 stop
sudo -u www-data php occ maintenance:mode --on

'기존 owncloud 폴더에 들어가서 명령 실행'


3. Rsync를 사용하여 디렉터리에서 새 디렉터리로 파일 동기화
4. 디렉터리에 대한 디렉터리 권한 확인(www-data)

sudo rsync -avz /var/www/owncloud/data /mnt/owncloud

* 데이터가 많을 시 시간이 오래 걸릴 수 있음
* operation not permitted 오류가 뜰 시 기존의 '/var/www/owncloud/data' 폴더의 권한과 새 데이터 폴더 '/mnt/owncloud' 와 권한이 같아야 합니다. 즉 '/var/www/owncloud/data' 폴더의 권한이 www-data이면 새 폴더 '/mnt/owncloud' 또한 권한을 www-data로 부여해줘야 합니다.

sudo chown -R www-data:www-data /mnt/owncloud

*만약 'sudo chown -R www-data:www-data /mnt/owncloud' 명령어를 실행 시 여기에서도 operation not permitted 오류가 뜬다면 해당 장치 hdd 또는 ssd의 파티션 종류를 ext4로 포맷하고 다시 시도해보길 바랍니다.


5. 데이터 베이스 경로 변수 수정

  1. MySQL 접속
  2. 'use owncloud;'

 

oc_storages 테이블 업데이트

local::/var/www/owncloud/data/을 local::/mnt/owncloud/data/로 변경

UPDATE oc_storages SET id='local::/mnt/owncloud/data/' WHERE id='local::/var/www/owncloud/data/';

 

oc_accounts 테이블 업데이트

UPDATE oc_accounts SET home='/mnt/owncloud/data/my_user' WHERE id=1;

* 여기서 my_user는 자신의 owncloud 계정 아이디를 입력하면 됨


6. 새 데이터 디렉터리를 가리키도록 owncloud 구성 변경

애플리케이션 설정 수정

sudo -u www-data php occ config:app:set --value /mnt/owncloud/data fictitious datadir

* /var/www/owncloud 폴더에서 명령 실행

config.php 설정 수정

sudo vi /var/www/owncloud/config/config.php

'datadirectory' ⇒ '/var/www/owncloud/data' 이것을
'datadirectory' ⇒ '/mnt/owncloud/data' 이렇게 바꿔줍시다.


7. 인스턴스의 유지 관리 모드 비활성화
8. 아파치 다시 시작

sudo -u www-data php occ maintenance:mode --off

* /var/www/owncloud 폴더에서 명령 실행

sudo service apache2 start



끝!

참고
https://doc.owncloud.com/server/10.9/admin_manual/maintenance/manually-moving-data-folders.html

 

Manually Move a Data Directory

Manually Move a Data Directory

doc.owncloud.com

 

반응형

댓글