您的位置:首页 > 其它

ununtun学习系列1--- sudo update与upgrade区别

2017-10-30 09:35 393 查看
在windows中安装软件,我们只需要一个.exe的可执行文件,直接下一步就可以安装了。但是在每个linux的发行版,例如ubuntu中,都会维护一个软件仓库,我们常用的所有软件都在里面。这里面的软件绝对安全,而且保证能够正常安装。

在ubuntu系统中,会维护一个源列表,列表中都是一条一条的网址信息,每一个网址标识的信息指向的数据,对应软件在源服务器的位置,我们可以编辑查看源列表。

sudo gedit /etc/apt/sources.list


在这个文件里加入或者注释(加#)掉一些源后,保存。这时候,我们的源列表里指向的软件就会增加或减少一部分。

如果运行此命令可能会出现错误:The owner of /home/zn/.config/ibus/bus is not root!,这是因为在修改系统文件时我们不能使用sudo命令去修改,必须使用系统内置的管理员权限。最简单的办法是使用sudo -i 切换。

sudo -i 

sudo -i是Linux终端命令下改变用户对命令使用权限的命令,例如,在Linux命令终端中,开始为“user@ubuntu:~$”,当使用该命令后,会出现输入密码的提示,之后输入密码,就会变为“root@ubuntu:~#”,这样就是改变了用户对一些命令的权限。

命令进行后,输入exit即可注销。

然后运行:

sudo apt-get update
这个命令,会访问源列表中的每个网址,并读取软件列表,保存到本地电脑。我们在软件包管理器上看到的软件列表,就是通过update命令更新的。
最后运行:

sudo apt-get upgrade

这个命令,会把本地已经安装的软件和刚下载的软件列表对应软件进行对比,如果发现当前安装的软件版本过低,就会提示你更新,如果没有软件需要更新,则代表安装的软件为最新版的。

一般在运行upgrade或dist-upgrade之前,要运行update.

apt-get upgrade和dist-upgrade的差别: 

upgrade:系统将现有的Package升级,如果有相依性的问题,而此相依性需要安装其它新的Package或影响到其它Package的相依性时,此Package就不会被升级,会保留下来. 

dist-upgrade:可以聪明的解决相依性的问题,如果有相依性问题,需要安装/移除新的Package,就会试着去安装/移除它. (所以通常这个会被认为是有点风险的升级)

 

只不过,dist-upgrade 会识别出当依赖关系改变的情形并作出处理,而upgrade对此情形不处理。

例如软件包 a 原先依赖 b c d,但是在源里面可能已经升级了,现在是 a 依赖 b c e。这种情况下,dist-upgrade 会删除 d 安装 e,并把 a 软件包升级,而 upgrade 会认为依赖关系改变而拒绝升级 a 软件包。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  ubuntu