Định cấu hình `không giám sát-nâng cấp` trên Raspbian Stretch


10

Gần đây tôi đã nâng cấp từ Jessie lên Stretch và nhận được một phiên bản mới của tệp cấu hình cho unattended-upgrades. Điều kỳ lạ là phiên bản mới này tham chiếu Debian thay vì Raspbian.

pi@kegerator:/etc/apt/apt.conf.d $ diff 50unattended-upgrades 50unattended-upgrades.ucf-old 
10,12c10,12
< //   c,component     (eg, "main", "contrib", "non-free")
< //   l,label         (eg, "Debian", "Debian-Security")
< //   o,origin        (eg, "Debian", "Unofficial Multimedia Packages")
---
> //   c,component     (eg, "main", "crontrib", "non-free")
> //   l,label         (eg, "Raspbian", "Raspbian-Security")
> //   o,origin        (eg, "Raspbian", "Unofficial Multimedia Packages")
14c14
< //     site          (eg, "http.debian.net")
---
> //     site          (eg, "http.Raspbian.net")
20c20
< // derived from /etc/debian_version:
---
> // derived from /etc/Raspbian_version:
27,30c27
< //      "o=Debian,n=jessie";
< //      "o=Debian,n=jessie-updates";
< //      "o=Debian,n=jessie-proposed-updates";
< //      "o=Debian,n=jessie,l=Debian-Security";
---
> //      "o=Raspbian,n=jessie";
36,39c33,34
< //      "o=Debian,a=stable";
< //      "o=Debian,a=stable-updates";
< //      "o=Debian,a=proposed-updates";
<         "origin=Debian,codename=${distro_codename},label=Debian-Security";
---
> //      "o=Raspbian,a=stable";
> 
85,87d79
< // Automatically reboot even if there are users currently logged in.
< //Unattended-Upgrade::Automatic-Reboot-WithUsers "true";
< 
96,102d87
< 
< // Enable logging to syslog. Default is False
< // Unattended-Upgrade::SyslogEnable "false";
< 
< // Specify syslog facility. Default is daemon
< // Unattended-Upgrade::SyslogFacility "daemon";
< 

Giữa lỗi Launchpad này , vấn đề này trong repo nguồn và một số chủ đề diễn đàn than phiền về sự vắng mặt của Raspbian-securitynhãn, tôi khá bối rối về cấu hình 'chính xác' nên là gì.

Bất cứ ai cũng có thể chia sẻ unattended-upgradescấu hình làm việc của họ cho Raspbian Stretch?


Nó có thể giúp chạy các nâng cấp không giám sát trong chế độ gỡ lỗi và xem xét các so sánh. sudo unattended-upgrade -dtừ wiki.debian.org/UnattendsUpgrades
HarlemSquirrel

Câu trả lời:


9

Các dòng quan trọng nhất là:

"origin=Raspbian,codename=${distro_codename},label=Raspbian";
"origin=Raspberry Pi Foundation,codename=${distro_codename},label=Raspberry Pi Foundation";

Đây là toàn bộ tập tin ( /etc/apt/apt.conf.d/50unattended-upgrades):

// Unattended-Upgrade::Origins-Pattern controls which packages are
// upgraded.
//
// Lines below have the format format is "keyword=value,...".  A
// package will be upgraded only if the values in its metadata match
// all the supplied keywords in a line.  (In other words, omitted
// keywords are wild cards.) The keywords originate from the Release
// file, but several aliases are accepted.  The accepted keywords are:
//   a,archive,suite (eg, "stable")
//   c,component     (eg, "main", "contrib", "non-free")
//   l,label         (eg, "Rapsbian", "Raspbian")
//   o,origin        (eg, "Raspbian", "Unofficial Multimedia Packages")
//   n,codename      (eg, "jessie", "jessie-updates")
//     site          (eg, "http.debian.net")
// The available values on the system are printed by the command
// "apt-cache policy", and can be debugged by running
// "unattended-upgrades -d" and looking at the log file.
//
// Within lines unattended-upgrades allows 2 macros whose values are
// derived from /etc/debian_version:
//   ${distro_id}            Installed origin.
//   ${distro_codename}      Installed codename (eg, "jessie")
Unattended-Upgrade::Origins-Pattern {
        // Codename based matching:
        // This will follow the migration of a release through different
        // archives (e.g. from testing to stable and later oldstable).
//      "o=Raspbian,n=jessie";
//      "o=Raspbian,n=jessie-updates";
//      "o=Raspbian,n=jessie-proposed-updates";
//      "o=Raspbian,n=jessie,l=Raspbian";

        // Archive or Suite based matching:
        // Note that this will silently match a different release after
        // migration to the specified archive (e.g. testing becomes the
        // new stable).
//      "o=Raspbian,a=stable";
//      "o=Raspbian,a=testing";
        "origin=Raspbian,codename=${distro_codename},label=Raspbian";

        // Additionally, for those running Raspbian on a Raspberry Pi,
        // match packages from the Raspberry Pi Foundation as well.
        "origin=Raspberry Pi Foundation,codename=${distro_codename},label=Raspberry Pi Foundation";
};

