Ubuntu에 NFS를 설치하고이 프로토콜을 사용하여 네트워크를 통해 파일을 공유합니다.

nfs1

NFS 또는 네트워크 파일 시스템은 분산 파일 시스템 프로토콜입니다., 원래 Sun Microsystems에 의해 생성되었습니다. NFS를 통해 시스템은 네트워크를 통해 다른 사용자와 디렉토리 및 파일을 공유 할 수 있습니다.

NFS 파일 공유에서 원격 시스템의 정보는 마치 로컬 시스템에있는 것처럼 사용자와 프로그램에 의해 액세스 될 수 있습니다.

NFS 클라이언트-서버 환경에서 작동 여기서 서버는 특정 파일 시스템 내의 모든 공유 데이터뿐만 아니라 클라이언트 인증, 권한 부여 및 관리를 관리합니다.

권한이 부여되면 원하는 수의 클라이언트가 내부 저장소에있는 것처럼 공유 데이터에 액세스 할 수 있습니다.

Ubuntu 시스템에 NFS 서버를 설정하는 것은 매우 간단합니다. 서버와 클라이언트 시스템 모두에서 필요한 설치 및 구성을 수행하기 만하면됩니다.

이 기사에서 하나의 Ubuntu 시스템에서 다른 시스템으로 파일을 공유 할 수 있도록 NFS 서버 및 클라이언트를 구성하는 방법을 단계별로 설명합니다.

NFS 서버 구성

디렉토리를 공유하도록 호스트 시스템을 구성하려면 NFS 커널 서버를 설치 한 다음 클라이언트 시스템이 액세스 할 디렉토리를 만들고 내 보내야합니다.

자, Ctrl + Alt + T를 사용하여 터미널을 열고 다음 명령을 실행합니다.

sudo apt install nfs-kernel-server -y

설치가 완료되면 이제 클라이언트 시스템과 공유 할 폴더를 만들겠습니다.이 폴더는 내보내기 폴더가됩니다.

이 예에서 우리가있는 현재 디렉토리에 폴더를 만들 것입니다.하지만 가장 마음에 드는 경로를 선택할 수 있습니다.

터미널에 다음을 입력합니다.

sudo mkdir -p carpeta-compartida

모든 클라이언트가 디렉토리에 액세스하기를 원하기 때문에 다음 명령을 통해 내보내기 폴더에서 제한적인 권한을 제거합니다.

sudo chown nobody: nogroup carpeta-compartida

sudo chmod 777 carpeta-compartida

만약 그것이 다른 경로에 있다면 그것을 배치하는 것이 중요합니다. 단일 공간을 남겨두면 시스템의 디렉토리 권한을 변경할 수 있기 때문입니다.

이제 클라이언트 시스템에있는 모든 그룹의 모든 사용자가 "공유 폴더"에 액세스 할 수 있습니다.

이제이 생성 된 폴더에 공유하려는 모든 콘텐츠를 배치 할 수 있습니다.

공유 디렉토리 내보내기

내보내기 폴더를 만든 후 클라이언트에게 호스트 서버 컴퓨터에 액세스 할 수있는 권한을 부여해야합니다.

이 권한은 시스템의 / etc 폴더에있는 내보내기 파일을 통해 정의됩니다.

다음 명령을 사용하여 Nano로이 파일을 엽니 다.

sudo nano /etc/ exports

파일을 열면 다음 명령을 사용하여 만든 폴더에 대한 액세스를 허용 할 수 있습니다.

/ruta/de/la/ carpeta-compartida ip-de-cliente (rw, sync, no_subtree_check)

O 파일에 다음 행을 추가하여 여러 클라이언트를 추가 할 수 있습니다.

/ruta/de/la/carpeta-compartida ip-de-cliente-1 (rw, sync, no_subtree_check)
/ruta/de/la/carpeta-compartida ip-de-cliente-2 (rw, sync, no_subtree_check)

또는 다음과 같이 IP 범위를 설정할 수 있습니다.

/ruta/de/la/carpeta-compartida ip-de-cliente1/24 (rw, sync, no_subtree_check)

이 파일에 정의 된 "rw, sync, no_subtree_check"권한은 클라이언트가 다음을 수행 할 수 있음을 의미합니다.

rw : 읽기 및 쓰기 작업

동기화 : 변경 사항을 적용하기 전에 디스크에 기록

no_subtree_check : 하위 트리 검사 방지

