Como alterar este script OSX

2

Eu fiz um script para desligar meu computador automaticamente. O problema é que ele sempre pergunta a senha. Como isso deve ser mudado?

do shell script "shutdown -h now" with administrator privileges and password
    
por tony_sid 17.11.2010 / 01:35

4 respostas

1

fazer o shell script "shutdown -h now", em teoria seria .... mas isso resulta em uma mensagem de aviso "não-super-usuário".

Tanto quanto eu posso dizer, e faz sentido, você tem que ser super-usuário para reiniciar o sistema a partir da linha de comando. Por que isso faz sentido? porque você não quer que alguém reinicialize o computador a partir de uma sessão ssh, se eles não tiverem acesso de super usuário / root ...

Eu estaria interessado se alguém encontrasse uma maneira de fazer isso ...

Scott está certo ...

Diz ao aplicativo "finder" para reiniciar - Reinicie o sistema Diga aplicativo "finder" para desligar - sistema de desligamento

Mas isso fará com que o usuário salve os arquivos não salvos ... Então, se você tentar ignorar os prompts, não funcionará.

    
por 17.11.2010 / 02:49
1

Aqui você vai:

do shell script "shutdown -h now" user name "me" password "mypassword" with administrator privileges
    
por 31.12.2010 / 00:21
1

Embora seja um risco de segurança, uma maneira de fazer isso seria alterar o proprietário do seu script para root e, em seguida, alterar o bit setuid.

  1. crie o script da apple conforme descrito e salve-o na sua área de trabalho como shut_me_down

  2. abra um terminal, cd para sua pasta Desktop e execute:

    chmod -R u+s shut_me_down.app/
    sudo chown -R root shut_me_down.app/
    
  3. Agora, quando você clica duas vezes no ícone shut_me_down em sua área de trabalho, ele deve ser desligado sem nenhum aviso.

Se você está procurando uma forma de linha de comando para fazer isso (ao invés de clicar em um ícone na área de trabalho) então você pode pular o setuid / chmod e editar seu arquivo sudoers usando

sudo visudo

Adicione o seu userid como alguém que pode rodar o sudo sem uma senha e tente executar o script usando o "sudo scriptname"

Aqui está um link que pode ajudar também: Tornar um executável executado como root toda vez - MacOSX.com

    
por 30.12.2010 / 23:12
0

Isso não funcionaria?

tell application "Finder" to shut down
    
por 17.11.2010 / 02:10