16 votos

¿Cómo puedo hacer que Automator monte un volumen de red?

Estoy escribiendo un Automator "script" que rsync s en mi MacBook Pro 10.6.3 a mi HTPC Ubuntu 10.10. Puedo hacer que Automator ejecute mi shell script para rsync pero no puedo hacer que Automator monte los tres volúmenes en el HTPC (carpetas para música, vídeos y fotos).

Yo monto automáticamente estos volúmenes cuando me conecto (estos ordenadores se conectan a través de una red wifi), pero a veces los volúmenes del HTPC se desmontan, así que me gustaría volver a montarlos por defecto.

¿Hay alguna manera de montar los volúmenes en Automator? También estoy abierto a las secuencias de comandos de shell. Gracias.

0 votos

Jason, ¿puedes explicarme qué debo hacer en Mac para añadir esto a los 'elementos de acceso', me refiero a 1. ¿Cómo crear este script? 2. ¿Qué debo hacer para que se ejecute al inicio en mi Mac? ¡Gracias de antemano!

9voto

offby1 Puntos 206

Construyo flujos de trabajo de Automator como este todo el tiempo. Sólo necesitas dos acciones, y ambas son acciones de Archivos y Carpetas.

1) Obtener los servidores especificados. Esto le permitirá crear una lista de acciones a las que conectarse. Si puedes mapearlo desde Finder -> Ir -> Conectar al servidor, puedes usar esto.

2) Conectar con los servidores. Se conectará a cualquier servidor que se le pase (ya sea desde get specified servers o desde ask for servers).

0 votos

+acuerdo: así es exactamente como lo hago en un flujo de trabajo rsync que utilizo para sincronizar una biblioteca de iTunes. Asegúrate de utilizar Expulsar Volúmenes si no quieres que la unidad de red siga conectada una vez finalizado el flujo de trabajo.

1 votos

La expulsión de volúmenes también es útil si quieres un flujo de trabajo "inverso". Yo utilizo el procedimiento que he descrito anteriormente como parte de un flujo de trabajo que ejecuto al llegar al trabajo (abrir programas, conectarme a servidores e incluso entrar de forma remota en una máquina virtual). Al final del día, tengo otro que desconecta todos mis servidores y cierra todos mis programas.

8voto

Martin Ongtangco Puntos 111

Utilizo el siguiente applescript para montar directorios junto con MarcoPolo para que los recursos compartidos de la red se monten automáticamente cuando llego a mi oficina y a mi casa.

Tendrá que cambiar USERNAME, PASSWORD, SERVER/SHARENAME y posiblemente smb:// dependiendo de su tipo de servidor.

tell application "Finder"
    try
        mount volume "smb://USERNAME:PASSWORD@SERVER/SHARENAME"
        delay 1
    end try
end tell

ACTUALIZACIÓN : Una opción sin MarcoPolo: Puedes hacer un ping al servidor primero y sólo intentar conectarte si obtienes respuesta. Entonces puedes añadir este script en tu Elementos de acceso

(Digamos que usted está tratando de conectarse a un servidor llamado "some_server")

-- (0) Check to see if there server exists by pinging it
set max_retry to 60
set k to 0
repeat while (do shell script "ping -c 1 some_server") contains "100% packet loss"
    delay 5
    set k to k + 1
    if k > max_retry then error "Server is not responding for predefined period." number 8000
end repeat

-- (1) It exists, mount the volume
tell application "Finder"
    try
        mount volume "smb://USERNAME:PASSWORD@some_server/SHARENAME"
        delay 1
    end try
end tell

0 votos

¿Por qué el delay 1 ? y parece que puedo montar las unidades sin la línea tell application "Finder" . Sólo estoy husmeando porque mi aplicación automatizadora de montaje de volúmenes ha sido realmente lenta, y un poco menos fiable, desde la actualización a Big Sur

2 votos

Es difícil pensar que esta respuesta tiene ya más de 10 años. El delay 1 estaba allí para que el scriptse ejecutara, conectara y luego ejecutara un scriptde copia adicional (no incluido en lo anterior). El retraso aseguraba que el volumen se copiara antes de iniciar el script. Eso fue en una red de oficina entonces lenta.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X