호스트 시스템에서 위의 모든 구성을 수행 한 후 이제 공유 디렉토리를 내보낼 차례입니다.

sudo exportfs -a

마지막으로, 모든 설정을 적용하려면 다음과 같이 NFS 커널 서버를 다시 시작하십시오.

sudo systemctl restart nfs-kernel-server

중요한 단계는 공유 콘텐츠에 액세스 할 수 있도록 서버의 방화벽이 클라이언트에 열려 있는지 확인하는 것입니다.

sudo ufw allow from ip/rango to any port nfs

다음과 같이 남아 있습니다.

sudo ufw allow from 192.168.1.1/24 to any port nfs

이제 다음 명령을 통해 Ubuntu 방화벽의 상태를 확인할 때 클라이언트 IP에 대한 작업 상태를 "허용"으로 볼 수 있습니다.

sudo ufw status

이제 호스트 서버가 NFS 커널 서버를 통해 지정된 클라이언트로 공유 폴더를 내보낼 준비가되었습니다.

클라이언트 시스템 구성

이제 클라이언트 컴퓨터에서 몇 가지 간단한 구성을 수행하여 호스트의 공유 폴더를 클라이언트에 마운트 한 다음 문제없이 액세스 할 수 있습니다.

이것에 대한 다음 명령을 사용하여 NFS 클라이언트를 설치합니다.

sudo apt-get install nfs-common

클라이언트의 시스템에는 호스트 서버가 공유하는 모든 콘텐츠를 내보내기 폴더에서 액세스 할 수있는 디렉토리가 필요합니다.

시스템 어디에서나이 폴더를 만들 수 있습니다.

sudo mkdir -p carpeta-cliente

이제 이전 단계에서 만든 폴더는 호스트의 공유 디렉터리를 새로 만든이 폴더로 마운트하지 않는 한 시스템의 다른 폴더와 같습니다.

다음 명령을 사용하여 호스트에서 클라이언트의 마운트 폴더로 공유 폴더를 마운트합니다.

sudo mount IPdelserivdor:/ruta/de/la/carpeta-compartida /ruta/carpeta-cliente

명령은 다음과 같거나 적습니다.

sudo mount 192.168.1.1:/home/servidor/carpeta-compartida /home/cliente/carpeta-cliente

이제 클라이언트 컴퓨터에서 폴더로 이동하여 공유 콘텐츠가 있는지 확인하여 연결을 테스트 할 차례입니다.


코멘트를 남겨주세요

귀하의 이메일 주소는 공개되지 않습니다. 필수 필드가 표시되어 있습니다 *

*

*

  1. 데이터 책임자 : Miguel Ángel Gatón
  2. 데이터의 목적 : 스팸 제어, 댓글 관리.
  3. 합법성 : 귀하의 동의
  4. 데이터 전달 : 법적 의무에 의한 경우를 제외하고 데이터는 제 XNUMX 자에게 전달되지 않습니다.
  5. 데이터 저장소 : Occentus Networks (EU)에서 호스팅하는 데이터베이스
  6. 권리 : 귀하는 언제든지 귀하의 정보를 제한, 복구 및 삭제할 수 있습니다.

  1.   루이스

    파일 전송에 어떤 프로토콜이 더 빠릅니까? NFS 또는 삼바

  2.   루이스

    파일 전송에 어떤 프로토콜이 더 빠릅니까? NFS 또는 삼바

  3.   하비에르 지 메노 수아레스

    안녕 Luis, 속도는 실제로 네트워크에 달려 있습니다.

    Samba와 NFS는 두 가지 다른 프로토콜입니다.

    Samba는 다른 시스템 (Android, Windows, Linux 등)에서 액세스 할 수있는 폴더를 공유하는 데 사용됩니다.

    NFS는 공유하려는 폴더가있는 머신에 서버 모드로 설치되고 로컬 파일 시스템 인 것처럼 마운트하려는 Linux 머신의 클라이언트로 설치되는 프로토콜입니다 (각 폴더에 마운트 할 수 있음). 세션을 시작하거나 시작할 때마다 마운트되도록 fstab 파일에서 구성하십시오).

    차이점을 조금 명확히했기를 바랍니다.

  4.   페드로

    그것은 나에게 오류를 준다, 당신은 예제를 넣지 않았다, 구문 오류. 잘못된 공백을 남겨두기 때문에 오류가 어디에 있는지 모르겠습니다.
    나에게는 소용이 없습니다.