DirectConnect

Kılavuzlar

Mac ile Linux arasında dosya aktarma

Bir Mac ile Linux arasında dosya taşımak için onları SSH üzerinden rsync ile kopyalayın, bir Mac klasörünü paylaşıp Linux dosya yöneticinizde açın ya da bir Linux klasörünü Samba ile paylaşın. Her biri iki bilgisayarda da kurulum gerektirir ve dosya paylaşımı küçük dosyalardan oluşan klasörlerde yavaştır.

Bu neden olması gerekenden zor

  • Ortak bir hızlı gönderme yok. AirDrop yalnızca Apple’a özgüdür ve Linux masaüstlerinde Mac’in anladığı hiçbir şey yoktur.
  • Her yöntem hesap ve parola gerektirir. SSH ve Mac Dosya Paylaşma, Mac hesabıyla oturum açar. Samba ise kendi ayrı parolasını ister.
  • Linux varsayılan olarak bir Mac ile klasör paylaşmaz. Samba’yı yükleyip yapılandırır ve güvenlik duvarını açarsınız. Fedora ve benzeri dağıtımlarda SELinux’un da paylaşılan klasöre izin vermesi gerekir.
  • Samba Mac’e özgü ayarlar ister. Apple uyumluluk seçenekleri olmadan Finder, dosyalarınızın yanında fazladan gizli ._ dosyaları bırakır.
  • Kablo bağlantısı adres gerektirir. Mac kabloda kendine bir 169.254 adresi verir. Linux ise çoğu zaman orada olmayan bir DHCP sunucusunu bekler ve hiç IPv4 adresi almaz.
  • Küçük dosyalar sürünür. Testlerimizde bir Mac’in 10 Gb/s’lik bir Thunderbolt bağlantısı üzerinden bir Samba paylaşımına 20.000 küçük dosya (331 MB) kopyalaması neredeyse dört dakika sürdü.
  • Sürücüler geçiş yapmaz. Mac, Linux’un ext4 veya btrfs sürücülerine yazamaz, Linux da Mac APFS sürücülerini kötü işler. Yalnızca exFAT ikisinde de iyi çalışır.
  • Kablolar yarı hızda çalışabilir. Testlerimizde bir Linux dizüstü ile bir Mac, 40 Gb/s’lik bir kablonun yalnızca bir 20 Gb/s şeridi üzerinden bağlandı.

Kabloyu bağlayın ve her bilgisayarın adresini bulun

İki bilgisayarda da Thunderbolt veya USB4 varsa aralarındaki bir kablo doğrudan bir ağ bağlantısı sağlar. Mac buna Thunderbolt Köprüsü der, Linux ise thunderbolt0 adını verir. Bu bağlantı noktaları yoksa bunun yerine ev ağınızı ve adreslerini kullanın. Bkz. Thunderbolt ile dosya aktarma.

Mac’te

  1. Kabloyu takın.
  2. Sistem Ayarları’nda Ağ’ı, ardından Thunderbolt Köprüsü’nü seçin.
  3. Ayrıntılar…’ı tıklayın ve IP adresini not edin. Kabloda başka bir şey yoksa 169.254 ile başlar.

Linux bilgisayarda

Bir terminalde bu komutu çalıştırın. Yalnızca ayarları okur:

ip -4 addr show thunderbolt0

Bir inet 169.254… satırı kablonun adresidir. inet satırı yoksa NetworkManager hâlâ DHCP’yi bekliyordur. Kabloya kendiliğinden atanan bir adres verin:

  1. Ayarlar’da Ağ’ı seçin, ardından kablonun kablolu bağlantısının yanındaki ayarlar düğmesini tıklayın.
  2. IPv4 sekmesinde Yalnızca Yerel Bağlantı’yı seçin ve Uygula’yı tıklayın.
  3. Bağlantıyı kapatıp yeniden açın, ardından ip komutunu yeniden çalıştırın.

