macOS 클라이언트에서 Ubuntu Linux 서버에 NFS 볼륨 마운트


14

Ubuntu 14.04 LTS 서버 (필자의 경우 로컬 VM)가 있습니다. NFS를 사용하여 Mac OS X Yosemite 클라이언트에서 Linux 서버에 디렉토리를 마운트하려면 어떻게합니까?

답변:


35

Linux 서버 설정

  1. Ubuntu NFS 안내서에 따라 NFS 서버를 설치하십시오 .

    sudo apt-get install nfs-kernel-server
    
  2. 편집 /etc/exports:

    sudo nano /etc/exports
    

    이제 다음과 비슷한 줄을 추가하십시오.

    /home/ubuntu 172.16.238.0/24(insecure,rw,all_squash,anonuid=1000,anongid=1000,no_subtree_check)
    
    • /home/ubuntu 내보낼 디렉토리입니다
    • 172.16.238.0/24연결을 수락 할 IP 주소입니다. Mac 클라이언트의 IP 주소는이 범위에 있어야합니다. *모든 IP 주소에서 허용하는 데 사용하십시오 . (그러나 전체 인터넷에서 NFS 서버를 사용할 수 없도록주의하십시오!)
    • insecure 권한이없는 (더 높은) 포트 번호에서 연결을 수락하는 수단
    • rw 읽기-쓰기를 의미
    • all_squash,anonuid=1000,anongid=1000UID / GID 1000을 사용하여 사용자 / 그룹이 모든 읽기 및 쓰기를 수행하도록합니다 (1000은 ubuntu서버 의 기본 사용자 / 그룹). id서버에서 실행 하여 UID / GID를 찾으십시오. Ubuntu 서버와 Mac 클라이언트가 기본 사용자에 대해 동일한 UID / GID를 사용하지 않는 한이 옵션이 필요합니다.
    • no_subtree_check 성능이다
  3. 파일을 저장하고 실행

    sudo exportfs -vra
    

    NFS 내보내기를 다시로드합니다. ( -a옵션이 필요한지 확실하지 않습니다 .)

Mac 클라이언트 설정

  1. auto_master 파일을 편집 하십시오.

    sudo nano /etc/auto_master
    

    /net다음으로 시작하는 줄을 변경하십시오 .

    /net            -hosts      -nobrowse,nosuid,locallocks,nfc,actimeo=1
    
    • locallocks서버가 아닌 클라이언트에 잠금을 작성합니다. 이것이 없으면 Finder는 매우 느려져 디렉토리를 표시하는 데 시간이 오래 걸립니다.
    • nfc UTF-8 파일 이름을 작동시킵니다
    • actimeo=1속성 캐시 제한 시간을 가능한 짧게 설정하십시오. 파일 을 0(또는 추가 noac)로 설정하면 파일이 서버에서 삭제 될 때 Finder가 알 수 없으므로 사용할 수 없습니다.
    • nfsvers=4여기서는 사용하지 않습니다 . 이것으로 Mac에서 커널 패닉을 얻었으므로 기본값 (NFSv3)으로 돌아갔습니다.
  2. 다음을 실행하여 자동 마운트를 새로 고칩니다.

    sudo automount -vc
    

    (이전에 NFS 볼륨을 마운트하려고 시도한 경우 먼저 다음과 같이 마운트 해제하십시오. sudo umount -f /net/fileserver.local/home/ubuntu)

  3. Finder 메뉴에서 Go-> Go to Folder를 선택하고을 입력하십시오 /net/SERVER_HOST_NAME(예 :) /net/fileserver.local.

    내 보낸 디렉토리는 예를 들어에서 찾을 수 있습니다 /net/fileserver.local/home/ubuntu. 이 디렉토리를 Finder 사이드 바로 드래그하면 나중에 쉽게 액세스 할 수 있습니다.


또한 권한을 수정하는 방법이 있습니까? Mac에서 파일에 액세스 할 수있는 유일한 방법은 공유하려는 폴더에 777 권한을 부여하는 것입니다. 그렇지 않으면 시스템에서 폴더를 탐색 할 권한이 없다는 메시지가 표시됩니다.
Carlos Vega

@carlosvega all_squash,anonuid=1000,anongid=1000옵션은 나를 위해 권한을 관리합니다 -Ubuntu 서버에서 UID 1000이 소유 한 모든 것은 Mac 클라이언트에서 아무 문제없이 액세스 할 수 있으므로 777로 chmodding 할 필요가 없습니다.
Jo Liss

5
간단히 말해서, 맥 쪽에서 "즉석에서"마운트하고 싶다면, 이것은 저에게 효과적입니다.sudo mount -t nfs -o resvport 172.16.238.x:/home/ubuntu /Users/xyz/ubuntu
Scott Carlson

Mac OSX Sierra 및 Ubuntu 16.04에서 작동합니다.
Antonios Hadjigeorgalis

2
사람들은이 훌륭한 답변 뒤에 얼마나 많은 시행 착오가 있는지 모릅니다. rsync비 MacOS 서버를 마운트 (또는 ing) 할 때 특히 "nfc"부분이 중요합니다. 처음에는 알지 못하지만 UTF-8은 OS X에서 다른 곳과 동일하지 않습니다. 파일이 없으면 파일 이름이 제대로 표시되지 않아 나중에 수정하는 데 몇 시간이 걸릴 수 있습니다. 나는 "감사합니다"라는 말을 사용할 수 없다는 것을 알고 있으므로 여기서 끝내겠습니다.)
DanielSmedegaardBuus
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.