Tengo una PC Ubuntu ejecutándose como servidor Plex. ¿Cómo consigo que nadie pueda apagar la computadora y solo permita que el usuario reinicie la máquina? Sé que es posible en Windows pero me pregunto si es posible en Ubuntu.
Respuesta1
La forma más efectiva de hacer esto sería enmascarar el objetivo apagado de esta manera:
sudo systemctl mask poweroff.target
Ahora será imposible que alguien apague la máquina a menos que mantenga presionado el botón de encendido o desconecte físicamente la máquina de la alimentación.
El reinicio no se ve afectado por esta máscara.
En caso de que necesite apagar la máquina en el futuro para mantenimiento o reemplazo de hardware, puede unmask
realizar lo siguiente:
sudo systemctl unmask poweroff.target
Respuesta2
Si solo necesita otorgar el poder de reiniciar a usuarios que no sean administradores,puedes agregar una entrada para ellos en tu sudoers
archivo parareboot
(y/o systemctl reboot
, dependiendo de lo que desee que ejecuten). Entonces podrán correr sudo reboot
(y/o sudo systemctl reboot
).Esta respuesta supone que de otro modo no tendrían acceso asudo
- es decir, que sean usuarios normales, no administradores, que no formen parte del wheel
grupo.
El sudoers
archivo se encuentra en /etc/sudoers
, pero ustedno debeedítelo directamente. Más bien, sólo deberías editarlo usando visudo
. Necesitarás ser root para editarlo, así que ejecutarás sudo visudo
. El visudo
comando verificará la sintaxis de sus ediciones, y siempre debe usar esto para evitar romper su configuración y evitartú mismoobtener acceso root en el futuro.
Luego puede agregar algo como las siguientes líneas a su sudoers
archivo:
username ALL=(root): /usr/sbin/reboot
username ALL=(root): /usr/bin/systemctl reboot
dónde username
está el nombre de usuario del usuario (o %groupname
para un grupo) y dónde las rutas son las rutas reales a los comandos en su sistema (consulte con which
, por ejemplo, which reboot
.).
Para obtener más información, consulteman sudoers
,man sudo
, yman visudo
.