Her zaman bilgisayarın adıyla değil, 169.254 adresiyle bağlanın. Ad, bunun yerine bilgisayarın Wi-Fi adresini bulabilir ve kopya o zaman Wi-Fi üzerinden gider.

Seçenek 1: terminalden SSH üzerinden rsync

rsync, terminalde rahat olan herkese uygundur. Klasörlerin tamamını kopyalar ve bir kopya durursa yeniden çalıştırmak zaten kopyalanmış dosyaları atlar. Her komutu Linux bilgisayar çalıştırır, bu yüzden yalnızca Mac’in kurulması gerekir.

Mac’te

  1. Sistem Ayarları’nda Genel’i, ardından Paylaşma’yı seçin ve Uzaktan Giriş’i açın.
  2. Uzaktan Giriş’in yanındaki bilgi düğmesini tıklayın ve hesabınıza izin verildiğini kontrol edin.
  3. Masaüstü, Belgeler veya İndirilenler’den kopyalamak için aynı panelde Uzak kullanıcılar için tam disk erişimine izin ver’i açın. Bu olmadan macOS bu klasörleri “Operation not permitted” ile reddeder.

Linux bilgisayarda

  1. Bir terminalde rsync -a --progress user@address:/Users/user/Projects/ ~/Projects/ çalıştırın. user yerine Mac hesabının kısa adını (ev klasörünün adı), address yerine Mac’in 169.254 adresini yazın.
  2. İlk seferde SSH, Mac’e güvenilip güvenilmeyeceğini sorar. yes yazın.
  3. Mac hesabının parolasını yazın. rsync her dosyayı kopyaladıkça listeler.

Ters yönde kopyalamak için iki yolun yerini değiştirin. Sondaki / önemlidir: varsa rsync klasörün içeriğini, yoksa klasörün kendisini kopyalar. Boşluk içeren yolları tırnak içine alın. Göz atılacak bir şey yoktur, bu yüzden başlamadan önce tam yollara ihtiyacınız vardır.

Seçenek 2: bir Mac klasörünü paylaşın ve Linux’ta açın

Mac Dosya Paylaşma, Linux’ta hiçbir yazılım gerektirmez. GNOME Dosyalar ve diğer Linux dosya yöneticilerinin çoğu SMB paylaşımlarını açar.

Mac’te

  1. Sistem Ayarları’nda Genel’i, ardından Paylaşma’yı seçin ve Dosya Paylaşma’yı açın.
  2. Dosya Paylaşma’nın yanındaki bilgi düğmesini tıklayın. Paylaşılan Klasörler altında +’yı tıklayın ve klasörü seçin.
  3. Linux’un içeri dosya kopyalaması gerekiyorsa Kullanıcılar altında hesabınızı Okuma ve Yazma olarak ayarlayın.
  4. Seçenekler…’i tıklayın, Windows Dosya Paylaşma altında hesabınızı seçin, parolasını yazın ve Bitti’yi tıklayın. Bu adım olmadan Linux oturum açamaz.

Linux bilgisayarda

  1. Dosyalar’da Ctrl+L’ye basın, smb:// ve Mac’in adresini yazın, örneğin smb://169.254.20.30, ve Enter’a basın.
  2. Kayıtlı kullanıcı’yı seçin, Mac hesabının kısa adını ve parolasını yazın ve Bağlan’ı tıklayın.
  3. Paylaşılan klasörü açın. Dosyaları içeri veya dışarı sürükleyin.

Büyük dosyalar bu yolla iyi kopyalanır. Küçük dosyalardan oluşan klasörler yavaştır, çünkü dosya paylaşımı her dosyayı sırayla açar, yazar ve kapatır.

Seçenek 3: bir Linux klasörünü Samba ile paylaşın

