> For the complete documentation index, see [llms.txt](https://juanbermudez.gitbook.io/aprendiendolinux/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://juanbermudez.gitbook.io/aprendiendolinux/reiniciar-detener-o-apagar.md).

# Reiniciar, detener o apagar

{% hint style="danger" %}
Asegúrese de guardar correctamente los ficheros abiertos, y que no interrumpa los procesos de otros servicios o usuarios.
{% endhint %}

## [Niveles de ejecución](https://es.wikipedia.org/wiki/Nivel_de_ejecuci%C3%B3n)

* init - Gestor de servicios del sistema.

Antes de poder apagar el sistema de forma correcta, es importante conocer los niveles de ejecución, ya que estos definen los servicios y recursos que están disponibles para los usuarios.

Ya que los sistemas solo pueden encontrarse en un solo nivel de ejecución, podemos usar el comando `init` y cada uno de los niveles para controlar servicios del sistema.

<table><thead><tr><th width="140">Nivel de ejecución</th><th width="140">Estado del sistema</th><th>Descripción</th></tr></thead><tbody><tr><td><code>0</code></td><td>Modo de supervisión</td><td>El sistema operativo se apaga. El sistema muestra el indicador <code>ok</code>.</td></tr><tr><td><code>1</code></td><td>Modo monousuario</td><td>El sistema operativo se encuentra en modo de mantenimiento. En este modo, sólo se inician algunos procesos por razones de funcionalidad básica del sistema. Solo se montan los sistemas de archivo <code>/</code>, <code>/usr</code>, y <code>/proc</code>, y no se comparten sistemas de archivo nfs. Sólo se permite registrarse al superusuario.</td></tr><tr><td><code>2</code></td><td>Modo multiusuario</td><td>Multiusuario sin soporte de red.</td></tr><tr><td><code>3</code></td><td>Modo multiusuario</td><td>El sistema operativo ha arrancado totalmente; se inician todos los procesos necesarios para soportar varios usuarios, acceso a red, sistemas de archivo, registro de eventos, y así sucesivamente.</td></tr><tr><td><code>4</code></td><td>Modo multiusuario</td><td>No es igual que el 3.</td></tr><tr><td><code>5</code></td><td>Apagado automático</td><td>El sistema operativo se apaga, y se desconecta automáticamente la alimentación (sólo en sistemas soportados).</td></tr><tr><td><code>6</code></td><td>Rearrancado</td><td>Se lleva al sistema operativo al nivel de ejecución 0, y después al nivel de ejecución predeterminado.</td></tr></tbody></table>

Un ejemplo de apagar el sistema de inmediato es ejecutar `init 0`. Para ejecutarlo debemos tener acceso de superusuario.

```bash
$ sudo init 0
```

Una forma de ver en que nivel de ejecución estamos, podemos ejecutar el comando `runlevel` o `who -r`. Para cambiar a otro nivel de ejecución, por ejemplo al Modo monousuario, simplemente ejecuta `init #`. Para reiniciar el sistema ejecuta `init 6`.

```bash
$ sudo init 1
```

## Apagando el sistema

* [halt](https://manpages.debian.org/bookworm/sysvinit-core/halt.8.es.html) - Detiene la CPU.

El comando `halt` solamente apaga la CPU, esto hace que la fuente de alimentación siga funcionando, para apagarla también se debe usar la opción `-p`.

```bash
$ sudo halt -p
```

* [reboot](https://manpages.debian.org/bookworm/manpages-es/reboot.8.es.html) - Reinicia el sistema.

```bash
$ sudo reboot
```

* [poweroff](https://manpages.debian.org/bookworm/manpages-es/poweroff.8.es.html) - Apaga el sistema.

El comando `poweroff` apaga el sistema por completo, es como ejecutar `halt -p`.

```bash
$ sudo poweroff
```

* [shutdown](https://manpages.debian.org/bookworm/sysvinit-core/shutdown.8.es.html) - Apaga el sistema.

```bash
$ sudo shutdown
```

Usa el comando `shutdown` si quiere enviar un mensaje de advertencia a todos los usuarios conectados. El comando `shutdown` espera 60 segundos una vez ejecutado, y procede a apagar el sistema por completo. Si queremos que se apague de inmediato ejecutamos `shutdown now`.

Si queremos apagar o reiniciar el sistema en un tiempo determinado, puedes asignarlo según el uso de 24 horas.

```bash
$ sudo shutdown hh:mm
```

Para cancelar el apagado, puede volver a ejecutar el comando `shutdown` con la opción `-c`.

```bash
$ sudo shutdown -c
```
