3 votos

Listado en Terminal del último volumen montado

Attach(1) de una misma copia. dmg crear un archivo en /Volumes carpetas que representan cada imagen. Dejemos que la primera imagen se llame Image los subsiguientes recibirán un número creciente en su cola, por ejemplo Image 1 , Image 2 y así sucesivamente.

Sin embargo, separar Image 1 y luego adjuntar otra instancia reciclará el id numérico, por lo que mi última imagen será realmente Image 1 .

Esto significa que no puedo confiar en ls(1) (por defecto ordenada lexicográficamente) para determinar la última imagen montada. No parece que tenga más éxito con ls -U o diskutil tampoco.

Es muy posible que se me escape algo. ¿Hay alguna manera de determinar de forma fiable en bash ¿la última imagen montada? Gracias.

3voto

Michael Zhou Puntos 167

La última línea de la salida de mount sería el último sistema de archivos montado.

0 votos

Lo prefiero por su brevedad y porque debe funcionan sin importar la versión del sistema operativo (X) (todavía tengo que probar esto en más de un sistema para estar seguro, ya que la página man no lo dice). Gracias.

1voto

klanomath Puntos 19587

Utilice grep "Image_Volume_Name" /var/log/system.log . Sustituir Image_Volume_Name por el nombre del volumen de la imagen montada (en el ejemplo siguiente dnscrypt-pkg ).

Oct 18 03:34:49 host kernel[0]: hfs: mounted dnscrypt-pkg on device disk7s1
Oct 18 03:34:49 host.sld.tld mds[70]: (Normal) Volume: volume:0x7f7fe6814c00 ********** Bootstrapped Creating a default store:1 SpotLoc:(null) SpotVerLoc:(null) occlude:0 /Volumes/dnscrypt-pkg 1
Oct 18 03:34:53 host kernel[0]: hfs: mounted dnscrypt-pkg on device disk8s1
Oct 18 03:34:53 host.sld.tld mds[70]: (Normal) Volume: volume:0x7f7fe7012c00 ********** Bootstrapped Creating a default store:1 SpotLoc:(null) SpotVerLoc:(null) occlude:0 /Volumes/dnscrypt-pkg 4
Oct 18 03:49:00 host kernel[0]: hfs: mounted dnscrypt-pkg on device disk5s1 
Oct 18 03:49:00 host.sld.tld mds[70]: (Normal) Volume: volume:0x7f7fe6883800 ********** Bootstrapped Creating a default store:1 SpotLoc:(null) SpotVerLoc:(null) occlude:0 /Volumes/dnscrypt-pkg 2

Esto funciona en sistemas antiguos (en el ejemplo anterior 10.9.5).

En Sierra hay que "canalizar" el identificador de disco que se encuentra en grep "Image_Volume_Name" /var/log/system.log del último disco montado a hdituil:

hdiutil info | grep disk5s1
/dev/disk5s1    48465300-0000-11AA-AA11-00306543ECAC    /Volumes/dnscrypt-pkg 2

La imagen más grande: utilice el interruptor -volname en hdiutil para renombrar el nombre del volumen de la imagen montada mientras se crea el archivo dmg. Así no tendrá que lidiar con miríadas de /Volúmenes/Imagen X s

0 votos

:Gracias por su información. Estoy tratando de construir un sistema en el que descargar un dmg como una actualización de mi aplicación. Me imagino que hay casos raros en los que un archivo de actualización anterior, por alguna extraña razón, no ha sido desmontado. En tales casos, mi script todavía necesita identificar la última actualización descargada (por un ejecutable diferente) y hacer uso de ella.

1 votos

@elderelder Hmm, todavía puede utilizar diferentes nombres de volumen o una rutina para comprobar el valor crc del update.dmg montado como /Volumes/Image\ X con hdiutil imageinfo -checksum ../update.dmg .

0 votos

Creo que entiendo lo que dices. Para reflexionar.

0voto

Ara listar todas las unidades montadas y las particiones que las acompañan desde el Terminal en Mac OS X, puede utilizar el comando diskutil con el indicador de lista. Esto se hace fácilmente en la línea de comandos escribiendo el siguiente comando: diskutil list Pulsa return para ver los resultados, mostrando todos los volúmenes montados, las unidades y sus respectivas particiones. Esto le dará una respuesta como la siguiente, listando las unidades montadas, sus nombres de volumen, el tamaño de la unidad y de las particiones, sus tipos de partición y la ubicación de su identificador:

1 votos

Gracias por su esfuerzo. Como usuario algo antiguo de StackOverflow, mi consejo bienintencionado es leer siempre la pregunta con atención. (A veces, esto significa más de una toma, al menos para mí.) He estado en tu lugar y sé que al principio podemos perder algunos puntos más finos. (Te animo a que te quedes y contribuyas. (No votaré negativamente tu respuesta).

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