리눅스 팁 & 테크

조회 수 6763 추천 수 0 댓글 2
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부

NFS (Network File System)


클라이언트에서 서버의 파일 시스템을 마운트하여 데이터를 공유할 수 있는 방식을 말하며,

유닉스 계열 서버-클라이언트 사이에 많이 사용되는 방식입니다.

※ 앞서 보았던 samba는 windows와 linux 사이의 파일 공유에 촛점을 맞춘 방식이라 본다면,

nfs는 linux to linux 방식이라고 이해하면 쉬울것 같습니다.


nfs.png




#######################################################

[NFS 서버 설정]

#######################################################


■ nfs 패키지 설치

아래 apt-get 명령으로 nfs 관련 패키지를 설치해 줍니다.

$ sudo apt-get install nfs-common nfs-kernel-server rpcbind

패키지 목록을 읽는 중입니다... 완료

의존성 트리를 만드는 중입니다       

상태 정보를 읽는 중입니다... 완료

다음 패키지를 더 설치할 것입니다:

  libgssglue1 libnfsidmap2 libtirpc1

제안하는 패키지:

  open-iscsi watchdog

다음 새 패키지를 설치할 것입니다:

  libgssglue1 libnfsidmap2 libtirpc1 nfs-common nfs-kernel-server rpcbind

0개 업그레이드, 6개 새로 설치, 0개 제거 및 303개 업그레이드 안 함.

427 k바이트 아카이브를 받아야 합니다.

이 작업 후 1,902 k바이트의 디스크 공간을 더 사용하게 됩니다.

계속 하시겠습니까? [Y/n] y

-- 이하 생략 --


■ 공유 디렉터리 생성

공유할 디렉터리를 적절한 위치에 생성하고, 접근 권한을 설정합니다.

(공유 디렉터리 명칭과 퍼미션 권한은 관리자가 알맞게 지정)

$ sudo mkdir /var/nfs_server

$ sudo chmod 777 nfs_server


■ NFS 설정

nfs 서버의 설정파일은 /etc/exports 입니다.

해당 파일을 열어 아래와 같은 형식으로 작성해 줍니다.

(해당 문서를 열어보면 주석으로 샘플 문구가 기록되어 있으므로 이를 참조하여 적절히 추가)

@ 문법 : <NFS 디렉터리> <클라이언트 IP>(옵션1,옵션2,...)


$ sudo vi /etc/exports

/var/nfs_server 192.168.0.10(rw,no_root_squash,sync,no_subtree_check)


※ 설명

  # NFS 디렉터리 : (앞서 생성한) 서버의 공유 디렉터리 지정

  # 클라이언트 IP : 접근을 허용하고자 하는 클라이언트의 IP 주소를 입력

  # ro / rw : 공유 디렉터리 읽기/쓰기 권한 지정 → 읽기 전용(read only), 읽고 쓰기(read write)

  # no_root_squash : 서버와 클라이언트의 root에 동일한 권한을 부여

  # no_all_squash : 서버와 클라이언트의 동일한 UID를 가진 사용자는 동일한 권한을 부여

  # sync / async : 서버와 클라이언트 간의 sync 여부 → 맞춤(sync), 안맞춤(async)

  # subtree_check : 하위 트리 검사 기능. 일반적으로 비활성 (no_subtree_check)


■ NFS 서비스 구동

아래 2가지 데몬 서비스를 구동합니다.

$ sudo service nfs-kernel-server restart

 * Stopping NFS kernel daemon                                 [ OK ] 

 * Unexporting directories for NFS kernel daemon...           [ OK ] 

 * Not starting NFS kernel daemon: no exports.

 * Exporting directories for NFS kernel daemon...             [ OK ] 

 * Starting NFS kernel daemon                                 [ OK ] 

$ sudo service rpcbind restart

rpcbind stop/waiting

rpcbind start/running, process 4879



#######################################################
[NFS 클라이언트 설정]
#######################################################

■ nfs 패키지 설치
apt-get 명령으로 nfs 패키지를 설치합니다. (클라이언트는 nfs-common 만 설치하면 됩니다.)
$ sudo apt-get install nfs-common

■ 공유 디렉터리 생성
nfs 서버와 연결할 클라이언트의 공유 디렉터리를 생성합니다.
$ sudo mkdir /var/nfs_client

■ nfs 서버 연결(마운트)
방금 생성한 디렉터리와 nfs 서버의 공유 디렉터리를 서로 연결(마운트) 합니다.
@ 문법 : mount -t nfs <서버 IP>:<공유디렉터리 경로> <마운트 포인트>
$ sudo mount -t nfs 192.168.0.1:/var/nfs_server /var/nfs_client

※ 설명
  # -t 옵션 : 마운트 type을 지정하는 것으로 nfs를 인자 값으로 넣습니다.
  # 서버 IP 및 경로 : nfs로 연결할 서버의 IP와 공유 디렉터리 경로를 지정합니다.

  # 마운트 포인트 : 마운트로 연결할 클라이언트의 디렉터리 경로를 지정합니다.



■ 참고
① nfs 연결 확인
간단히 df -h 명령으로 마운트 여부를 확인할 수 있습니다.
$ df -h

Filesystem                  Size  Used Avail Use% Mounted on

/dev/sda1                   9.3G  6.6G  2.3G  75% /

-- 중간 생략 --

