7

I'm looking for a truly minimal usable linux install: the only requirement for the install is that it be able to install a .deb file (that has no dependencies) from the local file-system. (I'm assuming that if I can do that, I can then use that to bootstrap to whatever I actually need).

An ideal distor for my needs would consists of a kernel and an initramfs with nothing but dpks and init. In reality, I expect I will have to settle for something between that and DSL.


Edit: I'm not looking for an installer per se, but rather something that could be booted via an ISO or via PXE. It doesn't even need to leave the system in a re-bootable state.

As Linker3000 pointed out, what I'm looking for may be closer to a embedded distro than anything else.

7
  • 3
    Deb packages can be extracted to tarballs with "ar x" so if you aren't worried about dependencies you don't need dpkg, just ar, tar, and gzip.
    – DerfK
    Jan 21, 2011 at 19:25
  • @DerfK: don't they also have bits and parts that are supposed to get executed? What does it take to execute them? (I'm willing to live with rather severe restrictions on what can be done but it had better not be silent if you violate them.)
    – BCS
    Jan 21, 2011 at 20:34
  • 3
    ar x foo.deb produces control.tar.gz which contains the scripts and data.tar.gz that contains the files (extract while in /). Trying to run the postinst script without dpkg (and debconf, debianutils, sed, grep, hostname, etc) will probably not work, you'll have to read through the script and execute equivalents by hand. Also note that the result won't be a "Debian system", it will just be a system with the contents of a debian package installed in it.
    – DerfK
    Jan 22, 2011 at 0:37
  • What problem are you actually trying to solve with an absolutely minimal install? I'm not saying there aren't advantages, but, are those advantages really worth the extra effort?
    – mattdm
    Jan 23, 2011 at 1:45
  • @mattdm: I'm looking to build a minimal base install. Somethings that can boot strap it's self int a useful system but that won't have anything that isn't needed or needs to be changed; including even the most basic system daemons. Configuration of the system should be a purely additive process.
    – BCS
    Jan 23, 2011 at 5:31

4 Answers 4

7

I'm currently evaluating Alpine Linux to make a corporate router that boots off a USB stick in about 20 secs. The running payload uses 14MB of the system's 1GB RAM. It's not Debian-oriented but might be worth a look.

"A security-oriented, lightweight Linux distribution based on uClibc and Busybox."

3
  • 1
    I hadn't thought of starting with an embedded Linux... Interesting.
    – BCS
    Jan 21, 2011 at 22:13
  • It's more of a minimal base install with pretty much everything else optional, but available through package management if needed. We're running it on a diskless dual-core Athlon II Neo N36L-based HP Proliant Microserver
    – Linker3000
    Jan 22, 2011 at 23:25
  • 1
    On a VPS use the Alpine Linux "Virtual" ISO. As a host for lxc containers with openvswitch it uses around 330meg of disk space. It also uses musl C now not uClibc & still has the grsecurity kernel as default. Jun 30, 2017 at 20:39
4

I'd go with busybox + dpkg tools. In fact, busybox build scripts produce a disk image that you could use as a initramfs. I've used that (sans dpkg) + openvpn + ssh to create diskless routers on 16MB of flash.

Note that even if busybox is typically used on embedded systems, you can use any Linux kernel, even the latest and greatest. Hint: if you handle the hardware, compiling the drivers you need (and only those) statically in the kernel and not as modules, makes the package noticeably smaller.

1
2

Have look at this list of more than 30 'minimal' Linux distos (with descriptions). One of them will probably meet your needs.

1
  • The link you provided doesn't answer the author's question. Those distro's aren't really minimal in terms of install.
    – Sameer
    Jan 21, 2011 at 20:14
1

You could install Debian base system. The Debian installer will ask you in the end what roles/features you want. In the end, if you select base system, you get just that. In my experience, a base install with a network connection and access to apt allows you to fill in the rough edges if there are things you need.

Edit: I have done this myself, but it is clearly not uncommon. Check out this related SF thread.

2
  • The installer program, in and of its self is likely larger than what I'd really like to get.
    – BCS
    Jan 21, 2011 at 20:40
  • I felt similarly, but I would check out the base-system installer list. If you need absolute control, I see two avenues for you, both of which I considered but time has prevented me. LinuxFromScratch and ArchLinux which really has the minimalism you want, but you will have to give up .deb packages. So, I guess I have a lot of non-answers for you. Sorry, pal.
    – songei2f
    Jan 22, 2011 at 15:07

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .