Hai appena comprato un Mac per provare macOS, colleghi la tua chiavetta USB formattata in NTFS nel computer, ma noti una cosa strana: non puoi creare cartelle o metterci file.

Purtroppo il supporto a NTFS viene limitato su macOS, bloccando tutti i dispositivi con quel file system in sola lettura. Una soluzione immediata sarebbe formattare la USB in exFAT o FAT32, ma se non puoi perché hai molti file all’interno oppure non ti garbano questi file system?

Questa guida fa al caso tuo! Scegliendo uno dei 3 metodi, potrai di nuovo mettere file e creare cartelle sui tuoi device USB con NTFS tramite macOS.

Sei pronto? Iniziamo 😀

Update 4 (22/02/2022): rimosso metodo script; aggiunto avviso per chi usa macOS Big Sur; aggiornati i comandi nel metodo NTFS-3G con Homebrew; modifiche minori.
Update 3 (27/03/2020):
 nel metodo fstab puoi ora aggiungere un disco NTFS con gli spazi nel nome; aggiornati avvisi per chi usa un hackintosh; script aggiornato alla v1.1; modifiche minori.
Update 2 (25/02/2020): risistemata guida per una svista sulla protezione SIP in macOS Catalina; aggiunti riferimenti a hackintosh; modifiche minori.
Update (27/11/2019): la guida ora è compatibile con macOS Catalina! 😉

Avviso importante per chi usa macOS Big Sur

Da Big Sur in poi è presente una nuova misura di sicurezza chiamata Signed System Volume che protegge ulteriormente il Mac da attacchi malware verificando l’integrità dei file di sistema. Non solo, quindi, blocca la modifica di quei file, indispensabile per il metodo NTFS-3G con Homebrew, ma rende ancora più difficile disabilitarlo.

Anche se è possibile farlo in modalità Recovery (in modo simile al SIP), oltre a dover rendere di nuovo avviabile il disco, disabilitare SSV vi bloccherà alcune funzionalità come Apple Pay, FileVault e in generale qualsiasi cosa che sia “sensibile”.

Per questo motivo NON consiglio di fare il metodo NTFS-3G con Homebrew per chi ha macOS Big Sur. Puoi provare il metodo fstab se non vuoi usare programmi a pagamento oppure, se preferisci, puoi solo installare Homebrew, NTFS-3G e macFUSE e montare manualmente il disco via terminale (clicca qui per più info).

Se proprio vuoi veramente seguire il metodo nella guida, a tuo rischio e pericolo, cliccando qui puoi informarti di più sul SSV e su come disabilitarlo.

Metodo NTFS-3G con Homebrew

Il metodo che ti consiglio (se non usi Big Sur o superiori…) è quello di installare e configurare Homebrew, il gestore pacchetti per macOS, e NTFS-3G, un programma open source che supporta totalmente il file system di Windows. Usando questo metodo potrai abilitare il supporto alla scrittura NTFS su macOS senza problemi. Un svantaggio di NTFS-3G è la velocità in scrittura non eccezionale, anche se sopportabile. Il vantaggio più grande è che si evita di pagare per abilitare la scrittura NTFS, oltre a usare un programma libero.

Con macOS Catalina c’é bisogno di avviare un comando in più, non necessario nelle versioni precedenti (Mojave, Sierra, High Sierra…). Quindi leggi bene la guida ed esegui i comandi adatti per la tua versione installata.

Installazione Homebrew e NTFS-3G

  1. Vai su Applicazioni > Utility dal Finder e apri il Terminale (o clicca sulla lente di ingrandimento in alto a destra e scrivi “Terminale”)
  2. Vai nel sito di Homebrew, il gestore pacchetti per macOS necessario per installare NTFS-3G, e inserisci l’intera riga presente nella pagina (quella sotto “Installa Homebrew”) nel terminale
  3. Ti chiederà la password, inseriscila
  4. A meno che non lo avevi già installato in passato, lo script starà installando i Command Line Tools di Xcode, necessari per compilare e installare Homebrew. Non ci vorrà molto 🙂
  5. Aspetta che lo script installi Homebrew. Inserisci di nuovo la password se necessario
  6. Quando avrà finito, scrivi e invia questo comando:
    brew doctor

    Se dà esito positivo (Your system is ready to brew.) Homebrew è stato installato con successo

  7. Ritorna al terminale e invia questo comando per installare FUSE e NTFS-3G:
    brew install --cask macfuse && brew tap gromgit/homebrew-fuse && brew install ntfs-3g-mac

Configurazione NTFS-3G

Disattiva il SIP

Nota: se hai una versione di OS X precedente alla 10.11, disattivare il SIP è inutile e puoi tranquillamente saltare questa parte e continuare la guida.

Attenzione: se usi un hackintosh, verifica di non avere una configurazione custom o sconosciuta avviando il terminale in Applicazioni > Utility e inviando questo comando:

csrutil status

Se mostra “System Integrity Protection status: unknown (Custom Configuration)” o simili, potresti non avere un SIP completamente disattivato.
Se non ce l’hai, disattiva il SIP andando in Recovery o modifica il config.plist di Clover o OpenCore.

