14 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.

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).

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

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