Linux,Unix,BSD

NFS 로 서버의 공유폴더 접속 불가 문제

채윤아빠 2019. 6. 3. 10:58
728x90
반응형



문제점 및 증상

기존에 잘 동작하던 NFS가 갑자기 다음과 같은 오류가 발생하며 연결이 되지 않았습니다.
("172.16.112.70" 에서 "172.16.112.72" 서버의 "/home/nfs3" 폴더를 연결하는 경우입니다.)

mount.nfs: access denied by server while mounting 172.16.112.72:/home/nfs3



원인분석 및 해결방안

"172.16.112.72" 서버에서 다음과 같이 nfs 관련 서비스를 모두 재시작하여 보았으나 동일한 오류가 계속 나오면서 연결이 안되었습니다.

$ systemctl restart rpcbind \
    && systemctl restart nfs-server \
    && systemctl restart nfs-lock \
    && systemctl restart nfs-idmap

혹시 몰라서 "172.16.112.70" 서버에서도 위 서비스들을 모두 재시작하였으나 연결오류 문제는 해결되지 않았습니다.

"172.16.112.72" 서버의 "/var/log/messages" 파일을 확인하였더니, 다음과 같은 로그가 기록되어 있었습니다.

Jun  3 10:36:46 webbuilderIMAGE rpc.mountd[9459]: refused mount request from 172.16.112.70 for /home/nfs3 (/home/nfs3): unmatched host

그런데, "etc/exports" 파일은 다음과 같이 작성되어 있어서 전혀 문제가 없어야 정상인데 원인을 알 수 없었습니다.

/home/nfs3     172.16.112.*(rw,sync,no_root_squash,no_all_squash)

"172.16.112.72" 서버에서 마지막에 했던 작업이 "/etc/hosts" 파일에 "172.16.112.70" 서버에 대한 DNS 이름을 입력한 것이었습니다. 그래서 혹시나 하고, 다음과 같이 "/etc/exports" 파일에 도메인 이름으로 된 설정을 추가한 이후에, "exportfs -a"를 수행하였더니, nfs3 폴더를 마운트하는 것이 성공하였습니다.

/home/nfs3     172.16.112.*(rw,sync,no_root_squash,no_all_squash)
/home/nfs3     api.hanwh.com(rw,sync,no_root_squash,no_all_squash)

nfs가 도메인 이름과도 연관이 있으므로, hosts 파일을 수정하면 연관된 클라이언트들에서도 접속에 문제가 발생할 수 있으니, 주의가 필요합니다.