Disattivare il SIP è molto semplice ma, dopo aver installato e configurato NTFS-3G, ti consiglio di riabilitarlo perché, lasciandolo disattivato, può rendere vulnerabile il Mac.

  1. Spegni il Mac e riaccendilo; prima che compare il logo di Apple, tieni premuto cmd (⌘) + R per entrare in modalità recovery
  2. Dopo qualche minuto (potrebbe metterci di più se lo sta scaricando (Internet Recovery, la Terra che gira)), sarai nella modalità recovery
  3. Sulla barra in alto clicca su Utility e apri il Terminale
  4. Aperto il terminale, scrivi questo comando e premi Invio:
    csrutil disable
  5. Se compare questo, complimenti! Hai disattivato il SIP 🙂
    Non ti resta che riavviare il tuo Mac

    Successfully disabled System Integrity Protection.
    Please restart the machine for the changes to take effect.

Sostituzione mount_ntfs

  1. Per abilitare la modifica NTFS, devi sostituire il mount tool di Apple con quello di NTFS-3G. Puoi farlo aprendo il Terminale (Applicazioni > Utility)
    ATTENZIONE: INSERISCI CORRETTAMENTE I COMANDI, ALTRIMENDI DARÀ ERRORE O, NEI PEGGIORI DEI CASI, PUÒ RENDERE INSTABILE IL COMPUTER!
  2. Se hai macOS Catalina o superiore, avvia questo comando per sbloccare il disco:
    sudo mount -uw /

    Se hai invece Mojave o precedenti, passa al punto 3.

    Nota: Se hai un hackintosh e, avviando quel comando, dà questo errore sotto, potresti avere il SIP parzialmente abilitato per qualche motivo. Hai disattivato il SIP?
    (Ringrazio Broogle per avermi fatto notare dell’errore)

    mount_apfs: volume could not be mounted: Operation not permitted
    mount: / failed with 77
  3. Inserisci, uno alla volta, questi comandi, sostituendo [nome disco] con il nome del tuo disco dove hai installato macOS (per controllarlo, apri Utility Disco in Applicazioni > Utility dal Finder e vedi il nome della partizione (es. Macintosh HD))
    cd "/Volumes/[nome disco]/sbin"
    sudo mv mount_ntfs mount_ntfs.orig
    sudo ln -s /usr/local/sbin/mount_ntfs mount_ntfs
  4. Riavvia il Mac, inserisci la tua chiavetta USB e prova a creare la cartella. Se ci riesci, hai completato la guida 😉
  5. (opzionale, ma consigliata) Dopo esserti assicurato che ora riesci a portare modifiche ai device NTFS, riabilita SIP cliccando qui.

Fonte: wiki osxfuse

Ripristino

Vuoi ritornare a com’era prima? Nessun problema, segui questi passaggi per ripristinare il mount tool di Apple e disinstallare NTFS-3G.

  1. Prima di procedere, devi disattivare il SIP, se non lo hai già fatto
  2. Avvia il Terminale (Applicazioni > Utility)
  3. Se hai macOS Catalina o superiore, avvia questo comando per sbloccare il disco:
    sudo mount -uw /

    Se hai invece Mojave o precedenti, passa al punto 4.

    Nota: Se hai un hackintosh e, avviando quel comando, dà questo errore sotto, potresti avere il SIP parzialmente abilitato per qualche motivo. Hai disattivato il SIP?
    (Ringrazio Broogle per avermi fatto notare dell’errore)

    mount_apfs: volume could not be mounted: Operation not permitted
    mount: / failed with 77
  4. Avvia questo comando per ripristinare mount_ntfs, sostituendo [nome disco] con il nome del tuo disco dove hai installato macOS (per controllarlo, apri Utility Disco in Applicazioni > Utility dal Finder e vedi il nome della partizione (es. Macintosh HD))
    sudo mv "/Volumes/[nome disco]/sbin/mount_ntfs.orig" "/Volumes/[nome disco]/sbin/mount_ntfs"
  5. Disinstalla NTFS-3G inviando questo comando:
    brew uninstall ntfs-3g-mac
  6. (opzionale) Rimuovi FUSE aprendo il Terminale e inviando questo comando:
    brew cask uninstall macfuse

    Assicurati di non star usando programmi che dipendono da FUSE (es. pCloud Drive) per evitare problemi nel loro utilizzo.

  7. (opzionale) Rimuovi Homebrew inviando questo comando:
    /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/uninstall.sh)"

    Se non dovesse funzionare o dovesse dare errori/avvisi, controlla questa pagina FAQ.
    Nota bene: Se elimini Homebrew, elimini anche FUSE!

  8. Riavvia il Mac, inserisci la tua chiavetta USB e prova a creare una cartella. Se non riesci, vuol dire che hai correttamente ripristinato il mount tool e, quindi, completato il ripristino.
  9. (opzionale, ma consigliata) Dopo aver fatto con successo il ripristino, riabilita SIP ⬇️

Riabilita SIP

