目次
1. NFS란? Ubuntu에서의 장점과 기본적인 용도
NFS(Network File System)는 네트워크를 통해 파일을 공유하기 위한 프로토콜입니다. 이 기사에서는 Ubuntu에서 NFS를 기본적으로 사용하는 방법을 설명하고, 특히 서버 관리에서 NFS를 도입하는 장점과 설정 방법을 소개합니다.NFS의 구조와 용도
NFS는 서버와 클라이언트 간의 파일 공유를 용이하게 하며, 원격 파일 시스템으로 기능합니다. 여러 Linux 서버 간의 동기화나 클라우드 환경에서의 백업 용도에도 적합합니다.Ubuntu에서 NFS를 이용하는 장점
- 데이터 동기화 효율화:여러 서버가 동일한 데이터에 접근할 수 있어 관리가 간단해집니다.
- Linux 간 높은 호환성:Ubuntu를 포함한 많은 Linux 배포판에서 NFS가 지원됩니다.
- 클라우드 서비스에서의 활용:클라우드 스토리지에서도 유연한 데이터 공유가 가능합니다.
2. 필요한 준비: 시스템 요구 사항 및 NFS 설치 방법
NFS를 운영하려면 적절한 시스템 환경이 필요합니다. 아래에 시스템 요구 사항과 NFS 설치 절차를 설명합니다.하드웨어 및 소프트웨어 요구 사항
- CPU와 메모리: 듀얼코어 이상의 CPU와 최소 2GB 메모리를 권장합니다.
- 네트워크와 스토리지: 안정적인 이더넷 연결과 데이터 공유용 스토리지를 준비합니다.
NFS 패키지 설치
다음 명령으로 NFS 서버와 클라이언트 패키지를 설치합니다.sudo apt update
sudo apt install nfs-kernel-server nfs-common
LTS 버전의 Ubuntu를 사용하면 장기적인 지원을 받을 수 있으며, 안정적인 환경을 구축할 수 있습니다.
3. NFS 서버 설정
Ubuntu에서 NFS 서버를 설정하고, 공유 디렉터리를 생성하여 설정합니다.공유 디렉터리 생성 및 설정
- 디렉터리 생성 및 접근 권한 설정: 아래 명령으로 공유 디렉터리
/nfs
를 생성하고, 모든 클라이언트에 접근을 허용합니다.
sudo mkdir /nfs
sudo chmod 777 /nfs
- /etc/exports 파일 편집: 접근 설정을 하려면, 아래 엔트리를 추가합니다.
/nfs *(rw,sync,no_subtree_check)
위와 같이 하면, 모든 클라이언트의 읽기/쓰기 접근이 허용됩니다.방화벽 설정
방화벽이 활성화된 경우, NFS용 2049 포트를 개방합니다.sudo ufw allow from <클라이언트 IP 주소> to any port nfs
4. NFS 클라이언트 설정
NFS 클라이언트 설정에서는 NFS 연결에 필요한 패키지 설치와 NFS 서버에 대한 마운트 설정을 수행합니다.클라이언트에서의 패키지 설치 및 마운트 설정
- NFS 클라이언트 패키지 설치:클라이언트 측에서
nfs-common
을 설치합니다。
sudo apt install nfs-common
- NFS 디렉터리 마운트:아래 명령으로 수동 마운트하거나
/etc/fstab
에 자동 마운트 설정을 추가합니다。
sudo mount <서버 IP 주소>:/nfs /mnt
자동 마운트 설정: <서버 IP 주소>:/nfs /mnt nfs defaults 0 0
마운트 상태를 확인하려면、df -h
명령을 실행합니다。
5. 운용 관리와 트러블슈팅
NFS 운용 시 자주 발생하는 문제 해결 방법과 관리에 유용한 명령어를 소개합니다.자동 마운트 설정
재부팅 시에도 마운트가 유지되도록chkconfig
을 사용하여 netfs의 자동 시작을 활성화합니다.sudo chkconfig netfs on
주 발생하는 트러블과 해결법
- 접근 거부 오류:“Permission denied” 오류가 발생하는 경우, 공유 디렉터리의 권한과
/etc/exports
설정을 확인합니다。 - NFS 버전 불일치:NFS 버전 차이로 인한 연결 문제를 피하기 위해
nfsvers=3
등의 옵션으로 버전을 지정할 수 있습니다。