Executando script com permissão de superusuário

1

Eu preciso criar um script para modificar alguns dados, o que exigiria permissão de superusuário. Existe alguma maneira de automatizar esse processo via shell script no Mac 10?

Exemplo de script:

sed s/Hello/World/g /usr/local/opt/test.xml 

Para executar este script, o usuário precisa de permissão de superusuário, existe alguma maneira de fornecer credenciais raiz no script e executá-lo?

    
por Santosh M 19.05.2011 / 18:19

1 resposta

1

Você pode alterar as permissões no arquivo de script de shell para executá-lo automaticamente como root.

A partir do manpage chmod:

4000    (the set-user-ID-on-execution bit) Executable files with
        this bit set will run with effective uid set to the uid of
        the file owner.  Directories with the set-user-id bit set
        will force all files and sub-directories created in them to
        be owned by the directory owner and not by the uid of the
        creating process, if the underlying file system supports
        this feature: see chmod(2) and the suiddir option to
        mount(8).

Um exemplo de comando pode ser semelhante:

sudo chown root:root file.sh
sudo chmod 4755 file.sh
    
por 21.05.2011 / 20:49