|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Senior Member
Iscritto dal: Mar 2005
Messaggi: 1653
|
[C/Bash - Linux] Avviare un processo con permessi di root
Ciao!
Dovrei scrivere un programma C, oppure un mini script Bash, che, avviato da un utente normale, effettui la richiesta della password per poi proseguire avendo i permessi di amministratore. Sapete se c'è una funzione "preconfezionata" che faccia tutto ciò? Se non ho reso bene l'idea, ditemelo che cerco di spiegarmi meglio! ![]() Ciau
__________________
gica78r@ncc-1701:~$ tar -c tar: Codardamente mi rifiuto di creare un archivio vuoto ![]() |
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Deve girare in un sistema dove l'utente è fra i sudoers ? In tal caso potresti mettere i comandi da eseguire con i permessi di root con sudo davanti
![]() |
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Mar 2005
Messaggi: 1653
|
No, il programma deve essere avviabile da chiunque e, nel momento in cui c'è da eseguire delle operazioni privilegiate, deve chiedere la password di root ed avviare i processi con uid=0. E' il procedimento che consente di ottenere l'autorizzazione che mi interessa capire. Hai presente, ad esempio, installazione di un pacchetto su Linux con Autopackage? Ad un certo punto ti viene chiesta la password di root per installare il pacchetto "system-wide"; se la password non ce l'hai allora il pacchetto viene installato solo per l'utente che sta facendo l'installazione. Ecco, vorrei sapere come si fa una cosa del genere, cioè avviare un processo con uid=0 dopo aver richiesto in input la password di amministratore.
![]()
__________________
gica78r@ncc-1701:~$ tar -c tar: Codardamente mi rifiuto di creare un archivio vuoto ![]() |
![]() |
![]() |
![]() |
#4 |
Member
Iscritto dal: Sep 2006
Città: ~
Messaggi: 146
|
prova con
Codice:
!#/bin/bash <comandi_da_eseguire_con_privilegi_normali> su -c "<comandi_da_eseguire_con_privilegi_di_root>" <comandi_da_eseguire_con_privilegi_normali>
__________________
Computers are like conditioned air: they work fine 'till you open windows. ![]() |
![]() |
![]() |
![]() |
#5 | |
Senior Member
Iscritto dal: Mar 2005
Messaggi: 1653
|
Quote:
![]() Ora non ho tempo, ma vorrei capire come fare la stessa cosa con un programma C ![]() Ciao
__________________
gica78r@ncc-1701:~$ tar -c tar: Codardamente mi rifiuto di creare un archivio vuoto ![]() Ultima modifica di Gica78R : 29-10-2007 alle 21:23. |
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 23:19.