本教程解释了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需要不同的库)。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
cd /usr/local/stow; sudo stow curl-8.8.0
curl --version
更新软件
cd /usr/local/stow; sudo stow -D curl-8.7.1
(替换为旧版本)。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中文网其他相关文章!