Pythonをオフラインでインストールする(Linux)

Pythonをオフラインでインストールする(Linux)

Pythonをオフラインでインストールする(Linux)

以前、Node.jsをオフラインでインストールする(Linux)という記事を投稿していましたが、 今回はPythonについて、オフライン環境でインストールをする方法を紹介していこうと思います。

趣旨としては前回同様に、インターネットに接続のできない環境で資材インストールをする手順を纏めるものです。
通常はインターネット接続できるので不要ですが、仕事などで使うサーバーなどではよくあることだと思うので、よければ参考にしてみてください。
ちなみにインターネットに接続することができる環境でも、この方法を用いても問題はないです。


インストール手順

今回のオフラインインストールはLinux環境での内容です。
また資材のダウンロードはオンライン環境で実施するため、オフライン環境に資材を持っていく部分は各自の環境に沿って実施してください。

  1. 資材準備
  2. まずは下記公式サイトにアクセスし、資材をダウンロードしてきます。
    これはインターネットに繋がる端末で実施します。
    Download Python

    「ダウンロード」の「すべてのリリース」から任意のバージョンを選択します。
    今回は、3.12.4を選択し、「Files」の「XZ compressed source tarball」をクリックします。

  3. 資材転送
  4. ダウンロードしたバイナリファイルをオフライン環境に持っていきます。
    手順は皆さんの環境に依存するので、ここでは言及できませんが、scpコマンドなどを使うことになるかと思います。

  5. 資材展開
  6. 資材転送ができたら、下記のコマンドで展開をします。

     tar Jxf Python-3.12.4.tar.xz

  7. インストール準備
  8. 展開したフォルダに移動し、configureでprefixを指定する。(gccが必要)

     cd Python-3.12.4
     ./configure --prefix=/usr/local/python312 --with-ensurepip
    コマンドを実行すると、色々コンソールに出力されるので止まるまで待機する。
    なお、prefixで指定しているパスは任意で、私はバージョンも分かりやすくするためpython312というディレクトリ命名をしています。

  9. インストール
  10. makeコマンドを使用してコンパイルを行い、インストールを進める。

     make
    こちらもコマンドを実行すると、色々コンソールに出力されるので止まるまで待機する。

    止まったら、インストールを行う。
     sudo make install

  11. インストール確認
  12. configureで指定していたディレクトリを確認します。

     ls /usr/local/python312
     ls /usr/local/python312/bin
    それぞれファイルが作成されていることを確認したら、バージョン確認をし正常にインストールできているかを確認します。
     /usr/local/python312/bin/python3.12 -V
     /usr/local/python312/bin/pip3.12 -V

  13. シンボリックリンクを作成
  14. 先程のバージョン確認のように、毎回フルパスでコマンド実行するのは面倒ですし現実的ではないです。 そのためシンボリックリンクを作成して、「python」などのように簡単な名称で呼び出せるようにしていきます。

    ただし、一つ注意をしてほしいのが、既存のPythonです。
    Linuxはシステムファイル用にPythonがデフォルトでインストールされていることが多く、昔のものだとPython2系がインストールされており、 最近のものはPython3系がインストールされています。
    そのためシンボリックリンクを作成する際には、既存のPythonに影響を与えないようにするのが望ましいです。
    イケてないですが、下記のようにするのが一番安全かなと思います。

     ln -s /usr/local/python312/bin/python3.12 /bin/python312
     ln -s /usr/local/python312/bin/pip3.12 /bin/pip312 

  15. 再度バージョン確認を行う
  16. シンボリックリンクが作成できたので、先程のようなフルパスではなく「python312」や「pip312」で実行できるはずです。

     python312 -V
     pip312 -V
    それぞれバージョンが表示されればインストールは完了です!


makeなどのモジュールがない場合

makeなどのモジュールが入っていない場合は、インストールする必要があります。 しかし、本環境はインターネットに接続できないので、通常のyumではインストールできません。
この場合は、インターネットでrpmなどの資材を調達し、転送、インストールをするか、dvdからインストールする方法があります。

dvdからインストールする方法は下記で紹介しているので、参考にしてみてください。
OracleLinuxでDVDからモジュールをインストールする

ちなみに、今回まっさらな環境でインストールしようとしている場合は、「make」以外に「gcc、zlib-devel、openssl-devel、tk-devel」も必要になるので準備しておきましょう。
なお、「libffi-devel」は第一にインストールをしてください。まれにライブラリが正常に機能しなくなることがあります。


さいごに

今回はインターネットに接続できない環境でPythonをインストールする方法を紹介しました。
そもそもPythonに関しては、インターネットに接続できる環境であってもLinux環境は面倒なんですが、、

今回紹介した方法であれば、既存環境を気にせずにインストールできるので、インストール接続可否に関わらず参考になるんじゃないかと思っています。
よければ参考にしてみてください。
今回はこのへんで、ではまた。

コメント

このブログの人気の投稿

Power Automateでファイル名から拡張子を取得

PowerAppsで座席表を作成する

Power AutomateでTeamsのキーワードをトリガーにする