MacOS istemcisinden Ubuntu Linux sunucusuna NFS birimi bağlama


14

Bir Ubuntu 14.04 LTS sunucum var (benim durumumda yerel bir VM). NFS kullanarak bir Mac OS X Yosemite istemcisinden Linux sunucusuna bir dizin nasıl bağlayabilirim?

Yanıtlar:


35

Linux sunucusunu kurma

  1. NFS sunucusunu Ubuntu NFS kılavuzuna göre yükleyin :

    sudo apt-get install nfs-kernel-server
    
  2. Düzenle /etc/exports:

    sudo nano /etc/exports
    

    Şimdi buna benzer bir satır ekleyin:

    /home/ubuntu 172.16.238.0/24(insecure,rw,all_squash,anonuid=1000,anongid=1000,no_subtree_check)
    
    • /home/ubuntu dışa aktarılacak dizin
    • 172.16.238.0/24bağlantı kabul edilecek IP adresleri. Mac istemcisinin IP adresi bu aralıkta olmalıdır. *Herhangi bir IP adresinden izin vermek için kullanın . (Ancak NFS sunucunuzu tüm İnternet'te kullanıma sunmamaya dikkat edin!)
    • insecure ayrıcalıksız (yüksek) bağlantı noktası numaralarından bağlantı kabul etmek anlamına gelir
    • rw okuma-yazma anlamına gelir
    • all_squash,anonuid=1000,anongid=1000UID / GID 1000 ile kullanıcı / grup tarafından gerçekleştirilecek tüm okuma ve yazma işlemlerini zorlar (1000 ubuntusunucumdaki varsayılan kullanıcı / gruptur). idUID / GID'nizi bulmak için sunucuda çalıştırın . Ubuntu sunucunuz ve Mac istemciniz ana kullanıcı için aynı UID / GID'yi kullanmadığı sürece bu seçeneklere ihtiyacınız vardır.
    • no_subtree_check performans meselesi
  3. Dosyayı kaydedin ve çalıştırın

    sudo exportfs -vra
    

    NFS dışa aktarmalarını yeniden yüklemek için. ( -aSeçeneğin gerekli olup olmadığından emin değilim .)

Mac istemcisini kurma

  1. Edit auto_master dosyasını:

    sudo nano /etc/auto_master
    

    ve ile başlayan satırı /netaşağıdaki gibi değiştirin:

    /net            -hosts      -nobrowse,nosuid,locallocks,nfc,actimeo=1
    
    • locallockssunucuda değil istemcide kilit oluşturur. Bu olmadan, Finder çok yavaş hale gelir ve dizinleri göstermek sonsuza kadar sürer.
    • nfc UTF-8 dosya adlarının çalışmasını sağlar
    • actimeo=1öznitelik önbellek zaman aşımını mümkün olduğunca kısa ayarlayın. Dosyayı 0(veya ekleme noac) olarak ayarlamanın Finder'ın sunucuda bir dosya silindiğinde fark etmemesine neden olduğunu unutmayın , bu yüzden kullanamayız.
    • nfsvers=4Burada kullanmadığımızı unutmayın . Bununla Mac'te çekirdek panikleri var, bu yüzden varsayılana (NFSv3) geri döndüm.
  2. Otomatik sayıları çalıştırarak yenileyin

    sudo automount -vc
    

    (Daha önce bir NFS birim bağlamaya çalışması halinde, böylece gibi önce kaldırmanız: sudo umount -f /net/fileserver.local/home/ubuntu)

  3. Finder menüsünde, Git -> Klasöre Git'i seçin ve yazın /net/SERVER_HOST_NAME, örn /net/fileserver.local.

    Dışa aktarılan dizini orada bulabilirsiniz, örn /net/fileserver.local/home/ubuntu. İleride erişmeyi kolaylaştırmak için bu dizini Finder kenar çubuğuna sürükleyin.


Ayrıca, izinleri düzeltmenin herhangi bir yolu var mı? Dosyalarım Mac'ten erişmem gereken tek yol paylaşmak istediğim klasöre 777 izin vermektir :( aksi takdirde sistem klasöre göz atma izinlerim olmadığını belirten bir mesaj gösteriyor.
Carlos Vega

@carlosvega all_squash,anonuid=1000,anongid=1000Seçenekler benim için izinlerle ilgileniyor - Ubuntu sunucusunda UID 1000'in sahip olduğu her şeye Mac istemcisinden erişilemiyor, bu yüzden 777'ye chmodding'e gerek yok.
Jo Liss

5
Sadece hızlı bir yorum, sadece mac tarafında "anında" monte etmek istiyorsanız, bu benim için çalışıyor:sudo mount -t nfs -o resvport 172.16.238.x:/home/ubuntu /Users/xyz/ubuntu
Scott Carlson

Mac OSX Sierra ve Ubuntu 16.04 ile çalışır
Antonios Hadjigeorgalis

2
İnsanlar bu parlak cevabın arkasında ne kadar deneme yanılma olduğunu fark etmiyorlar. Özellikle "nfc" kısmı rsyncMacOS olmayan sunucuları monte ederken (veya ayarlarken) CRUCIAL'dir . İlk başta fark etmeyeceksiniz, ancak UTF-8, OS X'te diğer her yerde olduğu gibi aynı değil. Bu olmadan, dosya adlarınız çok iyi bozuk olabilir ve daha sonra düzeltmek için saatlerce sürebilir. "Teşekkür ederim" demek için bir yorum kullanamayacağımı biliyorum, bu yüzden burada
bitireceğim
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.