Help Unmouting disk se UUID è montato fino a un tempo specifico

3

Ogni mattina ho la stessa routine.

Vengo a lavoro e collego le mie periferiche incluso il mio Time Machine Backup. Ho il mio Time Machine programmato per eseguire solo un backup giornaliero alle 3:30 pm. Vorrei eseguire uno script o un. Launch Launcher per controllare automaticamente tutti i dischi rigidi esterni inseriti e smontare se

UUID = 32E89C07-FFDB-36F3-8CE8-5DC0560AFEC4  

E poi montalo alle 15:15. Non voglio che il mio disco sia collegato tutto il giorno solo per usarlo per 30 minuti per eseguire il backup di tutto.

So che questo potrebbe essere risolto solo inserendo manualmente l'unità alle 3:15. Tuttavia, alcuni giorni sono in una riunione o lontano dalla scrivania e cosa no.

Sono stato in grado di trovare la documentazione su come espellere automaticamente il dispositivo in un momento specifico, quindi non devo ricordarmi di rimuovere in modo sicuro l'unità.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
    <dict>
        <key>Label</key>
            <string>com.diskejector.Backup</string>
        <key>ProgramArguments</key>
        <array>
            <string>/usr/sbin/diskutil</string>
            <string>unmountDisk</string>
            <string>32E89C07-FFDB-36F3-8CE8-5DC0560AFEC4</string>
        </array>
        <key>StartCalendarInterval</key>
        <dict>
            <key>Hour</key>
                <integer>16</integer>
            <key>Minute</key>
            <integer>45</integer>
        </dict>
    </dict>
</plist>

Vorrei aiuto per l'avvio automatico di uno script .sh che potrebbe includere anche il codice precedente che devo espellere l'unità alla fine della giornata.

    
posta Craig Carroll 12.10.2016 - 22:26
fonte

1 risposta

1

Non sono necessari script di shell se si utilizzano due agenti di avvio.

È necessario l'UUID dell'unità di backup Time Machine:

diskutil info $VolumeName | grep "Disk / Partition UUID:"

Sostituisci $VolumeName con il nome effettivo del volume dell'unità TM. Se il nome contiene spazi, utilizzare virgolette doppie (ad esempio "Unità di backup di Time Machine".

Crea due file usr.tmvolume.unmount.plist e usr.tmvolume.mount.plist in ~ / Libreria / LaunchAgents /:

nano ~/Library/LaunchAgents/usr.tmvolume.mount.plist

con il contenuto

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Label</key>
    <string>usr.tmvolume.mount</string>
    <key>ProgramArguments</key>
    <array>
        <string>/usr/sbin/diskutil</string>
        <string>mount</string>
        <string>$UUID</string>
    </array>
    <key>StartCalendarInterval</key>
    <array>
        <dict>
            <key>Hour</key>
            <integer>15</integer>
            <key>Minute</key>
            <integer>15</integer>
        </dict>
    </array>
</dict>
</plist>

e

nano ~/Library/LaunchAgents/usr.tmvolume.unmount.plist

con il contenuto:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>Label</key>
    <string>usr.tmvolume.unmount</string>
    <key>ProgramArguments</key>
    <array>
        <string>/usr/sbin/diskutil</string>
        <string>unmount</string>
        <string>$UUID</string>
    </array>
    <key>StartCalendarInterval</key>
    <array>
        <dict>
            <key>Hour</key>
            <integer>8</integer>
            <key>Minute</key>
            <integer>30</integer>
        </dict>
        <dict>
            <key>Hour</key>
            <integer>15</integer>
            <key>Minute</key>
            <integer>45</integer>
        </dict>
    </array>
</dict>
</plist>

Sostituisci $ UUID in entrambi gli elenchi con l'UUID del tuo volume di Time Machine trovato in precedenza.

Carica entrambi i plists con:

launchctl load ~/Library/LaunchAgents/usr.tmvolume.*

Ora l'unità di backup TM verrà smontata alle 8:30, montata alle 15:15 e smontata di nuovo alle 15:45. Regola le date in base alle esigenze.

    
risposta data 13.10.2016 - 01:24
fonte

Leggi altre domande sui tag