Home [Linux] update-alternativesを使用してプログラムのバージョンを管理する
Post
Cancel

[Linux] update-alternativesを使用してプログラムのバージョンを管理する

update-alternativesコマンド

このコマンドに初めて出会ったのは、ローカルに複数のバージョンのPHPがインストールされているとき、これを簡単に切り替える方法を探しているときでした。 update-alternativesコマンドは、シンボリックリンクを管理するためのLinuxプログラムです。

それでは、複数のPHPバージョンがインストールされている状態でupdate-alternativesを使用するシナリオを見てみましょう。

update-alternativesコマンドを使用してPHPバージョンを管理する

登録されたシンボリックリンクの確認

1
2
$ sudo update-alternatives --config php
update-alternatives: error: no alternatives for php

まず、PHPに関する設定情報があるかどうかを確認します。 現在、存在しないことがわかります。

シンボリックリンクの登録

1
2
sudo update-alternatives --install /usr/bin/php php /usr/bin/php7.2 1
sudo update-alternatives --install /usr/bin/php php /usr/bin/php8.2 2

ローカルにPHP 7.2および8.2がインストールされた状況で、基本的なphpコマンドをどのように管理するかを考えてみましょう。 上記のコマンドは、/usr/bin/phpに対するシンボリックオプションを追加します。 php7.2およびphp8.2はそれぞれPHP 7.2およびPHP 8.2の実行ファイルのパスであり、数字1および2は優先順位を示します。

シンボリックリンクの確認および選択

1
2
3
4
5
6
7
8
9
$ sudo update-alternatives --config php
There are 2 choices for the alternative php (providing /usr/bin/php).

  Selection    Path                      Priority   Status
------------------------------------------------------------
* 0            /usr/bin/php7.2            2         auto mode
  1            /usr/bin/php8.2            1         manual mode
  2            /usr/bin/php7.2            2         manual mode
Press <enter> to keep the current choice[*], or type selection number: 1

このコマンドを実行すると、システムで使用可能なPHPバージョンの一覧が表示されます。各バージョンの横にある番号を入力して、デフォルトのPHPバージョンを選択できます。 1を選択すると、php -vコマンドを使用してバージョンが変更されることが確認できます。

1
2
3
$ php -v
PHP 8.2.13 (cli) (built: Dec  9 2023 00:20:40) (NTS)
Copyright (c) The PHP Group

上記のように、複数のバージョンのプログラムがインストールされている場合、update-alternativesを使用すると簡単かつ迅速にバージョンを切り替えることができます。ただし、プログラム言語のレベルで仮想環境を提供する場合、それを通じて管理する方が効果的かもしれません。

This post is licensed under CC BY 4.0 by the author.

[python] DFS/BFS Pythonの基本テンプレートコードを学ぶ

[kubernetes] k8s クライアント構成証明書の有効期限を確認する方法