Tüm kurulu paketimi kaynaklardan nasıl yapabilirim?


26

Gentoo gibi kaynak tabanlı linux dağıtımlarının Ubuntu gibi önceden oluşturulmuş dağıtımlarla karşılaştırıldığında önemli performans artışlarına neden olabileceğini okudum, çünkü sisteminiz için optimizasyonlu bir kaynaktan kurulum yapıyorlar. Ubuntu'yu aynı faydayı elde etmek için kaynaktan kurmak mümkün müdür?


3
Bunun için Ubuntu'yu değil Gentoo'yu kurun. Cidden, neden ona bağımlı olan bir kaynak yerine bağımlılık bağımlılık yönetiminde kesinlikle başarısız olan bir dağıtım kullanmalı?
mathepic

7
Kaynak ve ikili arasında gerçekten aynı yığın sürümlerini ve konfigürasyonlarını kullandıkları ölçütleri görmek isterim. Karşılaştırma genellikle bir tuhaf dosya sistemi ve tuhaf uygulama varsayılanları ile mümkün olan en son Gentoo'ya karşı (varsayılan ayarlarıyla) bir Ubuntu sürümüdür. Ubuntu varsayılanları çoğunlukla oldukça akıllıcadır ve performansının çoğunun geldiği yer budur ve bu yüzden çoğu kıyaslama Ubuntu'yu Gentoo'nun önüne geçirmiştir.
Oli

1
Kötü bir karşılaştırmaya harika bir örnek, farklı çekirdekler, farklı Nvidia sürücüleri, farklı X sürümleri ve farklı masaüstü ortamları kullandıkları bu Linux Magazine makalesidir (okumak için ücretsiz kayıt gerekir). Ubuntu'nun iki farklı versiyonunu da karşılaştırabilirsiniz. Benzer farklılık ölçekleri göstereceklerdir.
Oli

4
Neyin performans artışı? Ağ çıkışı, disk hızı, işlem değiştirme, saf matematik hesaplamaları, 3D Grafikler, açılış zamanı?
kullanıcı bilinmeyen

1
Yalnızca büyük ölçüde CPU performansı gerektiren (video kodlaması akla geliyor) ve kullanıcı tarafından çok kullanılan ve örneğin FMA3 veya AVX2 gibi CPU optimizasyonundan yararlanan yazılımları derlemenizi öneririm.
keiki

Yanıtlar:


42

Is is possible to build Ubuntu from source to get the same kind of benefit?

Oldukça yeni donanım bileşenlerine sahip olsanız bunun faydalarından emin değilim, ancak sorunun kaynağından Ubuntu bölümü için cevabınız EVET ise, yalnızca favori uygulamalarınızı kaynaktan değil tüm işletim sisteminden oluşturabilirsiniz.

İşte nasıl:

Apt-build'i kurmanız gerekiyor . Apt-get gibi bir komut satırı aracı, ancak binary paketini indirmek ve kurmak yerine apt-build paketin kaynak kodunu indirir, derler ve sisteminize yükler.

Yükledikten sonra

sudo apt-get install apt-build

APT (Evet) için apt-build repo oluşturmak isteyip istemediğiniz (işlemci tamam mı?) ve işlemci mimarisi hakkında bir soru (intel i7 benim çekirdek2 olarak kabul edilir) isteyip istemediğiniz sorulacaktır. Elbette tüm seçenekler bu şekilde yeniden yapılandırılabilir:

dpkg-reconfigure apt-build

Yukarıdaki komut, gcc derleyicisi ve make oluşturucusu için iki ek seçenek sunar. Bunların açıklamaları sistem kılavuzlarında bulunabilir: man gcc ve man make.

Bir manuel ve mevcut komut seçenekleri için kontrol edin

man apt-build

Ancak en kullanışlı olanlar:

  • apt-build update - repo listesini günceller (apt-get update gibi)
  • apt-build upgrade - işletim sistemini günceller (apt-get upgrade gibi)
  • apt-build install programı - bir uygulamayı yükler (apt-get install gibi)
  • apt-build world - sert çekirdekli kullanıcılar için bir şey, tüm sistemi yeniden derler!

Örneğin:

Gedit'i derlemek / kurmak istediğinizi varsayalım. Apt-get install yerine sadece yapmanız gerekenler

sudo apt-build install gedit

Apt-build, /etc/apt/sources.list dosyasında yer alan deb-src girişlerini kullanır, böylece derleme ve kurulum işlemleri tamamen otomatiktir (Gentoo’da bulunana benzer). Apt-build, ana uygulamanın kaynaklarını ve bağımlılıklarını indirir, bunları derler, bir deb paketi oluşturur ve sonunda paketi yükler.

Apt-build world hakkında bazı notlar.

24 ya da daha fazla saatiniz olmadığı sürece bence denemeyin!

Öyleyse yapmanız gereken ilk şey, üçüncü taraf uygulamaları kaldırın / devre dışı bırakın / kaldırın (yeni bir Ubuntu kurulumunda yapmanız daha iyi olur) ve sonra şunları yapın:

