Posso inicializar em outra partição do Mac OS X a partir da linha de comando?

5

Eu preciso testar algum software (todas as noites) em 3 versões do Mac OS X: 10.4, 10.5, 10.6 - o software faz interface com o hardware, portanto soluções não-nativas (como virtualização) não são ideais.

Então eu imaginei que a melhor maneira de testar o software (que é automático a propósito) é ter uma partição para cada versão do sistema operacional. Dessa forma, posso inicializar uma versão específica para testar o software.

Isso precisa ser feito em uma programação cronometrada, então eu esperava poder executar um comando como este em um crontab:

reboot --to "Mac OS X 10.5"

É algo assim possível, ou eu preciso escrever meu próprio software para fazer isso?

    
por Nick Bolton 21.10.2010 / 20:50

2 respostas

7

Não tenho conhecimento de nenhum aplicativo que possa fazer isso, mas, fazendo algumas pesquisas, há duas sugestões.

Primeiro, use o AppleScript para selecionar o disco de inicialização . A idéia básica é usar o seguinte, você pode selecionar a partição de inicialização e depois reiniciar.

do shell script "bless -mount \"/Volumes/Name of the drive\" -setBoot" with administrator privileges do shell script "shutdown -r now" with administrator privileges.

Você pode então usar osascript para executar o AppleScript acima de seu crontab .

Alternativamente, você pode instalar o rEFIt , que permite selecionar um sistema operacional na inicialização e modificar os arquivos de inicialização usando um comando bash que pode alterar o sistema operacional padrão para inicializar. Não tenho como confirmar que isso pode ser feito, mas é uma opção.

O acima é mostrado como um AppleScript, e desde que o artigo de origem se refere a ele eu estou mantendo-o no formato original, no entanto, como foi apontado nos comentários, os dois comandos podem ser executados no shell diretamente sem precisar do AppleScript

    
por 21.10.2010 / 20:58
1

O comando nvram permitem que você modifique o parâmetro NVRAM que especifica de qual partição inicializar.

    
por 21.10.2010 / 20:57