메인 항목으로

NAS에 있는 외부 저장소 추가

이 과정은 Portainer 같은 Docker 관리툴을 이용하면 편합니다. Portainer를 이용한 방법을 설명 드립니다.

1. Portainer 접속 후 Nextcloud Container에 진입해 "Duplicate/Edit"를 선택 합니다.

portainer_container_edit.png

"Advanced container settings"을 찾아  "Volumes" 선택합니다.

" Volume mapping"에서 "map additional volume"을 선택합니다.

Advanced_container_settings.png

"container" 필드는 nextcloud에서 사용될 경로 입니다. 위치 입력 후 오른쪽 "Blind" 옵션 선택 합니다.
제 경우는 nextcloud root 및 data 디렉토리 밑에 임의 위치를 설정했습니다.

"host" 필드에는 NAS에 위치한 마운트할 대상물의 절대 경로를 입력합니다.

Advanced_container_settings2.png

"Actions"에서 "Deploy the container"로 컨테이너를 재빌드 해줍니다.

deploy.png

마운트할 외부 디렉토리에 "777" 권한을 부여 합니다.

chmod 777 -R /volume1/xxxx (host에서 설정한 디렉토리)

이제는 Nextcloud에서 외부저장소를 설정해줄 차례 입니다.

Nextcloud에 관리자로 접속 후 "앱"에서 "External storage support" 앱을 찾아 설치해 줍니다.

ex_storage_app.png

관리자 설정 진입 후 "관리 > "외부 저장소"를 선택하고 아래 값을 넣으 줍니다.

 폴더 이름 : Nextcloud에서 표시될 폴더 이름
 설정 : 위에서 Binding한 nextcloud container 내부 경로 입력

ex_storage_setting.png

설정이 완료 됐으면 아래와 같이 외부저장소가 추가된 것을 확인 할 수 있습니다.

ex_storage_result.png

최초 파일량이 많은 외부저장소를 추가 시 백그라운드 인덱싱 작업으로 서버부하가 클 수 있습니다. 인덱싱이 끝나면 정상화 됩니다.
백그라운드 인덱싱 후에도 자료가 다 올라오질 않을 경우 수동으로 occ를 스캔할 수 있습니다.

Portainer > nextcloud 콘솔 > occ files:scan --all 실행
(도커 이미지가 공식이미지일 경우 sudo -u www-data php occ files:scan --all 입니다.)

occ_scan.png

[Tip]

1. "@eaDir" 삭제 방법

cd /volume1
find -type d -name '@eaDir' -print0 | xargs -0 rm -rfv
find -name 'thumbs.db' -exec rm -vf {} \;
find -name 'Thumbs.db' -exec rm -vf {} \