웹사이트 검색

Ubuntu 12.04에서 NFS 마운트를 설정하는 방법


상태: 더 이상 사용되지 않음

이 문서에서는 더 이상 지원되지 않는 Ubuntu 버전에 대해 설명합니다. 현재 Ubuntu 12.04를 실행하는 서버를 운영 중인 경우 지원되는 Ubuntu 버전으로 업그레이드하거나 마이그레이션하는 것이 좋습니다.

  • Ubuntu 14.04로 업그레이드합니다.
  • Ubuntu 14.04에서 Ubuntu 16.04로 업그레이드
  • 서버 데이터를 지원되는 버전으로 마이그레이션

이유:

대신 참조:

NFS(네트워크 파일 시스템) 마운트 정보

NFS 마운트는 여러 가상 서버 간에 디렉토리를 공유하기 위해 작동합니다. 이것은 홈 디렉토리가 하나의 가상 사설 서버에만 유지되고 다른 사람들이 네트워크를 통해 연결할 수 있기 때문에 디스크 공간을 절약하는 이점이 있습니다. 마운트를 설정할 때 NFS는 항상 액세스할 수 있어야 하는 영구 고정물에 가장 효과적입니다.

설정

NFS 마운트는 두 개 이상의 가상 서버 사이에 설정됩니다. 공유 네트워크를 호스팅하는 시스템을 서버라고 하고 여기에 연결하는 시스템을 '클라이언트'라고 합니다.

이 자습서에는 2개의 서버가 필요합니다. 하나는 서버 역할을 하고 다른 하나는 클라이언트 역할을 합니다. 먼저 서버 시스템을 설정한 다음 클라이언트를 설정합니다. 다음 IP 주소는 각각을 참조합니다.

마스터: 12.34.56.789

클라이언트: 12.33.44.555

시스템은 루트로 설정되어야 합니다. 다음을 입력하여 루트 사용자에 액세스할 수 있습니다.

sudo su-

NFS 서버 설정

1단계 - 필수 소프트웨어 다운로드

nfs 프로그램을 설치하려면 apt-get을 사용하여 시작하십시오.

apt-get install nfs-kernel-server portmap

2단계 - 공유 디렉터리 내보내기

다음 단계는 클라이언트 서버와 공유할 디렉토리를 결정하는 것입니다. 그런 다음 선택한 디렉토리를 /etc/exports 파일에 추가해야 합니다. 이 파일은 공유할 디렉토리와 공유 방법에 대한 세부 정보를 모두 지정합니다.

/home과 /var/nfs라는 두 개의 디렉토리를 공유하고 싶다고 가정해 봅시다.

/var/nfs/가 존재하지 않기 때문에 내보내기 전에 두 가지 작업을 수행해야 합니다.

먼저 디렉토리 자체를 만들어야 합니다.

mkdir /var/nfs/

둘째, 디렉토리의 소유권을 사용자(nobody)와 그룹(no group)으로 변경해야 합니다. 이는 클라이언트가 NFS를 통해 공유되는 디렉토리에 액세스할 수 있는 기본 사용자를 나타냅니다.

계속해서 디렉토리를 선택하십시오.

chown nobody:nogroup /var/nfs

이러한 단계를 완료한 후 디렉터리를 다른 VPS로 내보낼 차례입니다.

nano /etc/exports

파일 맨 아래에 다음 행을 추가하여 두 디렉토리를 클라이언트와 공유합니다.

/home           12.33.44.555(rw,sync,no_root_squash,no_subtree_check)
/var/nfs        12.33.44.555(rw,sync,no_subtree_check)

이러한 설정은 여러 작업을 수행합니다.

  • rw: 이 옵션을 사용하면 클라이언트 서버가 공유 디렉토리 내에서 읽고 쓸 수 있습니다.
  • 동기화: 동기화는 변경 사항이 커밋된 후에만 공유 디렉토리에 대한 요청을 확인합니다.
  • no_subtree_check: 이 옵션은 하위 트리 검사를 방지합니다. 공유 디렉토리가 더 큰 파일 시스템의 하위 디렉토리인 경우 nfs는 권한과 세부 정보를 확인하기 위해 그 위에 있는 모든 디렉토리를 검색합니다. 하위 트리 확인을 비활성화하면 NFS의 안정성이 향상될 수 있지만 보안이 저하될 수 있습니다.
  • no_root_squash: 이 구문은 루트가 지정된 디렉토리에 연결할 수 있도록 합니다.

