Proporcione documentación de Ubuntu que refute esto: https://help.ubuntu.com/community/RootSudo ¿Por qué, en mi sistema 13.04 completamente actualizado, pkexec no funciona?
$ pkexec gedit somefile.txt
No protocol specified
** (gedit:13135): WARNING **: Could not open X display
Cannot open display:
Run '/usr/bin/gedit --help' to see a full list of available command line options
command-line
chili555
fuente
fuente
pkexec
ejecutar la GUI sin configurar: askubuntu.com/a/332847/89385Respuestas:
¿Por qué no funciona?
Por defecto
pkexec
no le permite ejecutar aplicaciones gráficas (X11). Desde la página del manual:Como se indica en la página de manual, puede hacer que funcione, aunque realmente no sé si esto es de alguna manera peligroso o recomendado .
Para habilitar gedit, por ejemplo, puede crear
/usr/share/polkit-1/actions/com.ubuntu.gedit.policy
con el siguiente contenido:Entonces
pkexec gedit
debería funcionar como se esperaba:Como puedes adivinar, esto solo hará que
gedit
funcione. En teoría, si agregóallow_gui
a "org.freedesktop.policykit.exec" (la acción predeterminada) esto debería funcionar para todas las aplicaciones, pero en mis pruebas obtuve el mismo resultado que el suyo.¿Por qué se prefiere pkexec?
Aquí puede encontrar una discusión sobre las fortalezas de
pkexec
.fuente
gksudo
está disponible, es mucho más fácil usarlo en lugar de crear acciones individuales para cada aplicación que necesite usar (si no hay una forma "global" de hacerlo).gksudo
o configurarpkexec
(también puedes usar,sudo -i
pero eso no funcionará con Alt + F2, también conocido como "Ejecutar"). Encuentro el primero MUCHO más fácil. Si alguien piensa bien lo contrario ... A mí me parece incorrecto sugerir algo que no funcionará según lo previsto, pero puede que me falte algo ...pkexec
en realidad puede ejecutar GUI sin configuración: askubuntu.com/a/332847/89385