Tiny Core Linux is a lightweight Linux distribution that can run on older hardware, such as that emulated by PCem. By default, it runs in RAM and does not save anything to a hard disk. Usually, it requires Internet access in order to install programs, which come in TCZ files called extensions. Extensions are similar to packages in other Linux distributions. They may contain programs, documentation, or files with program settings. Extensions sometimes require other extensions to be installed in order to work properly; these other extensions are called dependencies and are listed in DEP files.
The steps below will walk you through an installation of Tiny Core Linux to a hard drive image. They are based upon the instructions at http://distro.ibiblio.org/tinycorelinux/install_manual.html. However, everything will be done from the shell rather than via GUI programs. If you wish to follow those instructions using GUI programs, you will probably need a TinyCore or CorePlus CD image and will probably need to set up PCem with network access.
Table of contents
What you'll need
- PCem configured as per the general guide up through the BIOS setup.
- A bootable CD image with Tiny Core Linux. These instructions will use the Core-7.0 ISO available here. Other versions can be accessed via this downloads page.
- The following extensions, which you can download from here and put on a floppy image:
- cfdisk.tcz (and cfdisk.tcz.dep)
- grub-0.97-splash.tcz (and grub-0.97-splash.tcz.dep)
- ncurses.tcz
NOTE: In the following instructions, bold text should be typed into PCem. Unless stated otherwise, press Enter after each line. You can use tab completion for some commands, file names, and directory names.
Installing the extensions
Start PCem with the CD image in the CD drive. At the boot prompt, press Enter. After Tiny Core boots from the CD, you should reach the shell and see a line starting with tc@box.
- Load the floppy image from above that contains the extensions.
- Create a directory to access the contents of the floppy image: mkdir /mnt/fl
- Mount the floppy so that you can access the files: sudo mount /dev/fd0 /mnt/fl
- Copy the files from the floppy: cp /mnt/fl/* .
- Unmount the floppy: sudo umount /mnt/fl
- Install the extensions: tce-load -i cfdisk.tcz grub-0.97-splash.tcz
Partitioning the hard drive
- fdisk -l to show the available disks and partitions. The following steps will use disk /dev/sda.
- sudo su to get a root shell. You should see a line starting with root@box.
- cfdisk /dev/sda to start the cfdisk program that will be used to partition the disk.
While in cfdisk, use the left and right arrow keys to navigate the menu at the bottom of the screen, and press Enter to select an option.
Boot partition
- Select New.
- Select Primary.
- Set the size that you want for the partition and press Enter. NOTE: The hard disk does not boot properly if you enter the entire disk size here. One workaround is to subtract 0.01 MB from the entire size.
- Select Beginning to put the partition at the beginning of the available space.
- Select Bootable so that the partition can be used to boot the computer. Subsequent steps will use partition name sda1. If yours is different, then use that name.
Optional: Swap partition
A swap partition is hard drive space that can be used like RAM. This can be useful if the actual RAM gets filled up, but writing to and reading from the hard drive is slower.
- Press the down arrow key to select the remaining free space.
- Select New.
- Select Primary.
- Set the size of the partition as desired.
- Select Beginning to put the partition at the beginning of the available space.
- Select Type.
- Set type to 82 and press Enter.
Finishing up
After you have set up all of the partitions that you want:
- Select Write, then type yes and press Enter.
- Select Quit to exit cfdisk.
Formatting the hard drive
- Format the boot partition: mkfs.ext3 /dev/sda1
- If you made a swap partition, type mkswap /dev/sda2 and press Enter. Use the appropriate partition name instead of /dev/sda2.
- Type rebuildfstab and press Enter.
Copying files to the hard drive
- Mount the boot partition: mount /mnt/sda1/
- Mount the CD image that has the Tiny Core files: mount /mnt/sr0/
- Create directories to hold the operating system and boot loader (GRUB) files: mkdir -p /mnt/sda1/boot/grub
- Create a directory to hold extensions and the backup file: mkdir -p /mnt/sda1/tce
- Copy the Tiny Core files to the hard drive: cp -p /mnt/sr0/boot/* /mnt/sda1/boot/
- Copy the GRUB files to the hard drive: cp -p /usr/lib/grub/i386-pc/* /mnt/sda1/boot/grub/
- Optional: Create the file used for backups: touch /mnt/sda1/tce/mydata.tgz
- Unmount the CD image: umount /mnt/sr0/
Setting up GRUB
- Start the vi text editor and create the file that GRUB uses for the boot menu: vi /mnt/sda1/boot/grub/menu.lst
- In order to enter text, switch to insert mode by pressing i.
- Type the following into the file:
default 0 timeout 10 title Tiny Core 7 kernel /boot/vmlinuz text initrd /boot/core.gz
- Leave insert mode by pressing Esc.
- Save the file and quit vi: :x
- Start GRUB: grub
- root (hd0,0) to specify which partition has the kernel image. NOTE: If the partition name does not end in a1, please see the GRUB documentation or the installation instructions on the Tiny Core site about how to figure out the numbers for this step and the next step.
- Install GRUB: setup (hd0)
- Exit GRUB: quit
The hard disk image is now ready. Eject the floppy and CD images. You can shut down the system with poweroff or restart with reboot.
For future reference:
- https://flaterco.com/kb/audio/Semi_MIDI_Linux.html
- https://help.ubuntu.com/community/Midi/HardwareSynthesisSetup#For_Sound_Blaster_Awe64_.28and_probably_also_Awe32.29
1. Add following line to the
/etc/modules
file. This will make the driver to load at boot time.
snd-sb16
2. Add following line to the
/etc/modprobe.d/alsa_local
and /etc/modutils/alsa_local
files.
options snd-sb16 isapnp=0 port=0x220 irq=5 dma8=1 dma16=5 mpu_port=0x330
(I added this to
https://i.imgur.com/rpvgILW.png
/etc/modprobe.d/alsa-base.conf
instead, /etc/modutils
doesn't exist)alsamixer
started displaying the sliders, aplay -l
lists the card nowhttps://i.imgur.com/rpvgILW.png