13.11 升级Debian中的软件包及其依赖

apt-get upgrade

现在的Linux系统上总会有几千个软件包在运行,每天肯定至少有一个软件包需要更新。有了apt,保持你的系统为最新状态就很容易了。处理过程如下所示(记住,这个命令也必须以root来运行):

  1. # apt-get update
  2. Get:1 http://us.archive.ubuntu.com breezy Release.gpg [189B]
  3. Get:2 http://archive.ubuntu.com breezy Release.gpg [189B]
  4. Hit ftp://ftp.free.fr breezy/free Sources
  5. Hit ftp://ftp.free.fr breezy/non-free Sources
  6. Fetched 140kB in 1m4s (2176B/s)
  7. Reading package lists... Done
  8. [Results truncated for length]
  9. # apt-get upgrade
  10. Reading package lists... Done
  11. Building dependency tree... Done
  12. The following packages have been kept back:
  13. koffice
  14. The following packages will be upgraded:
  15. kalzium kamera kanagram karbon kbruch kchart
  16. kcoloredit kdegraphics kdegraphics-kfile-plugins
  17. ...
  18. 53 upgraded, 0 newly installed, 0 to remove and 1 not upgraded.
  19. Need to get 58.3MB of archives.
  20. After unpacking 28.7kB of additional disk space will be used.
  21. Do you want to continue [Y/n]?

我们来看看这里发生了什么。先运行apt-get update命令,以便让你的计算机和apt仓库保持同步。接着apt-get upgrade检查本机已经安装过的软件包与apt仓库可用的软件包是否有任何区别。如果存在区别,apt就会显示它将要下载和安装的软件包列表。当然,实际的软件包列表会根据系统的更新程度而有所变化。在这个例子中,要更新53个软件包,得花不少时间。

如果输入yapt就会把这53个软件包下载到/var/cache/apt/ archives。全部下载到计算机上以后,apt再安装它们。如果你不想进行升级,只需要输入n

这样的命令已经够容易了,而使用apt升级Linux系统最有效的方法是把这些命令连接起来使用:

  1. # apt-get update && apt-get upgrade

&&可以确保只有apt-get update成功完成以后,才会运行apt-get upgrade。当然,更好些的办法是在.bash_aliases文件中为这个命令创建一个别名,操作方法可以参见11.8节。

  1. alias upgrade='apt-get update && apt-get upgrade '

重新加载.bash_aliases这个文件,现在只需要输入upgrade,按Enter键,再按Y键以接受任何新的软件包,就完成了所有升级。Windows升级,伤心去吧!