Execução automática do script de montagem do Windows após o login como raiz

1

Procurei em todos os lugares por uma solução que me permita executar o script de montagem automática do CIFS após o login, com um atraso de cerca de 20 segundos. O que eu tentei. Adicionado o script para o visudo:

rait ALL=(ALL) NOPASSWD: /home/rait/Downloads/Testing/mount.sh, /bin/mount

Depois disso, o script foi adicionado a Aplicativos de inicialização , mas não funciona. Também tentei adicioná-lo ao .bash_profile e rc.d. No rc.d ele funciona, mas isso não é executado após o login. Eu preciso disso após o login, porque ele vai pedir às pessoas o seu usuário AD e senha via GUI. O script em si é assim:

    #!/bin/bash
MOUNTDIR=Public
DIRNAME=Avalik
DOMAIN=Domain
SERVER=server_adr
SHARE=shares

if [ ! -d ${HOME}/Documents/${DIRNAME} ]; then
    mkdir ${HOME}/Documents/${DIRNAME}
fi

# get the windows username
wUsername='zenity --entry --width=300 --title="Mount $MOUNTDIR" --text="Kasutaja
nimi:"'
if [ $? -ne 0 ]; then
    exit 1
fi

# get the windows password
wPassword='zenity --entry --width=300 --title="Mount $MOUNTDIR" --text="Parool:"
 --hide-text'
if [ $? -ne 0 ]; then
    exit 1
fi

mount -t cifs //$SERVER/$SHARE ${HOME}/Documents/${DIRNAME} -o username=${wUsern
ame},password=${wPassword},domain=${DOMAIN}

if [ $? -eq 0 ]; then
    zenity --info --title="Mount OK!" --text="Mount OK!"
else
    zenity --error --title="Mount Failed!" --text="Mount Failed!"
fi

Espero que alguém saiba como fazer isso.

PS: Depois que eu editei o visudo agora ele pede senha de root depois que eu abro o terminal. Então terminal me pede senha sudo quando eu abri-lo após o login. Uma vez que eu removo a linha que deve rodar o script no visudo ele não pede mais senha.

Por favor ajude:)

    
por mYzk 14.05.2014 / 13:55

2 respostas

0

Corrigido adicionando isso aos sudoers:

%sudo   ALL=(ALL) NOPASSWD: /bin/mount, /bin/umount

E o comando Aplicativos de inicialização foi editado, então foi /home/user/script/path/script.sh e começou a funcionar. Também foi adicionado o sudo infront do comando mount no script.

Obrigado por ajudarem vocês:)

    
por mYzk 15.05.2014 / 08:34
0

Não sei se isso é uma solução para o seu problema, mas você pode tentar usar o sinalizador setuid . Para fazer isso, torne seu script de propriedade de root ( chown root:root <filename> ) e, em seguida, chmod +s <filename> it.

É claro que você tem que ter cuidado com os programas que você faz setuid root, já que se o programa tem uma falha de segurança para que seus usuários possam executar código arbitrário, ele pode ser mal utilizado para obter acesso root.

Em relação ao início automático após o login, acho que, de fato, "Startup Applications" é o lugar para colocá-lo.

    
por soulsource 14.05.2014 / 14:11