Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit dd5c068

Browse files
Re-organize "Boot management" (#631)
- Re-write boot-management.md to follow the style guide - Create a new section: Kernel management - Move the "Kernels" section of boot management to the new section - Add "Remove old kernels" to the new section.
1 parent 73390fc commit dd5c068

File tree

4 files changed

+200
-42
lines changed

4 files changed

+200
-42
lines changed
Lines changed: 44 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -1,63 +1,65 @@
11
---
2-
title: Boot Management
2+
title: Boot management
33
summary: Guide to customizing the Solus boot process
44
---
55

6-
# Boot Management
6+
Solus uses `clr-boot-manager` from the Clear Linux project to handle all boot configuration. This tool automatically configures the appropriate boot loader based on your system type:
77

8-
## clr-boot-manager
8+
- Legacy BIOS systems: GRUB2
9+
- Modern UEFI systems: `systemd-boot`
910

10-
Solus leverages `clr-boot-manager` from the Clear Linux\* project to manage its boot process.
11-
On legacy BIOS systems, `clr-boot-manager` will configure `GRUB2` to properly boot your system.
12-
On modern UEFI systems, `clr-boot-manager` will configure `systemd-boot` instead.
13-
This means that any time we want to modify the boot process, `clr-boot-manager` will be involved.
14-
Trying to modify the configurations manually may work temporarily, but will be overwritten eventually.
11+
Because `clr-boot-manager` manages these configurations, any boot customizations must go through this tool rather than manual edits. If you try to modify the configurations manually, `clr-boot-manager` will overwrite your changes during the next system update.
1512

16-
### Open the boot menu
13+
##Access the boot menu
1714

18-
By default, EFI installs will not show the boot menu and boot directly into Solus. By hitting space bar (repeatedly) during boot, the boot menu will appear (it may take a couple of goes to get the timing right).
15+
On systems with UEFI installations, the boot menu doesn't appear by default. To display the boot menu:
1916

20-
### Displaying the boot menu by default every boot
17+
- Press the <kbd>Spacebar</kbd> key repeatedly as your computer starts. You may need several attempts to get the timing right.
2118

22-
The following command will set the timeout of the boot loader to five seconds so that it appears by default:
19+
## Display the boot menu by default
2320

24-
```bash
25-
sudo clr-boot-manager set-timeout 5 && sudo clr-boot-manager update
26-
```
21+
To make the boot menu appear automatically with a five-second timeout:
2722

28-
### Adding kernel parameters
23+
- Run the following command:
2924

30-
Kernel parameters can be appended to boot via creating a file for `clr-boot-manager` to use when updating kernels. For example, to add `nomodeset` to boot options, you would create a file in `/etc/kernel/cmdline.d` (as sudo):
25+
```bash
26+
sudo clr-boot-manager set-timeout 5 && sudo clr-boot-manager update
27+
```
3128

32-
```bash
33-
sudo mkdir -p /etc/kernel/cmdline.d
34-
echo 'nomodeset' | sudo tee /etc/kernel/cmdline.d/40_nomodeset.conf
35-
```
29+
## Add kernel parameters
3630

37-
The settings should be on one line with a space between them. You will need to run `sudo clr-boot-manager update` for the options to be appended to boot.
31+
You can add kernel parameters by creating configuration files that `clr-boot-manager` uses when updating kernels.
3832

39-
## Kernels
33+
To add kernel parameters, do the following:
4034

41-
### Installing a different kernel branch
35+
1. Create the configuration directory:
4236

43-
By default, Solus utilizes our linux-current kernel. The separate kernel branches can be added by installing the `linux-lts` or `linux-current` packages. Note that each kernel has separate module packages, so if you use these kernel modules, you'll need to install the one related to the kernel you are adding.
37+
```bash
38+
sudo mkdir -p /etc/kernel/cmdline.d
39+
```
4440

45-
| linux-lts | linux-current |
46-
| ----------------------- | ------------------------------- |
47-
| bbswitch | bbswitch-current |
48-
| broadcom-sta | broadcom-sta-current |
49-
| linux-lts-headers | linux-current-headers |
50-
| nvidia-470-glx-driver | nvidia-470-glx-driver-current |
51-
| nvidia-beta-driver | nvidia-beta-driver-current |
52-
| nvidia-developer-driver | nvidia-developer-driver-current |
53-
| nvidia-glx-driver | nvidia-glx-driver-current |
54-
| openrazer | openrazer-current |
55-
| rtl8852bu | rtl8852bu-current |
56-
| v4l2loopback | v4l2loopback-current |
57-
| vhba-module | vhba-module-current |
58-
| virtualbox | virtualbox-current |
59-
| xone | xone-current |
41+
1. Create a configuration file with your kernel parameter:
6042

61-
### Change the default kernel branch to boot
43+
```bash
44+
echo 'parameter-name' | sudo tee /etc/kernel/cmdline.d/40_[description].conf
45+
```
6246

63-
After successfully booting into a kernel from the `current` or `lts` branches running `sudo clr-boot-manager update` will make the booted kernel branch the default boot option going forward.
47+
For example, to add the `nomodeset` parameter:
48+
49+
```bash
50+
echo 'nomodeset' | sudo tee /etc/kernel/cmdline.d/40_nomodeset.conf
51+
```
52+
53+
1. If you want to add multiple parameters, put them on one line with spaces between them in the configuration file.
54+
55+
For example:
56+
57+
```bash
58+
echo 'nomodeset quiet splash acpi=off' | sudo tee /etc/kernel/cmdline.d/40_multiple_params.conf
59+
```
60+
61+
1. Apply the new kernel parameters:
62+
63+
```bash
64+
sudo clr-boot-manager update
65+
```
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{
2+
"label": "Kernel management",
3+
"link": {
4+
"type": "generated-index"
5+
}
6+
}
Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
---
2+
title: Add a different kernel branch
3+
summary: Install and switch between kernel branches in Solus.
4+
---
5+
6+
Solus offers two kernel types: the current kernel (`linux-current`) and the LTS (Long-Term Support) kernel (`linux-lts`).
7+
8+
By default, Solus uses the `linux-current` kernel. You can switch between kernel branches at any time.
9+
10+
To install and switch to a different kernel branch, follow these steps:
11+
12+
1. Install the desired kernel branch:
13+
14+
- Current kernel
15+
16+
```
17+
sudo eopkg install linux-current
18+
```
19+
20+
- LTS kernel
21+
22+
```
23+
sudo eopkg install linux-lts
24+
```
25+
26+
1. Install the necessary kernel modules of the kernel branch you want to try.
27+
28+
Each kernel branch has its own set of module packages. If you use hardware or features that require specific kernel modules (for example, NVIDIA graphics cards or VirtualBox), you must also install the corresponding module package for the new kernel branch.
29+
30+
The following table lists the kernel modules of each branch:
31+
32+
| linux-lts | linux-current |
33+
| ----------------------- | ------------------------------- |
34+
| bbswitch | bbswitch-current |
35+
| broadcom-sta | broadcom-sta-current |
36+
| linux-lts-headers | linux-current-headers |
37+
| nvidia-470-glx-driver | nvidia-470-glx-driver-current |
38+
| nvidia-beta-driver | nvidia-beta-driver-current |
39+
| nvidia-developer-driver | nvidia-developer-driver-current |
40+
| nvidia-glx-driver | nvidia-glx-driver-current |
41+
| openrazer | openrazer-current |
42+
| rtl8852bu | rtl8852bu-current |
43+
| v4l2loopback | v4l2loopback-current |
44+
| vhba-module | vhba-module-current |
45+
| virtualbox | virtualbox-current |
46+
| xone | xone-current |
47+
48+
1. Restart your computer.
49+
50+
1. Select the new kernel branch from the boot menu when your computer restarts.
51+
52+
:::warning Important
53+
54+
On systems with UEFI installations, the boot menu doesn't appear by default.
55+
56+
To display the boot menu, press the <kbd>Spacebar</kbd> key repeatedly as your computer starts.
57+
58+
:::
59+
60+
1. After you successfully boot with the new kernel, set it as the default to ensure Solus uses it for future startups:
61+
62+
```
63+
sudo clr-boot-manager update
64+
```
Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,86 @@
1+
---
2+
title: Remove old kernels
3+
summary: Manage and remove old kernels to free up space on the boot partition.
4+
---
5+
You might need to remove old kernels for various reasons:
6+
7+
- The boot partition is too small for multiple kernel versions
8+
- [`clr-boot-manager`](https://github.com/clearlinux/clr-boot-manager) not automatically cleaning up old entries
9+
- Custom or testing kernels installed that won't be automatically removed
10+
11+
If the boot partition of your system is full, updates might fail and you might not be able to install new kernels.
12+
13+
:::tip
14+
15+
Keep at least 2-3 versions: your current kernel and the most recent previous version as a backup.
16+
17+
:::
18+
19+
To remove old kernels, do the following:
20+
21+
1. Check which kernel you're currently running.
22+
23+
```bash
24+
uname -r
25+
```
26+
27+
This command displays the version of the currently running kernel. For example:
28+
29+
```
30+
6.6.8-290.current
31+
```
32+
33+
Make note of this version.
34+
35+
1. Mount the boot partition.
36+
37+
```bash
38+
sudo clr-boot-manager mount-boot
39+
```
40+
41+
1. Check the partition's usage.
42+
43+
```bash
44+
sudo du -d1 -h /boot
45+
df -h
46+
```
47+
48+
The commands display the disk usage of directories in `/boot` in human-readable format, and show overall disk space usage including the boot partition.
49+
50+
1. List the installed kernels.
51+
52+
```bash
53+
sudo clr-boot-manager list-kernels
54+
```
55+
56+
The command shows the installed kernels. For example:
57+
58+
```
59+
com.solus-project.current.6.6.8-290
60+
com.solus-project.current.6.6.7-289
61+
com.solus-project.current.6.6.6-288
62+
```
63+
64+
1. Remove the kernels you don't need.
65+
66+
:::danger Warning
67+
68+
Never remove the kernel your system is using. This is the version you noted in step 1.
69+
70+
:::
71+
72+
```bash
73+
sudo clr-boot-manager remove-kernel <kernel-name>
74+
```
75+
76+
Replace `<kernel-name>` with the specific kernel version to remove. For example:
77+
78+
```bash
79+
sudo clr-boot-manager remove-kernel com.solus-project.current.6.6.6-288
80+
```
81+
82+
1. Verify that space has been freed on the boot partition.
83+
84+
```bash
85+
df -h
86+
```

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /