La mejor respuesta
En concepto, hacen lo mismo, permitiendo que un usuario ejecute otro programa como otro usuario (generalmente el super usuario -aka root o uid: 0). En qué se diferencian es en cómo se utilizan y configuran. Sudo y su hermano mayor, su, te dan el control total de todo y por lo tanto son peligrosos. De hecho, sudo se creó originalmente para intentar que su no lo sea tanto. pkexec es parte de un sistema de herramientas más grande llamado kit de políticas. Se necesita un poco para configurarlo, pero una vez en algunos lugares brinda un control mucho más fino y, por lo tanto, es más seguro usarlo, aunque muchas personas se quejan con más fuerza; por ejemplo, las herramientas de interfaz gráfica de usuario tienen problemas para llamar al kit de políticas directamente sin una súper estructura mientras sudo o gksu et al son llamadas de envoltorios de interfaz gráfica de usuario.
Desde el punto de vista del gusto, muchos usuarios, especialmente los administradores nuevos, utilizan root con demasiada frecuencia y causan grandes problemas. La idea de algo como el kit de políticas es una buena idea para ayudarlos a aislarlos de algunos de los peligros de tener acceso completo y sin restricciones a todo en el sistema
Respuesta
- No puede ejecutar aplicaciones gráficas a través de pkexec sin configurarlo explícitamente para hacerlo.
- Puede modificar un poco cómo desea que se ejecuten los programas a través de pkexec: icono, texto para mostrar, si recordar la contraseña o no, ya sea para permitir que se ejecute gráficamente y algo más.
- Cualquiera puede ejecutar «Ejecutar como» un superusuario (siempre que puedan autenticarse como tal), con sudoyou debe aparecer en el archivo sudoers como admin .
Por ejemplo, haz esto: cd /etc/init.d sudo cat README y ahora pruébalo con pkexec README de pkexec cat