こんにちは!
InfraAcademyというインフラ学習サービスを運営しています、ryuと申します。
今回の記事では、LinuxでPythonを使う方法を解説します。Pythonをインストールして、スクリプトを実行する方法を詳しく解説します。
Linuxサーバーを触っていると、ログの加工や定型作業の自動化でPythonを使いたくなることがあります。しかし、pythonとpython3の違いや、pipをどこへ入れればよいのかで迷う方も多いのではないでしょうか。
先に大切なことをお伝えすると、Linuxに最初から入っているPythonを、自己判断で削除したり上書きしたりしてはいけません。
Linuxでは、OSの管理ツールがPythonを利用していることがあります。この記事では、ディストリビューションのパッケージマネージャーを使い、安全にPythonを導入する方法を解説します。
LinuxでPythonを使う前に確認すること¶
Pythonをインストールする前に、現在のLinux環境を確認します。
Ubuntu・Debian系と、Red Hat Enterprise Linux・Rocky Linux・AlmaLinux・Fedora系では、使用するパッケージマネージャーが異なります。
Linuxディストリビューションを確認する¶
現在使用しているLinuxの種類は、次のコマンドで確認できます。
cat /etc/os-release
UbuntuならID=ubuntu、Rocky LinuxならID="rocky"のように表示されます。
自分の環境がわからないままコマンドを実行すると、apt: command not foundやdnf: command not foundが表示されることがあります。
Pythonがすでに入っていないか確認する¶
Linuxには、最初からPython 3がインストールされている場合があります。
まずは次のコマンドを実行してください。
python3 --version
バージョンが表示されれば、Python 3はすでに利用できます。
Python 3.x.x
実行ファイルの場所は、次のコマンドで確認できます。
command -v python3
/usr/bin/python3などが表示されれば、その場所にPythonがあります。
pythonではなくpython3を使う¶
環境によっては、python --versionが使えず、python3 --versionだけが動く場合があります。
これは不具合ではありません。Python 2とPython 3を区別するため、pythonという名前を用意していないLinuxがあるためです。
初心者のうちは、この記事のようにpython3を使うと混乱しにくいでしょう。
LinuxにPythonをインストールする方法¶
LinuxにPythonをインストールする方法はいくつかありますが、ここではパッケージマネージャーを使って、Pythonのインストールを行います。
ディストリビューションのパッケージを使えば、依存関係もまとめて管理できます。
Ubuntu、Debianの場合¶
UbuntuやDebianの場合は、パッケージマネージャーでaptを使用します。以下のコマンドを実行して、pythonをインストールしましょう。
sudo apt update
sudo apt install python3
コマンドを実行すると、Pythonを動作させるために必要なパッケージをすべてインストールしてくれます。

Red Hat系の場合¶
Red Hat系の場合は、パッケージマネージャーでdnfを使用します。
元記事ではaptと説明していましたが、Rocky Linux・AlmaLinux・Fedoraなどでは、基本的にdnfを使用します。
sudo dnf install python3
古いCentOSなどでは、yumを使う場合もあります。
sudo yum install python3
現在の環境でdnfが使えるなら、基本的にはdnfを使用しましょう。
aptとdnfの違い¶
Pythonのインストールで使うコマンドを整理すると、次のようになります。
| Linuxの系統 | 主なディストリビューション | コマンド |
|---|---|---|
| Debian系 | Ubuntu、Debian | sudo apt install python3 |
| Red Hat系 | RHEL、Rocky、AlmaLinux、Fedora | sudo dnf install python3 |
| 古いRed Hat系 | CentOS 7など | sudo yum install python3 |
コマンドを暗記するだけではなく、どのLinux系統で使うコマンドなのかを理解しておくことが大切です。
【関連記事】Linuxコマンド40選|初心者が最初に覚えたい基本コマンド
インストールの確認¶
インストールが正しくできているかを確認してみましょう。
以下のコマンドを実行して、Pythonを動かしてみます。
python3 --version
上記のコマンドを実行して、バージョンが表示されたら成功です。

