!Dumb terminal OS image tips --- 15 June 2026 --- These notes were emailed to me by The Free Thinker from Australia. I'll add my notes as I modify the OS. --- !Making a bootable disk image on Tiny Core. UEFI/BIOS boot Hybrid MBR/GPT partition table x86 and x86_64 bootable FAT32 filesystem (Linux installed to EFI partition) Commands run in Tiny Core Linux x86_64 (Core Pure64). Note: I might have left some things out. (use "tce-load -wil" instead of "tce-load -i" if extensions not already downloaded) ## Create RAM disk 256MB = 520192 sectors #Create image file in RAM dd if=/dev/zero of=tc.img bs=1024 count=520192 #Partition image file fdisk tc.img n [press Enter at prompts for defaults] t "ef" w Use tc.img instead of /dev/sdb1 in commands below. - The syslinux command will probably need to be changed ## Or Create partiton on /dev/sdb (which will overwrite its contents) sudo fdisk /dev/sdb n [set partition size at prompts] t "ef" w #format EFI partition FAT32 tce-load -i dosfstools sudo mkfs.vfat -i DC16916B -F 32 /dev/sdb1 tce-load -i syslinux mtools glibc_gconv syslinux -i /dev/sdb1 sudo rebuildfstab mount /mnt/sdb1 mkdir -p /mnt/sdb1/EFI/BOOT * download x86 syslinux.tcz unsquashfs syslinux.tcz cd squashfs-root # from 32bit extension cp usr/local/share/syslinux/efi32/syslinux.efi /mnt/sdb1/EFI/BOOT/BOOTIA32.EFI # from 64bit extension cp /usr/local/share/syslinux/efi64/syslinux.efi /mnt/sdb1/EFI/BOOT/BOOTX64.EFI #GPT: sudo dd if=usr/local/share/syslinux/gptmbr.bin of=/dev/sdb bs=440 count=1 conv=notrunc sudo dd if=usr/local/share/syslinux/mbr.bin of=/dev/sdb bs=440 count=1 conv=notrunc sudo fdisk /dev/sdb - "a" to toggle bootable flag #64-bit: cp usr/local/share/syslinux/efi*/ldlinux.e64 /mnt/sdb1/EFI/BOOT cp usr/local/share/syslinux/efi*/libutil.c32 /mnt/sdb1/EFI/BOOT cp usr/local/share/syslinux/efi*/libcom32.c32 /mnt/sdb1/EFI/BOOT cp usr/local/share/syslinux/efi*/vesamenu.c32 /mnt/sdb1/EFI/BOOT cp usr/local/share/syslinux/libutil.c32 /mnt/sdb1 cp usr/local/share/syslinux/libcom32.c32 /mnt/sdb1 cp usr/local/share/syslinux/vesamenu.c32 /mnt/sdb1 cd /mnt/sdb1 wget http://repo.tinycorelinux.net/17.x/x86/release/distribution_files/core.gz +http://repo.tinycorelinux.net/17.x/x86/release/distribution_files/vmlinuz create /mnt/sdb1/syslinux.cfg: DEFAULT core LABEL core KERNEL /vmlinuz INITRD /core.gz APPEND quiet vga=normal waitusb=10:UUID="DC16-916B" tce=UUID="DC16-916B" cp /mnt/sdb1/syslinux.cfg /mnt/sdb1/EFI/BOOT mkdir -p /mnt/sdb1/tce/optional * copy extensions over to /mnt/sdb1/tce/optional To ensure dependencies are included, use the script here: https://forum.tinycorelinux.net/index.php/topic,23034.0.html (need a forum account to download it :( ) * List automatically-loaded extensions in onboot.lst: inetutils.tcz openssh.tcz filesystems-KERNEL.tcz ## Create image file from 256MB partition on /dev/sdb1: sudo dd if=/dev/sdb bs=1024 count=520192 | gzip -c > tc.img.gz