Ubuntu es una distribución del sistema operativo GNU / Linux que a su vez pertenece a la familia de sistemas Unix, una arquitectura común para varios sistemas operativos modernos.
Tradicionalmente, Unix solía ejecutarse en computadoras mainframe. Instalaciones informáticas centrales que sirven a docenas o cientos de usuarios a través de terminales remotas. Como todos los usuarios confiaban en la disponibilidad del mainframe, a ningún usuario se le permitió emitir un comando de apagado. Una idea que es fundamental para la arquitectura Unix: el núcleo del sistema nunca inicializará un apagado a menos que la función correspondiente sea llamada por un proceso de superusuario.
En los sistemas de escritorio contemporáneos, los desarrolladores han pasado por ciertos problemas para hacer que el apagado esté disponible para el simple usuario de escritorio. Una técnica común es permitir que el administrador de inicio de sesión, que generalmente se ejecuta en el contexto de seguridad del usuario raíz, maneje el apagado y el reinicio. En este caso, el shell gráfico emite una solicitud al administrador de inicio de sesión para apagar la computadora. Esto implica el uso de la comunicación entre procesos (IPC), generalmente a través del servicio dbus.
El juego de políticas mencionado anteriormente extiende este proceso al proporcionar un marco estandarizado a través del cual el administrador de inicio de sesión (o cualquier programa que proporcione el servicio de apagado) puede verificar qué usuarios pueden causar un apagado, y a través de los cuales un administrador puede configurar esos permisos respectivamente.
Algunos entornos de escritorio no utilizan servicios basados en IPC, sino más bien un conjunto de programas auxiliares para proporcionar las mismas funciones o funciones similares. Esos programas auxiliares se llamarían a través de mecanismos, lo que permitiría cambiar al contexto de superusuario, como sudo, suid o un mecanismo de kit de políticas similar a sudo.
En cualquier caso, el programa de apagado tradicional tonto en el shell no funciona de esta manera, requiere que veas que se ejecuta en un contexto de superusuario.
sudo shutdown -h now
pero el problema es que sin el permiso de accesoshutdown
nunca funciona. .. Espero que entiendas mi situación .. :)