-
NFS
네트워크 파일 시스템
리눅스와 리눅스간의 통신( 공유폴더 )
데몬
nfs
rpcbind
Server ( linux - /nfs )
#설치 > nfs-utils.x86_64
#>yum install -y nfs-utils.x86_64
#설정
#>vi /etc/export
초기설정은 빈 파일이며, 디렉터리와 목록사이는 [tab]으로 구분
<공유할 디렉터리> <사용자 목록>(<권한,권한2>)
#사용자 목록 (access allow host)
IP/netmask or IP/prefix
ex) 100.100.100.0/24
100.100.100.0/255.255.255.0
#권한
ro : 읽기전용 ( read only )
rw : 읽기쓰기 ( read write )
sync : 동기화 ( 바뀌자마자 바로 보여줌 )
no_root_squash : root ( 서버측 root로 인증되어 들어간다. )
root_squash : 기본값, nfsnobody ( 즉 guest의 사용자 )
/etc/exports
/nfs *(ro,sync)
:wq
#실행#>systemctl restart nfs
#>systemctl restart rpcbind
#>exportfs
#>ip addr
넷파일시스템과 rpcbind는 묶음이므로 2개의 데몬을 재시작해준다.
exportfs 명령어는 공유대상의 대한 정보를 보여준다.
와일드 카드를 사용했으므로 <world>라고 표시된다.
리눅스 서버 ip를 확인한다.
Client ( linux - /nfs_client )
#nfs 서버의 공유 디렉터리 확인#>yum install -y nfs-utils.x86_64#>showmount -e <server_ip>
#>showmount -e 100.100.100.128
*Error
RPC : Program not registered > nfs, rpcbind daemon
( 서버 측 문제이므로 데몬 2개의 restart 하고 상태를 확인합니다.
잘 동작한다면 시간의 여유를 두고 다시 시도합니다.)
*else서버의 공유폴더가 확인됬으면 접근을 하기위한 설정을 합니다.
항상 리눅스는 서버의 폴더를 접근할 때 mount를 사용합니다
#>mkdir /nfs_client#>mount -t nfs <server_nfs_path> <mount_point>
#>mount -t nfs 100.100.100.128:/nfs /nfs_client
#>df -h
마운트할 디렉터리를 생성
서버디렉터리 마운트
마운트 확인
연결이 확인되었으면 관리를 잘해주셔야 합니다.
항상 서버를 종료시키전에 모든 클라이언트를 종료시켜주셔야 데이터를 안전하게 보관할 수 있습니다.
지금은 read-only 상태니깐 파일을 생성, 삭제가 불가능합니다.
따라서 서버에서 만들어주고 다시 확인해주셔야 합니다.
서버 >
클라이언트 >
서버의 속성을 바꾸려면 클라이언트를 모두 해제해줘야 합니다.(umount)
순서
1 클라이언트 마운트 해제
cli#>umount /nfs_client
2 서버 측 /etc/exports 수정 (rw,sync)
ser#>vi /etc/exports
/nfs *(rw,sync)
3 nfs 데몬 서비스 재시작
ser#>systemctl restart nfs
4 /nfs 디렉터리 권한 수정 (o+w / 777)
ser#>chmod o+w /nfs
5 클라이언트 마운트
cli#>mount -t nfs 100.100.100.128:/nfs /nfs_client
6 파일 생성
cli#>cd /nfs_client
cli#>touch file2.txt
게스트 사용자가 아닌 서버측 root ( 관리자 )의 사용권한으로 만들고 싶다면
위와 같은 순서로 /etc/exports파일을 수정하는데 이때 권한에 no_root_squash만 추가한다 ex) *(rw,no_root_squash)
#마운트 용량
cli#>df -h이렇게 마운트가 되면 서버에서 /nfs 공유디렉터리를 제공했기때문에 /dev/sda2인 장치파일이 제공되었다.
이 의미는 서버의 전체디스크를 제공한 것과 동일하므로 제공할 때는 장치를 하나 만들어서 용량설정을 한 후 제공해주어야 한다.
'서버 > 리눅스' 카테고리의 다른 글
[리눅스] 오토마운트 (0) 2017.04.20 [리눅스] ACL(Access Control List ) (0) 2017.04.19 [리눅스] SAMBA / wins-lux 공유 폴더 연결 / 에러발생 (0) 2017.04.14 [리눅스] 기본적인 서버 구성 (0) 2017.04.14 [리눅스] LVM stripe, mirror (0) 2017.04.13