Quando dovrei usare pkexec e quando sudo -i?


21

Ho scritto una risposta per consigliarne l'uso sudo -i nautilus. So che gksuè deprecato , e ho avuto l'impressione che sudo -isia così che dovremmo eseguire applicazioni grafiche come root senza uccidere i gattini , ma qualcuno ha commentato " pkexecè il nuovo gksu". La mia comprensione è che pkexecnon è la stessa cosa che usare qualsiasi forma di sudo:

Quando utilizzare pkexec vs gksu / gksudo?

e richiede la configurazione, in particolare per l'uso con applicazioni grafiche:

Come configurare pkexec?

Quando faccio sudo -itutto funziona sempre, quindi perché dovrei preoccuparmi della configurazione pkexec? Vedo che per scrivere uno script che lancia qualcosa come root avrei bisogno di farlo:

Posso usare pkexec in un file Python Script o .desktop?

Altrimenti, cosa ottengo usando pkexec? Quando dovrei usare questi comandi? Qual è attualmente la migliore pratica per l'apertura di applicazioni grafiche come root?

(Ho già letto le ... manpagine, ma non mi sento più saggio.)


5
Personalmente ignoro la deprecazione e installo sempre gksusu ogni sistema con cui eseguire app GUI, gksudose necessario. Nient'altro.
Byte Commander

1
Correlati: questo vecchio post su meta ha avuto discussioni pertinenti e la risposta più votata suggerita sudo -iè una soluzione sicura; Ma non molto spiegato pkexec.
Clearkimura,

1
Nel caso di utilizzare gli editor di testo della GUI per modificare i file come root, che ne dici di usare sudoedit(AKA sudo -e)?
edwinksl,

1
@edwinksl intendevi che potresti impostare un editor grafico come predefinito per sudoedit? Idea interessante
Zanna

1
@Zanna Sì, vedi unix.stackexchange.com/a/356443/6949 per esempio.
edwinksl,

Risposte:


2

L'uso di base è lo stesso: i programmi in questione consentono di eseguire altri programmi come un altro utente, generalmente root. La differenza, tuttavia, tra le sudovarianti ed pkexecè che sudodà a un programma un controllo totale su tutto, mentre con pkexecte hai un controllo molto più preciso definendo una politica per ciascun programma.

Se ti fidi dei programmi che esegui, sudo va benissimo. Se vuoi davvero bloccare tutto e consentire ai programmi di fare solo ciò che permetti loro, allora usa pkexecquello che viene fornito con polkit .

Mentre l'idea alla base pkexecè carina, non vorrei spingermi fino al prossimo gksu, a causa della complessa configurazione necessaria.

Riferimento: la differenza tra sudo e pkexec su Quora .

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.