首页 > 系统教程 > 操作系统 > 如何使用Linux中的GNU Stow从源安装和管理软件

如何使用Linux中的GNU Stow从源安装和管理软件

William Shakespeare
发布: 2025-03-16 10:51:11
原创
618 人浏览过

本教程解释了GNU Stow如何简化从Linux中的源安装的管理软件。它使用符号链接来保持安装的组织,防止冲突并轻松进行更新/删除。

什么是GNU Stow?

GNU Stow是一名Symlink Manager,简化了Linux和Unix样系统上的源代码软件。它通过创建从中央位置到实际软件文件的符号链接来组织文件,从而实现高效的管理和维护。这样可以防止多个软件包之间的冲突。这对于管理自己的安装和配置的用户通常与版本控件配对特别有用。它是免费和开源的。

GNU Stow的工作方式

Stow假设每个软件包都位于其自己的目录中(例如/usr/local/stow/package1 )。 stow package1创建了从此目录到适当的系统位置的符号链接(例如/usr/local/bin )。 stow -D package1删除了这些链接。

GNU存储功能

  • 符号链接:创建符号链接,避免文件冲突。
  • 软件包管理:管理在用户特定或系统范围内安装的软件。
  • 简单的升级/删除:更新或删除包装很简单;存储自动处理符号链接。
  • 灵活配置:可自定义以适合个人需求。

使用GNU Stow的优点

  • 简化的软件包管理:易于安装,更新和删除。同一软件包的多个版本可以共存。
  • 避免冲突:隔离的软件包目录最小化文件冲突。
  • 可重复性:易于复制和记录软件环境。

用例

非常适合开发人员从源和管理多个系统的配置文件(dotfiles)中定期编译软件的理想选择。

基本用法

安装包装: cd /usr/local/stow; stow package1卸载一个软件包: cd /usr/local/stow; stow -D package1

使用GNU Stow从源安装软件(curl示例)

  1. 更新系统: sudo apt update (Debian/Ubuntu), sudo yum update (Centos/Rhel),等等。
  2. 安装开发工具: sudo apt install build-essential libssl-dev (debian/ubuntu for with openssl),对系统进行调整和所需的TLS后端(Gnutls需要不同的库)。
  3. 安装GNU Stow: sudo apt install stow (Debian/Ubuntu),调整您的发行版。
  4. 下载并提取卷发: wget https://github.com/curl/curl/releases/download/curl-8_8_0/curl-8.8.0.tar.gz; tar xvf curl-8.8.0.tar.gz (替换为最新版本)。
  5. 配置构建: cd curl-8.8.0; ./configure --with-ssl --prefix=/usr/local/stow/curl-8.8.0 (or --with-gnutls for Gnutls)。
  6. 编译: make
  7. 安装: sudo make install
  8. 使用Stow进行管理: cd /usr/local/stow; sudo stow curl-8.8.0
  9. 验证: curl --version

如何使用Linux中的GNU Stow从源安装和管理软件

更新软件

  1. 卸载旧版本: cd /usr/local/stow; sudo stow -D curl-8.7.1 (替换为旧版本)。
  2. 从安装部分下载,提取,配置和构建新版本:重复步骤4-7。
  3. 用Stow管理新版本: cd /usr/local/stow; sudo stow curl-8.8.0
  4. 验证: curl --version
  5. 删除旧目录(可选): sudo rm -rf /usr/local/stow/curl-8.7.1

高级用法

Stow提供了可重新定位软件包( --dir--target ),干运行( -n ),详细输出( -v ),忽略文件( .stow-local-ignore ), restow-R ), destow-D ),采用现有文件( --adopt ),处理冲突( - 验证冲突( --override )和指定自定义的定制目录)的选项。有关详细信息,请参见man stow页面。

GNU存放备忘单(常见命令和选项的摘要)

  • stow package_name :存储一个软件包。
  • stow -D package_name :解开软件包。
  • stow -R package_name :重新启动包装。
  • stow --dir=/path/to/packages package_name :指定源目录。
  • stow --target=/path/to/target package_name :指定目标目录。
  • stow -n package_name :干式运行。
  • stow -v package_name :详细输出。
  • stow --adopt package_name :采用现有文件。
  • stow --override package_name :覆盖冲突。

常见问题(常见问题解答) (用原始文本涵盖,但可以在这里总结为简洁)

结论

GNU Stow是有效地管理Linux中源构建软件,改善组织并简化更新和删除的有价值的工具。它对符号链接的使用会阻止冲突,并使多个软件版本直接管理。

以上是如何使用Linux中的GNU Stow从源安装和管理软件的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板