// List of packages to not update (regexp are supported)
Unattended-Upgrade::Package-Blacklist {
//  "vim";
//  "libc6";
//  "libc6-dev";
//  "libc6-i686";
};

// This option allows you to control if on a unclean dpkg exit
// unattended-upgrades will automatically run 
//   dpkg --force-confold --configure -a
// The default is true, to ensure updates keep getting installed
//Unattended-Upgrade::AutoFixInterruptedDpkg "false";

// Split the upgrade into the smallest possible chunks so that
// they can be interrupted with SIGTERM. This makes the upgrade
// a bit slower but it has the benefit that shutdown while a upgrade
// is running is possible (with a small delay)
//Unattended-Upgrade::MinimalSteps "false";

// Install all unattended-upgrades when the machine is shutting down
// instead of doing it in the background while the machine is running
// This will (obviously) make shutdown slower
//Unattended-Upgrade::InstallOnShutdown "true";

// Send email to this address for problems or packages upgrades
// If empty or unset then no email is sent, make sure that you
// have a working mail setup on your system. A package that provides
// 'mailx' must be installed. E.g. "user@example.com"
//Unattended-Upgrade::Mail "root";

// Set this value to "true" to get emails only on errors. Default
// is to always send a mail if Unattended-Upgrade::Mail is set
//Unattended-Upgrade::MailOnlyOnError "true";

// Do automatic removal of new unused dependencies after the upgrade
// (equivalent to apt-get autoremove)
//Unattended-Upgrade::Remove-Unused-Dependencies "false";

// Automatically reboot *WITHOUT CONFIRMATION* if
//  the file /var/run/reboot-required is found after the upgrade 
//Unattended-Upgrade::Automatic-Reboot "false";

// If automatic reboot is enabled and needed, reboot at the specific
// time instead of immediately
//  Default: "now"
//Unattended-Upgrade::Automatic-Reboot-Time "02:00";

// Use apt bandwidth limit feature, this example limits the download
// speed to 70kb/sec
//Acquire::http::Dl-Limit "70";

Nguồn ngược dòng: https://github.com/mvo5/unattends-upgrades/blob/master/data/50unattends-upgrades.Raspbian


Này Peter, có một vài lời khuyên còn thiếu. Một cái gì đó như .... Đảm bảo rằng "origin = Raspbian, codename = $ {distro_codename}, nhãn = Raspbian"; .... dòng không được bình luận và bạn sẽ thấy rằng điều này hoạt động cho Jesse, Stretch và có thể phát hành sau Stretch quá.
paul_h

Phần đầu câu trả lời của tôi đề cập đến hai dòng quan trọng nhất, bao gồm cả dòng bạn đề cập. Tất nhiên họ không nên bình luận. Cảm ơn.
Peter Nowee

Xin lỗi người đàn ông tôi không rõ ràng. Tôi đặc biệt khuyên bạn nên sửa tiếng Anh trong "Toàn bộ tệp /etc/apt/apt.conf.d/50unattends-upgrades:" Nó thiếu một hoặc hai từ. Tham khảo trò đùa Reddit vĩnh cửu - "Tôi vô tình một từ" reddit.com/r/AskReddit/comments/1d1wlx/
Kẻ

1
Điều này sẽ không cài đặt tất cả các bản cập nhật Raspbian và không chỉ các bản cập nhật liên quan đến bảo mật?
lightwitch05

1
@ lightwitch05 Có, vì Raspbian không có kho lưu trữ bảo mật riêng biệt , điều này cũng sẽ cài đặt các bản cập nhật khác, chẳng hạn như bản phát hành điểm (ví dụ: từ 9.3 đến 9.4). Tuy nhiên, vì codename=${distro_codename}, nó sẽ không tự động nâng cấp lên bản phát hành mới (ví dụ: từ 9 đến 10).
Peter Nowee
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.