我知道可以pacman -Su
升级所有软件包。但是,如何获取需要升级的软件包列表呢?
我知道可以pacman -Su
升级所有软件包。但是,如何获取需要升级的软件包列表呢?
Answers:
看着手册页像
pacman -Syu
将数据库同步到最新版本,然后再同步
pacman -Qu
至
-u,-升级
Restrict or filter output to packages that are out of date on the
本地系统。(仅使用软件包版本查找过时的软件包,此处不检查替换版本。)如果使用-Sy刷新了同步数据库,则此选项最有效。
pacman -Sy
内在”是不好的。它甚至没有说这是“坏”或“危险”的。仅说明不支持部分升级,因此应避免这样做。换句话说,先运行pacman -Sy
再运行pacman -S <some package with dependencies>
有可能破坏其他具有相同依赖项的东西。运行pacman -Sy && pacman -S man-pages
仅获取最新手册页之类的东西就很好了(手册页没有依赖性,任何其他软件包都不需要)。
pacman -Sy
和跑步时pacman -S nvidia
,很可能会破坏某些东西。
正如@Panagiotis提到的那样,checkupdates
它提供了一种无需root或弄乱/var/lib/pacman
数据库的方法。这是一个最低版本:
TMPPATH="${TMPDIR:-/tmp}/checkup-db-${USER}"
DBPATH="$(pacman-conf DBPath)"
mkdir -p "$TMPPATH"
ln -s "$DBPATH/local" "$TMPPATH" &>/dev/null
fakeroot -- pacman -Sy --dbpath "$TMPPATH" --logfile /dev/null &>/dev/null
pacman -Qu --dbpath "$TMPPATH" 2>/dev/null
它的工作原理是:
/var/lib/pacman/local
。pacman -Sy
在您的临时文件夹上运行。pacman -Qu
您的临时文件夹。
pacman -Sy
”(来源:wiki.archlinux.org/index.php/…)