如何更新 Red Hat Linux 上的软件包?

如何更新 Red Hat Linux 上的软件包?

在我当前的计算机科学课程中,我们使用 C 进行编程。当我 ssh 进入运行 Red Hat Linux 的学校服务器时,编译器和调试器与我的 Mac 相比已经过时(例如,clang在我的学校服务器上无法识别)。

我如何了解并获得最新的环境?这只是用户偏好之类的事情吗?

答案1

不,这不仅仅是用户偏好。您可以clang使用包管理工具 YUM查看是否有可用的包。

$ yum search clang
Loaded plugins: auto-update-debuginfo, changelog, langpacks, refresh-packagekit
=============================== N/S matched: clang ============================
clang-devel.i686 : Header files for clang
clang-devel.x86_64 : Header files for clang
clang-doc.noarch : Documentation for Clang
csmock-plugin-clang.noarch : csmock plug-in providing the support for Clang
clang.i686 : A C language family front-end for LLVM
clang.x86_64 : A C language family front-end for LLVM
clang-analyzer.x86_64 : A source code analysis framework
clang-analyzer.noarch : A source code analysis framework
csclng.x86_64 : A compiler wrapper that runs Clang in background

  Name and summary matches only, use "search all" for everything.

从上面的输出中您可以看到有几个可用的包包含字符串“clang”。

如果该软件包clang已安装并且版本落后,您可以使用它yum check-update clang来查看是否有更新的版本可用。

在安装更新

但是,如果该软件包未安装或版本落后,您需要成为管理员才能安装和/或更新它。这意味着您要么需要有能力成为系统上的“root”用户,要么拥有sudo特权。

该命令sudo是 Unix 系统中通常包含的一个工具,以便可以将管理员功能分配给其他用户,而无需授予他们完全的“root”访问权限或 root 用户的密码。

以非 root 身份安装

您可以从源代码编译并将许多工具安装到您的主目录中$HOME。编译器clang就是这样的工具之一。有关如何执行此操作的详细信息,请参见 Stack Overflow 问答,标题为:以用户身份安装 Clang(无 root 权限)?。此外,您还可以使用托管在 GitHub 上的脚本,标题为:安装-clang,这也将完成下载、配置和安装clang到目录中的所有繁重工作。$HOME

答案2

来自yum手册页:

  • update [package1] [package2] [...]

更新

如果在没有任何软件包的情况下运行,更新将更新每个当前安装的软件包。如果指定了一个或多个软件包或软件包 glob,Yum 将仅更新列出的软件包。更新软件包时,yum 将确保满足所有依赖关系。 (有关详细信息,请参阅指定包名称)如果指定的包或 glob 与当前未安装的包匹配,则更新将不会安装它们。更新对组、文件、提供和文件列表进行操作,就像“安装”命令一样。

所以你想要运行的命令是:

sudo yum update

请注意,这仅适用于基于 RPM 的发行版,即 Red Hat Linux。但是,更新系统范围内的软件需要 root 访问权限,而您学校的系统管理员可能没有授予您该权限。

相关内容