Aller au contenu principal

64. Use Remote Filesystems (NFS)


개요

NFS(Network File System) 프로토콜은 Linux 시스템이 네트워크를 통해 파일을 공유할 수 있게 합니다. 설정은 두 가지 구성요소로 이루어집니다: 디렉토리를 공유하는 NFS 서버와 원격 파일시스템을 마운트하는 NFS 클라이언트.

NFS 서버 설정

설치

서버 패키지 설치:

sudo apt install nfs-kernel-server

공유 정의

/etc/exports 파일을 편집하여 공유할 디렉토리를 지정합니다. 구문:

  1. 디렉토리 경로 (예: /nfs/disk1/backups)
  2. 허용된 클라이언트 (호스트명, FQDN, IP 주소)
  3. 필요 시 CIDR 범위 (예: 10.0.16.0/24)
  4. 괄호 안에 내보내기 옵션

설정 예시:

"/nfs/disk1/backups"  hostname1(rw,sync,no_subtree_check) hostname2(ro,sync,no_subtree_check)

주요 내보내기 옵션

옵션설명
rw읽기-쓰기 접근 허용
ro읽기 전용으로 제한
sync작업 확인 전 스토리지에 데이터 쓰기
async더 빠르지만 위험한 비동기 쓰기
no_subtree_check파일 이동/이름 변경 문제 방지
no_root_squash클라이언트 root 권한 유지 (보안 고려 필요)

변경 후 설정 갱신:

sudo exportfs -r
sudo exportfs -v # 현재 내보내기 확인

NFS 클라이언트 설정

설치

클라이언트 유틸리티 설치:

sudo apt install nfs-common

공유 마운트

원격 디렉토리 마운트:

sudo mount 127.0.0.1:/etc /mnt
sudo umount /mnt # 언마운트

영구 마운트

부팅 시 자동 마운트를 위해 /etc/fstab에 항목 추가:

127.0.0.1:/etc  /mnt  nfs  defaults  0  0

필드: 소스, 마운트 포인트, 파일시스템 타입, 옵션, dump 플래그, pass 번호.

주요 고려사항

서버와 클라이언트 시스템 간 NFS 트래픽을 허용하는 방화벽 규칙이 설정되어 있는지 확인하세요.