このチュートリアルでは、GNUストウがLinuxのソースからインストールされたソフトウェアの管理を簡素化する方法について説明しています。シンボリックリンクを使用してインストールを整理し、競合を防ぎ、更新/削除を容易にします。
GNUストウとは何ですか?
GNU Stowは、LinuxおよびUnixのようなシステムのSymlink Manager Streamliningソースコードソフトウェアのインストールです。ファイルを整理し、中央の場所から実際のソフトウェアファイルへのシンボリックリンクを作成することにより、効率的な管理とメンテナンスを可能にします。これにより、複数のパッケージ間の競合が防止されます。多くの場合、バージョンコントロールと組み合わせた独自のインストールと構成を管理するユーザーにとって特に便利です。無料でオープンソースです。
GNUストウのしくみ
Stowは、各ソフトウェアパッケージが独自のディレクトリに存在することを想定しています(例: /usr/local/stow/package1
)。 stow package1
、このディレクトリから適切なシステムの場所( /usr/local/bin
など)へのシンボリックリンクを作成します。 stow -D package1
これらのリンクを削除します。
GNUストウ機能
GNUストウを使用することの利点
使用事例
ソースからソフトウェアを定期的にコンパイルし、複数のシステムで構成ファイル(dotfiles)を管理する開発者に最適です。
基本的な使用法
パッケージをインストール: cd /usr/local/stow; stow package1
パッケージをアンインストールする: cd /usr/local/stow; stow -D package1
GNUストウを使用してソースからソフトウェアのインストール(Curlの例)
sudo apt update
(Debian/Ubuntu)、 sudo yum update
(Centos/Rhel)など。sudo apt install build-essential libssl-dev
(opensslを使用したdebian/ubuntu for curl)、システムと希望の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
(または--with-gnutls
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
)の採用(-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
:verbose output。stow --adopt package_name
:既存のファイルを採用します。stow --override package_name
:競合をオーバーライドします。よくある質問(FAQ) (元のテキストでカバーされていますが、簡潔にするためにここにまとめることができます)
結論
GNU Stowは、Linuxでソース構築ソフトウェアを効率的に管理し、組織の改善、更新と削除を簡素化するための貴重なツールです。シンボリックリンクを使用すると、競合が防止され、複数のソフトウェアバージョンの管理が簡単になります。
以上がLinuxでGNUストウを使用してソースからソフトウェアをインストールおよび管理する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。