So che questa è in qualche modo una vecchia domanda / risposta, ma ora sto riprovaggiando questo in Yosemite e ho aggiunto un piccolo dettaglio a questa configurazione: visto che sono su Yosemite sono stato costretto ad applicare Il metodo "root invece di sudo" di Benjamin funziona attualmente come previsto, ma non mi piaceva avere un'icona per il volume dell'istantanea, qualcosa che non dovresti vedere e accedere mentre fai cose normali come un utente, quindi io scegli di nascondere l'icona del volume dell'istantanea usando il comando SetFile (che, afaik, è installato tramite xcode)
utilizzando i percorsi degli esempi precedenti, sarebbe:
SetFile -a V /Volumes/HDD/
e pouf, l'icona del volume è scomparsa: le istantanee locali sono di nuovo totalmente invisibili, come al solito, ma sono ancora montate (puoi sfogliare e persino aprire directory tramite terminale, come con qualsiasi altra directory invisibile nel tuo filesystem)
Ho persino creato un piccolo script di shell (non testato, perché l'ho già fatto manualmente, quindi PRESTARE ATTENZIONE PRIMA DI ESEGUIRE , poiché è necessario eseguirlo come root come spiegato da Benjamin nel suo commento / risposta )
Nota finale, solo fyi: per quello che posso vedere ora, il volume dell'istantanea può essere normalmente crittografato
Grazie per il tuo lavoro, ecco lo script di bash, chiaramente basato sulle tue risposte:
#!/bin/sh
# description:
# move /.MobileBackups to a different volume, to avoid wearing your SSD
# this script must me run as root, not via sudo.
# based on http://apple.stackexchange.com/questions/80183/any-way-to-change-the-location-of-time-machine-local-backups-mobilebackups-t
################################################################################
# safety measure to avoid kids running this script with no clue and blaming me.
# comment it
echo "always check what you run before running it" && exit
# syntax/help
if [ -z "${1}" ] ; then
echo "\nusage:\t'basename ${0}' /Volumes/SnapshotVolume\n"
echo "*** Please note that this script MUST be run as root, not via sudo ***"
echo "*** just run \"sudo su\", insert your password and THEN run this script ***"
echo
exit
fi
# checks that this script is run being root, not via sudo
homeDir='echo ~'
if [ "${homeDir}" != "/var/root" ] ; then
echo
echo "*** Please note that this script MUST be run as root, not via sudo ***"
echo "*** just run \"sudo su\", insert your password and THEN run this script ***"
echo
exit
fi
# get dest volume path
snapVolume="${1}"
# create a "Backups" directory inside the snapshot volume root directory
# please note that this is a safety measure: if the snapshot volume is not
# excluded from time machine backups, you'll find an already existing directory
# at /Volumes/SnapshotVolume/.MobileBackups (each volume has his own directory)
# so, to avoid any mess, I prefer to make a Backups directory and put the actual
# .MobileBackups inside it, at a non volume-root level
mkdir ${snapVolume}/Backups
# duplicate the existing .MobileBackups to the destination path
rsync -ahvHE /.MobileBackups ${snapVolume}/Backups/
# this double command will remove the existing /.MobileBackups directory and,
# if and only if the rm command exits with no errors, symlink the new directory
# cloned in the 2nd hard drive to the main drive /.MobileBackups path
rm -rf /.MobileBackups && ln -s ${snapVolume}/Backups/.MobileBackups /.MobileBackups
# makes the snapshot volume invisible in finder
SetFile -a V ${snapVolume}
# a final test, just because..
tmutil snapshot