Perché gksu non è più installato di default?


99

Ho sempre consigliato di premere ALT+ F2e digitare ad esempio gksu nautiluso gksudo nautilusentrambi sono equivalenti; per eseguire programmi grafici con privilegi di root . Tuttavia, ho appena installato raring su un sistema di test e questo non funziona più.

gksue gksudonon sono installati come parte di un'installazione raring predefinita; sebbene siano nei repository. Nel 12.04 almeno gksudoera solo un collegamento simbolico agksu

Le ragioni per cui l'ho sempre fatto sono perché mentre sudoin alcune circostanze è spesso sicuro da usare , può causare problemi con le applicazioni grafiche perché gksuhai il programma come root mentre sudosei in esecuzione come te stesso ma con privilegi elevati.

Ciò può significare che si cambia inavvertitamente il proprietario dei file di sistema critici. Ciò può causare problemi.

Questo ragionamento è spiegato meglio qui:

Perché il comando è stato rimosso da una nuova installazione e cosa dovremmo usare invece?



4
Come chiarimento, gksudoe nongksu sono identici, anche se uno è un collegamento simbolico ad un altro (il programma rileva come è stato avviato). C'è una sottile differenza che, in rari casi, può portare alla perdita di file di sistema selezionati. Pertanto, fino a quando non si inizia a utilizzare , utilizzare sempre anziché . pkexecgksudogksu
Paddy Landau,

1
@PaddyLandau Mi piacciono molti altri qui sempre 'gksu` ed gksudoerano gli stessi vedere Qual è la differenza tra gksudo e gksu? . Puoi aggiungere una risposta a quella domanda che spiega la differenza per favore; oppure forniscici un link a un sito Web che lo spieghi così uno di noi può farlo.
Warren Hill,

2
Vale la pena notare che finora nessuna delle risposte spiega perché gksu non sia più installato di default, che è la vera domanda.
MestreLion,

3
@MestreLion. Il motivo per cui è gksustata interrotta l'installazione di default è che gli sviluppatori pensano che polkit sia un modo migliore per controllare i privilegi. Quindi hanno migrato gradualmente le applicazioni per usarle. gksufaceva solo parte dell'installazione predefinita perché altre applicazioni dipendevano da essa. Poiché nulla in un'installazione predefinita dipende gksuo gksudonon viene più inserito come dipendenza.
Warren Hill,

Risposte:


68

Dopo una lunga discussione su # ubuntu-devel ora capisco il pensiero.

gksu può essere installato su 13.04 con sudo apt-get install gksue funzionerà.

Se hai deciso di installare gksu e stai utilizzando la versione a 64 bit dovrai eseguire gksu-propertiesuna volta per impostare l'autenticazione su sudo. Non è necessario eseguire questa operazione a 32 bit poiché è impostato su sudo per impostazione predefinita.

Tuttavia gksu non è più raccomandato e potrebbe essere rimosso completamente dai futuri problemi di Ubuntu. In generale, il team di sviluppo preferirebbe che non usassimo le applicazioni GUI come root, ma piuttosto sudo e la riga di comando.

A lungo termine si preferisce pkexec, ma al momento non è molto facile da usare.

pkexec consente a un utente autorizzato di eseguire PROGRAM come altro utente. Se il nome utente non è specificato, il programma verrà eseguito come superutente amministrativo, root.

vedere la pagina man man pkexec per maggiori informazioni.

Nel frattempo puoi aprire un terminale CTRL+ ALT+ To cercare un terminale in trattino.

Non chiudere il terminale fino a quando non è stato completato, questo è importante poiché il programma GUI è figlio del terminale e se lo si chiude anche il programma GUI si chiuderà.

accedere sudo -i

Ora hai effettuato l'accesso come root, ad esempio puoi apportare le modifiche desiderate

gedit path_to_file 

per modificare un file di configurazione, o

nautilus 

per eseguire il file manager

Al termine, chiudere l'applicazione della GUI, quindi nel terminale

exit

Ora puoi chiudere il terminale.


58
Dire agli utenti di usare la riga di comando invece di eseguire applicazioni grafiche come root non andrà bene con i convertiti di Windows ...
Seth

4
@seth cosa, hanno dos e powershell ora, giusto? Benvenuti nel futuro retro-futuristico, ora con più cli.
belacqua,

4
A proposito, puoi annullare il problema "chiudere il terminale uccide tutti i programmi generati" avviando il programma con il &suffisso in modo che venga eseguito come processo in background e quindi emettendo disown %1in bash - o qualunque numero di lavoro il programma sia. Quindi puoi chiudere in sicurezza il terminale. Quindi, potrebbe essere qualcosa del tipo:sudo my-program &;disown %1;exit;
Chuck R,

18
However gksu is not recommended any more and it may be removed entirely.... Vuoi approfondire il perché ?
MestreLion,

3
Altro su Windows, usarlo è solo ... Lento. Tutto è lento. Il modo in cui fai le cose, la scusa scusa per un terminale, l'installazione di software, l'avvio e lo spegnimento, la rimozione di software, la digitazione di comandi, il tentativo di shell script, un compito che posso eseguire entro 5 secondi su Linux può portarmi fino a 10 minuti su windows. Inefficiente è un eufemismo. Il fatto che mi sento di avere un maggiore controllo in os x, o nel mio telefono Android, dice davvero qualcosa sulle scelte di design di Windows.
Braden Best,

9

Ho appena installato 13.04: GKSU è già installato ...


ho appena controllato ..... è installato .......
Qasim

1
Stavo per dare un comando su questa risposta, ma mi sono preso un secondo per verificare se gksu era lì. È. Ho anche installato un nuovo 13.04 64 bit ed era anche lì.
Luis Alvarado,

1
Ho appena controllato di nuovo sul mio sistema. Ancora non ci sono questi thread sui forum di Ubuntu qui e qui . Forse è stato aggiunto a un recente aggiornamento o è possibile averlo acquistato installando qualcos'altro?
Warren Hill
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.