내 서버에서 내 로컬 컴퓨터로 디렉터리를 마운트하려고 합니다. 편집할 때마다 파일을 서버에 수동으로 푸시하지 않고 디렉터리를 편집하고 파일을 실행하고 싶기 때문입니다.
NFS를 사용하고 있으며 동일한 네트워크의 컴퓨터에서 설치하려고 하면 현재 "연결이 거부되었습니다"라는 메시지가 표시됩니다.
내 서버 IP는 192.168.0.12입니다.
내 로컬 컴퓨터 IP는 192.168.0.2입니다. 나는 /etc/exports
가지고있다:
/mnt/export 192.168.0.0/24(rw,async,no_subtree_check)
/mnt/export *(rw)
/mnt/export
마운트하려는 디렉토리는 어디에 있습니까? chmod 777 -r
디렉토리가 있습니다
내 로컬 컴퓨터에서 다음 명령을 실행합니다.
mount 192.168.0.12:/mnt/export /Desktop/tes
하지만 다음 오류가 발생합니다.
can't mount /mnt/export from 192.168.0.12 onto /Desktop/tes:
Connection refused
내가 어디로 잘못 가고 있는지 아는 사람이 있습니까?
답변1
클라이언트에서 이 중 일부를 테스트할 수 있습니다. rpcinfo는 rpc 호출이 서버 프로세스로 전송되고 있는지 알려주는 데 도움이 되며, 구체적으로 mountd를 확인할 수 있으며 마지막으로 showmount는 서버에 어떤 볼륨을 내보냈는지 묻습니다.
$ rpcinfo -p nfsserv103 | cut -c30- | sort -u
mountd
nfs
nlockmgr
portmapper
rquotad
status
$ rpcinfo -u nfsserv103 mountd
program 100005 version 1 ready and waiting
program 100005 version 2 ready and waiting
program 100005 version 3 ready and waiting
$ showmount -e nfsserv103
Export list for nfsserv103:
/ 10.221.253.101,10.221.252.101,10.221.253.100,10.221.252.100
/mnt_foo/bar (everyone)
(첫 번째 명령의 "cut"은 출력을 더 깔끔하게 만들기 위한 것입니다. 첫 번째 명령을 제외한 모든 항목을 제거할 수 있습니다.)
답변2
표준 Ubuntu 14.04 설치를 실행하는 컴퓨터에서 이 문제가 발생했습니다.
메시지 connection refused
는 오해의 소지가 있을 수 있습니다. 필요한 것은 패키지를 설치하는 것뿐입니다 nfs-common
.
답변3
방화벽은 클라이언트가 서버에 액세스하는 것을 방지합니다. 이 단계에서는 NFS가 올바르게 구성되었는지(아마도 그럴 것임) 여부를 알 수 있는 방법이 없습니다. 클라이언트는 NFS 서버가 존재하는지조차 볼 수 없습니다.
방화벽이 있을 가능성이 가장 높은 위치는 서버입니다. 포트 111(rpc) 및 2049(nfs)에서 들어오는 연결을 허용하는지 확인하세요. Linux 컴퓨터에서 iptables -nvL
루트로 실행하여 포트 차단 구성을 확인하세요.
방화벽이 어디에 있는지 모르는 경우 tcptraceroute 192.168.0.12 111
실행하여 찾을 수 있습니다(nfs 포트가 차단된 경우 2049). 그러나 이러한 컴퓨터가 동일한 서브넷에 있다는 점을 고려하면 직접 연결이 있을 수 있으므로 연결을 차단하는 것은 서버(또는 클라이언트일 가능성은 낮음)입니다.
아, 그러지 마세요 chmod 777
. 이것은 아무것도 해결하지 못하고 일반적으로 무언가를 깨뜨립니다. 오류가 "Permission Denied"가 아닌 경우 해결책은 chmod가 아닙니다. 오류가 "Permission Denied"인 경우 해결책은 아마도 777이 아닌 chmod일 것입니다.
답변4
**그냥 주세요 ✔️✔️✔️
Systemctl 재시작 nfs-서버
=이렇게 하면 nfs-server가 다시 시작되지만 다른 nfs는 다시 시작되지 않습니다.
✖️✖️✖️ Systemctl restart nfs 아님