Ho creato uno script che si connette a un'unità di rete quando iTunes è in esecuzione. Puoi scaricarlo da questa pagina di prova (cerca "raw" link per il download).
#!/bin/sh
HOST="hostname" # AFP server, e.g. server.local or 192.168.1.94 or…
USER="your_user_name" # for connection to AFP server
PASS="your_password" # for connection to AFP server
VOLUMENAME="your_volume_name" # name of volume to be mounted, typically username on AFP server.
while :
do
if [[ $(ps axo pid,command | grep "/Applications/[i]Tunes.app/Contents/MacOS/iTunes ") ]]; then
if [ ! -d "/Volumes/${VOLUMENAME}" ]; then # iTunes runs, Server not mounted
echo "iTunes runs, now mounting ${VOLUMENAME}..."
mkdir "/Volumes/${VOLUMENAME}"
mount_afp afp://${USER}:${PASS}@${HOST}/${VOLUMENAME} "/Volumes/${VOLUMENAME}"
fi
fi
sleep 2
done # start over
Fondamentalmente, viene eseguito in un ciclo infinito e controlla ogni due secondi se iTunes.app è in esecuzione. In tal caso, controlla se il tuo volume AFP è già montato, e lo fa in caso contrario.
Dovrai configurare lo script prima di eseguirlo per la prima volta, vedere le variabili in cima allo script. VOLUMENAME è il nome della normale finestra di dialogo di connessione AFP ( ssd in questo caso):
Perverificareselacosafunzionainlineadiprincipio:supponiamocheloscriptsiasuDesktop
,intipoTerminalecd~/Desktop/
,poi./mount_afp_when_itunes_running.sh
.
IncasodiPermissiondenied
,impostaleautorizzazionidelfileinmodochetupossaeseguireloscriptconchmod755mount_afp_when_itunes_running.sh
,quindiriprova.
Infine,setuttofunziona,puoiavviarequestoscript automaticamente tramite un Launch Agent .