Networking, Security, Protocols

NFS(Network File System) / auto fs(auto file system)

Somaz 2022. 1. 18. 16:28
728x90
반응형

NFS (Network File System)

1. 개념

 

- 네트워크를 통해 다른 장치의 파티션을 나에게 마운트하는 서비스 (공유)

- Unix가 주력 서비스로 사용하다 유용력이 너무 높아서 다른 OS들도 사용하게 됨


2. 환경설정

 

패키지 : nfs-* (CentOS 7 부터 단일 패키지 사용) (실습에선 이미 설치되어 있다)

데몬 : nfs

방화벽 : service=nfs

설정파일: /etc/exports  (비어있음)

 

방화벽을 설정하고 진행한다. (방화벽을 설정할 줄 모른다면 방화벽 설정 글을 보고 오기 바란다.)

 

 

3. 실습

 

1) 먼저 하드 추가 후 할당한다. 그리고 nfs_server 디렉터리를 만들어 /dev/sdb1와 마운트 후 오토 마운트 설정을 한다.

 

디스크 확인
파티션 할당(귀찮으니 그냥 전부 잡는다)

 

파티션 확인
포맷
nfs_server 디렉터리 생성
mount 진행
mount 확인
오토 마운트 설정 후 재부팅을 진행
오토마운트 확인!!

2) NFS Server 설정(IP : 172.17.5.10)

 

 

 

- /etc/exports 파일 형식 <directory> <Client IP>(options)

- /etc/exports 파일 형식

 

    <directory> <IP>(options)

 

directory : 서버가 공유해주는 디렉토리를 절대경로로 작성

  nfs는 디렉토리 단위로 용량을 공유하기 때문에 공유해 줄 디렉토리에 파티션을 오토 마운트해서 사용

  

IP : 클라이언트의 IP를 작성

  (Network ID 작성도 가능)

 

options : nfs에 적용할 옵션 작성 (IP와 options 사이에 공백 X)

 

ex) /nfs_server 172.17.5.30(rw,no_root_squash,sync)

 

ro : read only

rw : read write

 

root_squash : 클라이언트가 연결할 때 루트권한을 가지고 연결 시 루트로 안 받아준다 (기본값, 알수없는 사용자로 들어옴)

no_root_squash : 루트권한 받아줌

 

all_squash : 루트를 제외한 일반 사용자들이 연결 시 일반 사용자 권한으로 안 받아준다 (기본값)

no_all_squash : 사용자 권한 받아줌

 

sync : 동기화 작업

 

데몬 재실행 후 nfs_server 디렉터리로 들어간다.
test 파일을 생성하고 vi 에디터로 test 파일에 들어가서 아무 말이나 입력한다.
나는 Linux!!!를 입력하겠다.

 

3) NFS Client 설정(IP : 172.17.5.30)

 

새로운 리눅스를 열고 NFS Client 설정을 진행한다.

nfs_client 디렉터리를 생성한다.
마운트 확인!

 

# exportfs -v -- 동작 중인 nfs 정보 확인

 

# mount -t nfs <서버IP:공유할 디렉토리> <공유해 줄 디렉토리> <- 클라이언트의 디렉터리도 만들어야 한다

 

마운트 할 장치   마운트 할 디렉토리

nfs_client 디렉터리에 들어가서 파일 전송 확인!

 

4) 주의할 점

 

파티션 하나를 서버 디렉토리에 오토마운트 진행 후 NFS 설정을 해야한다.

 

auto fs 설정을 하지 않으면 시스템이 재부팅 되었을 때 다시 마운트를 해줘야 한다.

 

오토마운트와 nfs 데몬 enabled를 해야 재부팅해야 연결된다.

 

 

auto fs (auto file system)

1. 개념

 

- 자동으로 file system(파티션)을 사용할 수 있도록 해주는 서비스 (fstab이 동작한 후 autofs가 동작한다)

- Client 에서 진행한다.

 

2. 환경설정

 

패키지 : autofs-*

데몬 : autofs

방화벽 : X

설정파일 : /etc/autofs.conf

패키지 설치

3. 설정 파일 설정

 

/etc/autofs 설정파일

- /etc/autofs.conf 설정파일

 

master_map_name : autofs.conf 파일을 읽으면서 auto.master 파일도 같이 본다 (기본 맵핑 파일)

browse_mode : yes로 잡아야 정상적인 접근이 가능하다

 

 

- /etc/auto.master 설정파일

 

/misc /etc/auto.misc : 해당 설정으로 autofs데몬이 동작하면서 오토 마운트되는 마운트 포인트가 /misc안에 만들어진다 

 

vi 에디터 실행
/etc/auto.misc

 

 

- /etc/auto.misc (여기서 설정 후 misc 파일로 넘어가서 적용된다)



마운트포인트    -옵션     상대방 주소:디렉토리명 or :장치명

 

ex) nfs_auto -rw,hard,intr 172.17.5.10:/nfs_server



ro : read only

rw : read write

 

soft : ro에서 soft 사용 (서버와 연결 안될 시 오류띄우고 오토마운트 작업종료)

hard : rw에서 hard 사용 (서버와 연결 안될 시 timeout 시간만큼 연결 시도)

 

intr : 연결된 이후 비정상적인 종료가 발생해도 autofs 연결을 유지시킨다

 

autofs 데몬 재실행으로 실행시키고 ls -l /misc 로 내부 확인 가능 (browse mode를 yes로 활성화했기 때문에)

 

데몬 재실행
nfs_auto 디렉터리 생성!

3. 주의할 점

 

최초 데이터 전송을 해야 df -h에 마운트가 나온다!!!

 

1) NFS Client(172.17.5.30)

 

파일을 복사 해준다.
nfs 성공!!

2) NFS Server(172.17.5.10)

성공!!

 

마지막으로 Server의 nfs 데몬과 Client의 autofs 데몬을 enable 해주고 재부팅해본다.

 

nfs_Server
nfs_auto

 

성공!! 재부팅 후에도 작동이 잘된다.

 

728x90
반응형

'Networking, Security, Protocols' 카테고리의 다른 글

RSA 공개키를 이용한 SSH 접속  (0) 2022.01.20
DNS(Domain Name System)  (0) 2022.01.19
FTP란? FTP Server란?  (0) 2022.01.18
SCP(Secure Copy)  (0) 2022.01.17
SSH(Secure Shell)  (0) 2022.01.17