¿Por qué ya no se instala gksu de forma predeterminada?

99

Siempre he recomendado presionar ALT+ F2y escribir, por ejemplo, gksu nautiluso gksudo nautilusambos son equivalentes; ejecutar programas gráficos con privilegios de root . Sin embargo, acabo de instalar raring en un sistema de prueba y esto ya no funciona.

gksuy gksudono se instalan como parte de una instalación por defecto predeterminada; aunque están en los repositorios. En 12.04 al menos gksudoera solo un enlace simbólico agksu

Las razones por las que siempre he hecho esto se deben a que, aunque a menudo es seguro de usar sudoen algunas circunstancias, puede causar problemas con las aplicaciones gráficas, ya gksuque ejecuta el programa como root mientras lo hace sudousted mismo pero con privilegios elevados.

Esto puede significar que, sin darse cuenta, cambia el propietario de los archivos críticos del sistema. Esto puede causar problemas.

Este razonamiento se explica mejor aquí:

¿Por qué se eliminó el comando de una instalación nueva y qué deberíamos usar en su lugar?

Warren Hill
fuente
44
Como aclaración, gksudoy nogksu son idénticos, aunque uno sea un enlace simbólico a otro (el programa detecta cómo se inició). Existe una sutil diferencia que, en casos excepcionales, puede conducir a la pérdida de los archivos del sistema seleccionados. Por lo tanto, hasta que empiece a usar , use siempre en lugar de . pkexecgksudogksu
Paddy Landau
1
@ PaddyLandau Me gustan muchos otros aquí siempre 'gksu' y gksudoeran los mismos. ¿Cuál es la diferencia entre gksudo y gksu? . ¿Puedes agregar una respuesta a esa pregunta que explique la diferencia por favor? o denos un enlace a un sitio web que lo explique para que uno de nosotros pueda hacerlo.
Warren Hill
2
Vale la pena notar que ninguna de las respuestas hasta ahora explica por qué gksu ya no está instalado de manera predeterminada, que es la pregunta real.
MestreLion
3
@MestreLion. La razón por la que gksudejó de instalarse por defecto es que los desarrolladores piensan que polkit es una mejor manera de controlar los privilegios. Por lo tanto, han estado migrando gradualmente aplicaciones para usarlas en su lugar. gksusolo era parte de la instalación predeterminada porque otras aplicaciones dependían de ello. Dado que nada en una instalación predeterminada depende gksuo gksudoya no se utiliza como una dependencia.
Warren Hill

Respuestas:

68

Después de una larga discusión sobre # ubuntu-devel, ahora entiendo el pensamiento.

gksu se puede instalar en 13.04 con sudo apt-get install gksuy funcionará.

Si decidió instalar gksu y está utilizando la versión de 64 bits, deberá ejecutarla gksu-propertiesuna vez para configurar la autenticación en sudo. No es necesario hacer esto en 32 bits, ya que está configurado en sudo de forma predeterminada.

Sin embargo, gksu ya no se recomienda y puede eliminarse por completo de futuras ediciones de Ubuntu. En general, el equipo de desarrollo preferiría que no usemos aplicaciones GUI como root, sino que usemos sudo y la línea de comando.

A largo plazo, se prefiere pkexec, sin embargo, no es muy fácil de usar en este momento.

pkexec permite a un usuario autorizado ejecutar PROGRAM como otro usuario. Si no se especifica el nombre de usuario, el programa se ejecutará como superusuario administrativo, root.

Vea la página del manualman pkexec para más información.

Mientras tanto, puede abrir un terminal CTRL+ ALT+ To buscar el terminal en el tablero.

No cierre el terminal hasta que haya terminado, esto es importante ya que el programa GUI es un elemento secundario del terminal y si lo cierra, el programa GUI también se cerrará.

Entrar sudo -i

Ahora ha iniciado sesión como root, por lo que puede hacer los cambios que desee, por ejemplo

gedit path_to_file 

para editar un archivo de configuración, o

nautilus 

para ejecutar el administrador de archivos

Cuando haya terminado, cierre la aplicación GUI y luego en la terminal

exit

Ahora puede cerrar la terminal.

Warren Hill
fuente
58
Informar a los usuarios a utilizar la línea de comandos en lugar de ejecutar aplicaciones gráficas como root no va a ir más bien con Windows convierte ...
Seth
44
@seth qué, ahora tienen dos y powershell, ¿verdad? Bienvenido al futuro retro-futurista, ahora con más cli.
belacqua
44
Por cierto, puede anular el problema de "cerrar el terminal mata a todos los programas generados" iniciando el programa con el &sufijo para que se ejecute como un proceso en segundo plano y luego emitiendo disown %1en bash, o cualquier número de trabajo que sea el programa. Entonces puede cerrar la terminal de manera segura. Entonces, podría ser algo como:sudo my-program &;disown %1;exit;
Chuck R
18
However gksu is not recommended any more and it may be removed entirely.... ¿Te importaría explicar por qué ?
MestreLion
3
Más sobre Windows, usarlo es solo ... Lento. Todo al respecto es lento. La forma en que hace las cosas, la pobre excusa para un terminal, la instalación de software, el arranque y el apagado, la eliminación de software, la escritura de comandos, el intento de ejecutar el script, una tarea que puedo hacer en 5 segundos en Linux puede llevarme hasta 10 minutos en ventanas. Ineficiente es un eufemismo. El hecho de que siento que tengo más control en os x, o en mi teléfono Android, realmente dice algo sobre las opciones de diseño de Windows.
Braden Best
9

Acabo de instalar 13.04: GKSU ya está instalado ...


fuente
acabo de comprobar ... está instalado .......
Qasim
1
Iba a dar una orden sobre esta respuesta, pero me tomé un segundo para verificar si gksu estaba allí. Está. Incluso instalé un nuevo 13.04 64 bit y también estaba allí.
Luis Alvarado
1
Acabo de revisar nuevamente mi sistema. Todavía no veo estos hilos en los foros de Ubuntu aquí y aquí . Tal vez se haya agregado a una actualización reciente, ¿o es posible que lo haya comprado instalando algo más?
Warren Hill