Pythonスクリプトの実行¶
続いて、Pythonスクリプトの実行を行なってみましょう。
Pythonスクリプトは、テキストエディタを使って作成します。ここでは、簡単な「Hello, World!」スクリプトを作成してみましょう。
スクリプトファイルの作成¶
まず、以下のコマンドを実行して、hello.pyを作成します。
echo 'print("Hello, World!")' > hello.py
これは、print("Hello, World!")というPythonのプログラムをhello.pyに記述しています。
ファイルの内容は、catコマンドで確認できます。
cat hello.py
>は出力をファイルへ書き込むリダイレクトです。同名ファイルがあると内容を上書きするため、実行前に確認しましょう。
【関連記事】Linuxの標準入力・標準出力とリダイレクトを解説
スクリプトの実行¶
続いて、スクリプトの実行をしてみましょう。
python3 hello.py
コマンドを実行すると、以下のようにHello, World!と表示されます。
これで、Pythonが使えるようになりました!
ファイル名を間違えると、No such file or directoryが表示されます。
その場合は、pwdとlsを使い、現在のディレクトリにhello.pyがあるか確認してください。
pwd
ls -l
Pythonを対話モードで実行する¶
短い処理を試すだけなら、ファイルを作らずにPythonを起動できます。
python3
>>>が表示されたら、Pythonの対話モードです。
>>> 10 + 20
30
>>> print("LinuxからPythonを実行")
LinuxからPythonを実行
終了するときは、exit()を入力します。
exit()
Linuxのターミナルでは、Ctrl + Dでも終了できます。
対話モードは、計算や関数の挙動を少し確認したいときに便利です。長いプログラムは、.pyファイルへ保存して実行しましょう。
pipでPythonパッケージを使う¶
Pythonでは、外部パッケージを追加して機能を増やせます。
パッケージのインストールに使われる代表的なツールがpipです。
pipが使えるか確認する¶
次のコマンドで確認します。
python3 -m pip --version
pipが見つからない場合、Ubuntu・Debian系では次のパッケージを入れます。
sudo apt install python3-pip
Red Hat系では、次のようにインストールします。
sudo dnf install python3-pip
pip3というコマンドもありますが、どのPythonへインストールするか明確にするため、私はpython3 -m pipをよく使います。
sudo pip installは避ける¶
次のようにsudoを付け、システム全体へパッケージを入れる方法はおすすめしません。
sudo pip3 install パッケージ名
Linuxのパッケージマネージャーが管理するPythonと、pipが管理するファイルが混ざると、OSのツールへ影響する可能性があります。
最近のLinuxでは、システム管理下のPythonへpip installすると、externally-managed-environmentというエラーが表示されることもあります。
このエラーを無理に回避するのではなく、仮想環境を使いましょう。
venvでPythonの仮想環境を作る¶
仮想環境を使うと、プロジェクトごとにパッケージを分けて管理できます。
別のプロジェクトで異なるバージョンのパッケージを使いたい場合にも便利です。
venvを準備する¶
Ubuntu・Debian系では、環境によってpython3-venvが必要です。
sudo apt install python3-venv
続いて、作業用ディレクトリを作ります。
mkdir python-practice
cd python-practice
.venvという名前で仮想環境を作成します。
python3 -m venv .venv
仮想環境を有効化します。
source .venv/bin/activate
プロンプトの先頭に(.venv)と表示されれば、有効化されています。
仮想環境へパッケージを入れる¶
例として、requestsをインストールします。
python -m pip install requests
仮想環境の中では、pythonが.venv内のPythonを指します。
確認してみましょう。
command -v python
次のように、.venv内のパスが表示されます。
/home/user/python-practice/.venv/bin/python
仮想環境を終了する場合は、次のコマンドを実行します。
deactivate
Python公式ドキュメントでも、プロジェクトごとに独立した環境を作る方法としてvenvが案内されています。
Pythonスクリプトを直接実行する方法¶
通常は、python3 hello.pyという形式で十分です。
Linuxでは、ファイル自体をコマンドのように実行することもできます。
シバンと実行権限を設定する¶
スクリプトの1行目へ、次の記述を追加します。
#!/usr/bin/env python3
print("Hello, World!")
先頭の#!から始まる行は、シバンと呼ばれます。
ファイルへ実行権限を追加します。
chmod u+x hello.py
続いて、カレントディレクトリのファイルとして実行します。
./hello.py
./の意味がわからない方は、次の記事も参考にしてください。
【関連記事】Linuxで「./」を付けて実行する理由
LinuxでPythonが動かないときの確認方法¶
Pythonをインストールしても、エラーが出る場合があります。
何が見つからないのかを、エラーメッセージから順番に確認しましょう。
python3 command not foundと表示される¶
次のエラーは、python3が見つからないことを表します。
python3: command not found
まず、次のコマンドで確認します。
command -v python3
何も表示されなければ、使用中のLinuxに合わせてaptまたはdnfでインストールします。
Permission deniedと表示される¶
./hello.pyで権限エラーになる場合は、実行権限を確認します。
ls -l hello.py
chmod u+x hello.py
ただし、python3 hello.pyという形式なら、スクリプト自体に実行権限がなくても実行できます。
ModuleNotFoundErrorと表示される¶
外部パッケージが見つからない場合は、仮想環境を有効化しているか確認します。
command -v python
python -m pip show requests
別のPythonへパッケージを入れていると、インストール済みでも読み込めません。
pipだけではなく、python -m pipを使うと、現在のPythonとの対応を確認しやすくなります。
LinuxのシステムPythonを上書きしない¶
Pythonを学び始めると、新しいバージョンを入れたくなることがあります。
しかし、/usr/bin/python3を手作業で置き換えたり、OSが導入したPythonを削除したりするのは危険です。
OSの管理ツールがPythonを利用することがある¶
Linuxディストリビューションによっては、システム管理用のプログラムがPythonを使用しています。
システムPythonを壊すと、パッケージ管理や管理コマンドが動かなくなる可能性があります。
私は10年以上エンジニアとしてサーバーを扱っていますが、Pythonのバージョンを変更するときほど、誰がそのPythonを管理しているかを確認します。
新しいバージョンが必要なら、システムPythonを消すのではなく、仮想環境やコンテナなどで分離するのが基本です。
LinuxでPythonを使う方法まとめ¶
今回の記事では、LinuxでPythonを使う方法について解説しました。Pythonをインストールして、スクリプトを実行するところまでを実施しました。
最後に、基本の流れを整理します。
| やりたいこと | コマンド例 |
|---|---|
| Pythonの確認 | python3 --version |
| Ubuntu・Debianへ導入 | sudo apt install python3 |
| Red Hat系へ導入 | sudo dnf install python3 |
| スクリプト実行 | python3 hello.py |
| 仮想環境の作成 | python3 -m venv .venv |
| 仮想環境の有効化 | source .venv/bin/activate |
| パッケージ導入 | python -m pip install パッケージ名 |
| 仮想環境の終了 | deactivate |
LinuxでPythonを使うことは、よくあると思うので、Pythonコマンドが無くて困っている方は参考にしてください。
最初は、python3 --versionで現在の状態を確認し、必要な場合だけパッケージマネージャーで導入しましょう。
外部パッケージを使う場合は、システム全体へ直接入れるのではなく、仮想環境を利用する方法がおすすめです。
InfraAcademyでは、Linuxコマンドやサーバー構築を、ブラウザ上で実際に操作しながら学べます。
ここまでお読みいただきありがとうございました。