Adding /etc/modprobe.d folder for module configuration (#397)

* Add a /etc/modprobe.d folder

populated using a config USB stick with folder modprobe

* Add the documentation for the modprobe folder
This commit is contained in:
Maël Kimmerlin 2019-05-08 14:15:48 +03:00 committed by Pascal Vizeli
parent d861ecae6f
commit 5e82060124
6 changed files with 30 additions and 5 deletions

View File

@ -8,18 +8,20 @@ Format a USB stick with FAT32/EXT4/NTFS and name it `CONFIG`. Alternative you ca
```text ```text
network/ network/
modules/ modules/
modprobe/
udev/ udev/
authorized_keys authorized_keys
timesyncd.conf timesyncd.conf
hassos-xy.raucb hassos-xy.raucb
``` ```
- The `network` folder can contain any kind of NetworkManager connection files. For more information see [Network][network.md]. - The `network` folder can contain any kind of NetworkManager connection files. For more information see [Network][network.md].
- The `modules` folder is for modules-load configuration files. - The `modules` folder is for modules-load configuration files.
- The `modprobe` folder is for modules configuration files (/etc/modprobe.d)
- The `udev` folder is for udev rules files. - The `udev` folder is for udev rules files.
- The `authorized_keys` file activates debug SSH access on port `22222`. See [Debugging Hassio][debug-hassio]. - The `authorized_keys` file activates debug SSH access on port `22222`. See [Debugging Hassio][debug-hassio].
- The `timesyncd.conf` file allow you to set different NTP servers. HassOS won't boot without correct working time servers! - The `timesyncd.conf` file allow you to set different NTP servers. HassOS won't boot without correct working time servers!
- The `hassos-*.raucb` file is a firmware OTA update which will be installed. These can be found on on the [release][hassos-release] page. - The `hassos-*.raucb` file is a firmware OTA update which will be installed. These can be found on on the [release][hassos-release] page.
You can put this USB stick into the device and it will be read on startup. You can also trigger this process later over the You can put this USB stick into the device and it will be read on startup. You can also trigger this process later over the
API/UI or by calling `systemctl restart hassos-config` on the host. API/UI or by calling `systemctl restart hassos-config` on the host.
@ -32,7 +34,7 @@ You can edit or create a `cmdline.txt` in your boot partition. That will be read
### Kernel-Module ### Kernel-Module
The kernel module folder `/etc/modules-load.d` is persistent and you can add your configuration files there. See [Systemd modules load][systemd-modules]. The kernel module folder `/etc/modules-load.d` is persistent and you can add your configuration files there. See [Systemd modules load][systemd-modules]. You can add the modules configuration files in `/etc/modprobe.d` that is also persistent.
### Udev rules ### Udev rules

View File

@ -1,2 +1,2 @@
[Unit] [Unit]
RequiresMountsFor=/etc/modules-load.d RequiresMountsFor=/etc/modules-load.d /etc/modprobe.d

View File

@ -0,0 +1,14 @@
[Unit]
Description=Kernel persistent modprobe.d
Requires=mnt-overlay.mount
After=mnt-overlay.mount
Before=systemd-modules-load.service hassos-config.service
[Mount]
What=/mnt/overlay/etc/modprobe.d
Where=/etc/modprobe.d
Type=None
Options=bind
[Install]
WantedBy=hassos-bind.target

View File

@ -44,12 +44,21 @@ fi
## ##
# Modules # Modules
if [ -d "${CONFIG_DIR}/modules" ]; then if [ -d "${CONFIG_DIR}/modules" ]; then
echo "[Info] Update Modules configuration!" echo "[Info] Update Modules autoload!"
rm -rf /etc/modules-load.d/* rm -rf /etc/modules-load.d/*
cp -f ${CONFIG_DIR}/modules/* /etc/modules-load.d/ cp -f ${CONFIG_DIR}/modules/* /etc/modules-load.d/
fi fi
##
# Modules configuration
if [ -d "${CONFIG_DIR}/modprobe" ]; then
echo "[Info] Update Modules configuration!"
rm -rf /etc/modprobe.d/*
cp -f ${CONFIG_DIR}/modprobe/* /etc/modprobe.d/
fi
## ##
# Udev # Udev
if [ -d "${CONFIG_DIR}/udev" ]; then if [ -d "${CONFIG_DIR}/udev" ]; then