sudo su
dpkg --get-selections | awk '{if ($2 == "install") print $1}'> /etc/apt/apt-build.list
exit

Yukarıdaki komut, sistem paketlerinin tam listesini apt-build.list dosyasına kopyalar, böylece kaynaktan derlenebilir. O dosyayı aç

sudo gedit /etc/apt/apt-build.list

ve herhangi bir GCC / G ++ girişini kaldırın

Sonra yapabilirsin:

sudo apt-build world

Yeniden oluşturma işlemini tamamen otomatik hale getirmek için iki seçenek eklemeliyim - –yes ve --force-yes-.


10
Somut cevap için +1, "neden inşa edilsin?" cevapları. Kullanarak elde edebileceğiniz (veya elde edemediğiniz) faydalar hakkında daha öznel bir görüş (öznel olsa da) okumayı tercih ederim apt-build.
enzotib

1
Bu cevap için şu anda +17 var. Ama başarıyla kimse yaptı mı?
keiki

1
@ otakun85 Bazı paketleri Ubuntu'da başarılı bir şekilde derlemek için apt-build kullandım (hangi sürümün, 12.04 | 12.10 | 13.04'ten hangisi olduğunu hatırlayamıyorum), karışıklık olan apt-build dünyasını denedim. Adam sayfa apt-yapı için sonunda bu vardır BUGS Many.bu yüzden sorun bekliyoruz.
14:58

Bunu kullanmak yerine apt-build world"Sıfırdan Linux" kitabı indirmenin ve apt-buildiçinde listelenen her paket için yapmanın daha iyi olduğunu düşünüyorum. O emin değilim Örneğin doğru düzen vb belirtiyorsa, apt-build worldilk yeniden derleme gerektiğini bilir binutils, o zaman gcc, o zaman binutilsyine gcctekrar, o zaman, programlama dilleri gzipvb sadece alfabetik şeyi derler görünüyor.
Serhyi Vynohradov

@SerhyiVynohradov: Farketmez. LFS, ana bilgisayar sistemindeki kitaplıklara herhangi bir bağımlılık bırakmaktan kaçınmak için bunu yapar, ancak burada sadece her şeyi yerinde derlenmiş sürümlerle değiştirmek; hala aynı konumda olacaklar, aynı ABI'ye sahip olacaklar vs.
Nick Matteo

3

Bu tarz bir konuyla ilgili bir flamewar ve büyük bir tartışma başlatabilirsiniz, ancak gerçek hayata bakalım.

İşletim sisteminizin hızı büyük ölçüde hangi donanımı kullandığınıza ve bunun ana etkene bağlı.

Sık sık Arch ile kalırken dağıtımları sık sık değiştiriyorum, ancak Arch Ubuntu'dan daha mı hızlı? Yok hayır.

Ubuntu 10.10'daki compiz özellikli Gnome, yaklaşık 200ram kullanır, Arch 200ram'da, 4GB RAM'e sahibim, farkı hissetmiyorum, ancak Ubuntu'yu gnome ile Arch ile harika bir şekilde karşılaştırırsanız, yanıt ve kaynakta büyük bir artış olacaktır. kullanım (300ram vs 50ram), ancak bu yalnızca bir netbook için bir dağıtım seçtiyseniz önemlidir.

Eğer hızlı bir masaüstünüz varsa ve sisteminizle uğraşmak için zaman harcamak istemiyorsanız, sadece Ubuntu kullanın, fakat Arch üzerinde hafif bir WM kullanmayı düşünmekten daha net bir dizüstü bilgisayarınız varsa :)


Bir noktada, en son donanıma sahip olduğunuz duruma gelebilirsiniz, ancak yine de saatlerce süren işlemler yapmanız gerekir. Yükü dağıtmak için bir sürü sunucu ayarlamak yerine,% 20'lik ek bir artış elde etmek için biraz zaman harcamak istemezsiniz. Arch'ı hiç kullanmadım ama Gentoo'yu denedim. Ve çoğu zaman "hızlı dağıtım" diye bir şey olmadığını gördüm. Bunun yerine "daha az yazılıma sahip bir dağıtım" var. Çabuk kemiklere sahip bir sisteminiz hızlı, ancak güvenli değil. Diğer paketleri kurduğunuzda Ubuntu + apt-build ile aynı hızda olur.
Serhyi Vynohradov

0

Apt-build, performanstan daha fazlası için kullanışlıdır, işiniz için kitlesel kurulum için hazır olan belirli donanımlar için özel dağıtım görüntüleri ve depoları oluşturabilirsiniz. Bununla, tüm donanımın aynı olacağını biliyorsanız, optimize edilmiş bir ikili dağıtım anlamına gelir. Bu yolla, sadece bir bilgisayar tüm işleri derler ve geri kalanlar remastered ISO kullanılarak yükseltilir. Tamamen sadece hafif veya kodlama için değil. Özel bir Yükleyici ISO, sisteminizin bir nedenle bir felaketten sonra kurtarılamaz olması durumunda, yeniden derlemeden yeniden yüklemenizi sağlar.

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.