개요
얼마 전 Nextcloud Hub 8 (29.0.0)이 발표되면서, TrueNAS 공식 카탈로그 앱 이미지도 계속해서 마이너 업데이트 중입니다.
이 중 변경점으로 userdata를 분리하면서, Storage구성 시 변경점이 발생하여 짧게 글을 작성합니다.
이 외의 부분은, 기존 글과 동일하게 설치를 진행하면 됩니다.
2025.01.22 - [Nextcloud] - TrueNAS에 Nextcloud 사용하기
TrueNAS에 Nextcloud 사용하기
개요TrueNAS는 오픈소스NAS OS중에서는 가장 강력하지만, 유저편의적인 부분은 많이 부족합니다. 특히, 개인 조립NAS를 헤놀로지로 입문한 경우, DSM의 높은 편의성 덕분에, TrueNAS를 다루는 것에 엄청
worklazy.net
Data와 Userdata분리
Hub 7 (28.x 버전)까지는 기본적으로 3개의 dataset을 요구했습니다.
- Nextcloud의 Data 저장용
- Nextcloud의 DB(Postgresql) 저장용
- nextcloud의 DB 백업 저장용
원래는, Data가 저장되는 곳에 각 user가 업로드한 데이터도 같이 저장이 되는 구조였습니다.
Nextcloud data 루트폴더 상에 ‘data’폴더를 하나 만들고 그 안에 각 유저id로 폴더가 만들어지는 식이죠.
예시) admin유저의 개인 파일
사실 이 구조는 Nextcloud의 웹 프론트엔드 부분과 설정 파일 등이 userdata와 한데 뒤섞여, 별로 좋지 않은 구조였던 만큼,
이번 변경점은 환영할 만한 일이긴 하지만, 이로 인해 dataset 설정도 바꾸어 주어야 할 필요가 있게 되었습니다.
신규 설치의 경우
4개의 dataset을 준비해서 Host Path로 넘겨주면 됩니다. 필요한 dataset은 각각 아래와 같습니다.
필수적으로 필요한 4개의 dataset외에 Additional Storage에서 추가적으로 dataset을 설정하여 Nextcloud에서 사용할 수 있습니다.
제 경우는 Syncthing으로 동기화받는 폴더를 연결하여 Nextcloud에서 외부 저장소로 사용중입니다.
기타 그 외, 신규 설치 시에는 Storage Configuration에서 Pre v2 Storage Structure라는 체크박스를 꼭 체크해제하고 설치하세요.
기존 버전에서 업데이트 시
기존 버전에서 업데이트를 했다면, 아래처럼 Pre v2 Stage Structure에 체크가 되어 있고, AppData Storage와 User Data Storage에 같은 경로가 설정되어 있습니다.
이 상태로 사용해도 별 문제는 없지만, 설정을 통해 신규 이미지에 맞게 폴더를 분리해 보겠습니다.
우선, 별도의 dataset을 하나 생성해 줍니다. 저는 nextcloud-userdata라는 dataset을 생성했습니다.
이후 SMB Share를 설정하여 윈도우로 작업하거나 쉘로 작업을 이어가야 합니다. 크게 어려울 건 없고, 단순히 기존 폴더 속 내용물을 복사해서 이어주면 됩니다.
우선, 폴더 내용물을 변경하기 전 Nextcloud를 중지시켜주세요.
쉘로 파일 복사하기
기존 Nextcloud data폴더의 내용물을 보면 아래와 같습니다(저는 이미 변동이 있어 Snapshot을 활용했습니다).
root@fentanas[...loud-data-auto-2024-05-14_00-00-clone]# ls -lah
total 62K
drwxrwx--- 9 root root 9 Apr 23 09:13 .
drwxrwx--- 8 root root 8 May 14 22:28 ..
drwxrwx--- 2 root root 15 May 5 20:54 config
drwxrwx--- 5 root root 5 May 13 11:42 custom_apps
drwxrwx--- 7 root root 11 Apr 26 13:58 data
drwxrwx--- 14 www-data www-data 33 May 5 19:39 html
drwxrwx--- 4 root root 5 Apr 23 12:30 root
drwxrwx--- 3 root root 4 Apr 11 15:54 themes
drwxrwx--- 2 root root 2 Apr 11 15:54 tmp
data폴더를 들어가보면, 아래처럼 유저명으로 생성된 폴더들과 userdata루트임을 알려주는 .ocdata파일들을 확인할 수 있습니다.
root@fentanas[...loud-data-auto-2024-05-14_00-00-clone]# cd data
root@fentanas[...data-auto-2024-05-14_00-00-clone/data]# ls -lah
total 23M
drwxrwx--- 7 root root 11 Apr 26 13:58 .
drwxrwx--- 9 root root 9 Apr 23 09:13 ..
-rwxrwx--- 1 root root 542 May 5 20:07 .htaccess
-rwxrwx--- 1 root root 0 May 5 20:07 .ocdata
drwxrwx--- 11 root root 11 May 13 11:39 appdata_ockamf9z41fw
drwxrwx--- 2 root root 3 May 5 19:40 files_external
-rwxrwx--- 1 root root 0 May 5 20:07 index.html
-rw-r----- 1 root root 51M May 13 11:36 nextcloud.log
drwxrwx--- 6 root root 6 Apr 23 12:34 user001
drwxrwx--- 6 root root 6 Apr 12 08:23 user002
drwxrwx--- 2 root root 2 Apr 26 13:58 user003
이 파일들을 새로 만든 Nextcloud-userdata dataset으로 복사하면 됩니다.
기존 Nextcloud-data dataset의 경로가 /mnt/path/to/nextdata라면 복사할 대상 파일들은 /mnt/path/to/nextdata/data/*가 되는 겁니다.
이후, 새로 만든 dataset의 경로가 /mnt/path/to/userdata라면 아래와 같이 입력하면 됩니다.
cp -rfa /mnt/path/to/nextdata/data/* /mnt/path/to/userdata
복사대상 파일들을 하나씩 확인하려면 뒤에 –verbose를 붙이면 됩니다.
윈도우 파일 탐색기로 복사
새로 만든 userdata와 기존 Nextcloud의 data 모두 SMB Share로 설정했다면, 네트워크 공유로 쉽게 접근할 수 있습니다.
보이는 파일을 모두 복사해서 새 루트로 붙여넣어주면 됩니다.
Nextcloud 설정 변경 및 시작
Nextcloud앱 설정에서 Pre v2 Storage Structure 체크박스를 해제하고, 새로 생성한 userdata dataset을 Nextcloud User Data Storage에 매칭시켜줍니다.
이후 Nextcloud를 실행하면, 정상적으로 폴더와 데이터를 인식하게 됩니다.
관련 글
2025.01.22 - [Nextcloud] - TrueNAS에 Nextcloud 사용하기
TrueNAS에 Nextcloud 사용하기
개요TrueNAS는 오픈소스NAS OS중에서는 가장 강력하지만, 유저편의적인 부분은 많이 부족합니다. 특히, 개인 조립NAS를 헤놀로지로 입문한 경우, DSM의 높은 편의성 덕분에, TrueNAS를 다루는 것에 엄청
worklazy.net
2025.01.23 - [Nextcloud] - Nextcloud 계정 생성 시 초기 파일 수정하기
Nextcloud 계정 생성 시 초기 파일 수정하기
개요Nextcloud 구축 후 새로운 계정을 생성할 때마다 아래처럼 필요없는 파일들이 왕창 생성됩니다.해당 파일들을 제거하는 것과 Readme.md를 수정하여 신규 사용자에게 안내할 내용을 기입하는 등
worklazy.net
2025.01.22 - [Nextcloud] - Nextcloud에서 Office문서 편집하기
Nextcloud에서 Office문서 편집하기
개요제가 시놀로지를 사용하면서 편하다고 느꼈던 앱 중 가장 좋았던 건 시놀로지 오피스(Synology Office)였습니다. 시놀로지 드라이브(Synology Drive)와 하나처럼 엮여서 자료를 동기화하고, NAS에서
worklazy.net
2025.01.22 - [Nextcloud] - Redis로 Nextcloud 성능 끌어올리기
Redis로 Nextcloud 성능 끌어올리기
개요구글에서 Nextcloud를 검색해보면 나오는 많은 글들 중 하나가 Nextcloud가 원래 이렇게 느리냐? 입니다.제 사용환경에서는 그렇게까지 느리다곤 생각되진 않긴 하지만, PHP로 작동되는만큼 태생
worklazy.net
2025.01.23 - [Nextcloud] - Cloudflare Tunnel 환경에서 Nextcloud 구성 시 오류 해결하기
Cloudflare Tunnel 환경에서 Nextcloud 구성 시 오류 해결하기
개요Nextcloud 초기 설치 이후 관리자 설정으로 진입하면 해결해야 할 오류들을 친절하게(?) 띄워줍니다.일부분은 Nextcloud 자체적으로 해결할 수 있지만, 몇몇 오류는 리버스 프록시에서 해결해줘
worklazy.net