Nota: se hai una versione di OS X precedente alla 10.11, riattivare il SIP è inutile e puoi tranquillamente ignorare questa parte.

Questa appendice è opzionale ma fortemente consigliata, perché il SIP rende il tuo Mac meno vulnerabile. Per farlo è uguale a come avevi fatto prima nel disabilitare il SIP, solo che il nuovo comando da inviare lo riabilita.

  1. Spegni il Mac e riaccendilo; prima che compare il logo di Apple, tieni premuto cmd (⌘) + R per entrare in modalità recovery
  2. Dopo qualche minuto (può metterci di più se lo sta scaricando (Internet Recovery, la Terra che gira)), sarai nella modalità recovery
  3. Sulla barra in alto clicca su Utility e apri il Terminale
  4. Aperto il terminale, scrivi questo comando e premi Invio:
    csrutil enable
  5. Se compare questo, complimenti! Hai riabilitato il SIP. Non ti resta che riavviare il Mac 🙂
    Successfully enabled System Integrity Protection.
    Please restart the machine for the changes to take effect.

Metodo fstab

Se non vuoi/puoi installare programmi o devi subito aggiungere un file nel tuo disco NTFS, puoi usare questo metodo sperimentale che permette di abilitare manualmente in un disco la scrittura NTFS tramite /etc/fstab.

Io ti sconsiglio di utilizzare questo metodo perchè è sperimentale e instabile e può portare alla perdita di dati. Usalo SOLO se non puoi usare gli altri metodi ed è urgente.
Nè OpenSlime nè Learn-a-holic Geek Notes si assumono la responsabilità su quello che stai facendo. FAI A TUO RISCHIO E PERICOLO!

Fonte metodo: Learn-a-holic Geek Notes

  1. Vai su Applicazioni > Utility dal Finder e apri il terminale (o clicca sulla lente di ingrandimento in alto a destra e scrivi “Terminale”)
  2. Scrivi e invia questo comando:
    sudo nano /etc/fstab

    Se non ti piace usare nano, puoi usare altri text editor, come vim, nvim, emacs o altri. Inserisci la tua password quando te lo chiede

  3. Dopo aver aperto il text editor preferito, inserisci questa riga, sostituendo “device-name” con il nome del tuo disco NTFS:
    LABEL=device-name  none    ntfs    rw,auto,nobrowse

    Attenzione: se il disco NTFS ha gli spazi nel suo nome sostituiscili con \040 (es. Se il disco si chiama “USB Slime” dovrai mettere USB\040Slime).

  4. Salva il file e chiudi il text editor. Se stai usando nano, premi CTRL + X e poi Y per salvare. Per vim/nvim, premi ESC e poi digita :wq
  5. Perfetto! Hai completato la guida, ma il disco montato non compare nel desktop. I dischi vengono montati in /Volumes. Per risolvere il problema, invia questo comando per creare un alias (anche noto come collegamento). Inserisci la tua password quando te lo chiede, se necessario:
    sudo ln -s /Volumes ~/Desktop/Volumes
  6. Da ora in poi, quando collegherai la tua chiavetta USB con NTFS, dovrai aprire la cartella Volumes presente nel desktop e infine aprire il disco montato
  7. Per montare un altro disco NTFS, dovrai ripetere la guida.

Ripristino

Vuoi ritornare a com’era prima? È molto semplice e richiede solo un comando:

  1. Apri il Terminale (Applicazioni > Utility) e scrivi questo comando:
    sudo rm /etc/fstab
  2. Perfetto! Ripristino completato 😀
  3. Se hai aggiunto un altro disco NTFS e vuoi rimuovere solo uno senza eliminare totalmente il file /etc/fstab, puoi modificare quel file (sostituisci nano con un altro text editor se vuoi):
    sudo nano /etc/fstab

    Elimina solo la riga rivolta al disco NTFS da rimuovere, poi salva il file:

    LABEL=USBSlime  none    ntfs    rw,auto,nobrowse
    LABEL=DaEliminareUSB none ntfs rw,auto,nobrowse <-- Elimina tutta la riga
    (esempio)

Metodo programmi a pagamento

Se non vuoi proprio mettere mani al terminale, esistono programmi che permettono di abilitare il supporto alla scrittura su NTFS in modo semplice e veloce. I programmi consigliati per questo scopo sono Tuxera NTFS e Paragon NTFS. I vantaggi, oltre alla semplicità d’uso, sono le ottime prestazioni in scrittura e lettura rispetto a NTFS-3G. Lo svantaggio è che sono a pagamento, ma offrono una versione di prova (15 giorni per Tuxera, 10 giorni per Paragon) per testare i programmi e decidere quale comprare tra i due.

Sotto ti lascio i pulsanti per vedere questi prodotti:

Tuxera NTFS

Paragon NTFS

Questo è tutto! Sei riuscito a risolvere il problema? Con quale metodo?
Diccelo scrivendo un commento qui sotto ⬇️

Ricordati di seguirci su Twitter e sul nostro canale Telegram per non perdere gli ultimi articoli di OpenSlime 😉