Apagar-reiniciar con lxde. [Solucionado]
Saludos a todos. Sigo desde hace tiempo esdebian y ahí va mi primera solicitud de ayuda.
* La distribución en la que tengo el problema es "crunchbang-9.04", basada en ubuntu-9.04.
La cosa es que después de instalar la distribución, instalé el entorno de escritorio LXDE. Todo va perfecto excepto que siendo el usuario normal no puedo apagar ni reiniciar desde el menú ni desde el botón de la barra de tareas. Tengo que hacerlo por consola con "sudo halt" o "sudo reboot".
Buscando por la red sólo he encontrado dos posibles soluciones y ninguna me vale. Son las siguientes:
1 - gpasswd -a pepito powerdev
2 - sudo addgroup pepito powerdev
Tanto en una como en otra el problema es que el grupo "powerdev" no existe. He probado a crear ese grupo y volver a intentarlo pero nada.
* Se que el problema es de LXDE porque antes de instalarlo si que pude apagar desde el menú de fluxbox, que es el que trae por defecto esta distro.
¿Se os ocurre alguna solución?
Gracias
- 1428 lecturas


* Se que el problema es de LXDE porque antes de instalarlo si que pude apagar desde el menú de fluxbox, que es el que trae por defecto esta distro.
¿Se os ocurre alguna solución?
Gracias
Nunca he usado lxde, pero pregunto
¿lxde no tiene un panel de configuración?
Cambiandole los permisos al comando shutdown y/o init.
Saludos
Cambiandole los permisos al comando shutdown y/o init.
Saludos
Bueno, esa es la forma "sucia" de hacerlo (yo lo tengo así por awesome), pero creo que lxde debe tener una forma de configurarlo.
# Froggy y ratakruel
Los archivos /sbin/shutdown, /sbin/halt y /sbin/reboot ya tienen permisos de ejecución (777) y nada. Desde consola sólo si pongo el "sudo" delante y luego meto la contraseña.
# ratakruel
Para la configuración no aparece nada en el menú. No se si tendrá que ver pero sí que existe un comando llamado "lxde-settings", pero al ejecutarlo en terminal me dice:
$ lxde-settings
**ERROR**: only one settin daemon can be executed
aborting
cancelado
eso es porque estan en sbin, crea un enlace a /usr/bin y listo
EDITO, o ejecutas /sbin/shutdown (con la ruta completa)
# Froggy y ratakruel
Los archivos /sbin/shutdown, /sbin/halt y /sbin/reboot ya tienen permisos de ejecución (777) y nada. Desde consola sólo si pongo el "sudo" delante y luego meto la contraseña.
# ratakruel
Para la configuración no aparece nada en el menú. No se si tendrá que ver pero sí que existe un comando llamado "lxde-settings", pero al ejecutarlo en terminal me dice:
$ lxde-settings
**ERROR**: only one settin daemon can be executed
aborting
cancelado
Bueno, a saber:
1- Espera a que alguno de nuestros "Sponsor's oficiales" de lxde respondan tu consulta.
2- No es una buena idea que halt y reboot tengan todos los permisos.
3- En referencia al punto 2 todavía no te voy a decir como resolverlo por referencia al punto 1.
4- Tienes otro desktop manager instalado además de lxde?
Tienes dos opciones:
1. Mirar cómo lo hacía Fluxbox, los archivos de configuración se encuentran en ~/.fluxbox, concretamente te interesa el del menu: ~/.fluxbox/menu
2. Configurar sudo para que te deje ejecutar los comandos que te interesan sin contraseña alguna. Mírate el manual de sudo, sudoers y visudo, es sencillo. Como ejemplo te pongo el mío (los comentarios del final los puse yo y explican un poco como funciona este archivo, nada que no puedas encontrar en la página man de sudoers):
# /etc/sudoers#
# This file MUST be edited with the 'visudo' command as root.
#
# See the man page for details on how to write a sudoers file.
#
Defaults env_reset
# Uncomment to allow members of group sudo to not need a password
# %sudo ALL=NOPASSWD: ALL
# Host alias specification
Host_Alias DEBIAN = mi_host
# User alias specification
User_Alias AKIRA = mi_user
# Cmnd alias specification
Cmnd_Alias POWER=/usr/sbin/pm-suspend,/usr/sbin/pm-hibernate,/sbin/reboot,/sbin/poweroff,/sbin/shutdown
Cmnd_Alias TOOLS=/usr/bin/wireshark,/usr/bin/htop
# User privilege specification
## user hostlist = (userlist) NOPASSWD: commandlist
## * user is the name or a User_Alias of the user or group to which this rule applies.
## * hostlist is a list or a Host_Alias of hosts this rule applies to.
## * userlist is a list or a User_Alias of users that this rule can be run as and must be enclosed in ( ). It is an optional token, if not specified the user root is the default value.
## * NOPASSWD is a tag that if present, the user password is not required in order for the user to run commands in the commandlist.
## * commandlist is a list or a Cmnd_Alias of commands that this rule states can be executed.
root ALL=(ALL) ALL
AKIRA DEBIAN= NOPASSWD: POWER,TOOLS
Luego es tan sencillo como añadir un lanzador con el comando que desees en el menu de Openbox, por ejemplo: sudo /sbin/reboot
Saludos:).
eso es porque estan en sbin, crea un enlace a /usr/bin y listo
EDITO, o ejecutas /sbin/shutdown (con la ruta completa)
Agrego a lo que dice Shaola y lo que te dije en el primer post.
Para dar los permisos manteniendo los atributos del comando y crear un enlace, lo debes hacer de la siguiente manera.
# chmod a+s /sbin/initEn tu caso debes usar sudo
Luego los comandos para apagar (0) o reiniciar (6) son los siguientes, con tu usuario
Para apagar la maquina
$ /sbin/init 0Para reiniciar la maquina
$ /sbin/init 6Tambien puedes hacerlo con el comando shutdown
# chmod a+s /sbin/shutdownApagar
$ /sbin/shutdown -h nowY así sucesivamente.
Saludos
Solucionado.
Gracias a todos por vuestras respuestas.
La solución ha sido, como indicabais, crear enlaces de "halt", "reboot" y "shutdown" en /usr/bin. Con esto el usuario normal ya puede apragar y reiniciar sin sudo. También he hecho lo de que esos enlaces mantengan los atributos.
Hecho esto sólo me ha faltado crear un botoncito para agregar a la barra de tareas. Estos "botoncitos" son los archivos que están en /usr/share/applications y tienen la extensión .desktop.
* Me he fijado que en esta carpeta (/usr/share/applications/) ya existía el archivo Shutdown.desktop, pero por alguna razón no funcionaba. Ni siquiera era capaz de abrirlo con nano desde la terminal para ver que tenía dentro.
De todos modos ya está solucionado. Gracias.