Skip to content
NTFS2exFAT

NTFS2exFAT nasıl çalışır

Beş aşama ve hiçbirini atlamayı reddeden bir yaklaşım. Bu sayfa her adımda verinize ne olduğunu ve sizinle bir hata arasında hangi denetimlerin durduğunu anlatır.

Beş aşama

1. Diski denetleyin (salt okunur)

Uygulama diski hiçbir şeyi değiştirmeden tarar. Dosya ve klasörleri sayar, exFAT'ın izin vermediği adları işaretler, System Volume Information ve $RECYCLE.BIN gibi sistem klasörlerini atlar ve diskin bildirdiği kullanılan alanı macOS'in gerçekten görebildiği dosyalarla karşılaştırır. Büyük bir fark, bazı verilerin macOS'e görünmüyor olabileceğine dair bir uyarıdır.

  • Diske hiçbir şey yazılmaz
  • Okunamayan öğeler sessizce atlanmaz, listelenir
  • Gereken yedek alanını görürsünüz

2. Sağlama toplamlarıyla yedekleyin

Dosyalar seçtiğiniz bir klasöre kopyalanır. Her dosya kopyalanırken SHA-256 değeri hesaplanır. İlerleme yalnızca eklemeli bir manifest dosyasında saklanır; böylece duraklatabilir, çıkabilir ve devam edebilirsiniz.

  • Yedek, silinecek diskte olamaz
  • Yedek yolları, büyük/küçük harfe duyarsız disklerde çakışmaları önler
  • Dosyalar geçici bir adla yazılır ve yalnızca tamamlandığında yeniden adlandırılır

3. Yedeği doğrulayın

Her yedek dosyası önbelleği atlayarak diskten yeniden okunur ve sağlama toplamı, orijinalden hesaplananla karşılaştırılır. Tek bir bayt bile değişse denetim başarısız olur.

  • Okumalar bellekten değil diskten gelir
  • Herhangi bir hata, süreci biçimlendirme adımından önce durdurur

4. Korumalı silme

Biçimlendirme adımı yalnızca şunların hepsi doğruysa kullanılabilir: yedek tamamen doğrulanmıştır, yedek dosyaları doğru boyutlarıyla hâlâ vardır, disk aynı birim ve disk kimliğine ve boyuta sahiptir, yedek o diskte değildir ve siz diskin tam adını yazmışsınızdır. Uygulama, diske dokunmadan önce silmek üzere olduğunu kaydeder; böylece bir kesinti sonradan tanınabilir.

  • Yalnızca harici diskler sunulur
  • Biçimlendirme komutu tam olarak yedeği alınan birimi hedefler
  • Biçimlendirme izin gerektiriyorsa macOS size sorar

5. Geri kopyalayın ve doğrulayın

Her şey yeni exFAT birimine kopyalanır ve sağlama toplamlarını karşılaştırmak için yeniden okunur. exFAT'ın izin vermediği adlar değiştirilir ve listelenir. Son bir rapor yedeğin yanına kaydedilir.

  • Bozuk bir yedek dosyası yeni diske asla kopyalanmaz
  • Yedek, siz silene kadar saklanır

Burada “doğrulandı” ne demek

Bir dosya, yazıldıktan sonra diskten geri okunan içeriği orijinaliyle aynı SHA-256 değerini ürettiğinde doğrulanmış sayılır. Uygulama yalnızca dosya boyutuna veya tarihe güvenmez. Tek istisna ._* adlı macOS üst veri dosyalarıdır: exFAT'a kopyalandıktan sonra macOS bunları genişletilmiş özniteliklerle birleştirir; bu yüzden yalnızca yazıldıkları doğrulanabilir, yeniden okunamazlar.

Dosya adları ve üst veriler

exFAT, " * : < > ? \ | karakterlerine, denetim karakterlerine ve boşlukla ya da noktayla biten adlara izin vermez. Bu tür adlar değiştirilir ve raporda listelenir. Yalnızca büyük/küçük harf farkı olan adlar benzersiz hâle getirilir. Dosya ve klasörlerin değiştirilme tarihleri korunur.

Dürüst sınır

macOS'in yerleşik NTFS okuyucusu, adları Windows'un izin vermediği dosyaları gizleyebilir veya yeniden adlandırabilir. NTFS2exFAT, macOS'in gösterdiğiyle çalışır. Diskin kullanılan alanı görünen dosyalardan çok daha büyükse uyarır, ancak tek tek gizli bir dosyayı tespit edemez. Diskiniz bir Mac veya Linux NTFS sürücüsüyle yazıldıysa dönüştürmeden önce Windows'ta ya da NTFSTool gibi ntfs-3g tabanlı bir sürücüyle kontrol edin.

Kaputun altında

Dönüştürme motoru, Foundation ve CryptoKit dışında bağımlılığı olmayan küçük bir Swift kütüphanesidir. Mac uygulaması ve komut satırı aracı tarafından ortak kullanılır.

  • Manifest: dosya başına bir JSON satırı; yol, boyut, sağlama toplamı ve durum
  • Kopyalama: 4 MiB tamponlar, önbelleksiz okuma ve yazma, fsync, atomik yeniden adlandırma
  • Eşzamanlılık: aynı anda birkaç dosya, işçi başına aynı anda bir büyük dosya
  • Güvenlik denetimleri motorun içindedir; böylece uygulama ve komut satırı aynı kuralları uygular

Nasıl test edildi

Motorun birim testleri vardır (doğrulanmış bir yedekte tek bir baytı değiştirip denetimin başarısız olmasını bekleyen bir test dahil) ve gerçek bir NTFS disk görüntüsü oluşturan, tüm dönüştürmeyi çalıştıran ve geri yüklenen her dosyayı SHA-256 ile karşılaştıran uçtan uca testler. Fiziksel harici disklerde testler hâlâ sürüyor; bunun bir beta olmasının nedenlerinden biri budur.

Komut satırını mı tercih edersiniz?

Aynı motor ntfs2exfat-cli olarak da mevcuttur.

ntfs2exfat-cli list
ntfs2exfat-cli start disk4 ~/Backups
ntfs2exfat-cli backup ~/Backups/NTFS2exFAT-<job>
ntfs2exfat-cli erase ~/Backups/NTFS2exFAT-<job> --confirm "MY DRIVE"
ntfs2exfat-cli restore ~/Backups/NTFS2exFAT-<job>

GitHub'da kaynak kod →

Diskinizi dönüştürmeye hazır mısınız?