NFS

NFS

Install

sudo dnf update -y sudo dnf install nfs-utils -y ### 서버 공통 설정 # 기동 및 시작 프로그램 등록 systemctl enable nfs-server systemctl start nfs-server # 디렉토리 생성 mkdir -p /var/shared_home # 디렉토리 공유 설정 vi /etc/exports # rw: 읽고 쓰기 가능, no_root_squash: 클라이언트가 root 권한 획득 # 10.220.0.0/24로 전체 서브넷 허용 /var/shared_home 10.220.0.0/24(rw,no_root_squash) # 반영 exportfs -r # 확인 showmount -e Export list for node1: /var/shared_home 10.220.0.0/24 Export list for node2: /var/shared_home 10.220.0.0/24 # 서버에 마운트 (클라이언트 서버에서 실행) # node2번을 클라이언트로 설정 # node2 sudo mount -t nfs -o vers=4 10.220.0.60:/var/shared_home /var/shared_home # fstab에 등록(재시작 시 마운트 풀려버리는 것 방지) # 각 서버에서 모두 진행 vi /etc/fstab # default 기본 마운트 옵션 # _netdev 네트워크 디바이스가 올라온 후에 마운트 # vers=4 NFSv4 사용 # 0 0 첫번째 0, dump 사용 안 함, 두번째 0 fsck 점검 안 함 # 네트워크 마운트는 fsck를 할 수 없어서 0 0으로 고정됨 10.220.0.60:/var/shared_home /var/shared_home nfs defaults,_netdev,vers=4 0 0

 

트러블슈팅? NFS 개념 굳히기

(GPT의 도움을 받아서 정리했습니다)

📍 발생한 문제 및 증상

두 서버 모두 /var/shared_home 디렉토리를 만들고, NFS로 서로 마운트 시도

  1. /etc/exports에는 다음과 같이 설정함 (와일드 카드를 사용해 모든 접속 허용 시도):

/var/shared_home *(rw,no_all_squash)

한쪽 서버는 정상적으로 마운트되나, 다른 한쪽은 아래 오류 발생:

mount.nfs: access denied by server while mounting 10.220.0.6x:/var/shared_home
  1. exportfs -v 결과에서는 root_squash가 적용되어 있었고

마운트한 디렉토리 권한은 nfsnobody였음 (root 권한이었다가 nfsnobody 사용자를 추가해 소유권자를 변경하였던 상태)

이후 61번 서버에서 마운트를 해제한 뒤,
60번 서버에서 다시 61번을 마운트하려 하자 다음 오류 발생:

mount.nfs: mounting 10.220.0.61:/var/shared_home failed, reason given by server: No such file or directory
  1. 에러 수정 후 /etc/fstab에서 마운트를 추가. /etc/exports에서 와일드 카드 대신 서브넷 대역폭으로 설정.

/var/shared_home 10.220.0.0/24(rw,no_all_squash)

/etc/fstab에서 다음과 같이 설정

10.220.0.0/24:/var/shared_home /var/shared_home nfs defaults,_netdev,vers=4 0 0

확인을 위해 sudo mount -a을 했을 때 다음과 같은 에러 발생

mount.nfs: access denied by server while mounting 10.220.0.61:/var/shared_home

🔍 주요 원인 분석

문제

원인

문제

원인

마운트 접근 거부 (access denied)

NFS의 개념을 혼동해서 생긴 문제. NFS를 양방향 통신으로 생각하고 있었고, Server-Client 구조로, 한쪽에서 마운트하면 다른 쪽에서 마운트가 되지 않음. NFS는 단방향 파일 공유용 시스템. 디렉토리 충돌, 의존성 순환, mount 실패 유발로 인해 서로 mount하면 안 됨

마운트 실패 (No such file or directory)

export한 디렉토리(서버)가 실제로는 다른 서버(클라이언트)에서 이미 마운트된 상태였기 때문에 export 실패

/etc/fstab에서 서브넷 주소를 사용

에러를 수정하고 /etc/fstab에는 반드시 정확한 서버 IP나 hostname만 지정 가능. 서브넷 대역은 사용할 수 없음.

✅ 해결 방법 정리:

  1. 클라이언트 서버에서만 마운트를 함

  2. /etc/fstab 에서 서브넷 대역폭을 삭제하고 서버 역할을 IP만 넣어서 수정

🧾 최종 정리:

  • NFS는 클라이언트-서버 모델이며, 반드시 한 방향으로만 mount해야 함

  • Confluence 클러스터는 모든 노드가 하나의 shared-home 디렉토리를 사용해야 하며, 해당 디렉토리는 단일 서버에서 export되어야 함

  • mount 실패 원인의 대부분은 exports 설정 미흡, IP 오인식, fstab 오기재, 순환 마운트 시도에 있음

Looking for labels? They can now be found in the details panel on the floating action bar.

Related content