Linux ile bazı denemeler yapmaya ve kurulum boyutuna göre en küçük dağıtımı aramaya çalışıyorum. (RAM, CPU gerçekten önemli değil)
Linux ile bazı denemeler yapmaya ve kurulum boyutuna göre en küçük dağıtımı aramaya çalışıyorum. (RAM, CPU gerçekten önemli değil)
Yanıtlar:
Güncelleme: ttylinux şu anda bakımsız! Hala ilgileniyorsanız, buradan veya buradan başlayın .
Platformunuza bağlı olarak, ttylinux sizin için bir şey olabilir:
Bu en küçük ttylinux sistemi 8 MB dosya sistemine sahiptir ve 28 MB RAM içinde i486 bilgisayarlarda çalışır, ancak tam bir komut satırı ortamı sağlar ve İnternet erişimi için hazırdır.
2001 yılında başladı ve son sürüm 2015-03-05'ten itibaren devam ediyor.
OpenWrt da en küçüklerinden biridir.
Derleme işleminden geçip özellikleri kısmak istiyorsanız, buildroot'u deneyebilirsiniz . 6MB ISO görüntüsüne uyan çok temel bir Linux kurulumu (aslında sadece çekirdek, minimal Busybox yardımcı programları ve bir ekstra uygulama) oluşturdum.
Buradaki anahtar, çekirdek ve Busybox yapılandırmasını ("linux-nconfig" ve "busybox-menuconfig yap") ihtiyacınız olan en düşük düzeye indirmek ve ardından ilk çekirdek ramdiski üzerinde XZ sıkıştırmasını etkinleştirmektir. İhtiyacım olmayan her şeyi kısaltmak, tüm ISO görüntüsünü yaklaşık 9MB'a indirmeme ve XZ sıkıştırmasını 6MB'a kadar düşürmeme izin verdi.
Çekirdek için, yapılandırma menüsündeki her seçeneği kontrol ettim ve özellikle ihtiyaç duymadıkça devre dışı bıraktım. Karşılık gelen bir ağ bağdaştırıcınız olmayan tüm ağ sürücülerini devre dışı bırakabilir, (çok bağlantı noktalı seri kartlar, oyun çubukları, çok işlevli aygıtlar ...) kullanarak öngörmediğiniz diğer daha az yaygın olan donanımları devre dışı bırakabilirsiniz. üzerinde. Ayrıca, daha karmaşık olanlardan ziyade temel uygulamalarda birçok alt sistemi bırakabilirsiniz (ör. Intel / AMD CPU boşta durumları yerine temel ACPI CPU boşta durumları), bu da güç verimliliğini ve çekirdek boyutu için tam donanım desteğini değiştireceğiniz anlamına gelebilir. Ayrıca, kullanmanız gerekmiyorsa, hazırda bekletme / uyku desteği ve ses sistemi gibi tüm alt sistemleri devre dışı bırakabilirsiniz.
Bunu yaparak çok yer kazanabilirsiniz. Örneğin, KVM (sanallaştırma) ve btrfs destek modülleri (gelecekte ihtiyaç duyacağım durumlarda çekirdeğin dışına yüklenebilir modüller olarak koymaya karar verdim) kendileri 1.1 MB yer kaplıyor. Bu modül dosyalarını silerek yaklaşık 4,9 MB'ye kadar inebilirsiniz. Çekirdek ikilisine daha az yer kaplamış olabilirler, ancak daha sonra diğer küçük modüllerin 20-100 kilobayt boyutlarında olduğunu gördüm, bu nedenle kilometreniz değişebilir.
Busybox, yerden tasarruf etmenizi sağlayan komut satırından nasıl adlandırıldığına bağlı olarak farklı ikili dosyalar gibi davranan tek bir ikili dosyadır. Varsayılan olarak Buildroot'ta bulunur. Ls, df, dd, kedi, nc, bash ve diğerleri gibi davranabilir. Bu yardımcı programların yalnızca daha tam özellikli / geleneksel (ör. GNU, BSD) sürümlerinde bulabileceğiniz belirli yardımcı program uzantılarına ihtiyacınız yoksa, neredeyse tüm * nix kullanıcı alanı için iyi bir yedek gibi görünüyor. Busybox, özellikleri devre dışı bırakma açısından çekirdeğe benzer - ihtiyacınız olan ikili dosyalar (AKA uygulamaları) hariç her şeyi devre dışı bırakın ve boyut küçültülecektir. Dinamik olarak derlenmiş Busybox ikili dosyası, Buildroot'ta 512 kilobayt ve Ubuntu 14.10'da yaklaşık 2.1MB alır. Daha büyük Ubuntu sürümü, Buildroot sürümümden çok daha fazlasını destekliyor ve '
Boyutu daha da azaltmak için aşağıdaki şeylerden bazılarını deneyebilirsiniz, ancak üzerinde çalıştığınız Buildroot yüklemesini bozabileceğiniz ve bazı ikili dosyaları yeniden oluşturmanız gerekebileceğinden, çalışma dizininin yedeklerini sık sık yedekleyebilirsiniz.
Tüm yürütülebilir dosyaları (çekirdek dahil) UPX kompresörüyle sıkıştırın. UPX özellikle yürütülebilir sıkıştırma gerçekleştirmek üzere tasarlandığından, sonuçta elde edilen yürütülebilir dosyalar çok daha küçük olur. Ancak, daha sonra tüm yürütülebilir dosyaları test ettiğinizden ve doğru çalıştıklarından emin olun.
Farklı bir libc kullanın. UClibc kullanıyorum, ancak musl ve dietlib'in çok daha küçük ve daha küçük yürütülebilir dosyalar ürettiğini duydum. Bu sefer musl ile ilgili bazı sorunlar yaşadım, ancak daha iyi çalışabilir.
Kullanıcı alanı yardımcı programlarının bir kısmını veya tamamını asmutils ile değiştirin . Bu yardımcı programlar, teorik olarak çok daha kompakt bir koda izin veren saf Meclis'te (C veya diğer diller yerine) bazı yaygın * nix yardımcı programlarını uygular. Bazıları iyi çalışır, ancak bazıları sadece çok temel şekillerde kullanılabilir (örn. "Montaj" sadece belirli bir sırayla parametreleri alır ve FS'ye özgü montaj seçenekleri uygulanmaz). Öte yandan, çok küçüktür (çoğu 1KB'den az derlenmiştir, yaklaşık 139 bayt kadar küçüktür). Hangilerini kullanmak istediğinizi seçebilirsiniz, böylece bu değiştirmeleri yalnızca yerden tasarruf etmek ve daha zengin özelliklere sahip sürümleri Busybox uygulamaları olarak tutmak istediğiniz komutlar için kullanabilirsiniz.
Tomsrtbt birkaç megabayttır; bir diskete uyuyor.