CLI'de her 4 haftada bir gerçekleşecek güncellemeleri nasıl kontrol edebilir ve Yazılım kaynaklarına gitmeden otomatik olarak nasıl yükleyebilirim?


10

Bilgisayarlarımı yükledikten sonra çalıştırdığım bir dizi özel komut var . Ubuntu'yu her 4 haftada bir güncellemeleri nasıl kontrol ettirir ve otomatik olarak çeke yüklerim?

Komut satırı üzerinden yapmam gerekecek, böylece bilgisayarlarını kurduğumda normal kullanıcılar için ayarlayabilirim.

İlk komut, güncelleme yöneticisinin her 2 haftada bir güncellemeleri kontrol etmesini sağlar, çünkü her zaman çok fazla gelmezler ve Ubuntu sunucularının bant genişliğini kaydederler.

Ayrıca, bir arkadaşımın bilgisayar kurmasına her yardım ettiğimde yorucu olduğu için kullanıcıların güncellemeleri yüklemek için tıklamaları gerekmeyecek şekilde ayarlamam gerekiyor.

Yanıtlar:


10

İlk olarak, aşağıdaki gibi otomatik güncellemeleri etkinleştirin:

sudo apt-get install unattended-upgrades

Daha sonra yapılandırmasını düzenlemeniz gerekir, yazın

sudo nano /etc/apt/apt.conf.d/50unattended-upgrades

( nanoisterseniz tercih ettiğiniz metin düzenleyicisiyle değiştirin )

Dosya şöyle görünür:

Unattended-Upgrade::Allowed-Origins {
        "Ubuntu maverick-security";
//      "Ubuntu maverick-updates";
};

//Bu hat bir demektir comment güvenlik düzeltmeleri ek olarak kararlı sürüm güncellemelerini içerecek şekilde vuruş kaldırmak ve program tarafından dikkate alınmayacaktır. Ayrıca, maverickçalıştırdığınız Ubuntu sürümüyle değiştirin .

Sistemin güncellemeleri kontrol etme aralığını ayarlamak için /etc/apt/apt.conf.d/10periodicdosyayı bir metin düzenleyicisiyle düzenleyin:

APT::Periodic::Update-Package-Lists "14";
APT::Periodic::Download-Upgradeable-Packages "14";
APT::Periodic::AutocleanInterval "14";
APT::Periodic::Unattended-Upgrade "14";

Bu örnekte, sistem iki haftada bir güncellenir.

Daha ayrıntılı bir açıklama için Ubuntu sunucu kılavuzundaki Otomatik Güncelleştirmeler konusuna bakın .


Papukaija'nın cevabının, Güncelleme Yöneticisi diyalogunun ekranınızda ortaya çıktığı aralıktan bahsettiğini unutmayın, sanırım bu sizin istemediğiniz şey değil, ama emin değilim. :)


İletişim kutularının görüntülenmesi gerekmez ve 1 satırda gitmez. Yazılım kaynaklarında 2 hafta kontrol edilecek şekilde ayarladıysam, güncelleme iletişim kutusunun daha erken veya daha sonra açılması mümkün müdür? Gerekli, 1 satır ile kullanıcının bile sistem beeing her 4 haftada bir güncelleme olduğunu bilmeyeceğini ayarlamak mümkün olacak ve herhangi bir güncelleme görmek ve otomatik olarak sadece yüklü görmek gerekmez. Bu yüzden Yazılım kaynaklarında fare ile manuel olarak ayarlamanız gerekmez.
Kanguru

Seni anladığımdan emin değilim. Sistem → Tercihler → Başlangıç ​​Uygulamaları'na gidip "Güncelleme Bildiricisi" ndeki onay işaretini kaldırarak güncelleme bildirimlerini devre dışı bırakabilirsiniz. Demek istediğin bu muydu? Ayrıca, tabii ki "14" gün (veya istediğiniz herhangi bir miktar) yerine "30" olarak ayarlayabilirsiniz
Stefano Palazzo

