En Mac OS X, ¿cómo puedo desactivar el registro en diario al apagar y volver a activarlo al arrancar?

En Mac OS X, ¿cómo puedo desactivar el registro en diario al apagar y volver a activarlo al arrancar?

El por qué: quiero compartir una partición de inicio con Ubuntu, pero no quiero dejar de llevar un diario mientras inicio Mac OS X (Snow Leopard) si no es necesario.

Lo que he descubierto:

Los comandos que quiero son

diskutil disableJournal /Users

y

diskutil enableJournal /Users

(El volumen está montado en /Users)

rc.localy rc.local.shutdownparecían prometedores al principio, pero creo que hay una dependencia que los descarta.

Intenté hacer un StartupItem, pero no se estaba ejecutando.

Lo que estoy buscando:

¿Cuál es una explicación de cómo hacer un StartupItemespecíficamente para esto? Tengo lo esencial, pero me faltan algunas sutilezas.

¿Cuál es una explicación de por qué una StartupItemes la forma incorrecta de actuar y un curso de acción sugerido?

¿Existe una solución fácil realmente obvia o todo este esfuerzo es inútil? ¿Cuál es la explicación?

Respuesta1

Primero que nada, ¿en qué versión de OS X estás?

En segundo lugar, solo una aclaración: supongo que la razón por la que necesita deshabilitar el registro en diario es que Ubuntu no admite la lectura y/o escritura en volúmenes HFS+ con registro en diario.

O, espera, ¿qué diablos...?

diskutil disableJournaltoma una ruta a un volumen, no a una carpeta arbitraria.

Entonces, si su carpeta de inicio está ubicada en la unidad raíz, en /Usuarios/, haría algo como

diskutil disableJournal /

¿O tienes un volumen llamado Usuarios? Si es así, usarías:

diskutil disableJournal /Volumes/Users

Bien, tanto rcel StartupItemmétodo como el han quedado obsoletos durante algún tiempo. Básicamente, ambos han sido reemplazados por launchd, que ha tomado el lugar de init(creo que, de todos modos, notarás que launchd es PID 1).

Si bien creo que los StartupItems todavía son compatibles con 10.6, rc no es oficialmente compatible, como man rcse indica:

rc.localAhora no es compatible y ha sido reemplazado por launchd(8), que se inicia a sí mismo mediante el launchctl(1)subcomando bootstrap para leer launchd(8)trabajos desde las ubicaciones estándar.

Puede comprobar lo siguiente para los archivos de definición de LaunchAgent y LaunchDaemon:

 ~/Library/LaunchAgents         Per-user agents provided by the user.
 /Library/LaunchAgents          Per-user agents provided by the adminis-
                                trator.
 /Library/LaunchDaemons         System-wide daemons provided by the admin-
                                istrator.
 /System/Library/LaunchAgents   Per-user agents provided by Mac OS X.
 /System/Library/LaunchDaemons  System-wide daemons provided by Mac OS X.

información relacionada