本教程解釋了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
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中文網其他相關文章!