Hello all,
My first post here.
Until the day before yesterday I'd never heard of SliTaz. :/
Thank you all for all your work on it. It looks great for my purposes.
Briefly I'm looking for a minimal 32-bit operating system which I can:
1. keep up to date - the kernel in particular, even if I have to build it myself - and
2. use to build and run DNS (bind), HTTP (apache2) and SMTP (sendmail) servers which do nothing else.
I am not interested in X, GUIs, and the frills, bells and whistles which go with them.
I am interested in security - this means that
3. logging is very important (I use syslog-ng),
4. the box must always know the correct time to within a few milliseconds (I use Chrony), and
5. I need to be able to manage iptables/ipsets rules in bulk (mostly Bash scripts).
None of that should present issues to the Linux kernel, but recently, here, it has done.
The servers run on headless VirtualBox 32-bit VMs with very little memory (the DNS servers run with 128M RAM). They are managed remotely using ssh. At the moment they run a more or less stock Debian Bullseye, but with Bullseye the most recent kernel that I have been able to boot on these VMs is 4.19.0. Before Bullseye the systems were fine, but now, after apt-get upgrade, the systems will not boot until I replace the kernel with something older. In addition, since security updates of about a year ago, the real-time clocks on some of the VMs have become unstable to the point of being useless.
Although the host system is 64-bit, the VMs are limited to 32-bit because of restrictions imposed by the hardware (host CPUs) and VirtualBox itself. I have been running this setup for many years, and I do not feel comfortable switching to a different virtualization system (of any description, including things like Docker).
What I would like to do is start more or less from scratch with a minimal system instead of one of the more well-known and increasingly bloated distributions. I've used Debian because of the simplicity of security updates, but an alternative seems necessary since more often than not the security upgrades now break the operating system.
I've followed this thread and it looks very promising. Obviously a lot of work has been done to get SliTaz where it is now. Maybe I can make a small contribution by building kernels.
Here is what I have done so far.
Using some of the .ISO files for example in ~shann/slitaz-current-stuff/2023xxxx/
I have attempted to start the systems on a spare VM. Using VirtualBox it's very quick and easy to do this for any .ISO file. If I just drop he ISO in the appropriate directory and point the VM's virtual DVD drive to it, the VM will attempt to boot from that ISO and I can tail the kernel log.
The results so far are below.
slitaz-current-base-hybrid-20230911.iso 512M OK
slitaz-current-base_2023.10.29.iso 512M OK
slitaz-current-base_2023.11.07.iso 512M OK
slitaz-current-core-pae_2023.12.02.iso 512M Kernel panic - system is deadlocked on memory
slitaz-current-core-pae_2023.12.02.iso 768M OK
slitaz-current-core_2023.12.02.iso 512M OK
slitaz-current-core_2023.12.17.iso 512M Kernel panic - system is deadlocked on memory
slitaz-current-core_2023.12.17.iso 768M OK
slitaz-current-core-pae_2023.12.17.iso 512M Kernel panic - system is deadlocked on memory
slitaz-current-core-pae_2023.12.17.iso 768M OK
slitaz-current-core_2023.12.23.iso 768M OK
slitaz-current-core-pae_2023.12.23.iso 768M OK
slitaz-current-base_2024.05.27.iso 512M Kernel panic - Attempted to kill idle task!
slitaz-rolling.iso 512M Kernel panic - Attempted to kill idle task!
The "attempted to kill idle task" kernel panic seems to be the same problem I see in recent Debian kernels which I have tried (5.x, 6.x) and other recent "minimal" systems too (Tinycore, Antix, ...). The most recent Tinycore system I could boot for example was Tinycore 10.1 from February 2020.
It would be great if I could use a script (or maybe several scripts) to create SliTaz "base" .ISOs with custom kernels. I have seen references to "woks" and "cooking" but I don't seem to be able to find what I need to build the .ISOs - maybe I'm looking in the wrong places. Ideally to begin with I'd like to be able to build one or more of the .ISOs in my list above as an exercise, so that I can tell that I'm doing it more or less right. As well as "base" .ISOs I'd be happy to build "core" and other .ISOs if they might be useful to anyone.
If there are build systems which I could use for this, where should I be looking for them?