Bir Linux dağıtımını nasıl düzgün bir şekilde çatallıyorsunuz? [kapalı]


19

Bir Linux dağıtımını nasıl oluşturacağımı merak ediyordum. LFS aşırıya kaçmış gibi görünüyor, mevcut bir dağıtımı çatallamak istiyorum. Birkaç "son" uygulama olduğunu biliyorum, ancak bunlar yalnızca yüklenecek ekstra uygulamalar eklemenize izin veriyor gibi görünüyor, depoları, yapılandırmaları vb. Değiştirmenize izin vermiyorlar.

Aradığım şey, eski bir çekirdeği kullanmam gerekebilse de, mevcut bir dağıtımı nasıl alacağınız ve ideal olarak Fedora veya Mint'i değiştirerek önemli ölçüde değiştirmektir.

Genel tavsiye takdir edilir, birlikte verilen dosyaları nasıl değiştirirsiniz? Hangi araçları kullanıyorsun? Nasıl bir liveCD içine sarmak istiyorsunuz? Havuzu nasıl barındırıyorsunuz?


Kapatmak için işaretleme çok geniş.
Ciro Santilli 事件 at 中心 法轮功 六四 事件

Yanıtlar:


12

İçinde özelleştirilmiş paketler içeren kendi paket havuzunuzu oluşturarak bir dağıtım oluşturabilirsiniz. Hepsi bir dağıtım. Değişikliklerin ne kadar büyük veya küçük olduğu önemli değil.

Bir dağıtımı çatallamak istiyorsanız, kaynak havuzun tamamını kopyalayın, istediğiniz paketleri değiştirin ve repoyu kendiniz yayınlayın (kopyaladığınız dağıtımın lisanslama anlaşmalarını ihlal etmediğinizden emin olun) .

Tanım gereği yeni bir dağıtım yaratıyor.


Bunu bir CD'ye nasıl sararsınız? Nasıl ev sahipliği yaparsınız?
Bir İsim Değil

1
Paketleme sistemine bağlıdır, ancak CD depolarını ve yükleyicilerini ve ağ barındırmalarını yapmanın yolları olacaktır.
XTL

Paket yöneticisine üst dağıtım paketinin yerine güncellenmiş paketinizi nasıl kullanmasını söylersiniz? Üst dağıtımda bir şey değiştiğinden, paketlerinizi yeniden oluşturmanız gerektiğinde bağımlılıklar nasıl yönetilir?

7

Bu soruyu ve diğer soruları görmek için bu soruya bakın .

Klasik cevap "Linux From Scratch ile başlayın", oradan gidin. Ve bunu yapmanın geçerli bir yolu: örneğin, birçok dağıtım Debian'dan geliyor. Çok sayıda dağıtım Red Hat veya Slackware veya evan Arch linux'dan geliyor.

Bu dağıtım için gerçekten açık ve savunulabilir bir hedefinizin olması gerektiğini söyleyebilirim. Daha önce dağıtımların "tek bir diskete sığdır" veya "bir CD'den canlı yayınlar" veya "tüm sorunları çözen bir paket yöneticisi geliştirmek" gibi hedefleri vardı.

Yine de bu modern zamanlarda bunun yeterli olduğundan emin değilim. Hemen hemen her garip sakal nişinin beraberinde bir dağıtımı vardır: penetrasyon testi BackTrack'a sahiptir, kesinlikle ücretsiz gNewSense vardır, linst süresiz olarak genişletilebilir. Bir nişten daha fazlasına sahip olmanız gerekecek, aksi takdirde Linux From Scratch yapın ve onunla bitirin.


Bu cevap (veya yorum) ışığında, soruyu biraz daha açık hale getirmek için değiştireceğim.
Bir İsim Değil


LFS'nin x86_64 makineleri için olduğu anlaşılıyor. RaspberryPi 3B + için sıfırdan bir dağıtım oluşturmaya çalışmak benim için iyi bir fikir gibi görünmüyor. Görünüşe göre birçok tekerlek yeniden keşfedilecek. Önyükleme yöneticisini ve çekirdeği tahtaya taşımakla ilgili tüm sorunlardan bahsetmiyorum.

4

Fedora aslında çok basit ( kolay olmasa da ) çatal veya dediği gibi "remix" . Repo tanımları içeride fedora-release. Konfigürasyonlar uygulamaların kendileriyle birlikte paketlenmiştir, bu yüzden bunları SRPM'den yeniden oluşturmanız gerekir. Çatalınızı oluşturmak istediğiniz paketleri topladıktan sonra, createrepobunları gerçek bir repoya dönüştürmek için koşuyorsunuz . Daha sonra repodan medya oluşturmak için wiki'de listelenen araçları kullanabilirsiniz.


2

Buna cevap verebilirim! GNU / Linux dağıtımı, GNU ve diğer yerlerden yazılım parçalarının birleşmesidir. En azından, değiştirmek istediğiniz yazılım paketlerini çatallamak, değiştirmek, yeniden derlemek ve daha sonra tercih ettiğiniz dağıtım çatalını yeniden dağıtmak istersiniz .

Bununla birlikte, hepsi bu olmayacaktır , çünkü çatalladığınız dağıtımın ticari markalarına ve telif haklarına çok dikkat etmelisiniz. (Ben bir avukat değilim), ancak dağıttığınız dağıtımın markasını değiştirmeniz tavsiye edilir, çünkü (muhtemelen) dağıtımınızı ebeveyn ile ilişkilendirmek istemezsiniz (bundan emin değilim, ancak ana dağıtımla ilgili sorunlar yaratabilir.Belirli bir dağıtımın açık bir şekilde çatallandığını söylemek istiyorsanız, açık bir şekilde bahsedebilirsiniz, ancak ticari markalarını kullanmayın. Yine avukat değilim).

Ayrıca, dağıtımınız için yazılım içeren bir havuz sağlamanın bir yolunu bulmanız ve ayrıca depolarınızın ana dağıtımın yanında var olmasını veya dağıtımınız için tek olanlar olup olmadığını anlamanız ve ayrıca kırılmamanın yollarını bulmanız gerekir. birisi güncellediğinde dağıtım.

Bunun dışında, açıkça değiştirmek isteyebileceğiniz 3 dosya da var, bunların /etc/issue(belki /etc/issue.netde) olması /etc/os-releaseve /etc/lsb-releaseen sonunun dağıtımınız için GRUB listesini değiştirmek için değiştirilmesi gerekiyor. /etc/default/grubHat için ödeme yaptığınızdan emin olun GRUB_DISTRIBUTOR. Gibi bir şey olmalıGRUB_DISTRIBUTOR=lsb_release -i -s 2> /dev/null

Şimdi, yazılımla ilgili nasıl yapacağınız tamamen size bağlı (yazılım çıkarma ve ekleme), ancak yeni dağıtımınız şimdiye kadar hazır olmalıdır (bu noktada bir şey unutup unutmadığımı bilmiyorum).

Yine de, kişisel fikrimi istiyorsanız , Scratch'tan Linux'u takiben yeni bir linux dağıtımı oluşturmayı ve ardından doğrudan bir dağıtım yapmak yerine bir paket yöneticisi atmayı tercih ederim . Bir dağıtımın çatallanması, bir başlangıç başlatmanız avantajına sahiptir, ancak bir şeyleri kaldırmaya karar verirseniz, ana dağıtımdaki bağımlılıklardan asla emin olamayacağınız için çok hızlı bir baş ağrısı olabilir.


0

Linux'a modifyinggeldiğinizde çok büyük ölçekli bir şey haline gelir.

Belirli bir dağıtımda neleri eklemek, kaldırmak veya değiştirmek istediğinize ilişkin net bir sınır oluşturmalısınız. eğer yapmazsan, attığın her adımda kendini merakla bulacaksın. (deneyimden).


Bu gerçekten yararlı bir şey söylemiyor çünkü aşağı oy.
Strugee
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.