如何在 linux mint 17.1 中自动安装更新

Bri*_*ths 6 linux package-management linux-mint automatic-update updates

我有 linux mint 17.1 xfce,我想知道如何自动安装更新。每次有新的更新可用时,我都必须单击面板上的 mintUpdate 图标并输入我的密码并单击安装。我认为手动安装应该是好的,这样您就可以判断您是否真的要安装更新。但两年来我从未决定不想安装更新,所以我认为在后台自动完成会更容易。

现在我找到了一个网页,声称要解释如何自动安装更新。但是我认为如果您按照他们的说明进行操作,它并不能很好地解释哪些更新将被自动安装。它提供了一个配置文件,如下所示

// Automatically upgrade packages from these (origin, archive) pairs 

Unattended-Upgrade::Allowed-Origins { 

"${distro_id} ${distro_codename}-security"; 

// "${distro_id} ${distro_codename}-updates"; 

// "${distro_id} ${distro_codename}-proposed"; 

// "${distro_id} ${distro_codename}-backports"; 

}; 
Run Code Online (Sandbox Code Playgroud)

但它没有解释这些起源如何映射到 mintUpdate 的“级别”。

我的目标是安装 mintUpdate 归类为 1、2 或 3 级的所有更新以及所有安全更新。但我不想安装 4 级或 5 级的非安全更新。我该怎么做?

Xen*_*050 2

您遵循的说明似乎安装和使用该程序unattended-upgrades(从sudo apt-get install unattended-upgrades行。

AFAIK Linux Mint 的更新程序通过一些其他方式将更新从 1 到 5 分类,其中我还不知道,我敢打赌unattended-upgrades也不知道。我没有找到一种简单的方法来导出 1-3 个更新的列表mintupdate并将其输入到unattended-upgrades.

好消息是,许多 Mint 工具都是用 Python 编写的,因此您可以相对轻松地自行浏览它们。这是 Mint 17 XFCE 文件中的内容,应该与 17.1 非常相似,但请检查您的文件以确保:

/usr/bin/mintupdate包含:

#!/usr/bin/python

import os
import commands  

command = "/usr/lib/linuxmint/mintUpdate/mintUpdate.py show &"
os.system(command)
Run Code Online (Sandbox Code Playgroud)

浏览一下,/usr/lib/linuxmint/mintUpdate/mintUpdate.py有一些与设置相关的行level

if is_a_mint_package:
    level = 1
else:
    level = 3 # Level 3 by default        
    rulesFile = open("/usr/lib/linuxmint/mintUpdate/rules","r")
    rules = rulesFile.readlines()
    goOn = True
    foundPackageRule = False # whether we found a rule with the exact package name or not
    for rule in rules:
Run Code Online (Sandbox Code Playgroud)

并且/usr/lib/linuxmint/mintUpdate/rules有这个,看起来像这些的任何包都具有以下级别|n|

banshee|*|2||
firefox|*|2||
thunderbird|*|2||
*language-pack|*|2||
*flashplugin|*|2||
*wine|*|2||
pidgin|*|2||
libreoffice|*|2||
chromium-browser|*|2||
dbus|*|4||
*xorg|*|4||
acpid|*|4||
mountall|*|4||
mesa|*|4||
systemd|*|4||
plymouth|*|4||
upstart|*|4||
*base-files|*|5||
*linux-|*|5||
linux|*|5||
grub|*|5||
grub2|*|5||
Run Code Online (Sandbox Code Playgroud)

因此,如果您可以设置unattended-upgrades忽略与 4 和 5 个单词匹配的包,那可能就足够了......?我不知道unattended-upgrades现在这样说是否有效。

Mint 工具的源代码也始终可用,以防unattended-upgrades其中有其他可以轻松更改的内容。修改代码比编写代码更容易(甚至真正理解它;-P)

Linux Mint 论坛可以帮助您准确找出需要避免的 4 级和 5 级软件包,也许可以使用更简单的 12 或 13 行正则表达式?http://forums.linuxmint.com/