Depends on what you call a mainstream Linux distro. Maybe if you only include "desktop" style Linux distributions, which don't tend to be the most mainstream use for Linux.
dd-wrt is extremely popular. It generally requires somewhere between 2-4MB Flash, and the smallest amount of RAM I saw when going through the supported router list was 8MB.
U-Boot is an extremely popular Linux bootloader, that generally runs the mainline ucLinux kernel, which has support for STM32 microcontrollers, where you'll be looking at much, much less RAM. More likely to be measured in kilobytes than megabytes. It could be argued this isn't complete enough to be called a distribution.
> And a i686 class CPU is needed.
Not at all. Debian, Ubuntu, Gentoo, Arch, all have ARM based versions, before you go diving into what else they support. (Keep reading if you meant the kind of x86)
And whilst some have dropped the 486 (Debian even dropped the 586 in 2016 [3]), Gentoo still supports it if you follow along with the mostly manual installation guide. (Though this [0] spells it out in a much easier way.)
However, running Linux on a 386 is difficult and unsupported (the kernel dropped support in 2012 [2]), NetBSD still actively maintains a port. [1]
As to the 286... Linux never supported it as far as I know.
So the upshot is, if you have a 386, 486, or 586 you can still run Gentoo.
[0] https://github.com/yeokm1/gentoo-on-486/
[1] https://wiki.netbsd.org/ports/i386/
[2] https://www.pcworld.com/article/2020196/linux-3-8-will-drop-...
[3] https://distrowatch.com/dwres.php?resource=showheadline&stor...
If you really want to take Linux to the extreme, probably the place to start would be the efforts made to use it on embedded devices [3].
I've booted quite a few very old systems with it, probably down to Pentium-era machines, and things usually ran well. I do remember it was quite RAM intensive due to having a relatively large filesystem in RAM. I'd say 64 MB is a minimum if you actually want to use it for anything.
It was a bit slow. You had to avoid opening more than two or three browser tabs and avoid swapping at all cost because of the relatively slow HDD. You had to be patient.
The computer was designed for windows 95 and 98. It ran Windows 2000 quite well. XP was slow.
I was amazed by the fact that a live CD of Ubuntu 5.04 ran pretty good on it, with an early version of GNOME 2. Late versions of GNOME 2 were unusable on it. It also managed to run mandrake 9 with kde 2 (?) well too.
Now, current distributions are removing support for x86-32. Debian would probably be the best bet (or slackware ?), if not a specifically lightweight distro.
I tried Arch on it but I would not install a rolling distro on anything with a slow drive today. Too painful because of the updates.
I wonder if its silicon motion GPU would still work under X11. I'm not sure the vesa driver worked on it. I remember having issues with X11 with this laptop the last times I used it.
I used a pcmcia card for the Wi-Fi that I sill have. I needed to use ndiswrapper to use the windows driver on Linux. It didn't handle WPA. Fortunately, almost all Wi-Fi networks were open or encrypted with WEP. Today, I would probably need to use Ethernet, or the only USB1 port it has to plug a Wi-Fi stick.
One web page of today would send this computer to swap hell though.
Perhaps try a modern CF card? There are passive notebook-PATA bridges still made and sold for under 5$ IIRC - did this to save an old HP Z2100 from a disk failure recently. The bus is still a bottleneck in terms of speed but latency is a no-issue compared to HDDs.
I assume the defrag program directly accessed the raw disk and understood FAT, bypassing the kernel, and just used it to get notified about write access to the disk.
$ lsinitcpio -a /boot/initramfs-linux.img
==> Image: initramfs-linux.img
==> Created with mkinitcpio 26
==> Kernel: 5.3.7-arch1-2-ARCH
==> Size: 9.87 MiB
==> Compressed with: gzip
-> Uncompressed size: 25.97 MiB (.379 ratio)
-> Estimated decompression time: 0.184s
...AFAICT, the lowest requirement which happens to also have SSE is i686.
You could also run Windows 95 in 2019... Both are really good plans if you want to get 0wned.
It is wise to point that out; running an old OS on old equipment or in a VM is perfectly viable, but one should NEVER connect those machines to the open Internet.
Naturally I would not rely on this for my own online safety. A motivated adversary with a specific target in mind would no doubt learn that a vintage Windows 95 install was present, or maybe just throw everything at it.