Skip to content
NTFS2exFAT

Jinsi NTFS2exFAT inavyofanya kazi

Awamu tano, na kukataa kuruka yoyote kati yake. Ukurasa huu unaeleza kinachotokea kwa data yako katika kila hatua na ukaguzi gani uko kati yako na kosa.

Awamu tano

1. Kagua diski (kusoma tu)

Programu inachanganua diski bila kubadilisha chochote. Inahesabu faili na folda, inaweka alama majina ambayo exFAT haiyaruhusu, inaruka folda za mfumo kama System Volume Information na $RECYCLE.BIN, na kulinganisha nafasi iliyotumika inayoripotiwa na diski na faili ambazo macOS inaweza kuona kweli. Pengo kubwa ni onyo kwamba data fulani inaweza kuwa haionekani kwa macOS.

  • Hakuna kinachoandikwa kwenye diski
  • Vipengee visivyosomeka vinaorodheshwa, havirukwi kimya kimya
  • Unaona nafasi ya nakala rudufu inayohitajika

2. Nakala rudufu kwa checksum

Faili zinanakiliwa kwenye folda unayochagua. Kila faili inaponakiliwa SHA-256 yake inakokotolewa. Maendeleo yanahifadhiwa kwenye manifest ya kuongeza tu, kwa hiyo unaweza kusitisha, kufunga na kuendelea.

  • Nakala rudufu haiwezi kuwa kwenye diski itakayofutwa
  • Njia za nakala rudufu huepuka mgongano kwenye viasi visivyotofautisha herufi kubwa na ndogo
  • Faili zinaandikwa kwa jina la muda na kubadilishwa jina tu zinapokamilika

3. Thibitisha nakala rudufu

Kila faili ya nakala rudufu inasomwa tena kutoka diskini, bila kutumia akiba, na checksum yake inalinganishwa na ile iliyokokotolewa kutoka kwa asili. Hata baiti moja iliyobadilika inashindwa ukaguzi.

  • Usomaji unatoka diskini, si kwenye kumbukumbu
  • Hitilafu yoyote inasimamisha mchakato kabla ya hatua ya kuformati

4. Kufuta kwa ulinzi

Hatua ya kuformati inapatikana tu wakati yote haya ni kweli: nakala rudufu imethibitishwa kikamilifu, faili za nakala rudufu bado zipo zikiwa na ukubwa sahihi, diski bado ina utambulisho ule ule wa kiasi na diski na ukubwa, nakala rudufu haiko kwenye diski hiyo, na umeandika jina kamili la diski. Programu inarekodi kwamba inakaribia kufuta kabla ya kugusa diski, ili kukatizwa kutambuliwe baadaye.

  • Diski za nje pekee ndizo zinazotolewa
  • Amri ya kuformati inalenga kiasi kilekile kilichotengenezewa nakala rudufu
  • Ikiwa kuformati kunahitaji ruhusa, macOS inakuuliza

5. Rudisha faili na uthibitishe

Kila kitu kinanakiliwa kwenye kiasi kipya cha exFAT na kusomwa tena ili kulinganisha checksum. Majina ambayo exFAT haiyaruhusu yanabadilishwa na kuorodheshwa. Ripoti ya mwisho inahifadhiwa karibu na nakala rudufu.

  • Faili ya nakala rudufu iliyoharibika hainakiliwi kamwe kwenye diski mpya
  • Nakala rudufu inabaki hadi uifute

“Imethibitishwa” inamaanisha nini hapa

Faili inahesabiwa kuwa imethibitishwa pale maudhui yake, yaliyosomwa tena kutoka diskini baada ya kuandikwa, yanapozalisha SHA-256 ile ile na ya asili. Programu haitegemei ukubwa wa faili au tarehe peke yake. Isipokuwa ni faili za metadata za macOS zinazoitwa ._*: baada ya kunakili kwenye exFAT, macOS inaziunganisha kuwa sifa zilizopanuliwa, kwa hiyo zinaweza kuthibitishwa tu kuwa zimeandikwa, si kusomwa tena.

Majina ya faili na metadata

exFAT hairuhusu herufi " * : < > ? \ |, herufi za udhibiti, au majina yanayoishia kwa nafasi au nukta. Majina kama hayo yanabadilishwa na kuorodheshwa kwenye ripoti. Majina yanayotofautiana kwa herufi kubwa na ndogo tu yanafanywa ya kipekee. Tarehe za mabadiliko ya faili na folda zinahifadhiwa.

Kikomo cha kweli

Kisomaji cha NTFS kilichojengewa ndani cha macOS kinaweza kuficha au kubadilisha majina ya faili ambazo Windows haiyaruhusu. NTFS2exFAT inafanya kazi na kile macOS inachokionyesha. Inaonya wakati nafasi iliyotumika ya diski ni kubwa zaidi kuliko faili zinazoonekana, lakini haiwezi kugundua faili moja iliyofichwa. Ikiwa diski yako iliandikwa na kiendeshi cha NTFS cha Mac au Linux, ikague kwenye Windows au kwa kiendeshi kinachotegemea ntfs-3g kama NTFSTool kabla ya kubadilisha.

Ndani ya mfumo

Injini ya ubadilishaji ni maktaba ndogo ya Swift isiyo na utegemezi zaidi ya Foundation na CryptoKit. Inatumiwa pamoja na programu ya Mac na zana ya mstari wa amri.

  • Manifest: mstari mmoja wa JSON kwa kila faili wenye njia, ukubwa, checksum na hali
  • Kunakili: bafa za 4 MiB, usomaji na uandishi bila akiba, fsync, kubadilisha jina kwa atomiki
  • Uendeshaji sambamba: faili kadhaa kwa wakati mmoja, faili moja kubwa kwa wakati kwa kila mfanyakazi
  • Ukaguzi wa usalama uko kwenye injini, kwa hiyo programu na mstari wa amri hutekeleza sheria zilezile

Ilijaribiwaje

Injini ina majaribio ya kitengo (ikiwemo jaribio linalobadilisha baiti moja kwenye nakala rudufu iliyothibitishwa na kutarajia ukaguzi ushindwe) na majaribio ya mwanzo hadi mwisho yanayojenga taswira halisi ya diski ya NTFS, kuendesha ubadilishaji mzima, na kulinganisha kila faili iliyorudishwa kwa SHA-256. Majaribio kwenye diski halisi za nje bado yanaendelea, na hiyo ni sababu mojawapo ya kuwa beta.

Unapendelea mstari wa amri?

Injini ile ile inapatikana kama ntfs2exfat-cli.

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>

Msimbo chanzo kwenye GitHub →

Uko tayari kubadilisha diski yako?