macOS: abilitare NTFS in scrittura

5 min read

Per default il macOS è in grado di leggere il filesystem NTFS ma non di scriverci! Significa che se avete un hard disk esterno, o ne comprate uno nuovo, al 95% delle probabilità sarà formattato appunto in NTFS.

Il fatto che possa leggere, quindi anche copiare dai suddetti hdd, ma non scrivere, significa che la cosa è decisamente voluta. Esistono dei programmi a pagamento che ovviano la questione, ma grazie a Dio esiste l’Open Source.

Per arrivare al risultato dobbiamo effettuare alcuni passaggi, il primo passo è quello di installare “Fuse for macOS” (ex MacFuse), si tratta di un programma Open Source che ci permetterà di accedere a file system di terze parti.

Scaricate il pacchetto .DMG che trovate nella homepage, avviate con un doppio click, verrà montato un disco virtuale e si aprirà una finestra. Premiamo con un doppio click sull’icona a scatola (vedi foto sotto) e quindi accederemo all’installer vero e proprio.

Personalmente non ho scelto di installare il compatibility Layer, ad ogni modo sarà comunque possibile farlo rilanciando il setup nuovamente. Una volta terminata l’installazione nelle “Preferenze di Sistema” avremo sul fondo una nuova icona chiamata “FUSE“. Questo è il primo passo, poichè “Fuse for macOS” non ha le librerie necessarie per effettuare il mount di NTFS.

Queste librerie rispondo al programma NTFS-3G e la via più facile e sicura è quella di utilizzare un altro programma che si chiama Homebrew.

Homebrew è di fatto l’equivalente dei repository APT in debian, o per chi viene da Windows è un cugino molto alla lontana dello store. In sostanza è una sorta di directory dove è possibile installare software e tenerlo aggiornato. Homebrew è molto utile poiché porta in dote comandi che non sono presenti in macOS, come ad esempio i comandi linux quali wget ed altri.

Per installare Homebrew rimando alla pagina ufficiale del progetto, oppure ancora meglio consultate il nostro tutorial su Brew.

Siamo pronti ad installare NTFS-3G:

brew install ntfs-3g

Ora abbiamo il comando di mount che é posizionato sotto “/usr/local/sbin/mount_ntfs“. Questo significa che se montate ora un disco esterno il sistema operativo utilizzerà ancora il suo comando originale. Per permettere l’automount dovremo sostituire il comando originale del macOS con questo. Ma il sistema di sicurezza SIP, (System Integrity Protection) equiparabile alla lontana di apparmor per chi viene da Linux o UAC per Windows, non lo permette. Quindi dobbiamo effettuare un passaggio di disattivazione e successiva riattivazione.

Per disattivare SIP dobbiamo riavviare il sistema in modalità macOS Recovery, ovvero al riavvio premiamo subito command ⌘ + R.

Attenzione, da High Sierra in poi, tenete premuta la sequenza di tasti dal riavvio sino a quando non vedremo il logo della Apple, altrimenti il comando non viene preso.

Dopo una analisi dei dischi, il cui tempo può variare, ci viene chiesto di confermare l’utente con cui intendiamo operare, e quindi verrà richiesta la password (attenzione che in questa fase il touch-id non è abilitato). Una volta ottenuto l’accesso, ignoriamo la maschera che abbiamo dinnanzi e dal menu in alto avviamo Utilità ⇒ Terminale dove andremo a dare il comando:

csrutil disable

Come da risultato a schermo, andremo ad effettuare un riavvio normale per accedere al sistema operativo. Una volta dentro riprendiamo il nostro terminale ( finder ⇒ vai ⇒ utility ⇒ terminale.app ) dove andremo a per prima cosa ad effettuare una copia di backup del comando di mount_ntfs originale:

sudo mv /Volumes/Macintosh\ HD/sbin/mount_ntfs /Volumes/Macintosh\ HD/sbin/mount_ntfs.ori

ATTENZIONE: E’ possibile che per i modelli privi di SSD “Macintosh HD” sia solo “Macintosh” quindi adeguate il comando di conseguenza.
A questo punto siamo pronti a linkare il comando di NTFS-3G con quello di sistema, tuttavia dalla versione di Catalina in poi il disco è montato in sola lettura, per cui dobbiamo montarlo anche in scrittura con il comando:

sudo mount -uw /

Ora possiamo finalmente linkare il nostro mount_ntfs con quello in funzione del nostro macOs:

sudo ln -s /usr/local/sbin/mount_ntfs /Volumes/Macintosh\ HD/sbin/mount_ntfs

Abbiamo quasi terminato, poiché non dobbiamo dimenticarci di riattivare SIP. Prima però attacchiamo un disco NTFS esterno per verificare il funzionamento, deve caricarsi in automatico e deve essere possibile leggere e scrivere al suo interno. Ad esempio creiamo una cartella e poi la cancelliamo.

Se ciò avviene, andiamo come in precedenza a riavviare il sistema in macOS Recovery fin ad avviare Utilità ⇒ Terminale dove andremo a dare il comando:

csrutil enable

Riavviamo e da qui in poi potremo caricare qualsiasi disco con filesystem NTFS. Sarebbe stato molto meglio se Apple avesse introdotto direttamente il supporto, ad ogni modo abbiamo potuto imparare come si accede alla console di ripristino e come installare da brew software per sviluppo.

Articolo tratto dal sito www.tosolini.info

Ti può piacere anche

+ There are no comments

Add yours