Ayuda al disco Unmouting si UUID se monta hasta un tiempo específico

3

Cada mañana tengo la misma rutina.

Entro a trabajar y conecto mis periféricos, incluida la copia de seguridad de Time Machine. Tengo mi Time Machine programado para ejecutar solo una copia de seguridad diaria a las 3:30 pm. Me gustaría ejecutar un script o un .plist LaunchDeamon para verificar todos los discos duros externos insertados automáticamente y desmontarlos si el

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

Y luego montarlo a las 3:15 pm. Simplemente no quiero que mi disco esté conectado todo el día solo para usarlo durante 30 minutos para hacer una copia de seguridad de todo.

Sé que todo esto podría resolverse si simplemente conecto manualmente la unidad a las 3:15. Sin embargo, algunos días estoy en una reunión o lejos de la mesa y qué no.

Pude encontrar documentación sobre cómo expulsar automáticamente el dispositivo en un momento específico, por lo que no tengo que acordarme de extraer la unidad de forma segura.

<?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>

Me gustaría algo de ayuda con el inicio automático de un script .sh que también podría incluir el código anterior que tengo para expulsar la unidad al final del día.

    
pregunta Craig Carroll 12.10.2016 - 22:26

1 respuesta

1

No se necesita un script de shell si utiliza dos agentes de inicio.

Necesita el UUID de su unidad de copia de seguridad de Time Machine:

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

Reemplace $VolumeName por el nombre de volumen real de su unidad TM. Si el nombre contiene espacios, utilice comillas dobles (por ejemplo, "Unidad de copia de seguridad de Time Machine".

Cree dos archivos usr.tmvolume.unmount.plist y usr.tmvolume.mount.plist en ~ / Library / LaunchAgents /:

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

con el contenido

<?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>

y

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

con el contenido:

<?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>

Reemplace $ UUID en ambas listas por el UUID del volumen de Time Machine encontrado anteriormente.

Cargue ambas listas con:

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

Ahora la unidad de copia de seguridad TM se desmontará a las 8:30 am, se montará a las 3:15 pm y se desmontará de nuevo a las 3:45 pm. Ajuste las fechas según sea necesario.

    
respondido por el klanomath 13.10.2016 - 01:24

Lea otras preguntas en las etiquetas