alternativesコマンドを使ったPythonのバージョン切り替え方法
dnfコマンドとalternativesコマンドを使ったPythonのバージョン切り替え方法です。
Rocky Linux環境を例に、dnfコマンドを使って複数バージョンのPythonをインストールし、alternativesコマンドで切り替える手順を紹介しています。
※ Rocky Linux release 9.4 (Blue Onyx)で確認しています。
※ 確認には、Azure環境上の仮想マシン(Azure Virtual Machines)を利用しています。
※ コマンド例はrootユーザーで実行しています。一般ユーザーの場合は適宜sudoを付けて実行してください。
pyenvコマンドを利用した方法についてはこちらで紹介しています。
dnfコマンドで複数バージョンのPythonをインストール
デフォルトのPythonのバージョンを確認
初期状態でRocky LinuxにインストールされているPythonのバージョンを確認します。
“python -V"もしくは"python –version"コマンドでPythonバージョンを確認できます。
|
[root@vm-01 ~]# python -V |
dnfで提供されているPythonのバージョンを確認
dnfリポジトリで提供されているPythonのバージョンを確認します。
この環境ではpython3.11(python3.11.x86_64)とpython3.12(python3.12.x86_64)が利用可能です。
|
[root@vm-01 ~]# dnf list available 'python3.[0-9][0-9].x86_64’ |
バージョンを指定してPythonをインストール
Pythonのバージョンを指定してインストールします。
今回はPython 3.11と3.12をインストールします。
|
[root@vm-01 ~]#
dnf install -y python3.11 Transaction Summary ~(中略)~ Complete! [root@vm-01 ~]#
dnf install -y python3.12 Transaction Summary ~(中略)~ Complete! |
インストールしてもPythonのバージョンは変わらない
3.11や3.12の新しいバージョンをインストールした後、Pythonのバージョンを再度確認します。
インストール前と変わらず3.9のままとなっています。
|
[root@vm-01 ~]# python -V |
/usr/bin/にインストールされたPythonを確認
Pythonの実行ファイルは/usr/bin/ディレクトリにインストールされています。
pythonはpython3へのシンボリックリンクで、さらにpython3はpython3.9へのシンボリックリンクになっています。
Python 3.11や3.12をインストールしても、このシンボリックリンクは自動的に変更されません。
そのため、pythonまたはpython3コマンドを実行すると、引き続きpython3.9が実行されます。
|
[root@vm-01 ~]# ls -l /usr/bin/ | grep python |
—広告—
alternativesコマンドでPythonのバージョン切り替え
シンボリックリンクを手動で変更する方法(おすすめしません)
ln -sfコマンドでシンボリックリンクを直接変更する方法です。
簡単ですが、手動管理となってしまいます。
そのため、alternativesコマンドの利用をおすすめします。
|
[root@vm-01 ~]#
ln -sf /usr/bin/python3.11 /usr/bin/python3 |
alternativesコマンドでPythonのバージョンを管理
alternativesコマンドは、Linuxで複数のバージョンが存在するプログラムの管理を簡単にするためのツールです。
Introduction to the alternatives command in Linux
設定には"–install"オプションを利用します。
-
- 設定時
- alternatives –install <シンボリックリンク先> <設定名> <実行ファイルのパス> <優先度>
- 切替時
- alternatives –config <設定名>
- 削除時
- alternatives –remove <設定名> <実行ファイルのパス>
- 設定時
※削除してもPythonのパッケージ自体がアンインストールされる訳ではありません。
|
[root@vm-01 ~]#
alternatives –install /usr/bin/python3 python3 /usr/bin/python3.9 1 |
※ 自動モードでは、優先度が最も高いバージョンが選択されます。
“alternatives –config"コマンドで、使用するPythonのバージョンを手動で切り替えます。
実行すると登録済みのバージョン一覧が表示されます。
使用するバージョンの番号を入力します。
|
[root@vm-01 ~]# alternatives –config python3 There are 3 programs which provide 'python3’. Selection Command Enter to keep the current selection[+], or type selection number: |
2を選択してPythonのバージョンを3.11に切り替えます。
|
Enter to keep the current selection[+], or type selection number: 2 |
alternatives利用時のシンボリックリンク
alternativesを設定すると、python3のシンボリックリンクが/etc/alternatives/python3を経由するように変更されます。
alternativesコマンドでバージョンを切り替えると、このリンク先が自動的に更新されます。
|
[root@vm-01 ~]# ls -l /usr/bin/ |grep python |
—広告—
最後に
dnfコマンドを使った複数バージョンのPythonのインストールと、alternativesコマンドを使ったバージョン切り替え手順を紹介しました。
引き続き色々試してみたいと思います。
Pythonのパッケージ管理システムであるpipのインストール手順については、こちらで紹介しています。
Windows環境へのPythonインストール方法については、こちらで紹介しています。
SeleniumやPlaywrightを利用したブラウザテストの方法については、こちらで紹介しています。
Tera TermやVisual Studio Codeのインストール手順については、こちらで紹介しています。

