Saya membaca di sini cara mengaktifkan pembaruan otomatis sunyi untuk Google Chrome. Namun, saya memiliki repositori lain seperti spotify, docky dan lainnya yang saya ingin aktifkan pembaruan diam.
Saya mencoba melakukan ini di sistem Ubuntu 10.04 saya. Tetapi pertanyaan ini berlaku untuk semua versi Ubuntu. Saya telah menginstal paket peningkatan tanpa pengawasan .
Bagaimana saya bisa melakukan ini?
updates
automation
nik90
sumber
sumber
Jawaban:
Pertama, instal
gksu
:sudo apt-get install gksu
Cara termudah untuk mengaktifkan pembaruan tanpa pengawasan untuk sistem Anda adalah mengedit file
50unattended-upgrades
di dalam/etc/apt/apt.conf.d/
dengan editor teks favorit Anda, misalnya:gksu gedit /etc/apt/apt.conf.d/50unattended-upgrades
Di dalamnya Anda perlu mengomentari bagian komentar dari blok Origins yang Diizinkan
Perubahan
untuk
Untuk perangkat lunak yang tidak ada di repo Ubuntu yang ingin Anda perbarui, Anda perlu menambahkan asal dan arsip ke file. Untuk menemukan apa itu untuk PPA Anda, buka folder
/var/lib/apt/lists/
, yaitu area penyimpanan untuk informasi negara untuk setiap sumber daya paket. Apa yang Anda cari adalah file yang diakhiri dengan Release in the name.Buka satu dengan editor teks Anda, yaitu untuk Google Chrome:
Asal jelas (
Origin: Google, Inc.
) dan arsip akan menjadi apa pun yang ada di bawah baris Suite (Suite: stable
).Jika salah satu
Origin
atauSuite
tidak ada maka mereka akan menjadi string kosong. Tetapi perhatikan bahwa jika keduanya hilang maka mungkin tidak akan mungkin untuk menggunakan sumber itu dengan pemutakhiran tanpa pengawasan tanpa menyertakan sumber lain dengan masalah yang sama.Setelah Anda mencatat 2 baris tersebut, Anda perlu mengedit
50unattended-upgrades
file dan menambahkan baris menggunakan format"<origin>:<archive>";
demi contoh ini"Google\, Inc.:stable";
.Asal Google Chrome agak rumit karena memiliki ruang titik akhir dan koma di dalamnya, tetapi sebagian besar file Rilis akan mudah dibaca.
Sebagai contoh lain, sumber Node JS menentukan asal (
Node Source
) tetapi bukan arsip; sehingga Anda dapat mencocokkannya dengan"Node Source:";
.Origins yang Diizinkan dicocokkan menggunakan wildcard style-shell (lebih khusus, dengan fnmatch Python () ). Jika Anda cukup berhati-hati untuk tidak menyertakan sumber yang bertentangan, Anda dapat menulis hal-hal seperti itu
"Node *:*";
.Jangan lupa untuk membuat cadangan
50unattended-upgrades
file Anda sebelum mengeditnya, lakukan dengansudo cp /etc/apt/apt.conf.d/50unattended-upgrades /etc/apt/apt.conf.d/50unattended-upgrades.bak
.Untuk menguji perubahan yang dilakukan pada file Anda dapat menggunakan
sudo unattended-upgrades
dengan parameter--dry-run
dan--debug
.--dry-run
akan menjalankan siklus upgrade tanpa pengawasan kecuali itu tidak akan benar-benar menginstal upgrade, hanya memeriksa dan memverifikasi bahwa semuanya baik-baik saja.--debug
akan mengaktifkan mode verbose.Anda selalu dapat memeriksa log untuk
unattended-upgrades
di/var/log/unattended-upgrades/unattended-upgrades.log
.Anda dapat mengubah konfigurasi peningkatan tanpa pengawasan dengan mengedit file
/etc/apt/apt.conf.d/10periodic
, opsi untuk konfigurasi ada di/etc/cron.daily/apt
header skrip. Baca untuk mengonfigurasi frekuensi peningkatan tanpa pengawasan.sumber
--dry-run
akan memeriksa apakah pada daftar yang diperbarui ada pembaruan yang tersedia dan output kepada Anda, daftar pembaruan melalui apa pun konfigurasi Anda/etc/cron.daily/apt
, menjalankannya secara manual tidak memperbarui daftar yang saya pikir.Pendekatan otomatis untuk jawaban @Bruno Pereira: (Silakan pertimbangkan untuk membintangi repo github jika Anda menemukan jawabannya berguna.)
Tautan Kode: https://github.com/abhigenie92/unattended_upgrades_repos
Periksa repositori untuk menambahkan:
Sekarang edit
/etc/apt/apt.conf.d/50unattended-upgrades
untuk memasukkan mereka:Periksa untuk melihat apakah mereka disertakan:
sumber
"Raspberry:stable";
tidak berfungsi. Sebagai gantinya saya menggunakan, misalnya,"o=Raspberry, a=stable";
Editing
/etc/apt/apt.conf.d/50unattended-upgrades
, tambahkan berikut ini:Ini akan memungkinkan peningkatan tanpa pengawasan untuk semua paket.
sumber
origin:''
, misalnya datadog-agent darisite:'apt.datadoghq.com'
. Dalam hal ini juga akan diperlukan untuk menambahkan"origin=";
agar tidak melewatkan paket dengan asal kosong. Tapi lebih baik menggunakan saja"site=*";
daripada menggunakannya"origin=*";
./etc/apt/sources.list.d/my_repo.list
, tetapi itu tidak memutakhirkan paket. Secara manual itu bekerja dengansudo apt update
. Ada petunjuk bagaimana?Ada instruksi untuk memaksa menjalankan ulang untuk membuat cron memulai pembaruan otomatis di tautan berikut . Prosedur untuk menghentikan cron adalah ini
dan untuk me-restart cron untuk membuat pembaruan otomatis terjadi sekarang (atau setidaknya dalam beberapa menit) adalah
Bagaimana itu bekerja
Beberapa hal akan memicunya untuk berjalan.
Dipecat dari menjalankan
/etc/cron.daily
oleh cron, khususnya/etc/cron.daily/apt
. Cron beroperasi/etc/cron.daily
pada pukul 6.25 pagi (lihat/etc/crontab
)Anacron berjalan dari pemula? dan itu akan padam
/etc/cron.daily
setelah 5 menit uptime (lihat/etc/anacrontab
)Catatan
APT::Periodic::RandomSleep
dapat diatur/etc/apt/apt.conf.d/10periodic
, tetapi standarnya adalah 1800an (30 menit) sehingga tidak ada pembaruan yang terjadi hingga 30 menit setelah/etc/cron.daily/apt
berjalan.Log
Jika berfungsi, hal-hal yang harus dicatat dalam folder ini
/var/log/unattended-upgrades
,.sumber
/etc/cron.daily/apt
dari instalasi Ubuntu 12.04 default - sehingga pembaruan APT otomatis tidak terjadi :-(. ServerFault answer serverfault.com/a/568329/ 95570 memberikan perincian tentang cara membuat kembali file itu