Ir al contenido principal

Hacer que un usuario estándar pueda apagar el equipo en Xubuntu 11.10

En esta primera aportación a la Bitácora de Ubuntu voy a explicar como se puede configurar el Xubuntu 11.10 para que un usuario que ha sido creado con el perfil estándar pueda apagar el ordenador desde el menú.

Supongo que la mayoría de usuarios que lean esta entrada saben que es Xubuntu. Para aquellos que no lo sepan y piensen qué es lo que hace un artículo de Xubuntu en un blog de Ubuntu, me gustaría aclararles que Xubuntu es una distribución de Ubuntu que utiliza como alternativa al escritorio Unity el escritorio Xfce. Este gestor es más ligero que el Unity, el KDE o el Gnome; es decir, consume menos recursos, lo que lo hace muy recomendable para instalaciones en equipos de bajas prestaciones como los netbooks u ordenadores antiguos.


Antes de entrar en los detalles me gustaría también explicar el caso en el que se me hizo necesario averiguar cómo permitir a un usuario estándar el apagado del ordenador.  Instalé el Xubuntu en un barebone  de ViewSonic, pero una de las condiciones que tenía que cumplir era que el usuario que iba a utilizarlo no tuviera privilegios de administración, por lo que tuve que definirlo con el perfil de estándar. En otras instalaciones de Ubuntu que ya había realizado, un usuario con el perfil estándar puede apagar el ordenador. Había asumido que en Xubuntu sería igual. Tras la instalación me encontré conque usando el usuario estándar que había creado el sistema me solicitaba una contraseña de administración para poder apagar el ordenador. Fue entonces cuando tuve que averiguar como hacerlo.


Tras esta breve introducción vamos al meollo de la cuestión. A continuación explicaré la secuencia de acciones que tuve que llevar a cabo para realizar esta tarea con éxito. Todas las acciones descritas a continuación se realizan en la línea de comandos de GNU/Linux y con un usuario que tenga privilegios administrativos.


  •  Crear un grupo llamado shutdown, lo llamamos así porque shutdown significa apagar en inglés:
$sudo groupadd shutdown
  •  Añadimos el usuario al grupo recién creado:
 $sudo adduser <usuario> shutdown
  • Editamos el fichero sudoers, que es el fichero donde se encuentran definidos los usuarios que pueden utilizar la orden sudo para tareas administrativas. El fichero no se puede editar directamente por lo que hay que utilizar la orden:
$sudo visudo
  • Esta orden abrirá el fichero sudoers con el editor por defecto, en las últimas versiones de Ubuntu/Xubuntu el nano, en versiones anteriores el vi. Añadiremos al final del archivo las siguientes líneas:
%shutdown ALL=(root) NOPASSWD: /sbin/reboot
%shutdown ALL=(root) NOPASSWD: /sbin/halt
%shutdown ALL=(root) NOPASSWD: /sbin/shutdown
  • Un usuario diferente del superusuario (root) no puede acceder a los comandos que hay en el directorio sbin. Por lo tanto, se hace necesario crear unos scripts para cada uno de los comandos que permitimos en el fichero sudoers. Estos scripts se guardarán en el directorio /usr/bin.

Para el comando reboot el contenido del script será:
 #!/bin/sh
sudo /sbin/reboot $*
Para el comando halt el contenido del script será:
#!/bin/sh
sudo /sbin/halt $*
Para el comando shutdown el contenido del script será:
#!/bin/sh
sudo /sbin/shutdown $*
  • A continuación hay que establecer el usuario y grupo a cada uno de los scripts. Para ello usamos las siguientes sentencias:

$sudo chown root.shutdown /usr/bin/reboot
$sudo chown root.shutdown /usr/bin/halt
$sudo chown root.shutdown /usr/bin/shutdown

  •  Y, por último, establecemos los permisos de ejecución para los archivos con los scripts:

$sudo chmod 755 /usr/bin/reboot
$sudo chmod 755 /usr/bin/halt
$sudo chmod 755 /usr/bin/shutdown


Para terminar basta con iniciar una sesión con el usuario que se añadió al grupo shutdown para probar que, por fin, puede apagar el equipo sin problemas.

Espero que estas indicaciones les ayuden a solventar este problema.

Comentarios

Entradas populares de este blog

Añadir disco en caliente a un Ubuntu virtualizado

  En este artículo vamos a explicar cómo aumentar un volumen de discos en una máquina virtual. Pongamos por caso que tenemos un servidor que se nos ha quedado corto de espacio en disco y que no podemos parar. La solución es añadir un nuevo disco virtual a nuestra máquina y, con ese espacio añadido, extender el volumen de discos.  En principio, este es un proceso en el que no hay pérdida de datos. Sin embargo, es conveniente que exista una copia de seguridad antes de llevarlo a cabo como precaución. He de decir que yo lo he hecho en un par de ocasiones y no ha habido problemas con la máquina virtual ni con los datos. De hecho, los usuarios ni se enteraron de que se amplió el espacio en disco. Consideraciones iniciales En primer lugar, este es un proceso que sólo se puede llevar a cabo en una máquina virtual. Para añadir un disco nuevo en una máquina física hay que pararla y, por lo tanto, no se puede añadir en caliente. Cierto es que la parte de extender el volumen sí que se realiza igu

Atom ha muerto, viva Zed

El día 8 de junio de 2022, Microsoft anunció que a partir del día 31 de diciembre de este mismo año dejaría de dar soporte para el editor de código Atom .  ¿En qué nos afecta esto a nosotros? Bueno, pues si me han seguido en artículos anteriores saben que tras una comparativa de varios IDEs había decidido utilizar Atom para los ejemplos que tuviera que hacer en este blog. Sobre todo los artículos que prepararé para ilustrar el uso de Laravel . Amén de los miles de programadores que actualmente usan Atom  en sus proyectos, claro. Pero, ¿qué editor de código abierto podremos utilizar para sustituir a Atom ? En el mismo comunicado, Microsoft explicaba que el abandono del proyecto Atom  se debía a que querían volcar todos sus esfuerzos en el Visual Studio Code y, por supuesto, recomendó a los usuarios de Atom la utilización del mismo como alternativa natural. No quiero entrar en las bondades o defectos del Visual Studio Code  si quieres elegirlo como tu IDE para desarrollo predeterm

Zed: ahora un editor de código de código abierto

  Zed: ahora un editor de código de código abierto Introducción Como ya les comenté en un artículo anterior  Atom ha muerto, viva ZED , Microsoft dejó de dar soporte para el editor de código Atom en el año 2022 en beneficio del Visual Studio Code . En aquel artículo les comentaba que para mi el sucesor de Atom era Zed pues era un editor que se estaba creando por el mismo grupo de trabajo que creó el Atom . Además de que parecía que iba a seguir con la misma filosofía con la que nació  Atom . El editor Zed, una descripción de sus características Zed es un editor de código desarrollado en Rust que, como deberíamos saber, es un lenguaje de programación de sistemas que se enfoca en la seguridad, el rendimiento y la concurrencia. Pues, como decíamos, Zed acaba de dar el salto a ser de código abierto bajo la licencia GPL v3 . Este cambio no solo representa una nueva era para Zed , sino que también nos dirige a un nuevo mundo de colaboración y desarrollo en el ámbito de la programación.