Ve bu tek bir satırla da yapılabilir mi? Eğer evet thats de yapmak iyi değil - onun değil ana şey istedim. Önemli olan güncelleme kontrolünü ve ne yapılacağını değiştirmek için Yazılım kaynakları ayarlarına gitmektir. Her 28 günde bir kontrol koymak ve terminalde bir şey sormadan güncellemeleri yüklemek istiyorum, bu yüzden daha hızlı.
Kanguru


@luri bu sorunun ne olduğunu değil
Stefano Palazzo

2

"Güncelleştirilebilir" her şeyi güncellemek istiyorsanız, yani TÜM paketlerinizi güncelleyin, sanırım her 28 günde bir cron (kök cron içinde) apt-get update && apt-get upgrade -yçalıştırılabilir.

Bazı insanlar kısıtlayıcı bir PATHortam nedeniyle crond işlerinde sorun yaşıyor . Herhangi bir sorun yaşarsanız PATH, crontab -edosyanın en başında tanımlayabilirsiniz ( CronHowto'da önerildiği gibi )

Ayrıca, her şeyin yolunda gittiğini kontrol etmek için sonuçları şöyle kaydederim:

root@PORTATIL:/var/log$ crontab -l
* * */2 * * /usr/share/myupdate.sh > /var/log/myupdate.log

myupdate.sh bu kadar basit olabilir:

#!/bin/bash
#Testing updates
echo "$(date) Crond myupdate sarting."
apt-get update -y
apt-get upgrade -y
echo "$(date)Crond myupdate finished."

Bu benim için işe yaramıyor. Cron günlüklerimi aldığımda, aptitude -y safe-upgradekontrol eden bir tty'ye ve ardından bir grup yol hatasına ihtiyaç duyduğundan şikayet ediyor. Belki bir soru
sormalıyım

Kök cronun içine yerleştirdin mi?
luri

Evet. Bazı farklı yol sorunları nedeniyle başarısız oldu, bu yüzden / root / bin, #! / Bin / bash ve apt-get tam yolu ile bir komut dosyası yaptım. Daha iyi çalışır, ancak yine de yükseltilmez.
djeikyb

Hataları günlüğe
gönderin

Ayrı bir soru yaptım: askubuntu.com/q/23795/8515
djeikyb

1

Gconf-editor'ü açarak (örneğin Alt + F2 ve gconf-editor yazarak) update-manager'ın çalıştırıldığı zaman arasındaki aralığı değiştirebilirsiniz . Sonra bulun /apps/update-notifier.

Aralık, regular_auto_launch_intervaldeğerin gün sayısı olduğu anahtarda tanımlanır . Bu yöntemin grafik olmayan otomatik güncelleyiciyi (katılımsız yükseltmeler) etkilemediğini düşünüyorum.

Ubuntu'nun bir hata nedeniyle güvenlik güncellemelerini otomatik olarak yükleyemeyeceğini lütfen unutmayın .


4
Bu, bu cevabın komut satırı versiyonudur: gconftool -s /apps/update-notifier/regular_auto_launch_interval --type int 7(burada 7 gün cinsinden aralıktır)
Stefano Palazzo

Sadece 7 olduğunu kontrol ettim. Ama Yazılım kaynaklarında 2 hafta ayarlandı. Belki başka bir yerde?
Kanguru

0

Ben koymak gconftool -s /apps/update-notifier/regular_auto_launch_interval --type int 1ve her gün güncelleme yüklü olmadığını gösteren açılış. Yeni güncelleme yoksa açılır mı? Peki o zaman her 4 haftada bir otomatik güncelleme yapmak bu pop up olmaz? Öyleyse CLI ile her 4 haftada bir otomatik güncelleme güncellemeleri nasıl yapılır? İstediğim şey bu. Yazılım kaynaklarına gitmemek ve bunu fare ile yapmak. Ve bu mümkün olduğu için, 2 haftadan fazla bir yere konamaz.

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.