192.168.0.1:/var/nfs_server 392G  189G  183G  51% /var/nfs_client


② nfs 언마운트

참고로 nfs 마운트 연결을 해제하고자 하는 경우에는 아래와 같이 umount 명령을 사용합니다.
$ sudo umount /var/nfs_client

③ nfs 자동마운트
부팅 시 nfs를 자동으로 마운트 하고자 한다면, /etc/fstab에 아래와 같은 형식으로 문장을 입력해 줍니다.
$ sudo vi /etc/fstab

192.168.0.1:/var/nfs_server      /var/nfs_client      nfs     default 0 0



[요약]  NFS 서버 구축

① 서버

  + 설치 :  $ sudo apt-get install nfs-common nfs-kernel-server rpcbind

  + 설정 :  $ sudo vi /etc/exports

                /var/nfs_server 192.168.0.1(rw,no_root_squash,sync,no_subtree_check)

  + 구동 :  $ sudo service nfs-kernel-server restart

                $ sudo service rpcbind restart

② 클라이언트

  + 설치 :  $ sudo apt-get install nfs-common

  + 연결 :  $ sudo mount -t nfs 192.168.0.1:/var/nfs_server /var/nfs_client


  • ?
    maumc 2016.04.30 04:13

    감사합니다. ^^

  • profile
    행복한펭귄 2016.04.30 13:07

    핵심을 잘 정리해 주셨네요. 

    많은 분들에게 도움이 되겠군요.


  1. 유튜브 프리미엄 우회 결제 - 우크라이나

    Date2023.12.17 ByKevin Views4205 Votes1
    read more
  2. 리눅스에서 자기 노트북의 모델명이 무엇인지 궁금할때는 dmidecode

    Date2023.12.17 ByKevin Views391 Votes1
    read more
  3. 하드웨어 호환성을 확인하고 싶을 때는 linux-hardware.org 를 사용해보세요

    Date2023.11.23 ByKevin Views702 Votes0
    read more
  4. 하모니카 7.0 카카오톡 hidpi 설정하기

    Date2023.11.22 ByKevin Views484 Votes0
    read more
  5. 리브레오피스에서 hwp 사용하기

    Date2023.10.11 By타조 Views1101 Votes0
    read more
  6. [질문] 한글 가상키보드는 온보드에 패치하는 것 이외에는 없나요?

    Date2016.07.28 By바람곰돌 Views7067 Votes0
    Read More
  7. 리눅스 왕초보 USB 설치 도전기 (삽질기)

    Date2015.06.18 ByStoneax Views6989 Votes0
    Read More
  8. 우분투에서 SilverLight환경이 필요하다면- PipeLight

    Date2015.02.02 By프리 Views6976 Votes0
    Read More
  9. [질문] Symantec Endpoint Protection client Linux용 설치 오류

    Date2016.03.14 By통나무 Views6976 Votes0
    Read More
  10. 이젠 스마트 가전 허브인 냉장고도 리눅스가 사용됩니다.

    Date2016.05.11 By행복한펭귄 Views6958 Votes0
    Read More
  11. [게임] 전략시뮬레이션 WarZone2100

    Date2016.03.02 By행복한펭귄 Views6900 Votes0
    Read More
  12. 김프로 스마트폰 움직이는 배경 화면으로 바꾸기

    Date2016.01.15 By행복한펭귄 Views6881 Votes0
    Read More
  13. 우분투 계열 리눅스 7가지 중요한 보안 패치 권고

    Date2017.02.05 By행복한펭귄 Views6825 Votes0
    Read More
  14. 500 순위권 수퍼컴에서 윈도서버 전멸

    Date2016.11.17 Bystring Views6781 Votes0
    Read More
  15. [게임] 고스톱 SDLHana

    Date2016.03.11 By행복한펭귄 Views6779 Votes0
    Read More
  16. [개인 서버 구축 가이드] ⑥ 파일 공유 서버 (nfs)

    Date2016.04.29 Bylegoboss Views6763 Votes0
    Read More
  17. [뉴스] 알파고 화면 우분투 리눅스로 추정

    Date2016.03.14 By행복한펭귄 Views6750 Votes0
    Read More
  18. Deepin 올려봤습니다.

    Date2016.03.09 By고스트 Views6721 Votes0
    Read More
  19. 리눅스에서 음악 작업하고 싶은 사람들에게...

    Date2016.03.25 By행복한펭귄 Views6698 Votes0
    Read More
  20. 터미널을 이용하여 clamav를 활용하기

    Date2016.05.30 Bystring Views6624 Votes0
    Read More
  21. [자격증] LPIC(Linux Professional Institute Certification, 엘픽)

    Date2016.03.21 By행복한펭귄 Views6615 Votes0
    Read More
  22. 우분투 시리즈 16.04.1 (64비트)

    Date2016.07.22 Bystring Views6597 Votes0
    Read More
  23. Mate 패널에 날씨 정보 켜두기

    Date2015.03.19 Bybagjunggyu Views6594 Votes0
    Read More
  24. [자격증] RHCE (Red Hat Certified Engineer)

    Date2016.03.21 By행복한펭귄 Views6592 Votes0
    Read More
  25. ukuu를 이용한 최신커널 설치하기

    Date2016.10.22 Bystring Views6552 Votes0
    Read More
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 47 Next
/ 47
CLOSE