https://forcecore.tistory.com/1421 와 관련이 깊은 내용이다. 저 글에서처럼 .mount, .automount 파일을 생성하고 해당 유닛을 enable/disable/start 하는게 은근 귀찮은 일이다.
/etc/fstab 을 연다.
//neddy/cache /cifs/cache-neddy cifs noauto,ro,x-systemd.automount,x-systemd.idle-timeout=60,_netdev,x-systemd.mount-timeout=30,x-systemd.requires=network-online.target,x-systemd.after=network-online.target,nofail,soft,echo_interval=30,credentials=/etc/.neddy,uid=1000,gid=1000,dir_mode=0755,file_mode=0755,iocharset=utf8 0 0
(저런 타임아웃 등의 옵션을 넣어야 더 안정적이 됨)
이 한 줄을 넣는다. 그러면 거의 끝이다. 일부러 예제에 cach-neddy 처럼 특수문자를 가지는 폴더를 들어봤다. 이렇게 되면 .mount, .automount 파일명 짓기가 더 골치아파진다 ㅋㅋ. -는 automount가 / 로 변경해서 경로로 알아먹기 때문에 \x2d 로 escape된 이름으로 변경되어야 하기 때문이다. 그래서 /etc/fstab 방법이 더 편하고 좋다고 생각된다.
noauto: 부팅시 마운트 하지 않게 만든다. 네트웍 연결도 없는데 연결하는게 말이 안 됨.
x-systemd.automount: 오토마운트 데몬이 인식을 해서 필요한 .mount, .automount를 생성하고 가동하라는 뜻.
적용 하려면...
sudo systemctl daemon-reload
sudo systemctl restart remote-fs.target # 이 유닛명이 배포판마다 다를 수 있음.
systemctl list-units --type=automount 로 fstab에 등록한 것이 오톼운트화 되어 ACTIVE상태로 보이는가 체크.
/run/systemd/generator 폴더에도 .mount, .automount 파일이 보여야함.
ls /cifs/cache-neddy 같이 ls 명령어로 공유폴더 내용물이 보이나 체크.
No such device 같은 에러가 나오면 로그를 봐야한다.
journalctl -b -u 'cifs-cache\x2dneddy.mount' -u 'cifs-cache\x2dneddy.automount' # 특수문자가 끼어있어서 '로 둘러싸야지 먹힘.
mount[406895]: mount error(22): Invalid argument
이런 에러가 나온다면 /etc/fstab에서 틀린 옵션을 넣은 것이다. 예를 들면 deadtime 같이 더이상 유효하지 않은 cifs 마운트 옵션이라든지...