PDA

Visualizza la versione completa : freepopsd, kmail e sudo


Akiro
25-04-2009, 01:15
ciao a tutti,
sto cercando di automatizzare il lancio di freepopsd (utility che permette di scaricare della posta da caselle web senza POP3), successivamente Kmail, poi al termine del programma di posta lo script dovrebbe chiudere freepopsd.

Per far questo avevo pensato ad un banale:


#!/bin/bash
sudo /sbin/service freepopsd start
kmail -caption "%c"
sudo /sbin/service freepopsd stop

ma qui sorgono i dolori, anche inserendo in /etc/sudoers queste righe:


akiro localhost=NOPASSWD: /sbin/service
akiro localhost=NOPASSWD: /etc/init.d/freepopsd

riscontro dei problemi durante l'esecuzione dello script.
Ecco quali:


Password:
akiro is not allowed to run sudo on picci. This incident will be reported.
kmail(27211): The kwalletd service has been disabled
"/usr/bin/kmail(27211)" Error in thread 139913446643456 : "org.freedesktop.DBus.Error.ServiceUnknown - The name org.kde.nepomuk.services.nepomukstorage was not provided by any .service files"
"/usr/bin/kmail(27211)" Error in thread 139913446643456 : "QLocalSocket::connectToServer: Invalid name"
Password:


Per prima cosa si nota che mi chiede lo stesso la password... poi anche inserendo la pass dell'utente mi dice che non è permessa l'esecuzione del comando... poi mi apre la schermata di Kmail ma ovviamente anche se tento di scaricare la posta non riesco, dato che l'utility non è partita...

Avete qualche idea?

sacarde
26-04-2009, 17:40
prova con:

utente ALL=(ALL) ALL



p.s.
la password di kmail e' memorizzata ?

Akiro
27-04-2009, 17:05
ok, farò una prova per vedere se il comando più permissivo funziona, però io vorrei essere un po' più preciso e limitativo specificando macchina e programma.


ps. quale password?? :fagiano: :fagiano:
quando lancio lo script mi chiede una password, io inserisco quella dell'utente ma come si può veder dall'output non gli piace:
"akiro is not allowed to run sudo on picci. This incident will be reported."

Akiro
27-04-2009, 20:14
ok, con
akiro ALL=(ALL) ALL

funziona, però il problema adesso è una volta lanciato kmail lo script esegue subito lo stop del servizio, senza aspettare la chiusura di kmail...

questo l'output con la finestra di kmail ancora attiva:



$ mykmail
Avvio freepopsd: [ OK ]
kmail(12298): The kwalletd service has been disabled
"/usr/bin/kmail(12298)" Error in thread 139829957084928 : "org.freedesktop.DBus.Error.ServiceUnknown - The name org.kde.nepomuk.services.nepomukstorage was not provided by any .service files"
"/usr/bin/kmail(12298)" Error in thread 139829957084928 : "QLocalSocket::connectToServer: Invalid name"
Arresto freepopsd: [ OK ]

Akiro
28-04-2009, 16:48
probabilmente devo cercare di intercettare il pid di kmail e vedere ciclicamente se è attivo, quindi stoppare freepopsd non appena il pid di kmail scompare...
uno script del tipo:


set -x
kmail
PID=$!
echo "pid= " $PID
while `ps|grep $PID` -ne 0
do
echo "pid= " $PID
sleep 200
done
echo "CHIUSO"


che tra l'altro non funziona... :fagiano:

Loading