Vraag Waarom is gksu niet meer standaard geïnstalleerd?


Ik heb altijd aangeraden op te drukken ALT+F2 en typ bijvoorbeeld gksu nautilus of gksudo nautilus beide zijn gelijkwaardig; om grafische programma's uit te voeren met wortel privileges. Ik heb echter zojuist raring geïnstalleerd op een testsysteem en dit werkt niet meer.

gksu en gksudo worden niet geïnstalleerd als onderdeel van een standaard raring-installatie; hoewel ze zich in de repositories bevinden. In minstens 12.04 gksudo was slechts een symbolische link naar gksu

De redenen waarom ik dit altijd heb gedaan, zijn omdat het vaak veilig is om te gebruiken sudo in sommige gevallen kan dit problemen veroorzaken met grafische toepassingen, omdat gksu laat je het programma draaien als wortel terwijl met sudo je rent als jezelf, maar met verhoogde privileges.

Dit kan betekenen dat u per ongeluk de eigenaar van kritieke systeembestanden wijzigt. Dit kan problemen veroorzaken.

Deze redenering wordt hier beter uitgelegd:

Waarom is het commando verwijderd uit een nieuwe installatie en wat moeten we in plaats daarvan gebruiken?


92
2018-04-22 19:18


oorsprong


Zien gksudo ontbreekt in het Ubuntu-forum. - user68186
Ter verduidelijking, gksudo en gksuzijn niet identiek, ook al is het een symbolische link naar een andere (het programma detecteert hoe het werd geïnitieerd). Er is een subtiel verschil dat in zeldzame gevallen kan leiden tot het verlies van geselecteerde systeembestanden. Daarom, totdat u begint te gebruiken pkexec, gebruik altijd gksudo in plaats van gksu. - Paddy Landau
@PaddyLandau Ik vind vele anderen hier altijd 'gksu` en gksudo waren hetzelfde te zien Wat is het verschil tussen gksudo en gksu?. Kunt u een antwoord op die vraag toevoegen die het verschil verklaart, alstublieft; of geef ons een link naar een website die het uitlegt, zodat een van ons dat kan. - Warren Hill
Het is het waard om dat op te merken geen van de antwoorden tot nu toe uit te leggen waarom gksu wordt niet meer standaard geïnstalleerd, wat de eigenlijke vraag is. - MestreLion
@MestreLion. De reden gksu stopte standaard te worden geïnstalleerd is dat de ontwikkelaars denken polkit is een betere manier om privileges te beheren. Dus ze zijn geleidelijk toepassingen aan het migreren om die in plaats daarvan te gebruiken. gksu was slechts een deel van de standaardinstallatie omdat andere applicaties ervan afhankelijk waren. Aangezien niets in een standaardinstallatie afhankelijk is van gksu of gksudo het wordt niet langer getrokken als een afhankelijkheid. - Warren Hill


antwoorden:


Na een lange discussie over # ubuntu-devel begrijp ik nu het denken.

gksu kan worden geïnstalleerd op 13.04 met sudo apt-get install gksu en het zal werken.

Als u hebt besloten om gksu te installeren en de 64-bits versie gebruikt, moet u deze uitvoeren gksu-properties eenmaal om de authenticatie in te stellen op sudo. Het is niet nodig om dit op 32-bit te doen omdat het standaard is ingesteld op sudo.

Gksu wordt echter niet meer aanbevolen en kan volledig worden verwijderd uit toekomstige uitgaven van Ubuntu. Over het algemeen geeft het ontwikkelingsteam de voorkeur aan ons om GUI-applicaties niet als root te gebruiken, maar te gebruiken sudo en in plaats daarvan de opdrachtregel.

Op lange termijn heeft pkexec de voorkeur, maar het is op dit moment niet zo gemakkelijk te gebruiken.

pkexec staat een bevoegde gebruiker toe om PROGRAMMA als een andere gebruiker uit te voeren. Als de gebruikersnaam niet is opgegeven, wordt het programma uitgevoerd als de beheerder-supergebruiker, root.

zie de man pagina  man pkexec voor meer informatie.

In de tussentijd kunt u een terminal openen CTRL+ALT+T of zoek naar terminal in streepje.

Sluit de terminal pas als u klaar bent, dit is belangrijk omdat het GUI-programma een kind van de terminal is en als u het sluit, wordt het GUI-programma ook afgesloten.

invoeren sudo -i

U bent nu aangemeld als root, dus u kunt de gewenste wijzigingen aanbrengen, bijvoorbeeld

gedit path_to_file 

om een ​​configuratiebestand te bewerken, of

nautilus 

om bestandsbeheer uit te voeren

Wanneer u klaar bent, sluit u de GUI-toepassing en vervolgens in de terminal

exit

U kunt nu de terminal sluiten.


65
2018-04-23 19:55



Gebruikers laten weten dat ze de opdrachtregel moeten gebruiken in plaats van grafische toepassingen als root moeten draaien, gaat niet goed over met Windows converteert ... - Seth♦
@seth wat, ze hebben nu dos en powershell, toch? Welkom in de retro-futuristische toekomst, nu met meer cli. - belacqua
Trouwens, je kunt het "sluiten van de terminal doodt alle voortgebrachte programma's" ongeldig maken door het programma te starten met de & achtervoegsel zodat het wordt uitgevoerd als een achtergrondproces en vervolgens wordt uitgegeven disown %1 in bash - of welk jobnummer het programma ook is. Dan kunt u de terminal veilig afsluiten. Dus het kan zoiets zijn als: sudo my-program &;disown %1;exit; - Chuck R
However gksu is not recommended any more and it may be removed entirely.... Zorg dat je verder gaat waarom? - MestreLion
Aangezien ik het het probleem begrijp met sudo, gksu en gksudo is dat ze een voorrecht van een proces verheffen tot die van wortel. Beleidsuitrusting zorgt voor fijnere controle, zodat u een proces alleen de privileges kunt geven die het nodig heeft en niet meer. Dit vereist echter elk programma dat extra rechten nodig heeft om een ​​profiel te hebben dat definieert welke extra privileges het nodig heeft en deze zijn nog niet allemaal aanwezig. - Warren Hill


Ik heb zojuist 13.04 geïnstalleerd: GKSU is al geïnstalleerd ...


8
2018-05-01 23:28



ik heb net gecontroleerd ... de geïnstalleerde ....... - Qasim
Ik wilde een bevel geven over dit antwoord, maar nam even de tijd om te controleren of Gksu daar was. Het is. Ik installeerde zelfs een nieuwe 13.04 64 bit en die was er ook. - Luis Alvarado♦
Ik heb zojuist mijn systeem opnieuw gecontroleerd. Nog steeds niet zie je deze discussies op Ubuntu-fora hier en hier. Misschien is het toegevoegd aan een recente update, of is het mogelijk dat je het hebt gekocht door iets anders te installeren? - Warren Hill