Pourquoi gksu n'est-il plus installé par défaut?

99

J'ai toujours recommandé d'appuyer sur ALT+ F2et de taper par exemple gksu nautilusou les gksudo nautilusdeux sont équivalents; exécuter des programmes graphiques avec les privilèges root . Cependant, je viens d'installer le programme d'installation sur un système de test et cela ne fonctionne plus.

gksuet gksudone sont pas installés dans le cadre d’une installation par défaut; bien qu'ils soient dans les dépôts. Au moins en 12.04, ce gksudon’était qu’un lien symbolique versgksu

Les raisons pour lesquelles je l' ai toujours fait ce sont parce que pendant qu'il est souvent sûr à utiliser sudodans certaines circonstances , il peut causer des problèmes avec des applications graphiques , car gksuvous a exécuter le programme en tant que root tout avec sudovous utilisez comme toi - même , mais avec des privilèges élevés.

Cela peut signifier que vous modifiez par inadvertance le propriétaire des fichiers système critiques. Cela peut causer des problèmes.

Ce raisonnement s'explique mieux ici:

Pourquoi la commande a-t-elle été supprimée d'une nouvelle installation et que devrions-nous utiliser à la place?

Warren Hill
la source
4
Comme une clarification, gksudoet gksusont pas identiques, même si l' on est un lien symbolique vers un autre (le programme détecte la façon dont il a été lancé). Il existe une différence subtile qui, dans de rares cas, peut entraîner la perte de fichiers système sélectionnés. Par conséquent, jusqu’à ce que vous commenciez à utiliser pkexec, veuillez toujours utiliser gksudoau lieu de gksu.
Paddy Landau
1
@PaddyLandau J'aime beaucoup d'autres ici toujours 'gksu` et gksudoont été les mêmes voir Quelle est la différence entre gksudo et gksu? . Pouvez-vous ajouter une réponse à cette question qui explique la différence s'il vous plaît? ou donnez-nous un lien vers un site Web qui l'explique afin que l'un de nous puisse le faire.
Warren Hill
2
A noter qu'aucune des réponses à ce jour n'explique pourquoi gksu n'est plus installé par défaut, ce qui est la véritable question.
MestreLion
3
@MestreLion. La raison pour laquelle l' gksuinstallation par défaut a été arrêtée est que les développeurs pensent que polkit est un meilleur moyen de contrôler les privilèges. Ils ont donc migré progressivement les applications pour les utiliser à la place. gksun’était qu’une partie de l’installation par défaut car d’autres applications en dépendaient. Étant donné que rien dans une installation par défaut ne dépend de gksuou gksudoqu'il n'est plus tiré en tant que dépendance.
Warren Hill

Réponses:

68

Après une longue discussion sur # ubuntu-devel, je comprends maintenant la pensée.

gksu peut être installé le 13.04 avec sudo apt-get install gksuet cela fonctionnera.

Si vous avez décidé d'installer gksu et que vous utilisez la version 64 bits, vous devez l'exécuter gksu-propertiesune fois pour définir l'authentification sur sudo. Il n'est pas nécessaire de faire cela sur 32 bits, car il est défini sur sudo par défaut.

Cependant, le gksu n'est plus recommandé et il peut être entièrement supprimé des prochains numéros d'Ubuntu. En général, l'équipe de développement préférerait que nous n'utilisions pas les applications de l'interface graphique en tant que root, mais plutôt que sudo et la ligne de commande.

À long terme, pkexec est préférable, mais il n’est pas très facile à utiliser pour le moment.

pkexec permet à un utilisateur autorisé d'exécuter PROGRAM en tant qu'autre utilisateur. Si le nom d'utilisateur n'est pas spécifié, le programme sera exécuté en tant que super utilisateur administratif, root.

voir la page man pkexec de manuel pour plus d'informations.

En attendant, vous pouvez ouvrir un terminal CTRL+ ALT+ Tou rechercher un terminal au tiret.

Ne fermez pas le terminal avant d'avoir terminé, cela est important car le programme GUI est un enfant du terminal et, si vous le fermez, le programme GUI se ferme également.

Entrer sudo -i

Vous êtes maintenant connecté en tant que root, vous pouvez donc apporter les modifications souhaitées, par exemple.

gedit path_to_file 

pour éditer un fichier de configuration, ou

nautilus 

exécuter le gestionnaire de fichiers

Lorsque vous avez terminé, fermez l’application graphique puis dans le terminal.

exit

Vous pouvez maintenant fermer le terminal.

Warren Hill
la source
58
Dire aux utilisateurs d'utiliser la ligne de commande au lieu d'exécuter des applications graphiques en tant que root ne fonctionnera pas bien avec les convertis Windows ...
Seth
4
@seth quoi, ils ont dos et powershell maintenant, non? Bienvenue dans le futur rétro-futuriste, maintenant avec plus de cli.
Belacqua
4
Soit dit en passant, vous pouvez annuler le problème "La fermeture du terminal tue tous les programmes générés" en lançant le programme avec le &suffixe de sorte qu'il s'exécute en tant que processus en arrière-plan, puis disown %1en exécutant bash - ou le numéro de travail du programme. Ensuite, vous pouvez fermer le terminal en toute sécurité. Donc, cela pourrait être quelque chose comme:sudo my-program &;disown %1;exit;
Chuck R
18
However gksu is not recommended any more and it may be removed entirely.... Voulez-vous expliquer pourquoi ?
MestreLion
3
Plus sur les fenêtres, l'utiliser est juste ... lent. Tout y est lent. La façon dont vous faites les choses, la piètre excuse pour un terminal, l’installation de logiciels, l’amorçage et l’arrêt de logiciels, la suppression de logiciels, la saisie de commandes, la tentative d’écriture de scripts, une tâche que je peux réaliser en 5 secondes sous Linux peut prendre jusqu’à 10 minutes sur les fenêtres. Inefficace est un euphémisme. Le fait que j’ai l’impression d’avoir plus de contrôle dans os x ou dans mon téléphone Android en dit long sur les choix de conception de Windows.
Braden Best
9

Je viens d'installer 13.04: GKSU est déjà installé ...


la source
je viens de vérifier ..... son installé .......
Qasim
1
J'allais faire une commande sur cette réponse, mais pris une seconde pour vérifier si Gksu était là. Il est. J'ai même installé un nouveau 13.04 64 bits et c'était aussi là.
Luis Alvarado
1
Je viens de vérifier à nouveau sur mon système. Toujours pas là voir ces discussions sur les forums Ubuntu ici et ici . Peut-être a-t-il été ajouté à une mise à jour récente ou est-il possible que vous l'ayez achetée en installant autre chose?
Warren Hill