시놀로지 NFS 설정 (feat. AutoFS)
Synology에서 친절하게 설명해주니, 자세한 사항은 여기를 참고
NFS 기능은 다행이 보급형 버전인 J에서도 지원한다. :)
Environment
- Ubuntu 20.04 LTS
- Synology 218j (DSM 6.2.4)
Synology Part
- 제어판 → 파일 서비스 → 맨 아래 NFS 파트 NFS 활성화 체크(NFS v4.1 미체크)
- 제어판 → 공유 폴더 → (원하는 폴더) 편집 → NFS 권한에서 생성을 눌러 새로운 권한 모드를 추가
- 내부 네트워크에서만 사용하기 위해서, IP에 일반적인 공유기의 C 클래스 192.168.0.0/24 할당
- 리눅스에 별다른 설정 없이 이용하려면,
- “권한이 없는 포트로부터 연결 허용 (1024보다 높은 포트 사용 체크)”
- “사용자에게 마운팅된 하위 폴더 엑세스 허용”
Linux(Ubuntu) Part
# Install Packages
$ sudo apt update && sudo apt install nfs-common # dnf install nfs-utils on RetHat Linux
# Connect
$ sudo mount -t nfs 192.168.0.X:/volumeX/blah /target/directory
Volume 번호는 DSM의 저장소 관리자에 가서 확인하면 된다. (Volume이 하나라면, volume1)
Automount Part
NFS을 Mount하는 것은 네트워크 상황에 따라 다르다. 그래서 NFS를 /etc/fstab에 올려버리면, 부팅 시에 문제를 야기할 수 있다. (매우 오래걸리거나, Lock이 걸릴 수 있다.) AutoFS를 이용하면, 사용자가 파일시스템에 접근할 때 비로소 Automount을 해준다. 그러므로, 안전하게 NFS를 쓰자 :)
IP를 사용해도 좋지만, 그래도 Domain Name을 사용하기 위해서 /etc/hosts에 Synology IP를 등록한다.
$ sudo vim /etc/hosts
# Add below text
<synology ip> synology
그리고, AutoFS를 설치하고, 버전을 체크한다.
$ sudo apt install autofs
$ automount --version
Linux automount version 5.1.6
...
Ubuntu 20.04 에서는 버전 5가 설치된다. (버전 4와 5는 비교적 큰 차이가 있는 것 같으니 4를 사용하실 분은 kernel 문서를 참고해주세요.)
AutoFS에서는 Mount 별로 Map 파일을 구성하고, auto.master에 Map 파일을 등록한다. 두 가지 방법(Direct/Indirect)로 가능한데, 나는 하나의 Synology만 연결하면 되니 Direct를 이용 (여러 Directory를 자동으로 연결하고 싶다면, Indirect)
연결하고자하는 Synology의 Volume은 volume1, Directory는 Target이라고 하고 연결해보면
$ sudo vim /etc/auto.master
# auto.master 파일에 아래 statement 추가
/synology /etc/auto.synology
그리고, auto.synology 파일을 생성하고 내용을 추가한다.
$ sudo vim /etc/auto.synology
# Mounted Directory <Tab> Map File Path
Target -fstype=nfs synology:/volume1/Target
마지막으로, autofs를 재시학하고, mount를 확인한다.
$ systemctl restart autofs
$ systemctl status autofs
blah blah
$ mount | grep synology
/etc/auto.synology on /synology type autofs (options...)
$ ls /synology
# Not-Mounted before Access
$ cd /synology/Target
$ ls /synology
Target
(Optional) 직접 Access를 하기 전에 Directory가 보이지 않는 것이 불편하다면, browse_mode를 켜면 된다. (성능이 떨어지지만, 개인 사용자는 괜찮다. Production과 관계있다면, 조심해서 사용!)
$ sudo vim /etc/autofs.conf
# Find browse_mode (close to line 51)
browse_mode = yes