jueves, 31 de enero de 2013

Lanzador de aplicación ejecutada como root

Hola otra vez!!

Os dejo una entrada que para mí es curiosa, pues más de una vez me ha surgido la duda/necesidad de resolver este problemilla, pero que siempre he dejado por falta de tiempo/ganas. El caso es que hoy me he puesto y bueno, es más fácil de lo que parecía.

La idea es que creemos el lanzador de un programa usando el truco comentado en este mismo blog, de forma que cuando usemos dicho lanzador el sistema nos pida la clave de root y tras introducirla ejecute dicho programa como si lo hiciera el propio root.

Lo único que hay que hacer es lanzar la orden entre comillas simples y precedida del comando: su-to-root -X -c 


De forma que el comando usado en el ejemplo de creación de lanzador pasa de ser:

/usr/bin/octave
a ser:
su-to-root -X -c '/usr/bin/octave'

Obviamente esto puede ejecutarse igual desde una línea de comandos, además desde dentro de un lanzador, pero para ello sería más comodo usar simplemente sudo.

La opción -X significa que vamos a lanzar un programa con entorno gráfico de forma que nos pida la clave de root desde una ventana modal gráfica. Si no podemos esa opción considerará que estamos en entorno de línea de comandos,y será como usar sudo.

La opción -c indica que el comando que queremos ejecutar lo ponemos en forma de cadena, de ahí lo de las comillas simples. Esto es muy útil cuando dicho comando es complejo y tiene opciones, pues de no ponerse así el programa su-to-root daría error al creer dichas opciones van dirigidas a él.

Bueno, espero os sea de utilidad!!

=:)


No hay comentarios:

Publicar un comentario