각 디렉토리에 대한 설정을 입력했으면 다음 명령을 실행하여 내보냅니다.

exportfs -a

NFS 클라이언트 설정

1단계 - 필수 소프트웨어 다운로드

nfs 프로그램을 설치하려면 apt-get을 사용하여 시작하십시오.

apt-get install nfs-common portmap

2단계 - 디렉토리 마운트

프로그램이 클라이언트 서버에 다운로드되면 NFS 공유 파일을 포함할 디렉토리를 생성합니다.

mkdir -p /mnt/nfs/home
mkdir -p /mnt/nfs/var/nfs

그런 다음 계속해서 마운트하십시오.

mount 12.34.56.789:/home /mnt/nfs/home
mount 12.34.56.789:/var/nfs /mnt/nfs/var/nfs

df -h 명령을 사용하여 디렉토리가 마운트되었는지 확인할 수 있습니다. 목록에서 마지막으로 볼 수 있습니다.

df -h
Filesystem             Size  Used Avail Use% Mounted on
/dev/sda                20G  948M   19G   5% /
udev                   119M  4.0K  119M   1% /dev
tmpfs                   49M  208K   49M   1% /run
none                   5.0M     0  5.0M   0% /run/lock
none                   122M     0  122M   0% /run/shm
12.34.56.789:/home      20G  948M   19G   5% /mnt/nfs/home
12.34.56.789:/var/nfs   20G  948M   19G   5% /mnt/nfs/var/nfs

또한 마운트된 파일 시스템의 전체 목록을 보려면 mount 명령을 사용하십시오.

mount

목록은 다음과 같아야 합니다.

/dev/sda on / type ext4 (rw,errors=remount-ro,barrier=0) [DOROOT]
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
none on /sys/fs/fuse/connections type fusectl (rw)
none on /sys/kernel/debug type debugfs (rw)
none on /sys/kernel/security type securityfs (rw)
udev on /dev type devtmpfs (rw,mode=0755)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755)
none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880)
none on /run/shm type tmpfs (rw,nosuid,nodev)
rpc_pipefs on /run/rpc_pipefs type rpc_pipefs (rw)
12.34.56.789:/home on /mnt/nfs/home type nfs (rw,vers=4,addr= 12.34.56.789,clientaddr=12.33.44.555)
12.34.56.789:/var/nfs on /mnt/nfs/var/nfs type nfs (rw,vers=4,addr=12.34.56.78,clientaddr=12.33.44.555)

NFS 마운트 테스트

NFS 디렉토리를 성공적으로 마운트했으면 클라이언트에서 파일을 생성하고 서버에서 가용성을 확인하여 작동하는지 테스트할 수 있습니다.

각 디렉터리에 파일을 만들어 사용해 보세요.

touch /mnt/nfs/home/example /mnt/nfs/var/nfs/example

그러면 서버의 /home 및 /var/nfs 디렉토리에서 파일을 찾을 수 있습니다.

ls /home
ls /var/nfs/

클라이언트의 fstab 파일에 디렉토리를 추가하여 마운트가 항상 활성 상태인지 확인할 수 있습니다. 이렇게 하면 서버가 재부팅된 후 마운트가 시작됩니다.

nano /etc/fstab
12.34.56.789:/home  /mnt/nfs/home   nfs      auto,noatime,nolock,bg,nfsvers=3,intr,tcp,actimeo=1800 0 0
12.34.56.789:/var/nfs  /mnt/nfs/var/nfs   nfs     auto,noatime,nolock,bg,nfsvers=3,intr,tcp,actimeo=1800 0 0

다음을 입력하여 fstab 옵션에 대해 자세히 알아볼 수 있습니다.

man nfs

이후 다시 시작에는 NFS 마운트가 포함되지만 재부팅 후 마운트를 로드하는 데 1분이 소요될 수 있습니다.

이전 두 명령을 사용하여 마운트된 디렉토리를 확인할 수 있습니다.

df -h
mount

NFS 마운트 제거

디렉토리를 제거하기로 결정한 경우 umount 명령을 사용하여 마운트 해제할 수 있습니다.

cd
sudo umount /directory name

파일 시스템을 다시 살펴보면 마운트가 제거되었음을 알 수 있습니다.

df -h

선택한 마운트된 디렉토리가 사라진 것을 발견해야 합니다.