TrueNAS Core has the "tunables" pane in settings where one can edit either boot arguments, sysctl or rc.conf. For SCALE, we should have at least kernel params, which would be passed on to grub.conf, and the ability to pass on custom udev rules. My specific use case for both is as follows:
For the kernel params, i need net.ifnames=0, since my board has a busted BIOS which trips up systemd and it's predictable interface names, where 3 out of my 4 network interfaces contend for the same interface name. This is MAYBE fixed for systemd-247, but I don't have an OS that ships with that yet.For now, SCALE will randomly assign ethX for them, but on each boot they will get the numbers randomly. There is nothing I can do about this, since the manufacturer has EOLed the board.
For udev rules - I have 3 USB devices which I will want to use in docker containers. They are all identified as /dev/ttyUSBX, since they're all behind a serial-usb converter (a CEC controller, zigbee stick and zwave stick). I have a udev rule which hardlinkseach of them via usb identifiers to predictable names. A different usecase is setting link power managment for SATA drives, as this brings down PCH temperatures by 9C, and even impacts the CPU temperature by 3C with little difference to performance. I also use them to set the rx/tx buffers on my ethernet controllers
I can imagine some people would want sysctl to go along for the ride, just like in CORE
For the kernel params, i need net.ifnames=0, since my board has a busted BIOS which trips up systemd and it's predictable interface names, where 3 out of my 4 network interfaces contend for the same interface name. This is MAYBE fixed for systemd-247, but I don't have an OS that ships with that yet.For now, SCALE will randomly assign ethX for them, but on each boot they will get the numbers randomly. There is nothing I can do about this, since the manufacturer has EOLed the board.
For udev rules - I have 3 USB devices which I will want to use in docker containers. They are all identified as /dev/ttyUSBX, since they're all behind a serial-usb converter (a CEC controller, zigbee stick and zwave stick). I have a udev rule which hardlinkseach of them via usb identifiers to predictable names. A different usecase is setting link power managment for SATA drives, as this brings down PCH temperatures by 9C, and even impacts the CPU temperature by 3C with little difference to performance. I also use them to set the rx/tx buffers on my ethernet controllers
I can imagine some people would want sysctl to go along for the ride, just like in CORE