No Mac OS X, como posso desativar o registro no diário no desligamento e reativá-lo na inicialização?

No Mac OS X, como posso desativar o registro no diário no desligamento e reativá-lo na inicialização?

O porquê: quero compartilhar uma partição inicial com o Ubuntu, mas não quero desistir do registro no diário enquanto inicializo no Mac OS X (Snow Leopard), se não for necessário.

O que eu descobri:

Os comandos que eu quero são

diskutil disableJournal /Users

e

diskutil enableJournal /Users

(O volume está montado em /Users)

rc.locale rc.local.shutdownpareciam promissores no início, mas acho que há uma dependência que os exclui.

Tentei fazer um StartupItem, mas não estava funcionando.

O que estou olhando:

Qual é a explicação de como fazer um StartupItemespecificamente para isso? Eu tenho a essência disso, mas estou perdendo algumas sutilezas.

Qual é a explicação de por que uma StartupItemé a maneira errada de agir e um curso de ação sugerido?

Existe uma solução fácil realmente óbvia ou todo esse esforço é inútil? Qual é a explicação?

Responder1

Em primeiro lugar, em qual versão do OS X você está?

Em segundo lugar, apenas um esclarecimento: presumo que o motivo pelo qual você precisa desabilitar o registro no diário é que o Ubuntu não suporta leitura e/ou gravação em volumes HFS + Journaled?

Ou, espere, o que diabos ....

diskutil disableJournalsegue um caminho para um volume, não para uma pasta arbitrária.

Então, se sua pasta pessoal estiver localizada na unidade raiz, em /Users/, você faria algo como

diskutil disableJournal /

Ou você tem um volume chamado Usuários? Se sim, você usaria:

diskutil disableJournal /Volumes/Users

Ok, ambos rce o StartupItemmétodo estão obsoletos há algum tempo. Ambos foram basicamente substituídos por launchd, que assumiu o lugar de init(acho que, de qualquer forma, você notará que launchd é PID 1).

Embora eu ache que StartupItems ainda seja compatível com 10.6, rc não é oficialmente compatível, como man rcafirma:

rc.localagora não é compatível e foi substituído por launchd(8), que se autoinicializa por meio do launchctl(1)subcomando bootstrap para ler launchd(8)trabalhos dos locais padrão.

Você pode verificar o seguinte para arquivos de definição do LaunchAgent e 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.

informação relacionada