CentOS 7 NFS 서버 구축
2016.11.29 11:26
NFS 서버는 컴퓨터 끼리 저장 공간을 공유할수 있도록 해주는 시스템을 말하며, 주로 Linux(Unix) 사이에 네트워크 공유할때 사용하며
일부 윈도우 (엔터프라이즈, 엘티메이트)버전도 가능 합니다.
윈도우서 서버가 될수도 있지만 여기서는 서버는 CentOS 만 사용하고 클라이언트는 CentOS 와 윈도우 7 로 사용하는 강좌를 진행합니다.
① NFS 서버
☞ NFS 서버 설치
# yum -y install nfs-utils
* 설정 파일 수정
# nano /etc/exports
/var/nfs_share 192.168.0.*(rw,sync)
/var/nfs_share 라는 폴더를 192.168.0.0/24 네트워크 대역에서 접근을 승인 하며,
rw 는 읽기 쓰기 권한이 주어지고 , sync는 동기화까지 지원한다는 의미
저장후
* 공유 폴더 생성 및 권한 설정
☞ 공유 폴더 생성
# mkdir /var/nfs_share
☞ 폴더 권한 설정 ( 707 : 사용자와 다른 사용자 모두 읽기 쓰기 허용 )
# chmod 707 /var/nfs_share
☞ NFS 관련 서비스 시작
☞ NFS 관련 서비스 시작
# systemctl start rpcbind
# systemctl start nfs-server
# systemctl start rpc-statd
# systemctl start nfs-idmapd
만약 NFS 서버를 상시 가동한다면
위 4개 서버별로 # systemctl enable "서버 데몬 이름" 설정하면 됩니다.
☞ NFS 서버에서 공개된 폴더 정보 확인
# exportfs -v
/var/nfs_share 192.168.0.*(rw,wdelay,root_squash,no_subtree_check,sec=sys,rw,secure,root_squash,no_all_squash)
나중에 공유 폴더를 변경 하려면 /etc/exports 파일의 설정만 수정 후에 # exportfs -r 실행 해주면되며,
추가로 NFS 관련 서비스를 재실행 할 필요는 없습니다.
☞ 서비스가 사용중인 포트 상태 확인
여러 포트가 사용중에 있습니다.
여기서 서비스를 중지하고 다시 실행하면 포트가 바뀌는 서비스가 있습니다.
그래서 시스템에서 방화벽을 사용 여부에 따라서 서버 NFS 설정 방법이 다릅니다.
시스템에서 방화벽을 사용해여 된다면 포트를 고정해야 되며,
만약 방화벽을 사용한한다면 방화벽 서비스를 끄고 iptables 로 정책을 모두 삭제하면 됩니다.
▶ 방화벽을 사용안하는 경우
☞ 방화벽 서비스 중단하기
# systemctl stop firewalld
☞ 방화벽 포트 정책 삭제
# iptables -F
방화벽을 사용안하는 경우 이렇게 서버 설정이 완료 됩니다.
▶ 방화벽을 사용하는 경우
☞ 포트를 고정 합니다.
설정 파일을 열어서 제일 하단에 아래 내용을 추가 합니다.
# nano /etc/sysconfig/nfs
-------------------------------
LOCKD_TCPPORT=32803
LOCKD_UDPPORT=32769
MOUNTD_PORT=892
RQUOTAD_PORT=875
STATD_PORT=662
STATD_OUTGOING_PORT=2020
-------------------------------
위 항목들 파일 어딘가 주석 처리되서 항목이 있기는 합니다.
하나하나 찾아서 수정을 해도 되지만, 정확하고 쉽게 수정 하기 위해서 제일 하단에 위 내용을 복사해서 추가 합니다
Ctrl + W → Y → 저장이 됩니다.
☞ 방화벽을 오픈 합니다.
# firewall-cmd --permanent --zone=public --add-port=111/tcp
# firewall-cmd --permanent --zone=public --add-port=111/udp
# firewall-cmd --permanent --zone=public --add-port=2049/tcp
# firewall-cmd --permanent --zone=public --add-port=32803/tcp
# firewall-cmd --permanent --zone=public --add-port=32769/udp
# firewall-cmd --permanent --zone=public --add-port=892/tcp
# firewall-cmd --permanent --zone=public --add-port=892/udp
# firewall-cmd --permanent --zone=public --add-port=875/tcp
# firewall-cmd --permanent --zone=public --add-port=875/udp
# firewall-cmd --permanent --zone=public --add-port=662/tcp
# firewall-cmd --permanent --zone=public --add-port=662/udp
☞ 방화벽 설정 적용
# firewall-cmd --reload
success
☞ 포트 오픈 상태 확인
# iptables -nL
포트 몇개가 추가로 열렸습니다.
이렇게 해서 방화벽 사용하는 경우의 서버 설정이 완료 됬습니다.
② Linux( Unix ) 사용자의 NFS 클라이언트
☞ NFS 클리라이언트 설치
서버 패키지 이름과 동일합니다.
# yum -y install nfs-utils
☞ 서버의 공유 폴더 확인 ( 서버 ip : 192.168.0.19 )
# showmount -e 192.168.0.19
Export list for 192.168.0.19:
/var/nfs_share 192.168.0.*
[root@Client ~]#
/var/nfs_share 공유 폴더가 있다고 나오네요.
☞ 서버의 공유 폴더를 마운트 할수 있게 클라이언트에서 폴더를 생성합니다.
# mkdir /mnt/nfs_server
☞ 서버의 NFS 공유 폴더를 마운트 하기
# mount -t nfs 192.168.0.19:/var/nfs_share /mnt/nfs_server
☞ 디스크 파티션 상태를 확인해보겠습니다.
☞ 파티션 상태 확인
# df -Th
[root@Client ~]# df -Th
Filesystem Type Size Used Avail Use% Mounted on
/dev/sda2 xfs 146G 1015M 145G 1% /
devtmpfs devtmpfs 1.9G 0 1.9G 0% /dev
tmpfs tmpfs 1.9G 0 1.9G 0% /dev/shm
tmpfs tmpfs 1.9G 8.6M 1.9G 1% /run
tmpfs tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup
tmpfs tmpfs 379M 0 379M 0% /run/user/0
192.168.0.19:/var/nfs_share nfs4 594G 1012M 593G 1% /mnt/nfs_server
빨간색 부분의 네트워크 드라이브로해서 파티션이 추가 됬네요.
클라이언트에서 서버의 폴더( /mnt/nfs_server/ )를 사용 할수 있습니다.
NFS 를 더 이상 사용안하려면, 마운트 해제하면 되는데
# umount /mnt/nfs_server 하시면 됩니다.
③ 윈도우 클라이언트
☞ 일부 윈도우 버전에서 NFS 를 지원합니다.
여기서는 윈도우 7 엔터프라이즈 버전으로 진행하겠습니다.
제어판 → 프로그램 기능 → 윈도우 기능 사용/사용안함 선택 → NFS용 서비스 → NFS 클라이언트 체크하고 확인을 눌러서 프로그램을 설치합니다.
☞ NFS 서버에 접근이 가능한지 테스트 해보겠습니다.
C:\Users\Administrator>showmount -e 192.168.0.19
다음의 내보내기 목록 192.168.0.19:
/var/nfs_share 192.168.0.*
네트워크 공유 가능한 리스트가 나오면 정상입니다.
이제 윈도우에서 가상의 드라이브를 NFS 서버의 공유 폴더로 설정 하겠습니다.
C:\Users\Administrator>mount 192.168.0.19:/var/nfs_share *
Z: 현재 192.168.0.19:/var/nfs_share에 성공적으로 연결되어 있습니다.
명령을 완료했습니다.
C:\Users\Administrator>
탐색기에 보면 Z: 드라이브로 해서 네트워크 드라이브가 연결되어 있습니다.
만약 드라이브 연결을 해지 하려면 C:\>umount 드라이브명:(z:) 명령을 내리면 됩니다.
C:\Users\Administrator>umount z:
연결을 끊는 중 Z: \\192.168.0.19\var\nfs_share
명령을 완료했습니다.
C:\Users\Administrator>
댓글 [0]
번호 | 제목 | 글쓴이 | 조회 |
---|---|---|---|
[공지] | 연재 강좌를 진행합니다. | gooddew | - |
33 | CentOS 7| OpenSSL 업데이트 | gooddew | 7539 |
32 | CentOS 7| top 활용하기 | gooddew | 5489 |
31 | CentOS 7| 시스템 하드 복사하기 ( DISK TO DISK ) | gooddew | 13130 |
30 | CentOS 7| 백업 및 복구 | gooddew | 11691 |
29 | CentOS 7| 윈도우 클라이언트에서 PUTTY 자동 로그인 | gooddew | 5256 |
28 | CentOS 7| Centos 7 에서 NTFS 인식하기 | gooddew | 7625 |
27 | CentOS 7| root 패스워드 초기화 [1] | gooddew | 9068 |
26 | CentOS 7| SSH 보안 정책 | gooddew | 6406 |
25 | CentOS 7| 패스워드 보안 정책 | gooddew | 6342 |
24 | CentOS 7| MC를 이용한 FTP 활용 [2] | gooddew | 6779 |
23 | CentOS 7| 리눅스 명령어 정리 | gooddew | 9990 |
22 | CentOS 7| 유용한 프로그램 설치하기 | gooddew | 10050 |
21 | CentOS 7| 네트워크 수동 설정하기 | gooddew | 29685 |
20 | CentOS 7| AWStats를 설치하기 | gooddew | 18218 |
19 | CentOS 7| 방화벽 서버 구축 ( firewalld ) [1] | gooddew | 5508 |
18 | CentOS 7| 방화벽 서버 구축( iptables ) | gooddew | 5469 |
17 | CentOS 7| PROXY 서버 구축 | gooddew | 5223 |
16 | CentOS 7| DHCP 서버 구축 | gooddew | 5893 |
» | CentOS 7| NFS 서버 구축 | gooddew | 5690 |
14 | CentOS 7| 메일( sendmail / dovecot ) 서버 구축 | gooddew | 5710 |