- Tek bir disket (1.44MB) üzerinden önyüklenebilen hafif Linux dağıtımı Floppinux, 2025 sürümüyle (v0.3.1) güncellendi
- Yeni sürüm, Linux çekirdeği 6.14.11 ve BusyBox 1.36.1 temelinde geliyor; kalıcı depolama alanı (264KB) ve güncel donanım uyumluluğu içeriyor
- Intel 486DX(33MHz) ve üzeri CPU ile yalnızca 20MB RAM üzerinde çalışabiliyor; metin düzenleyici (vi) ve temel dosya işlemleri komutlarını destekliyor
- Hem gerçek donanımda hem de öykünücülerde (qemu, Bochs, 86Box) çalışıyor ve kullanıcıların çekirdeği ile araç zincirini kendilerinin derlemesine göre yapılandırılmış
- 4 yıl önceki ilk yayından bu yana eğitim ve deney amaçlı kullanılıyordu; bu sürüm ise güncel çekirdeği koruma ve eğitim amaçlı öğreticileri yenileme odağı taşıyor
Proje genel bakışı
- Floppinux, tek bir disketten önyüklenebilen asgari bir Linux sistemi oluşturmayı hedefliyor
- “Linux From Scratch” benzeri öğrenim odaklı bir atölye olarak tasarlanmış; böylece kullanıcılar sistemi doğrudan değiştirip genişletebiliyor
- Tamamlanan dağıtım, metin tabanlı terminal ortamı sunuyor ve dosya düzenleme ile basit betikler yazmayı mümkün kılıyor
- Kalan 264KB depolama alanı sayesinde kullanıcı tarafından oluşturulan dosyalar doğrudan diskete kaydedilebiliyor
Temel özellikler ve sistem gereksinimleri
- Tek disketten önyükleme, güncel çekirdek (6.14) ve 32 bit x86 CPU (486DX ve üzeri) desteği
- Metin düzenleyici (vi), temel dosya işlemleri komutları (
cat, cp, mv, rm vb.) ve basit betik yazımı işlevleri içeriyor
- Kalıcı depolama (persistent storage) sayesinde dosyalar diskete kaydedilebiliyor
- Asgari donanım gereksinimleri: Intel 486DX 33MHz, 20MB RAM, dahili disket sürücüsü
Çekirdek yapılandırması
- Linux 6.14.11, i486 CPU’yu tam olarak destekleyen son çekirdek sürümü olarak kullanılıyor
- Çekirdek ayarları, asgari önyükleme işlevleri etrafında yapılandırılmış; XZ sıkıştırılmış initramfs, ELF çalıştırma desteği ve FAT dosya sistemi içeriyor
- TTY, blok aygıtları, /proc ve sysfs dosya sistemleri desteği etkinleştirilmiş
- Çekirdek derleme çıktısı bzImage(881KiB) olarak üretiliyor
Derleme ortamı ve araç zinciri
- Derleme, Omarchy Linux (Arch tabanlı 64 bit işletim sistemi) üzerinde yapılıyor; aynı adımlar POSIX uyumlu sistemlerde de uygulanabiliyor
- i486-linux-musl-cross çapraz derleyicisi ile 32 bit hedefe derleme desteği sağlanıyor
- Öykünme ortamı olarak qemu kullanılıyor; Bochs hata ayıklama için, 86Box ise yavaş ama alternatif olarak kullanılabiliyor
BusyBox tabanlı araç seti
- BusyBox 1.36.1 kullanılıyor ve GNU yardımcı programlarının yerine geçen hafif bir komut koleksiyonu sunuyor
- Seçilen başlıca komutlar: cat, cp, df, echo, ls, mkdir, mv, rm, sync, vi, mount, umount, clear, test
- Statik ikili dosya (static binary) olarak derlendiği için paylaşımlı kütüphane bağımlılıkları kaldırılmış
- BusyBox derlemesinden sonra oluşturulan kök dosya sistemi (rootfs.cpio.xz) 137KiB boyutunda
Dosya sistemi ve başlatma yapılandırması
- Asgari dizin yapısı ile birlikte karşılama mesajı (welcome), inittab ve rc başlatma betiği içeriyor
- rc betiği,
/proc ve /sys bağlandıktan sonra /home dizinini oluşturuyor ve disketi /mnt konumuna bağlıyor
- Önyükleme sırasında karşılama başlığı yazdırıldıktan sonra kabuğa (
/bin/sh) geçiliyor
- syslinux.cfg ayarları üzerinden önyükleme mesajları ve çekirdek parametreleri belirleniyor
APPEND root=/dev/ram rdinit=/etc/init.d/rc console=tty0 tsc=unstable
Önyükleme imajının oluşturulması
- 1.44MB disket imajı (
floppinux.img) oluşturuluyor, ardından biçimlendirilip önyükleyici (syslinux) kuruluyor
- Çekirdek, kök dosya sistemi ve yapılandırma dosyaları imaja kopyalanıyor
- qemu ile önyükleme testi yapıldıktan sonra gerçek disket üzerine yazılabiliyor
- Yanlış sürücünün seçilmesi durumunda veri kaybı riski olduğuna dair uyarı da yer alıyor
Son özet
- Sürüm: 0.3.1 (Aralık 2025)
- Çekirdek: 6.14.11
- BusyBox: 1.36.1
- İmaj boyutu: 1.44MiB
- Kalan alan: yaklaşık 253KiB
- Desteklenen komutlar: dosya işlemleri (
cat, cp, mv, rm, ls, mkdir), sistem yönetimi (df, sync, mount, umount), metin işleme (echo, more), düzenleyici (vi)
Önemi
- Floppinux, Linux çekirdeğinin yapısını ve önyükleme sürecini öğrenmek için optimize edilmiş ultra hafif bir dağıtım
- Gerçek donanımda da çalışabilen tam bir Linux ortamını tek bir diskete sığdırıyor
- Eğitim, retro sistem deneyleri ve gömülü geliştirmeye giriş için yararlı bir örnek platform olarak kullanılabiliyor
1 yorum
Hacker News yorumları
Noel zamanı 32 bit döneminden bir bilgisayarı gerçekten kullanılabilir düzeye getirmeye çalışmıştım
Sorun performans değil, yazılım desteği ve video sürücüleriydi
Bugünlerde 32 bit için paketler neredeyse hiç derlenmiyor; bu yüzden CLI bile 64 bit bağımlılıkları yüzünden sınırlı kalıyor
Çekirdekte de eski GPU sürücüleri çıkarılmış, geriye yalnızca temel VGA modu kalmış; MPEG2 oynatmak bile zor
Sonunda donanıma uygun Debian 5 kurmaya çalıştım ama o dönemin ISO'ları USB'den önyüklemeyi desteklemediği için vazgeçtim
Sonuç olarak, böyle projeler eğlenceli ama günlük kullanım için zor
Ribbon UI yerine eski arayüzü daha çok seviyorum ve WordArt gibi özellikler nostalji hissi veriyor
Modern sürümlerin özellikleri de güzel ama yaklaşık 30 yıllık bir yazılımın bu kadar olgun olması şaşırtıcı
NetBSD hâlâ i386 için paketler ve pkgsrc sağlıyor
pkgsrc depo bağlantısı
Ben grafik yerine VGA metin modunu tercih ediyorum
Tarayıcı tabanlı uygulama çok fazla ve JS ile yapılmış yavaş programlarla doluyuz
LLM'lerin böyle kodlarla eğitiliyor olması ilginç
NAT ağ geçidi ve web sunucusunu da birlikte çalıştırıyordum, yine de gayet iyiydi
Ama bugün 16GB'ın bile yetersiz geldiği hissi ironik
Disket ya da CD'den önyükleyip eski PC'lerde bile USB'ye chainload yapılabiliyor
Bunu bir Pentium MMX'te denedim; yavaştı ama gayet çalıştı
Eskiden kullandığım ilk Linux dağıtımı Damn Small Linux (DSL) idi
Aslında GameCube'a port etme denemesinde kullanılmıştı ama ana geliştirme ekibi daha sonra Gentoo'ya geçti
Güncel DSL 2024, antiX 23 i386 tabanlı; masaüstü ortamını 700MB sınırı içine sığdırmak için dil paketleri ve dokümantasyon azaltılmış
Geri yükleme betikleriyle gereken dosyaları yeniden indirebiliyorsunuz
resmi site
İncelemelere bakılırsa önerilen dağıtım Alpine'dı ama ne kadar güvenilir emin değilim
Bunu gerçek bir 486 üzerinde test ettim ama önyükleme başarısız oldu
32MB RAM takmıştım ama “Booting kernel failed: Invalid Argument” hatası çıktı
Bunun, BIOS'un E820h bellek haritası rutinini desteklememesinden kaynaklandığını tahmin ediyorum
ekran görüntüsü ve
gerçek donanım galerisi incelenebilir
Yazıda önerilen FAT12 tabanlı kalıcılık stratejisi, alan tasarrufu açısından akıllıca bir yaklaşım
Ama disketlerde journaling olmadığı için güç kesilirse veri bozulma riski büyük
Bunun yerine log-structured bir dosya sistemi (JFFS2 vb.) kullanmak ya da yalnızca kapanış anında tar ile serileştirmek daha güvenli olabilir
On yıllardır FAT kullanıyorum ama veri bozulması neredeyse hiç yaşamadım
Bugün bile çoğu gömülü cihaz FAT kullanıyor
FAT1/FAT2 kopyalarıyla dosya boyutu güncelleme sırası ayarlanarak çökme sonrası kurtarma mümkün olabilir
Slackware 8 ya da güncel NetBSD hâlâ böyle bir yapıyı koruyor
1999'daki QNX demo disketini hatırlıyorum
1.44MB diskte GUI ve web tarayıcısı doğrudan çalışıyordu
O zamandan beri böyle bir şey görmedim
Artık böyle sistemler yeniden var
Kalan 264KB alanı artırmak için genişletilmiş disket formatı kullanılabilir
Windows 95 kurulum disketleri gibi iz başına 21 sektörlü format kullanılırsa 1680KB'ye kadar çıkılabilir
Linux'un standart biçimlendirme araçlarıyla da böyle bir düzen oluşturulabiliyor
Disketlerin sesi ve yükleme heyecanını özlüyorum
Keşke bu sesi ayarlardan kontrol etmek mümkün olsa
“5 dakikada disket yakmak” ifadesini görünce güldüm
Disketi gerçekten biçimlendirmek gerekip gerekmediğini merak ediyorum
Eğer syslinux ya da lilo çekirdeği disket sektörlerinden doğrudan yükleyebiliyorsa, daha basit olabilir
ext2, FAT'tan daha küçük bile olabilir
1997'de Slackware'i 12 disketlik bir set olarak aldığımı hatırlıyorum
Ama kalite pek iyi değildi, bu yüzden kurulum zorluydu
VAX üzerinden FTP ile indirip Kermit ile DOS PC'ye aktarmış, sonra kurmuştum; arada bozuk disket yüzünden işlemi tekrar etmek zorunda kalmıştım
X serisi X11 içindi, A/B/C serileri ise temel sistem içindi
Onu 933MHz Coppermine bir sistemde çalıştırmıştım; daha sonra HDD'yi değiştirdikten sonra X11 derlemeye çalışıp başarısız olduğumu hatırlıyorum