21

I just want a linux distro that boots fast, has a bash terminal (no gui) and busybox.

Is there any such distro or is it hard to compile a kernel and just make one myself?

2
  • 1
    I don't see what this question has to do with the kernel. Busybox and Bash are just programs. The kernel is pretty much the same for all distros (with minor patches of course). Jul 6, 2011 at 17:06
  • 3
    Do you really need bash? Busybox already comes with sh. May 5, 2015 at 14:13

8 Answers 8

22

Ttylinux

What you are searching for is called ttylinux.

Major components

  • Kernel
  • Glibc
  • Iptables
  • Dropbear (scp, ssh, sshd)
  • GPM
  • Bash
  • Busybox
  • E2fsprogs

Not maintained

The distribution was hosted at Ttylinux.net, and is currently not maintained.

Download

Latest ttylinux release is dated 2015.02 (updated 2015.03).

4
7

A good linux distro that I've fallen in love with (and also has no GUI) is MicroCore Linux. It also has an older brother TinyCore Linux that does have a GUI (a pretty crappy one though).

You could always try DSL (Damn Small Linux)

I don't think any of these explicitly come with busybox (I don't know of any distro that ships with it), but it shouldn't be too hard to install it afterwards. From what I understand your main concern is a small fast system with a decent shell.

4
  • I tried microcore linux, my ethernet adapter isn't detected so i have no internet (required to download and install the bash extension as it does not come with bash by default). Jul 6, 2011 at 13:50
  • MaxMackie: Fascinating, up-vote from me. Jul 6, 2011 at 13:55
  • 2
    @MaxMackie, Last time I looked DSL was no longer being developed, so I generally recommend Puppy Linux instead.
    – CarlF
    Jul 6, 2011 at 15:35
  • @CarlF: You're right, I just checked. Last update was around 2008, thanks for the heads up.
    – nopcorn
    Jul 6, 2011 at 15:36
4

The best most current distribution I can think of is Debian NetInst: http://www.debian.org/CD/netinst/

There are a number of small Linux distributions out there but this one I think will be among the best maintained. Another thing is, if you need to grow it to full size, it's a trivial operation.

3
  • +1 for debian's netinstall, forgot about this one.
    – nopcorn
    Jul 6, 2011 at 13:56
  • so this netinstall... its basically just a cli and boots very fast? I'd need it able to be booted from usb using syslinux and to have file persistence. Jul 6, 2011 at 14:55
  • You can do all these things with Debian, it's very flexible. Jul 6, 2011 at 19:00
4

"Alpine Linux is a security-oriented, lightweight Linux distribution based on musl libc and busybox."

3

Minimal Linux Live

https://github.com/ivandavidov/minimal

For a more interesting interactive system, this is a (mostly educational) small script that:

  • downloads the source for the kernel and busybox
  • compiles them
  • generates a bootable 8Mb ISO with them

The ISO then leaves you in a minimal shell with busybox.

With QEMU you can easily boot into the system.

I have modified it to allow running it from the kernel source directory: https://github.com/cirosantilli/runlinux

Usage:

git clone https://github.com/ivandavidov/minimal
cd minimal/src
./build_minimal_linux_live.sh
# Wait.
# Install QEMU.
# minimal_linux_live.iso was generated
./qemu64.sh

and you will be left inside a QEMU Window with you new minimal system. Awesome.

Since it is small, this is a good option to read the source and understand what is going on.

Tested on Ubuntu 16.04.

Buildroot

https://buildroot.org/

Large set of Makefile scripts that manage:

  • GCC cross compilation toolchain
  • kernel compilation
  • bootloader compilation
  • generation of rootfs
  • has tons of package download / build recipes in the source tree, including complex stuff like GTK. There is a dependency system.

Minimal example:

git clone git://git.buildroot.net/buildroot
cd buildroot
git checkout 2016.05
make qemu_x86_defconfig
# Can't use -jN, use `BR2_JLEVEL=2` instead.
BR2_JLEVEL=2 make
# Wait.
# cat board/qemu/x86_64/readme.txt
qemu-system-x86_64 -M pc -kernel output/images/bzImage -drive file=output/images/rootfs.ext2,if=virtio,format=raw -append root=/dev/vda -net nic,model=virtio -net user
# You are now in a shell with BusyBox utilities.

Professional stuff.

Alpine Linux

https://github.com/gliderlabs/docker-alpine

Embedded distribution with a package manager that offers precompiled binaries from a website.

Single executable rootfs

The absolute minimum system runs a single /init program as I've explained at https://superuser.com/a/991733/128124

4
  • Edited after 5 years? Jun 19, 2020 at 7:33
  • 1
    @BhavyaGupta I always do a quick rearead after upvotes, improvement never ends. Jun 19, 2020 at 8:03
  • 1
    Great dedication. If people like you come together nothing can stop china from becoming a great superpower. All that is needed is democracy!! Salute! Jun 19, 2020 at 9:27
  • @BhavyaGupta thanks! I just want them to become a democracy first. Once that is done, then they can become a superpower together with all other currently poor countries. :-) All best. Jun 19, 2020 at 9:38
1

You should try Arch Linux. It let's you choose what you do and do not want to install on your system. You could even choose to not install bash :p Alternatively you could try Gentoo, where you have to compile everything from scratch.

2
  • Not entirely correct, considering that all SysVinit scripts on Arch are written for bash. (It's easy to replace SysVinit with systemd, though.) Jul 6, 2011 at 14:28
  • Yeah, but during the installation you still get the possiblity to choose to not install bash. :p
    – RobinJ
    Jul 6, 2011 at 14:33
0

Minimal Development Distro:

busybox, musl C library, gcc, binutils, make, bash, and the Linux kernel.

or

Minimal Non-Development Distro:

busybox, musl and the Linux Kernel

1
  • 1
    I think the OP wanted a specific distro, not to build one himself.
    – Journeyman Geek
    Feb 26, 2013 at 5:10
-2

Well you could use Yocto to bitbake (or whatever it uses these days) a tiny distribution that has just what you want (including appropriate hardware drivers).

You must log in to answer this question.

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