disk info doc
This commit is contained in:
84
Linux/Basic Administration/01-runlevels.md
Normal file
84
Linux/Basic Administration/01-runlevels.md
Normal file
@@ -0,0 +1,84 @@
|
||||
# 🐧 Linux Runlevels Guide
|
||||
|
||||
This guide provides a concise overview of traditional **runlevels** in Linux systems, particularly for **Red Hat** and **Debian**-based distributions. Runlevels define specific states of system operation, historically managed by the `init` system.
|
||||
|
||||
---
|
||||
|
||||
## 🔄 System Boot Sequence
|
||||
|
||||
```plaintext
|
||||
BIOS → Bootloader → Kernel → init
|
||||
```
|
||||
|
||||
* **BIOS**: Performs hardware checks via **POST** (Power-On Self Test).
|
||||
* **Bootloader**: Loads the kernel.
|
||||
* **Kernel**: Initializes system and mounts the root filesystem.
|
||||
* **init**: Launches system processes based on the selected runlevel.
|
||||
|
||||
---
|
||||
|
||||
## 📊 Runlevels Comparison
|
||||
|
||||
| Runlevel | Description | Red Hat | Debian |
|
||||
| -------- | ----------------------------------- | ---------------- | --------------- |
|
||||
| 0 | Halt / Shutdown | ✅ Supported | ✅ Supported |
|
||||
| 1 | Single-User Mode | ✅ Supported | ✅ Supported |
|
||||
| 2 | Multi-User (No Network) | ❌ (Includes Net) | ✅ Supported |
|
||||
| 3 | Multi-User (Network, No GUI) | ✅ Supported | ✅ Supported |
|
||||
| 4 | User-Defined / Custom | ✅ Supported | ✅ Supported |
|
||||
| 5 | GUI Mode / *(Halt on some systems)* | ✅ GUI Mode | ⚠️ Custom/Halt? |
|
||||
| 6 | Reboot | ✅ Supported | ✅ Supported |
|
||||
|
||||
> 💡 **Notes**:
|
||||
> • **Runlevel 5** on Red Hat typically launches a full graphical environment (GUI).
|
||||
> • On Debian, runlevels 2–5 are often configured identically and can be customized.
|
||||
> • Runlevel behavior is configurable via `/etc/inittab` (SysVinit systems).
|
||||
|
||||
---
|
||||
|
||||
## 🔧 Useful Commands
|
||||
|
||||
### ✅ Check Current Runlevel
|
||||
|
||||
```bash
|
||||
runlevel
|
||||
```
|
||||
|
||||
### 🔁 Change Runlevel
|
||||
|
||||
```bash
|
||||
telinit <runlevel>
|
||||
```
|
||||
|
||||
or
|
||||
|
||||
```bash
|
||||
init <runlevel>
|
||||
```
|
||||
|
||||
> ⚠️ **Caution**: Switching runlevels may stop services or terminate user sessions. Use carefully on production systems.
|
||||
|
||||
---
|
||||
|
||||
## 🚀 Modern Systems: systemd Targets
|
||||
|
||||
Most modern Linux distributions use **systemd**, which replaces runlevels with **targets**.
|
||||
|
||||
| Runlevel | systemd Target |
|
||||
| -------- | ------------------- |
|
||||
| 0 | `poweroff.target` |
|
||||
| 1 | `rescue.target` |
|
||||
| 3 | `multi-user.target` |
|
||||
| 5 | `graphical.target` |
|
||||
| 6 | `reboot.target` |
|
||||
|
||||
### 📌 Common systemd Commands
|
||||
|
||||
```bash
|
||||
# Show default target
|
||||
systemctl get-default
|
||||
|
||||
# Change to graphical mode
|
||||
systemctl isolate graphical.target
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user