En muchas ocasiones, los discos duros externos (e incluso los externos) ralentizan el uso del Mac ya que cuando es necesario acceder a una de estas unidades, hay que esperar a que todos los discos vuelvan del reposo automático para poder acceder a uno de ellos. La solución lógica es expulsar el o los discos que no usamos habitualmente y solo montarlos cuando realmente lo necesitamos … pero tampoco es cuestión de esta apagando o encendiendo unidades, sobre todo, porque muchos de estos dispositivos no incluyen botones de encendido.
La solución es sencilla: automatizar con Applescript estas operaciones.
Este script puede adaptarse fácilmente para solo expulsar, o solo montar discos o incluso añadirle un cuadro de diálogo para realizar una de estas acciones:
tell application «Finder»
if disk diskName exists then
eject disk diskName
else
tell current application
set deviceLine to (do shell script «diskutil list | grep «» & diskName & «» | awk ‘{ print substr($0,69,9) }'»)
if deviceLine = «» then
display dialog «El disco «» & diskName & «» no puede encontrarse.» buttons {«OK»} default button 1 with title «Error» with icon caution
end if
set foundDisks to paragraphs of deviceLine
repeat with i from 1 to number of items in foundDisks
set this_item to item i of foundDisks
if this_item contains «disk» then
do shell script «diskutil mountDisk /dev/» & this_item
end if
end repeat
end tell
end if
end tell
Fuente: mac OS X Hints
Gracias
Una cosita:
Cuando el primer IF es FALSE el script funciona perfectamente pero cuando es TRUE, la linea «eject disk diskName» devuelve » –> error number 0″ y no lo desmonta.
A qué se debe? alguna ayudita?
Creo que sé a que se debe el problema:
En mi caso lo que quiero desmontar es una partición del disco de sistema (tengo Snow y Lion). Existe alguna denominación para la PARTICIÓN en vez de para el DISK?