如何更新单个包?至于man apt-get
说,apt-get upgrade
不拿包作为参数的包/列表:
升级
upgrade 用于从
/etc/apt/sources.list
. 当前安装的带有可用新版本的软件包被检索和升级;在任何情况下都不会删除当前安装的软件包,或者检索和安装尚未安装的软件包。如果不更改另一个包的安装状态就无法升级当前安装的包的新版本,将保留其当前版本。必须首先执行更新,以便 apt-get 知道有新版本的软件包可用。
最近我在旧机器上安装了旧版本的 Ubuntu。每当我尝试安装任何软件时,都会收到一条错误消息,说找不到它:
$ sudo apt-get install vlc
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Couldn't find package vlc
Run Code Online (Sandbox Code Playgroud) upgrade package-management support repository release-management
我可以使用哪些不同的方式将 Ubuntu 从一个版本升级到另一个版本?
我通常apt-get update && apt-get upgrade
用来运行我的更新和升级而不是 GUI,因为它似乎运行得更快。
但是,我最近注意到我经常收到一条消息,说我的一个升级被阻止了。然后我通常运行dist-upgrade
它通过它并且它工作正常。据我所知,在阅读这个问题及其答案后,会dist-upgrade
做所有相同的事情,然后做一些事情。
所以,我的问题是:为什么要使用apt-get upgrade
?为什么不一直使用apt-get dist-upgrade
?为什么apt-get upgrade
还要存在?
当我apt-get upgrade
在 Ubuntu 17.04 机器上运行时,有时它会自行启动Dwarf Fortress。
它至少已经发生了两次,所以它可能不仅仅是某种一次性的事情。另外,在apt-get upgrade
我手动退出矮人要塞之前,它的执行似乎暂停了,所以它很可能不是由当时运行的其他东西引起的。
当时的控制台说Unpacking xxx.
哪里xxx
有mysql
名字的东西。但是我不知道具体是哪个包,今天apt-get upgrade
升级了很多与mysql相关的包。
我想知道会发生什么以及如何阻止它发生。
当我升级时,它会卡在这里:
user@plato:~# sudo apt-get upgrade
Reading package lists... Done
Building dependency tree
Reading state information... Done
Calculating upgrade... Done
The following packages will be upgraded:
bind9-host coreutils cpio curl dnsutils libbind9-90 libc-bin libc-dev-bin
libc6 libc6-dev libcgmanager0 libcurl3 libcurl3-gnutls libdns100
libdrm-intel1 libdrm-nouveau2 libdrm-radeon1 libdrm2 libisc95 libisccc90
libisccfg90 libjasper1 liblwres90 libplymouth2 libsepol1 libssl-dev
libssl-doc libssl1.0.0 linux-libc-dev mime-support multiarch-support ntp
ntpdate openssl plymouth plymouth-theme-ubuntu-text python3-distupgrade
ubuntu-release-upgrader-core unzip
39 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Need to get 16.0 …
Run Code Online (Sandbox Code Playgroud) 尝试从 10.10 升级到 11.04 后,一切似乎都很顺利,直到重新启动。出现此错误消息:
Kernel Panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
Run Code Online (Sandbox Code Playgroud)
我们如何解决这个问题?
我登录时看到以下消息:
29个包可以更新。
6 个更新是安全更新。
如何执行更新?
我试过了apt-get upgrade
,安装了一些东西,但消息仍然存在。
目前我正在运行 Linux-3.0,我想将其更新为 Linux-3.3.1,这是http://www.kernel.org 中提到的最新稳定内核版本。我可以在 Ubuntu 中更新到 3.3.1 而不会有任何崩溃的风险吗?我正在按照更新管理器的提供定期更新我的内核。目前我有 Linux- 3.0.0.17 ..我可以更新吗?
笔记:
任何用户应该在 Ubuntu 中使用的最新内核版本都会通过更新管理器自动更新,因此用户通常不需要对内核升级进行任何操作。问题作者所指的是主线内核,请参阅: 我应该升级到“主线”内核吗?
我的第一个问题是当我尝试apt-get update
或apt-get upgrade
. 升级时出现以下错误:
You might want to run 'apt-get -f install' to correct these.
The following packages have unmet dependencies:
linux-image-server : Depends: linux-image-3.2.0-27-generic but it is not installed
E: Unmet dependencies. Try using -f.
Run Code Online (Sandbox Code Playgroud)
我尝试运行 apt-get install -f ,这是输出(在提示上说是后)
(Reading database ... 186183 files and directories currently installed.)
Unpacking linux-image-3.2.0-27-generic (from .../linux-image-3.2.0-27-generic_3.2.0-27.43_amd64.deb) ...
Done.
dpkg: error processing /var/cache/apt/archives/linux-image-3.2.0-27-generic_3.2.0-27.43_amd64.deb (--unpack):
failed in write on buffer copy for backend dpkg-deb during `./boot/System.map-3.2.0-27-generic': No space left on …
Run Code Online (Sandbox Code Playgroud) upgrade ×10
apt ×5
updates ×3
kernel ×2
14.04 ×1
boot ×1
command-line ×1
dist-upgrade ×1
games ×1
partitioning ×1
repository ×1
support ×1