I need to install on several of our old WindowsXp workstations (only 1GB of RAM, 40GB for harddrive!) a Unix server for allowing our developers to perform some preliminary test on Unix.

Considering the different Linux distros, I decided to go with the fairly recent and very small TinyCore distribution (3.7).


  • On one client, the mouse is erratic (not correctly captured by the VirtualBox session).
  • On all clients, I am unable to set correctly the keyboard, even after installing kmaps.tcz extension and trying to indicate in the /opt/bootlocal.sh "kmap=azerty/fr-latin9".

Do you have a valid installation process with a VirtualBox(4.0.8) for TinyCore (3.7)?

I propose one below, but you may have additional information/tweaks.


It turns out there were 2 issues:

  • one with the VirtualBox configuration:
    • in the "General" setting ("Advanced" tab), the "Show in fullscreen/Seamless" can be un-selected.
    • in the "System" setting ("Motherboard" tab), the "Hardware clock in UTC time" and "Enable absolute pointing device" can be un-selected (the latter one seems to be the cause of the mouse being incorrectly captured).
      The boot order needs to be CD then Harddrive (important for boot options)
    • in the "Storage" setting, "tinycore-current.iso" needs to be added as CD/DVD drive "IDE secondary master"

Once a first TinyCore session is opened (a "live" one from the CD iso), the installation on hda1 can proceed, but with the default keyboard (us).
See "Frugal Installation of TinyCore", using the virtual disk of the VirtualBox "TinyCore" session, based on cfdisk and grub.

When TinyCore is installed on hda1, the next reboot will still use the CD first, but you can launch the right TinyCore by typing at the "boot>" prompt

tinycore tce=hda1 home=hda1 opt=hda1

With your first have the hda1 TinyCore session launched, you can install:

  • kmaps.tcz
  • Xorg.tcz

I never managed to make kmap works on a XVesa session: typing "tinycore kmap=azerty/fr-latin" or adding "loadkmap < /usr/share/kmap/azerty/fr-latin9.kmap" to the /opt/bootlocal.sh (and then restarting while backing up my config) was enough to get an azerty keyboard... BUT: the Shift key then is not working anymore!
On a Vi editor, typing Shift displays "^@".

What does work in term of keyboard is:

  • installing Xorg
  • adding to the ~tce/.xsession file the line

    [ -e /usr/local/bin/setxkbmap ] && setxkbmap -layout "fr" -variant "nodeadkeys"

(as reported in this thread, which solved the second issue).
Considering the change of keyboard in * instantaneous* (as opposed to the loadkmap), this seems to be a better method.

In the end, TinyCore + Xorg + Vim + Git + FireFox: 210Mo

| improve this answer | |
  • Note: showbootcodes displays what /mnt/sda1/boot/extlinux/extlinux.conf, with: tce=sda1 waitusb=3 home=sda1 opt=sda1 showapps vga=792 xvsea=1024x768x24 kmap=azerty/fr pause. home and opt options are important in order to record everything on the USB drive. kmap should use azerty/fr instead of azerty/fr-latin9. Xorg turns out to be an inconvenience, as it reset display to 800x600. Xvesa is enough and works. – VonC Aug 14 '11 at 2:26
  • To compile, you might want to add tcz extensions gcc, bash, binutils, base-dev, wget, curl. – VonC Aug 14 '11 at 3:15
  • Make sure /usr/local/bin is before /usr/bin though. Otherwise, utilities like ar won't work. – VonC Aug 14 '11 at 3:29
  • Add also package groff, to avoid soelim: not found (needed when compiling, for instance, openldap). – VonC Aug 15 '11 at 8:15

I'm not sure why you chose TinyCore, but even with those PC specs, you can run a slightly heavier distro that will still give you decent performance with a more modern desktop environment such as XFCE or LXDE.

Many of the ultralite distros give up some convenience and usability in exchange for their minimalism. They're usually designed to run from RAM and often have more complicated file system & package management requirements because of their target media. They may also be more dificult to install to a hard drive than a traditional instal process.

Depending on your testing needs, I'd suggest doing something like a minimal install of Debian 6 or Arch Linux, and using the default package manager to install the minimum that you need for testing. I'd even add FreeBSD/OpenBSD/NetBSD to the equation, since they can be run fairly light.

Or, alternatively, grab a live-cd already configured with XFCE or LXDE, and try running it from the iso file. If it runs okay, create a 2-4 Gb disk for it and install. Basically, just keep trying distros until you find one that gives you the best ROI for your time and effort.

| improve this answer | |
  • 1
    "Basically, just keep trying distros until you find one that gives you the best ROI for your time and effort.": that is what I did, and found that TinyCore could run with a very limited of allocated RAM and minimal hard drive space. But I will make some more tests based on your recommendations ;) – VonC Jun 19 '11 at 11:20

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.