Linux bilgisayarın dosyalarına Finder’da göz atmak istediğinizde Linux’tan paylaşın. Aşağıdaki her komut sistemi değiştirir ve sudo için parolanızı ister. you yerine Linux kullanıcı adınızı yazın.

Linux bilgisayarda

  1. Samba’yı yükleyin: Fedora’da sudo dnf install samba, Ubuntu’da sudo apt install samba.
  2. Paylaşımı aşağıda gösterildiği gibi /etc/samba/smb.conf dosyasının sonuna ekleyin. fruit satırı Apple uyumluluk seçeneklerini ekler.
  3. Kullanıcınız için sudo smbpasswd -a you ile bir Samba parolası ayarlayın. Oturum açma parolanızdan ayrıdır.
  4. Güvenlik duvarını açın. Fedora’da sudo firewall-cmd --permanent --add-service=samba, ardından sudo firewall-cmd --reload çalıştırın. Ubuntu’da güvenlik duvarı siz açmadıysanız kapalıdır. Açıksa sudo ufw allow samba çalıştırın.
  5. Fedora’da SELinux’un klasörü paylaşmasına izin verin: sudo semanage fcontext -a -t samba_share_t "/home/you/Projects(/.*)?", ardından sudo restorecon -R /home/you/Projects.
  6. Samba’yı başlatın: Fedora’da sudo systemctl enable --now smb, Ubuntu’da sudo systemctl restart smbd.
[Projects]
   path = /home/you/Projects
   valid users = you
   read only = no
   vfs objects = catia fruit streams_xattr

Mac’te

  1. Finder’da Git > Sunucuya Bağlan…’ı seçin.
  2. smb:// ve Linux bilgisayarın adresini yazın, örneğin smb://169.254.40.50, ve Bağlan’ı tıklayın.
  3. Kayıtlı Kullanıcı’yı seçin, Linux kullanıcı adınızı ve Samba parolanızı yazın ve Bağlan’ı tıklayın.
  4. Projects paylaşımını seçin. Finder’da açılır.

Testlerimizde 10 Gb/s’lik bir Thunderbolt bağlantısı üzerinden bir Mac, 20.000 küçük dosyayı (331 MB) bir Samba paylaşımından 114 saniyede, paylaşıma ise 238 saniyede kopyaladı. 4 GiB’lık bir dosya iki yönde de yaklaşık 7,6 Gb/s’de kopyalandı.

Uyku, yeniden başlatma veya kabloyu çıkarmadan sonra

Buradaki her seçenek yalnızca kablo bağlantısı kuruluyken çalışır. Bilgisayarlardan biri uyku moduna geçtiğinde veya kabloyu çıkardığınızda bağlantı kopar.

  • rsync bir bağlantı hatasıyla durur. Aynı komutu yeniden çalıştırın. Zaten ulaşmış dosyaları atlar.
  • Paylaşılan klasörlerin bağlantısı kesilir. Finder sunucu bağlantısının kesildiği uyarısını verir, Dosyalar da paylaşımı kapatır. Yeniden bağlanın ve oturum açın.
  • Adres değişebilir. Kendiliğinden atanan adresler kabloyu çıkardıktan sonra değişebilir; yeniden bağlanmadan önce onları yeniden bulun.
  • Yeniden başlatmadan sonra paylaşım açık kalır. Uzaktan Giriş, Dosya Paylaşma ve etkinleştirilmiş bir Samba hizmeti kendiliğinden yeniden başlar. Yine de diğer bilgisayardan yeniden bağlanırsınız.

Bkz. ağ paylaşımı uykudan sonra neden kopar.

Seçenek 4: exFAT sürücü

Bir sürücüyü exFAT olarak biçimlendirin ve dosyaları önce sürücüye, sonra sürücüden kopyalayın. İki bilgisayarda da kurulum gerekmez ve Thunderbolt veya USB4 olmadan çalışır, ama her dosya iki kez kopyalanır ve sürücüde yeterli boş alan olmalıdır.