Skip to content

Commit

Permalink
docs: Added screenshots of installation scripts
Browse files Browse the repository at this point in the history
  • Loading branch information
2b-t committed Feb 25, 2023
1 parent c5476f7 commit dbde070
Show file tree
Hide file tree
Showing 12 changed files with 31 additions and 4 deletions.
8 changes: 7 additions & 1 deletion ReadMe.md
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,13 @@ As a Docker shares the host kernel allowing a container to run real-time capable

There are several ways of applying a [`PREEMPT_RT`](https://wiki.linuxfoundation.org/realtime/start) patch. [Since February 2023](https://ubuntu.com/blog/real-time-ubuntu-is-now-generally-available) and Ubuntu 22.04 an Ubuntu realtime-kernel, that can be installed with a few terminal commands, is available through [**Ubuntu Pro**](https://ubuntu.com/pro). For **personal use** you can **register up to five machines for free** while commercial customers will have to sign up for a [subscription](https://ubuntu.com/pro/subscribe). I recommend installing the patch in this way as it is by far the easiest and most reliable. The guide [`doc/PreemptRt.md`](./doc//PreemptRt.md) walks you through the registration and installation procedure.

Alternatively, I have also lined out the installation procedure either by compilation from source or from an existing [Debian package](https://packages.debian.org/buster/linux-image-rt-amd64) in [`doc/PreemptRt.md`](./doc//PreemptRt.md). The same procedure can also be performed with the provided scripts [`src/install_debian_preemptrt`](./src/install_debian_preemptrt) and [`src/compile_kernel_preemptrt`](./src/compile_kernel_preemptrt).
Alternatively, I have also lined out the installation procedure either by compilation from source or from an existing [Debian package](https://packages.debian.org/buster/linux-image-rt-amd64) in [`doc/PreemptRt.md`](./doc//PreemptRt.md). The same procedure can also be performed with the provided scripts [`src/install_debian_preemptrt`](./src/install_debian_preemptrt) and [`src/compile_kernel_preemptrt`](./src/compile_kernel_preemptrt) (see screenshots below).

| ![Installation script from existing Debian](media/install_debian_preemptrt_2.png) | ![Compilation from source](media/compile_kernel_preempt_rt_1.png) |
| ------------------------------------------------------------ | ------------------------------------------------------------ |
| Installation script for downloading existing Debian package | Installation script for compilation from source |



### 1.2 Setting up real-time privileges

Expand Down
27 changes: 24 additions & 3 deletions doc/PreemptRt.md
Original file line number Diff line number Diff line change
Expand Up @@ -78,9 +78,17 @@ Start of by launching [`src/install_debian_preemptrt`](./src/install_debian_pree

```shell
$ cd src
$ ./install_debian_preemptrt
$ mkdir tmp
$ cd tmp
$ ./../install_debian_preemptrt
```

Below are shown screenshots of the installation script:

| ![Launch from command line](../media/install_debian_preemptrt_0.png) | ![Select desired kernel version](../media/install_debian_preemptrt_1.png) |
| ------------------------------------------------------------ | ------------------------------------------------------------ |
| ![Select download server](../media/install_debian_preemptrt_2.png) | ![Install the freshly downloaded Debian package](../media/install_debian_preemptrt_3.png) |

Afterwards you can reboot your system (be sure to select the correct kernel!) and should already be ready to go. You can check the kernel version with `$ uname -r` to verify that you are using the correct kernel and the installation was indeed successful. Quite often this installation might fail due to missing dependencies. I am not completely sure what is the issue there but in case this does not work you will have to compile the kernel yourself as outlined in the next section.

##### 1.2.2.2 Manual installation
Expand Down Expand Up @@ -110,7 +118,9 @@ You can launch it in two different ways:

```shell
$ cd src
$ ./compile_kernel_preemptrt
$ mkdir tmp
$ cd tmp
$ ./../compile_kernel_preemptrt
```

will install the required dependencies and then open a dialog which lets you browse the possible versions and available options manually, reducing the copy and paste operations.
Expand All @@ -119,11 +129,22 @@ If you supply a correct real-time patch version from the list of available ones

```shell
$ cd src
$ sudo ./compile_kernel_preemptrt 5.10.78-rt55
$ mkdir tmp
$ cd tmp
$ sudo ./../compile_kernel_preemptrt 5.10.78-rt55
```

This might be helpful for deploying a new kernel automatically on a remote system. The possible version numbers to be passed as arguments can be found at [here](https://mirrors.edge.kernel.org/pub/linux/kernel/projects/rt/).

Below are shown screenshots of the installation script:

| ![Launch the script from command line](../media/compile_kernel_preempt_rt_0.png) | ![Select the major kernel version](../media/compile_kernel_preempt_rt_1.png) |
| ------------------------------------------------------------ | ------------------------------------------------------------ |
| ![Select the desired version of PREEMPT_RT](../media/compile_kernel_preempt_rt_2.png) | ![Optional: Make manual modifications to the kernel settings](../media/compile_kernel_preempt_rt_3.png) |
| ![Exit and save the manual kernel configuration](../media/compile_kernel_preempt_rt_4.png) | ![Select Debian or classic installation and wait](../media/compile_kernel_preempt_rt_5.png) |



##### 1.2.3.2 Manual installation

The re-compilation of the kernel is described in the [official Ubuntu installation guide](https://help.ubuntu.com/lts/installation-guide/amd64/install.en.pdf#page=98) as well as on the [Franka Emika installation guide](https://frankaemika.github.io/docs/installation_linux.html#setting-up-the-real-time-kernel) page but [might depend on the precise version](https://stackoverflow.com/a/51709420). In case you are running into issues you might have to consider [this](https://askubuntu.com/a/1338150) and [this](https://askubuntu.com/a/1329625) post. As already mentioned the script `src/compile_kernel_preemptrt` does the steps that are listed in this section. Therefore it should not be necessary for you to do the following steps manually!
Expand Down
Binary file added media/compile_kernel_preempt_rt_0.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added media/compile_kernel_preempt_rt_1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added media/compile_kernel_preempt_rt_2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added media/compile_kernel_preempt_rt_3.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added media/compile_kernel_preempt_rt_4.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added media/compile_kernel_preempt_rt_5.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added media/install_debian_preemptrt_0.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added media/install_debian_preemptrt_1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added media/install_debian_preemptrt_2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added media/install_debian_preemptrt_3.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit dbde070

Please sign in to comment.