システムの Python バージョンが 3.10.6 である 22.04 マシンに Python 3.10.10 (現在のバージョン 3.10) をインストールする最適な方法は何ですか。

システムの Python バージョンが 3.10.6 である 22.04 マシンに Python 3.10.10 (現在のバージョン 3.10) をインストールする最適な方法は何ですか。

22.04 マシンのクリーン インストールで次の操作を実行しました。

sudo apt update
sudo apt upgrade
sudo apt autoremove
sudo add-apt-repository ppa:deadsnakes/ppa
sudo apt update
sudo apt install python3.10
Reading package lists... Done
Building dependency tree... Done
Reading state information... Done
python3.10 is already the newest version (3.10.6-1~22.04.2).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.

ご覧のとおり、システムバージョンは3.10.6で問題ありません。

Anaconda をインストールせずに (サーバーに不要なものを大量にインストールします)... 最新ではないシステム バージョンからユーザーを切り離すには、どのようなオプションがありますか? Deadsnakes を追加する目的は、この問題を解決する方法の 1 つであり、以前のバージョンをインストールする方法でもあると考えました。

また、マシンを使用する人がシステムの Python を使用せず、わずかに異なるバージョンの Python を使用するようにマシンを設定するための推奨される方法を理解したいと思いました。(例: 上記のような Subversion の違い)

明確に言うと、私は Python のシステム バージョンを変更したいわけではありません。ユーザーが使用するものを変更したいだけです。 ;-)

バグ修正には 3.10.10 を使いたいのですが、3.10.6 が最後のセキュリティ パッチだと想定しています。また、18.04 マシンでは、apt アップグレードを行ったときに 3.10.10 になったことにも注意してください。

したがって、22.04 への do-release-upgrade を実行している 18.04 マシンは、最終的に次の状態になります。

python3
Python 3.10.10 (main, Feb  8 2023, 14:49:42) [GCC 7.5.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
which python3
/usr/bin/python3

したがって、クリーン インストールされた 22.04 マシンは、22.04 にアップグレードされた 18.04 のいずれよりも遅れています。

もう一つの注目すべき点は、3.10.7、3.10.8、および 3.10.9 はセキュリティ パッチであるということです。そのため、システム パッチが少なくとも 3.10.9 ではないのはなぜか疑問に思います。詳細については、Python リリース ノートを参照してください。

答え1

デッドスネークPPAはないJammy (22.04) 用の 3.10 が含まれています。これは設計どおりに動作しており、インストールしたもの以外に 3.10 がないことを示しています。3.11と3.12はJammy用です。しかし、私はシステムそれらを使ったPython。

異なる Python バージョンごとに作業を分離するには、virtualenv の使用を検討してください。

ここに画像の説明を入力してください

関連情報