为什么 sudo apt-get update 不是自动执行的?

为什么 sudo apt-get update 不是自动执行的?

我最近才了解到,它只sudo apt-get update会将软件包列表更新为最新版本,并且直到您执行此操作后才会真正安装或更新您的软件sudo apt-get upgrade

有什么原因导致apt-get update它不自动运行吗?将其作为自动启动脚本的一部分是否有意义sudo apt-get update,这样我们就不必在运行我们真正想要的程序(升级)之前手动执行此操作?

答案1

从技术上讲,GUI 版本apt-get update已经自动完成 - 这些已经满足了桌面用户的需求。命令行工具更适合技术型用户,通常是管理员,他们知道自己在做什么。

但是,没有什么可以阻止你用它编写脚本,并时不时地查看日志。例如,这是一个快速草图:

#!/bin/bash

main()
{
  local DATE=$(date +%Y_%m_%d_%H_%M)
  local LOGFILE=AUTO_UPDATE_$DATE
  local DIR="/home/localuser/logs" # where to store logs

  apt-get update &> "$DIR"/"$LOGFILE"
}

main

并将其用作运行脚本关机或重启使用/etc/rc6.d目录脚本或 cronjob 在一天中的特定时间安排此脚本。但请记住,检查日志是您的责任。

将来,将会出现snappy一个更新的事务更新系统,该系统目前处于非常年轻的阶段,据说应该会达到 16.04。我对它的经验有限,但在 Raspberry Pi 上,它确实会自动更新,并在有新版本的软件包可用时自行重启,有点像 Windows 更新的工作方式

添加

根据 muru 的建议,可以使用无人值守升级也可以自动进行更新,并且可能比我的解决方案更简洁。

答案2

有时您只想查看要升级的内容或可安装的新软件包。如果您管理服务器,这一点尤其重要,因为升级某些软件包可能会导致问题。对于不关心这些内容的桌面用户,图形软件更新程序会向您隐藏所有这些信息。

相关内容