각각의 웹서버에 같은 서비스를 운영하고 있습니다.
!번 서버에선 NFS서버가 구동되고 2번 서버에서 1번서버를 마운트 하여 이미지파일을 업로드 합니다.
그럼 1번 서버에서 해당 이미지파일을 받아 원본파일과 썸네일을 생성하여 저장하는데
썸네일은 정상적으로 생산되고 있으나 원본파일이 NFS서버와 클라이언트간 상이합니다.
NFS 서버
rwxrwxrwx 0 apache apache 188902 2019-11-14 21:42 15039871
exoirtfs 내용 (rw,sync,no_wdelay,anonuid=48,anongid=48)
NFS 클라이언트
-rw-r--r-- 1 apache apache 210818 Nov 15 16:17 1503987
마운트 옵션
nfs (rw,sync,lookupcache=none,vers=4,proto=tcp,noac,acdirmin=10,acdirmax=60
각각의 파일을 강제로 퍼미션을 777로 설정해서 클라이언트에서 파일을 업로드 했습니다만
클라이언트만 수정되고 NFS서버엔 변동사항이 없습니다.
참고로 NFS서버를 재부팅 하면 일시적으로 동기화가 되는거 같은데 시간이 지나면 같은 증상이 발생됩니다.
혹시 원인이나 해결방법을 아시는분 계실까요?
3개의 답변이 있습니다.
권한 문제인듯 합니다.
root / apache
test : root로 디렉토리 만든 후 파일 저장 동일하게 서버1과 서버2에서 test
그리고 /etc/fstab 관련내용 저장 후 reload ,
만약 위 내용이 안될시
서버 1번 /etc/fstab
0.0.0.0:/data/image /data/image nfs defaults,soft,bg,nosuid,_netdev,rsize=8192,wsize=8192,timeo=100 0 0
서버 2번에 exports
/data/image/ 0.0.0.0(rw,sync,no_root_squash,no_subtree_check)
이렇게 test 해보세요
namsa87 | 4년 이상 전
cdn쓰시면 해결되죠.전 당연한것같아보이네요
NFS를 export 시켜줄 때 옵션으로 no_root_squash 를 설정해 줘야 NFS 클라이언트에서 마운트 시킬때 제대로된 권한을 가지고 NFS 서버쪽 공유 디렉터리에 접근해서 사용할 수 있을 겁니다.
리눅스 버전에 따라 ( NFS 서비스 버전에 따라이겠죠..?) 설정해줘야 하는 옵션이 조금씩 차이가 있고요.
우분투 쪽 계열에서 export 해 줄때 주로 사용하는 옵션은 rw,no_root_squash,no_subtree_check 정도를 주고 있고...
Solaris, CentOS, ubuntu 등 다양한 OS를 NFS 서버로 사용해 보았는데...
rw옵션과 no_root_squash 옵션 둘 모두를 항상 포함시켜서 export 시켜줘야 클라이언트에서 접근해서 사용하는데 큰 무리가 없었던걸로 기억되네요.
namsa87 | 4년 이상 전