Da sua pergunta, não está totalmente claro se você precisa estar dentro do diretório CMDexecutable (e, portanto, cd ) ou se o caminho completo serviria, mas a única A opção que vejo é adicionar o script ao arquivo sudoers , conforme descrito aqui .
Então você pode executar o script com sudo , sem precisar digitar a senha.
Você pode simplesmente executar o script ( python ) e, em seguida, pelo comando
sudo <script>
como foi dito, sem ser solicitada a senha.
Nota (muito) importante
É evidente que você precisa armazenar o script em um local onde não possa ser editado sem sudo privileges. Como o script pode ser executado sem digitar a senha, você precisa ter certeza de que seu conteúdo não será alterado por nenhum outro processo ou código possivelmente malicioso.
Além disso, (talvez seja superfluously, mas já que eu não sei o contexto exato) pelo mesmo motivo, você precisa ter absoluta certeza de que CMDexecutable e tudo o que ele roda não é possível alvo de "alterações maliciosas".
Editar
Como você mencionou que não pode alterar o comando inicial para executar o script python em um comando sudo , faça o seguinte:
-
Dentro do seu script
python, crie um comando para executar um script secundário , executado com o sudo:sudo <script> -
Adicione este script secundário ao arquivo
sudoers, para ser executado sem senha. Dessa forma, o scriptpython(main) executará o comando sem precisar digitar a senha.
Gostaria de salientar, no entanto, que isso parece uma manta de retalhos, e não tenho conhecimento sobre possíveis riscos de segurança. Certifique-se de que todos os arquivos executados a partir do primeiro comando sudo "tree" não são alvos possíveis para edição mal-intencionada.