如何使用Linux中的GNU Stow从源安装和管理软件
本教程解释了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示例)
-
更新系统:
sudo apt update
(Debian/Ubuntu),sudo yum update
(Centos/Rhel),等等。 -
安装开发工具:
sudo apt install build-essential libssl-dev
(debian/ubuntu for with openssl),对系统进行调整和所需的TLS后端(Gnutls需要不同的库)。 -
安装GNU Stow:
sudo apt install stow
(Debian/Ubuntu),调整您的发行版。 -
下载并提取卷发:
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
(替换为最新版本)。 -
配置构建:
cd curl-8.8.0; ./configure --with-ssl --prefix=/usr/local/stow/curl-8.8.0
(or--with-gnutls
for Gnutls)。 -
编译:
make
-
安装:
sudo make install
-
使用Stow进行管理:
cd /usr/local/stow; sudo stow curl-8.8.0
-
验证:
curl --version
更新软件
-
卸载旧版本:
cd /usr/local/stow; sudo stow -D curl-8.7.1
(替换为旧版本)。 - 从安装部分下载,提取,配置和构建新版本:重复步骤4-7。
-
用Stow管理新版本:
cd /usr/local/stow; sudo stow curl-8.8.0
-
验证:
curl --version
-
删除旧目录(可选):
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中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

Video Face Swap
使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

Linux最适合用作服务器管理、嵌入式系统和桌面环境。1)在服务器管理中,Linux用于托管网站、数据库和应用程序,提供稳定性和可靠性。2)在嵌入式系统中,Linux因其灵活性和稳定性被广泛应用于智能家居和汽车电子系统。3)在桌面环境中,Linux提供了丰富的应用和高效的性能。

Linux的五个基本组件是:1.内核,管理硬件资源;2.系统库,提供函数和服务;3.Shell,用户与系统交互的接口;4.文件系统,存储和组织数据;5.应用程序,利用系统资源实现功能。

Linux系统管理是通过配置、监控和维护来确保系统稳定、高效和安全。1.掌握shell命令如top、systemctl。2.使用apt或yum管理软件包。3.编写自动化脚本提高效率。4.调试常见错误如权限问题。5.通过监控工具优化性能。

Linux基础学习从零开始的方法包括:1.了解文件系统和命令行界面,2.掌握基本命令如ls、cd、mkdir,3.学习文件操作,如创建和编辑文件,4.探索高级用法如管道和grep命令,5.掌握调试技巧和性能优化,6.通过实践和探索不断提升技能。

Linux在服务器、嵌入式系统和桌面环境中的应用广泛。1)在服务器领域,Linux因其稳定性和安全性成为托管网站、数据库和应用的理想选择。2)在嵌入式系统中,Linux因其高度定制性和高效性而受欢迎。3)在桌面环境中,Linux提供了多种桌面环境,满足不同用户需求。

Linux设备是运行Linux操作系统的硬件设备,包括服务器、个人电脑、智能手机和嵌入式系统。它们利用Linux的强大功能执行各种任务,如网站托管和大数据分析。

Linux的缺点包括用户体验、软件兼容性、硬件支持和学习曲线。1.用户体验不如Windows或macOS友好,依赖命令行界面。2.软件兼容性不如其他系统,缺乏许多商业软件的原生版本。3.硬件支持不如Windows全面,可能需要手动编译驱动程序。4.学习曲线较陡峭,掌握命令行操作需要时间和耐心。

互联网运行不依赖单一操作系统,但Linux在其中扮演重要角色。Linux广泛应用于服务器和网络设备,因其稳定性、安全性和可扩展性受欢迎。
