리눅스 NFS 설정 (Linux NFS Setting)
설치환경 : 레드햇8 (RHEL8)
1. NFS 서버 설정 (Server Setting)
1.1. NFS 패키지 설치
yum
패키지 설치 도구로 nfs-utils
패키지 설치
yum install nfs-utils
1.2. NFS서버 서비스 실행 및 OS재부팅시 활성화
nfs서버 데몬 실행하고, OS 재부팅시 자동실행되도록 활성화
systemctl start nfs-server
systemctl enable nfs-server
1.3. 외부에서 접근할 디렉토리 설정
공유할 디렉토리 생성
mkdir /NFSVOL01
외부에서 접근할 디렉토리, 외부 접근IP, 접근권한을 exports 파일로 설정
vi /etc/exports
/NFSVOL01 192.168.0.0/255.255.255.0(rw)
/NFSVOL01 : 공유할 디렉토리
192.168.0.0/255.255.255.0 : 접속허용 IP 대역
rw : 디렉토리 권한
디렉토리 권한 옵션
- ro : 읽기 (default)
- rw : 읽기 쓰기
- root_squash : 클라이언트 root 권한 접속불가 (default), 루트권한요청(uid/gid -> 0)을 익명계정으로 맵핑
- no_root_squash : 클라이언트 root 권한 접속가능
- all_squash : 모든 접속권한(uid/gid)을 익명계정으로 맵핑 (default)
- no_all_squash : no_root_squash 옵션과 동일
- sync : 변경 사항이 커밋된 후에만 요청에 응답하여 안정적인 저장가능 (default)
- async : 요청에 의해 변경되기 전에 요청에 응답, 일반적으로 성능은 향상되지만 비용이 많이 소요.
부정한 서버 재시작(충돌 등)으로 인해 데이터가 손상 될 수 있음
1.4. exports 파일적용
exports 작성한 내용 적용
exportfs -ra
1.5. NFS 서비스 방화벽 허용
방화벽이 실행중인 경우 nfs서비스를 방화벽에 허용 정책등록
firewall-cmd --permanent --add-service=nfs
firewall-cmd --reload
firewall-cmd --list-all
–permanent : 영구등록
–add-service=nfs : 허용할 서비스
–reload : 방화벽 재시작
–list-all : 등록된 방화벽 정책목록 보기
1.6. NFS 서비스 동작확인
showmount -e
exportfs -s
showmount -e : export된 디렉토리의 목록보기
exportfs -s : 현재 NFS 설정 확인
1.7. 클라이언트 권한설정
클라이언트에서 파일업로드등 쓰기 권한이 필요한 경우 설정
chmod 777 /NFSVOL01
2. NFS 클라이언트 설정 (Clinet Setting)
2.1. NFS 패키지 설치
yum
패키지 설치 도구로 nfs-utils
패키지 설치
yum install nfs-utils
2.2. mount 서버 확인
NFS 서버 동작 확인
showmount -e 192.168.0.100
192.168.0.100 : nfs 서버 주소
2.3. mount 등록할 디렉토리 생성
NFS 클라이언트에서 서버로 마운트 등록할 디렉토리 생성
mkdir /NFSVOL01
2.4. 디렉토리 mount
생성된 디렉토리에 NFS디렉토리 마운트
mount -t nfs 192.168.0.100:/NFSVOL01 /NFSVOL01
2.5. mount 확인
df -h | grep NFSVOL01
2.6. OS 부팅시 자동 mount
mount 영구설정(/etc/fstab) 파일에 등록
vi /etc/fstab
192.168.0.100:/NFSVOL01 /NFSVOL01 nfs hard 0 0
- 192.168.0.100:/NFSVOL01 : NFS 서버주소 및 서버 디렉토리
- /NFSVOL01 : Mount Point로 클라이언트 디렉토리 지정
- nfs : 파일시스템 종류로 NFS사용시 nfs로 지정
- hard : 타임아웃이 발생되면 server not responding을 출력하고 무한정 재시도
- soft : 타임아웃이 발생되면 프로그램에게 I/O 에러 보고
- 0 : 덤프 설정(0-덤프불가 / 1-덤프가능)
- 0 : 무결성 검사설정(0-검사하지않음 / 1-우선순위1로 대부분 루트설정 / 2-우선순위2)