Status peningkatan tanpa pengawasan?

17

Adakah yang tahu apakah mungkin untuk menentukan status peningkatan tanpa pengawasan? Apakah mungkin untuk mengetahui paket mana yang sedang diinstal atau di mana kita sedang dalam proses?

Saya menghargai manfaat dari peningkatan tanpa pengawasan, tetapi mereka bisa sangat mengganggu ketika Anda memiliki sistem yang telah mati selama beberapa bulan, dan Anda ingin menginstal aplikasi atau ketika mereka memakan sumber daya CPU pada mesin yang tidak memiliki banyak memulai dengan.

Saya tidak hanya mencari untuk membunuh upgrade yang tidak dijaga. Saya tahu bagaimana melakukannya. Saya ingin mereka lari. Saya hanya ingin tahu bagaimana saya bisa mengetahui apa yang sebenarnya terjadi dan apa fase mereka.

b_laoshi
sumber
Lari pgrep -fl apt, kurasa.
muru

Jawaban:

22

Pada sistem 16.04 dan yang lebih baru, peningkatan tanpa pengawasan berjalan setiap hari secara acak.

Cara mengetahui kapan peningkatan tanpa pengawasan akan berjalan hari ini :

Waktu acak diatur oleh pekerjaan cron (/etc/cron.daily/apt.compat), dan Anda dapat membaca waktu acak untuk hari ini dengan menanyakan systemd:

$ systemctl list-timers apt-daily.timer
NEXT                         LEFT     LAST                         PASSED      UNIT            ACTIVATES
Tue 2017-07-11 01:53:29 CDT  13h left Mon 2017-07-10 11:22:40 CDT  1h 9min ago apt-daily.timer apt-daily.service

Dalam hal ini, Anda dapat melihat bahwa Anda berlari 1 jam dan 9 menit yang lalu.

Cara mengetahui apakah peningkatan tanpa pengawasan masih berjalan :

Salah satu cara mudah adalah memeriksa file timestamp untuk berbagai komponen apt:

$ ls -l /var/lib/apt/periodic/
total 0
-rw-r--r-- 1 root root 0 Jul 10 11:24 unattended-upgrades-stamp
-rw-r--r-- 1 root root 0 Jul 10 11:23 update-stamp
-rw-r--r-- 1 root root 0 Jul 10 11:24 update-success-stamp
-rw-r--r-- 1 root root 0 Jul 10 11:24 upgrade-stamp

Anda dapat melihat di sini bahwa Anda hanyalah komponen apt. apt menempatkan timestamp di sini terlepas dari bagaimana apt itu dimulai.

Menyatukan data, Anda dapat melihat bahwa timer mulai apt (uu) pada 11:22. Itu menjalankan pembaruan yang selesai pada 11:23, kemudian pembaruan yang selesai pada 11:24. Akhirnya, Anda dapat melihat bahwa apt dianggap upgrade sebagai sukses (tidak ada kesalahan atau kegagalan lainnya).

Jelas, jika Anda melihat timer baru-baru ini tanpa cap waktu penyelesaian yang sesuai, maka Anda mungkin ingin memeriksa psuntuk melihat apakah apt masih berjalan.

Bagaimana cara mengetahui langkah mana yang sedang berjalan sekarang :

Salah satu cara mudah adalah dengan memeriksa file log uu.

$ less /var/log/unattended-upgrades/unattended-upgrades.log
2017-07-10 11:23:00,348 INFO Initial blacklisted packages: 
2017-07-10 11:23:00,349 INFO Initial whitelisted packages: 
2017-07-10 11:23:00,349 INFO Starting unattended upgrades script
2017-07-10 11:23:00,349 INFO Allowed origins are: ['o=Ubuntu,a=zesty-security', 'o=Ubuntu,a=zesty-updates']
2017-07-10 11:23:10,485 INFO Packages that will be upgraded: apport apport-gtk libpoppler-glib8 libpoppler-qt5-1 libpoppler64 poppler-utils python3-apport python3-problem-report
2017-07-10 11:23:10,485 INFO Writing dpkg log to '/var/log/unattended-upgrades/unattended-upgrades-dpkg.log'
2017-07-10 11:24:20,419 INFO All upgrades installed

Di sini Anda dapat melihat proses normal sehari-hari, termasuk baris 'mulai' dan 'selesai', dan daftar paket yang akan ditingkatkan.

Jika daftar paket belum masuk, maka apt dapat terputus dengan aman. Setelah daftar paket dicatat, JANGAN menyela apt.

Karena Anda memiliki lingkungan yang terbatas sumber daya, ketahuilah bahwa apt dapat dikonfigurasi banyak cara untuk bekerja secara andal dan tidak mencolok dengan waktu lari yang berbeda, level yang bagus, batas bandwidth, dan banyak pengaturan berguna lainnya.

pengguna535733
sumber
4
Perintah ini menunjukkan seolah-olah Anda berjalan di terminal jika belum selesai. tail -f /var/log/unattended-upgrades/unattended-upgrades-dpkg.log
Adsy2010