İlk olarak, birkaç açıklama, çünkü GNU / Linux sistemlerinin nasıl ortaya çıktığını anlamadığınızı düşünüyorum. Bu senin için yeni bir şey değilse benimle ayı:
"Çekirdek" sadece çalışan başka bir program değildir, fakat işletim sisteminin temel fonksiyonları sağlayan kısmıdır: bir programı başlatmak istiyorsanız (örneğin, komut satırına "ls" yazarsınız) ikili kodun yüklenmesi gerekir diskten (onu bulmak için bazı dosya sistemi işlemlerini ve onu okumak için bazı dosya işlemlerini içeren), bir "işlem ortamı" oluşturulur: bellek atanır, bir işlem numarası verilir, vb. (FS, dosyadan okuma, ...) sistem kitaplıkları tarafından işlenir, ancak sonuncusu çekirdek işlevleridir. Bir anlamda "işletim sistemi" çekirdeği ve diğer her şey onun etrafındaki dekorasyon.
"Linux" aslında (sadece!) Bir işletim sisteminin başka bir parçası olmayan bir çekirdektir. Linus Torvalds, Andrew Tanenbaums MINIX şablon işletim sistemi çekirdeğini alıp tam dolu ve gerçek bir işlenebilir çekirdek olacak şekilde tamamlayarak yazmaya başladı. Bugüne kadar bu çekirdeği geliştiren Linus (ve katkıda bulunan / katkıda bulunan birçok kişi) var. Bu çekirdek hala UNIX'e çok benzer, ancak UNIX çekirdeği DEĞİLDİR.
"GNU" birçok yaygın UNIX komutunu "daha iyi hale getirme" girişimi olarak başladı. Başarılı olup olmadıklarını tartışmayacağım, ama kesinlikle çok fazla yazılım yazdılar ve bir noktada yardımcı programlar koleksiyonu vardı. Hatta büyük ölçüde UNIX'e dayanan, ancak kesinlikle farklı olan bir işletim sistemi çekirdeği (HURD) geliştirmeye başladılar. Ancak bugüne kadar HURD erken gelişiminde ve neredeyse hiç çalışmayan bir çözümdür. "GNU" btw. "GNU (UNIX Değil) kısaltmasıdır - UNIX'in halefi oluşturmak amacıyla UNIX'in bazı (algılanan veya gerçek) sınırlamalarının üstesinden gelmeye çalıştılar (yine: başarılı oldularsa tartışmaya girmek istemiyorum veya değil - "daha iyi" veya "daha kötü" olup olmadığını umurumda değil, ama kesinlikle farklı!).
Bu nedenle, bir çekirdek ve bir araç setinden yoksun bir dizi araçla, bu ikisini bir araya getirmek doğal bir gelişmeydi: GNU / Linux oluşturuldu.
Yine de, çalışan (ve uygulanabilir) bir işletim sistemine sahip olmak için bir çekirdek ve araç setinden daha fazlasına ihtiyacınız var: bir paket yönetim sistemine ihtiyacınız var, kurulum prosedürlerine ihtiyacınız var, şablon konfigürasyonlarına ihtiyacınız var, ihtiyacınız ...
Bu sonuca birkaç farklı kişi (veya grupları) geldi ve GNU / Linux kombinasyonunu, yukarıda bahsettiğim şeyleri tam olarak ekleyerek, beğenilerine göre bir GNU / Linux sistemi oluşturmak için kullandı: bir paket yöneticisi, bir paketleme sistemi oluşturdular , kurulum prosedürleri ve daha fazlası. Bu farklı gruplar (sırasıyla çabalarının sonuçları) farklı dağılımlardır. Bugün üç farklı paket yöneticisi var (Debian için uygun ve * ubuntu gibi türetilmiş sistemler, RedHat için rpm ve Fedora, CentOS ve daha fazlası gibi türetilmiş sistemler, ArchLinux için pacman), ancak tüm bunlar sadece (aslında) olan yazılım paketlerini yönetiyor aynı: "ls" veya "df" vb. verdiğinizde ne denir,
Yani, "prensipte", yukarıda konuştuğum tüm yazılımların çeşitli versiyonlarından dağıtım yaratanlar gibi, tek başına çekirdeği güncelleyebilirsiniz.
Ancak, bu gerçekten büyük bir AMA: çünkü sadece çekirdek ve bazı ek yazılımlar değil, sistem yapılandırma araçları (bazı dağıtımların kullandığı ve bazılarının kullanmadığı sistemd) gibi akılda tutulması gereken birçok şey var, ağ NetworkManager gibi yönetim araçları, bu da GNOME kütüphanesinin bazı sürümlerine vb. bağlıdır. - "dağıtım" oldukça karmaşık bir şeydir ve çok sayıda güncellemeyi çektiğiniz çekirdeği güncellemeye çalışırsanız birçok bağımlılık nedeniyle başka şeyler.
Yine de ve aynı şekilde "prensipte", yukarıdaki gibi: tüm kaynakları indirerek, derleyerek, çalışan bir sürüm kombinasyonları bularak, bazı paketleme sistemlerini devreye sokarak (veya mevcut kaynaklardan birini kullanarak da kendi dağıtımınızı oluşturabilirsiniz) ) - vb., dağıtılabilir, kurulabilir ve yapılandırılabilir bir sisteminiz olana kadar. Ubuntu gibi dağıtımların yaratıcıları budur ve bir mucize değildir - sadece çok karmaşık bir iştir, bu yüzden gerçekte çoğu kullanıcı bundan kaçınır ve kullanıma hazır bir şey kullanırlar.
Umarım bu soruya cevap verir.