UNIX paketlerini güncel tutmak için en iyi yöntemler?


30
  • Sunucularınızı nasıl güncel tutabilirsiniz?
  • Yetenek gibi bir paket yöneticisi kullanırken , yükseltme / yükleme geçmişini tutuyor musunuz ve öyleyse, bunu nasıl yapıyorsunuz?
  • Birden çok sunucuya paket yüklerken veya yükseltirken, süreci mümkün olduğunca hızlandırmanın herhangi bir yolu var mı?

Yanıtlar:


19

Linux / Debian tabanlı sistemlerde, cron-apt , cron üzerinden apt otomasyonunu yönetebilen çok kullanışlı bir araçtır.

Ben bunu kullanıyorum apt-get updateher gün ve yeni güncellemeler yüklü olması eğer bana mail gönderin.

İşte bu araç hakkında kısa ve iyi bir giriş .


Minimum otomatik güncelleme paketine sahip olmak isterim ve bunlardan en önemlisi güvenlik güncellemeleridir. Bu nedenle, aşağıdakileri cron-apt config dosyasına ekliyorum: OPTIONS="-o Dir::Etc::SourceList=/etc/apt/security.sources.list" ve sonra /etc/apt/security.sources.list 'in sadece Debian güvenlik havuzlarını etkinleştirmesini sağladım. Bu şekilde, tüm güvenlik güncellemelerini otomatik olarak zamanında yüklüyorum (her gece) ve işleri el ile kırabilecek daha riskli güncellemeler yapabilirim.
Drew Stephens

10

Üçüncü sorunuzla ilgili olarak: Ben her zaman yerel bir depo işletiyorum. Yalnızca bir makine için olsa bile, yeniden yüklemem gerekmesi durumunda zaman kazandırıyor (genellikle otomatik temizleme gibi bir şey kullanıyorum) ve iki makine için neredeyse her zaman karşılığını veriyor.

Ben yönettiğim kümeler için, genellikle açık günlükler tutmuyorum: Paket yöneticisinin benim için yapmasına izin verdim. Ancak, bu makineler için (masaüstlerinin aksine), otomatik kurulum kullanmıyorum, bu yüzden tüm makinelere ne yüklemek istediğime dair notlarım var.


4
vay; Herkes canını sıkıyor, çünkü ben çok zekiyim veya insanlar rozet almak için yarışıyorlar mı? ;)
Mikeage


4

Tarih için apt-history kullanıyorum . Bu kullanışlı aracın neden varsayılan olarak içerilmediğini bilmiyorum, bu kukla ile ilk dağıtdığım pakettir .


Apt-history, / var / log'da varsayılan olarak kaydedilenlerden ne kadar farklıdır?
jldugger

Neyi kastettiğinizi bilmiyordum (cevabınızdan); Sanırım apt-history'yi tanıdım ve alıştım.
mark

3

Ben koşmak / usr / bin / apt-get update -QQ; / usr / bin / apt-get dist-yükseltme -duyq her gece bir cron işi olarak. Sabahları hangi paketlerin yükseltilmesi gerektiğine dair bir bildirim aldım ve dosyalar makineye zaten indirildi.

Sonra genellikle makinenin anlık görüntüsünü çekerim (sunucularımızın çoğu sanaldır), uygun bir yükseltme işlemi gerçekleştiririm , nagios'ları kontrol ederim ve her şeyin hala çalıştığından emin olurum ve anlık görüntüyü kaldırırım.

Sonunda, daha sonra ortaya çıkabilecek sorunları izlemek için, bir wiki'deki her sunucuda yapılan tüm değişikliklerin bir listesini tutarım .

Gereksiz indirmeleri sınırlamakla birlikte , sunucularınızla internet arasında, .deb dosyalarını ilk eriştiğinde önbelleğe alacak bir önbellek web proxy'si (mürekkep balığı?) Ayarlayabileceğinizi anlıyorum . Belki de bu, yerel bir paket deposu kurmaktan daha basittir - ve genel web'de gezinmeyi hızlandırmanın da faydası vardır.


1

apt-cacher paketleri önbelleğe almak için kullanışlıdır, tüm havuzun tam bir aynasını tamamlamak yerine ilk kez önbelleğe alınır, böylece disk ve bant genişliği tasarrufu sağlanır. Bir paketin ilk isteğini doğrudan istek sahibine iletirken aynı anda önbelleğe alırken kullanışlıdır, bu nedenle ek bir gecikme olmaz.


1

Yerel bir veri havuzu çalıştırmak, yerel sunucularınızdakileri tam olarak yönetmenin en iyi yoludur. Ayrıca, özel backport'ları veya özel yerel paketleri kolayca dağıtabilmenizi sağlar. Yerel kurulumu kolaylaştırmak için çok büyük bir bağımlılık alanı olan yerel 'meta paketleri' yaptığımı biliyordum. (örn. 'apt-get install local-mailserver'). Bunun ayrıca yapılandırma değişikliklerinizi 'sürüm' yapmanıza izin vermesi de yan etkisidir. (Daha karmaşık konfigürasyon yönetimi için Kukla gibi bir şeye ihtiyacınız olacak)


1

Windows kutularımız için yerel bir WSUS sunucumuz ve aylık yamaları uygulamak için standart bir penceremiz var. Linux sistemleri (RHEL) için kampüste hepsinin birleştiği bir RHN uydu sunucusuna sahibiz. Bu, yönettiğiniz tüm birleştirilmiş sistemlerin yanı sıra her bir sistemin uygulanmayan güncellemelerinin güzel bir panosunu sağlar. Kuklada olanlar için, normal bir pencerede otomatik olarak yamaları uygulayan ve sonuçları içeren bir e-posta bildirimi gönderen bir senaryo yazıyoruz.


0

Yerel bir havuza sahip olabilir ve tüm sunucuları güncellemeleri işaret edecek şekilde yapılandırabilirsiniz. Uyumluluk sorunlarını önlemek için yalnızca yerel indirmelerin hızını değil, altyapınıza hangi resmi güncellemelerin yüklenmesini istediğinizi de kontrol edebilirsiniz.

İşlerin Windows tarafında, Windows Server Update Services'ı çok tatmin edici sonuçlarla kullandım.


0

Yetenek gibi bir paket yöneticisi kullanırken, yükseltme / yükleme geçmişini tutuyor musunuz ve öyleyse, bunu nasıl yapıyorsunuz?

apt, / var / log / apt / dizininde bir günlük tutar ve dpkg, /var/log/dpkg.log dosyasını kullanır. Özellikle dpkg oldukça ayrıştırılabilir.


0

OpenSuSE Linux, SLES ve Novell OES'de (SuSE tabanlı tüm ürünler), zypper'ı çalıştıran ve güncellenmesi gereken paketleri arayan bir komut dosyası var. Bir tane bulduğunda, JIRA'ya bir bilet verir ve onu sistem yöneticilerine atar. Güncellemeleri kurduğumuzda, bileti ne zaman ve kimin tarafından kurulduğunu bildiren bir denetim izi bırakan kapattık. Bu, bir syslogging sunucusunda merkezileştirilmiş zypper ve sudo logları ile birleştirilebilir / onaylanabilir.

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.