Pagina 1 di 1
eseguire programmi con credenziali di un altro utente
Inviato: lun 25 dic 2006, 21:02
da whites11
Ciao e buon natale a tutti!
vorrei eseguire dei demoni all'avvio di sistema, ma necessito di farli avviare con le credenziali di un utente, ma mettendo il comando in rc.local il demone è eseguito dall'utente root, come fare?
Inviato: lun 25 dic 2006, 21:22
da mr_hyde
Mai provato di persona:
e editando /etc/suauth per fare in modo di evitare di chiedere la password, se necessario (ma rc.local dovrebbe essere eseguita da root, quindi non credo ti chiedera' la password)
Pero' forse dovresti dirci cosa vuoi far eseguire in rc.local con credenziali diverse da root, giusto per vedere se il tuo approccio e' corretto.
Ciao,
Mr Hyde
Inviato: lun 25 dic 2006, 21:52
da whites11
perfetto, funziona! grazie!
ho creato un serverino di scarrrrrricamento h24 e vorrei che mi facesse partire amuled e amuleweb con credenziali di utente normale (scelta saggia,non credi?)
Inviato: lun 25 dic 2006, 22:12
da whites11
ok, non è così perfetto!!!
ho inserito in rc.local le righe:
Codice: Seleziona tutto
su utente -c amuled & >/home/utente/amuled.log
sleep 5
su utente -c amuleweb & >/home/utente/amuleweb.log
purtroppo, però, mentre amuled funziona perfettamente, amuleweb non funziona in background! solo che se ci tolgo il "&" ovviamente il sistema non parte correttamente e non mi offre shell di login, cosa quest non fondamentale per una macchina monitor-less, però...
avete idee?
Inviato: mar 26 dic 2006, 3:29
da Dani
Se non sbaglio in quel modo non lo mandi in background, ma invii l'output (stdout e stderr) nel file di log.
Prova a modificare la riga così:
Inviato: mar 26 dic 2006, 11:17
da Paoletta
whites11 ha scritto:
Codice: Seleziona tutto
su utente -c amuled & >/home/utente/amuled.log
sleep 5
su utente -c amuleweb & >/home/utente/amuleweb.log
tra l' altro usando bash ho fatto una prova con
e ho notato che così non redirigi output ed error dove vorresti perchè l'esecuzione del comando parte prima della redirezione;
per cui io userei questa sintassi:
Codice: Seleziona tutto
su utente -c amuled &>/home/utente/amuled.log &
sleep 5
su utente -c amuleweb &>/home/utente/amuleweb.log &
la sintassi corretta per redirigere output ed error è quella che ho usato io sopra (senza spazi tra & e >)
Inviato: mar 26 dic 2006, 12:26
da whites11
grazie per le risposte, provo e vi faccio sapere
Inviato: mar 26 dic 2006, 19:45
da whites11
ok, ho semirisolto:
rc.local ora è così:
Codice: Seleziona tutto
su scarricatore -c amuled &
sleep 5
su scarricatore -c amuleweb
il redirect l'ho tolto perchè non funzionava...(comunque non è un problemone...
ho dovuto togliere anche il backgrounding del secondo comando pena il non funzionamento del comando stesso....il perchè non lo conosce nessuno!
comunque sia, rc.local dovrebbe essere l'ultimo script eseguito all'avvio dalla macchina, quindi il fatto che il terminale rimanga occupato da amuleweb non dovrebbe essere un problema.
grazie a tutti!
Inviato: mar 26 dic 2006, 20:03
da gioco
Per usare le redirezioni prova a scrivere il comando fra ".