Ubuntu 24.04 開発・研究環境構築ガイド
Ubuntu 24.04 LTS上でデータベース、AI/機械学習、3DCG、メディア処理、ソフトウェア開発などを行いたい大学生や技術者を対象としています。
このページでは,プログラミング処理系と開発環境(プログラムの自作、オープンソフトウェアの活用)、 データベース処理、 メディア処理、 その他のアプリケーション(インターネット、ファイル操作など)、 NVIDIA ドライバや NVIDIA CUDA や NVIDIA cuDNN, ディープラーニング応用のための各種ソフトウェアのインストール及び設定手順について、Ubuntu 24.04 LTS を基準とした情報を提供します。
Windows 環境向けの情報は別ページ »で説明しています。
【目次】
- Ubuntu 24.04 のインストールについて
- Ubuntu 24.04 の基本的な設定
- C/C++ コンパイラー,make,パッケージツール
- NVIDIA ドライバ,NVIDIA CUDA ツールキット, NVIDIA cuDNN
- Git, cmake, curl, wget, p7zip-full
- システムPython環境と基本パッケージ (非推奨)
- 隔離された Python 環境の構築と利用 (推奨)
- 数値演算ライブラリ (OpenBLAS, LAPACK, Intel MKL)
- ディープラーニング応用ライブラリ (dlib, OpenPose等)
- エディタとIDE
- Web ブラウザ,リモートファイル転送,リモート接続
- 各種ツール類(作図、ファイル検索など)
- PostgreSQL 16 (データベース)
- データベース管理ツール
- メディア関連ツール(GIS, 動画編集, 3DCG, 点群処理など)
- Unreal Engine (ゲームエンジン)
- Java 開発環境
- R システムとRStudio(統計解析環境)
- オプション: ゲーム環境
重要事項と注意事項
- ソフトウェアライセンス このページで紹介するソフトウェア等の利用条件は各自で必ず確認してください。特に商用利用や再配布に関しては注意が必要です。
- ダウンロード元の確認 ソフトウェアやファイルをダウンロードする際は、必ず公式サイトや信頼できる提供元から行い、URLを確認する習慣をつけましょう。意図しないサイトからのダウンロードはセキュリティリスクを高めます。
- マルウェア対策 ダウンロードしたファイルは、信頼できるウイルス対策ソフトでスキャンすることを推奨します。リアルタイム保護を有効にしておくとより安全です。
- `sudo` コマンド `sudo` は管理者権限でコマンドを実行します。コマンドの内容と影響を理解せずに実行しないでください。特に、設定ファイルの変更、外部リポジトリの追加、ソースコードからのインストール (`make install` 等) は慎重に行ってください。
- 仮想環境の利用 PythonやRなどの開発では、プロジェクトごとに仮想環境(例: Python venv, Conda)を作成し、その中に必要なパッケージをインストールすることを強く推奨します。これにより、システム全体の環境を汚染せず、プロジェクト間の依存関係の衝突を防ぎ、環境の再現性を高めることができます。システムへの直接インストール (`sudo pip install` や `sudo R CMD INSTALL` 等) は極力避けてください。
- バージョン互換性 特にNVIDIAドライバ、CUDA、cuDNNと、それらを利用する機械学習ライブラリ(TensorFlow, PyTorch等)の間には、厳密なバージョン互換性要件があります。各ソフトウェアの公式ドキュメントを必ず確認し、互換性のある組み合わせを選択してください。本ガイド記載のバージョンが常に最新または最適とは限りません。
- 外部リポジトリ/PPA サードパーティのリポジトリやPPA (Personal Package Archive) を追加すると、公式以外のソフトウェアを簡単にインストールできますが、セキュリティリスクや依存関係の問題を引き起こす可能性があります。リポジトリの信頼性を十分に確認し、自己責任で利用してください。
【サイト内のUbuntuセットアップ関連ページ】
- Ubuntu 24.04のインストールガイド: 別ページ »で説明
- Ubuntu初期設定ガイド: インストール直後の主要設定項目: 別ページ »で説明
- UbuntuUbuntu システムの基本操作ガイド: 別ページ »で説明
- Ubuntuの使い方: 別ページ »で説明
- Ubuntu 24.04 開発・研究環境構築ガイド: 別ページ »で説明
- Ubuntuシステムの更新ガイド: 別ページ »で説明
- Ubuntuシステムの管理と運用,各種設定: 別ページ »で説明
- Ubuntuサーバ管理・セキュリティガイド: 別ページ »で説明
【外部リソース】
- Ubuntuの公式ページ(日本語版): https://jp.ubuntu.com/
- Ubuntu 24.04 の公式リリースページ:https://releases.ubuntu.com/noble/
- Ubuntuのダウンロード公式ページ(日本語版): https://jp.ubuntu.com/download
- 公式のUbuntuミラーサイトのページ: https://launchpad.net/ubuntu/+cdmirrors
- fosswire.comのUnix/Linuxコマンドリファレンス: https://files.fosswire.com/2007/08/fwunixref.pdf
- DistroWatchのUbuntuのページ: https://distrowatch.com/table.php?distribution=ubuntu
Ubuntu 24.04 LTS (Noble Numbat) 概要
本ガイドで対象とする Ubuntu 24.04 LTS について、基本的な情報を以下にまとめます。
- 正式名称: Ubuntu 24.04 LTS (Noble Numbat)
- リリース日: 2024年4月
- サポート期間: 2029年4月までの5年間長期サポート (LTS) 。安定した環境での長期的な開発・研究に適しています。
- 入手方法:
- 公式サイト(日本語): https://jp.ubuntu.com/download
- 公式リリースページ: https://releases.ubuntu.com/noble/
- デスクトップ版イメージサイズ: 約5.7GB
- 主要な開発環境・ツールバージョン (標準リポジトリ):
- コンパイラ/ツールチェーン: GCC 14, binutils 2.42, glibc 2.39, LLVM 18
- 言語: Python 3.12, PHP 8.3.6, Rust 1.75, Go 1.22
- Java: OpenJDK 21 LTS
- .NET: .NET 8
- データベース: PostgreSQL 16.2
- サーバー関連: Apache 2.4.58, Nginx 1.24, Docker.io 24.0.7, QEMU 8.2.1, Samba 4.19.x, HAProxy 2.8.5, cloud-init v.24.1.3
注意: 上記は標準リポジトリのバージョン例です。PPAやソースビルド、Python仮想環境などでは異なるバージョンを利用可能です。
- その他の特徴:
- WSL (Windows Subsystem for Linux) 環境での利用に対応。
- Raspberry Pi 5を含むarm64デバイスを公式サポート。
1. Ubuntu 24.04のインストールについて
Ubuntu 24.04 LTS Desktopのインストール手順は、Ubuntu公式サイトのドキュメントや各種ガイドを参照すること。USBメモリからのブート、インストーラの指示に従ったパーティション設定、ユーザ作成などが一般的な流れである。
2. Ubuntu 24.04の基本的な設定
2.1 OSのシステム更新
Ubuntuインストール後、まずシステム全体を最新の状態に更新する。これにより、セキュリティパッチやバグ修正が適用される。
sudo apt update
sudo apt full-upgrade -y
カーネルなどの重要なコンポーネントが更新された場合、更新後にシステムを再起動することを推奨する。
sudo /sbin/shutdown -r now
2.2 Ubuntu 24.04のインストール直後の一般的な設定
インストール直後には、以下のような設定を行うことが一般的である。具体的な手順は環境や好みに応じて調整すること。
- プロプライエタリドライバの適用: 「ソフトウェアとアップデート」→「追加のドライバー」で、NVIDIAグラフィックドライバなど、推奨されるプロプライエタリドライバを適用する(詳細はセクション4参照)。
- 外観や挙動のカスタマイズ: 「設定」メニューから壁紙、ドック、電源管理などを調整する。
- 必要なソフトウェアのインストール: Webブラウザ、オフィススイート、メディアプレイヤーなど、日常的に使用するアプリケーションをインストールする(後述のセクションも参照)。
- リポジトリ設定: 必要であれば、サードパーティのリポジトリやPPAを追加する(信頼性を確認の上)。
2.3 エディタのインストール例: Emacs
開発作業で使用するテキストエディタをインストールする。ここではEmacsの例を示す。
sudo apt update # 必要に応じて実行
sudo apt install -y emacs
# 日本語入力Mozcと連携する場合
sudo apt install -y emacs-mozc fcitx-libs-dev
(他のエディタについてはセクション10を参照)
2.4 OpenSSHサーバーのセットアップ
他のコンピュータからSSHプロトコルを使ってUbuntuマシンにリモートログインする場合に設定する。
sudo apt update
sudo apt install -y openssh-server
# SSHサービスの起動状態を確認
sudo systemctl status ssh
# ファイアウォール(ufw)でSSHポート(通常22)を許可(ufwが有効な場合)
sudo ufw allow ssh
sudo ufw status # 状態確認
セキュリティ向上のため、パスワード認証を無効にし、公開鍵認証を使用することを強く推奨する。設定手順は別ページ »で説明している。
3. C/C++コンパイラ、make、パッケージツール
ソフトウェアのソースコードからのビルドや開発に必要となる基本的なツール群をインストールする。`build-essential`はコンパイルに必要なパッケージ一式を含む。
sudo apt update
sudo apt install -y build-essential gcc g++ make libtool pkg-config
C/C++コンパイラの動作確認
- エディタ(例: `nano /tmp/hello.c`)で以下の内容のファイル`/tmp/hello.c`を作成する。
#include <stdio.h> #include <stddef.h> int main() { printf("Hello, C World!\n"); printf("sizeof(size_t) on this system = %zu bytes\n", sizeof(size_t)); return 0; } - 作成したソースコードをコンパイルし、生成された実行ファイルを実行する。
cd /tmp gcc hello.c -o hello_c_test ./hello_c_test
実行結果として「Hello, C World!」「sizeof(size_t) on this system = 8 bytes」(数値は環境により異なる)のように表示されれば、コンパイラは正しく動作している。
4. NVIDIAドライバ、CUDA Toolkit、cuDNN
Ubuntu 24.04環境でのNVIDIA関連ソフトウェア(ドライバ、CUDA Toolkit、cuDNN)のインストールは、利用目的(特にディープラーニング)と環境によって最適な方法が異なる。バージョン間の互換性(ドライバ ⇔ CUDA ⇔ cuDNN ⇔ MLライブラリ)の確認が不可欠である。
推奨アプローチの概要
- NVIDIAドライバ: Ubuntuの「ソフトウェアとアップデート」→「追加のドライバー」または`ubuntu-drivers`コマンドを利用するのが最も簡単で推奨される。
- CUDA Toolkit & cuDNN:
- ML/DL開発(推奨): 使用するライブラリ(TensorFlow、PyTorch等)の公式ドキュメントに従い、Dockerコンテナを利用するか、推奨されるバージョンのCUDA/cuDNNをインストールする。Dockerは環境分離と再現性の観点から有効である。
- その他のCUDA開発(runfile/tarball): NVIDIA公式サイトから、ドライババージョンと互換性のあるCUDA Toolkitのrunfileインストーラと、対応するcuDNNのtarballをダウンロードし、手動で設定する。
- aptリポジトリ: NVIDIAがUbuntu 24.04向けaptリポジトリを公式に提供している場合は利用可能(NVIDIA CUDA Downloadsで確認)。
4.1 NVIDIAドライバのインストール(Ubuntu推奨方法)
GUIを使う場合は「設定」→「システム」→「管理」→「ソフトウェアとアップデート」→「追加のドライバー」タブを開き、リストから推奨されるプロプライエタリドライバを選択して「変更の適用」をクリックする。
コマンドラインで行う場合は以下を実行する。
# システムが認識しているGPUと利用可能なドライバを表示
ubuntu-drivers devices
# 推奨されるドライバを自動的にインストール
sudo ubuntu-drivers autoinstall
# ドライバの有効化のためにシステムを再起動
sudo /sbin/shutdown -r now
再起動後、ターミナルで`nvidia-smi`コマンドを実行し、GPU情報とドライババージョンが表示されれば成功である。
nvidia-smi
4.2 CUDA Toolkit / cuDNNのインストール
ここでは、runfile/tarballによる手順例を参考として示す。バージョンは環境や要件に合わせて読み替えること(例: CUDA 12.x系)。この方法は複雑なため、Dockerやライブラリ推奨手順の検討を強く推奨する。
参考: runfile/tarballによるCUDA/cuDNNインストール手順例(複雑)
注意: 実行前に必ずNVIDIA公式サイトで最新情報と互換性を確認すること。既存ドライバを上書きしないよう注意が必要である。
- CUDA Toolkit(runfile):
- NVIDIA CUDA Toolkit Archiveから、OS: Linux、Arch: x86_64、Dist: Ubuntu、Ver: 24.04(または互換バージョン)、Installer: runfile(local)を選択し、適切なバージョンの`.run`ファイルをダウンロードする。
- ダウンロードしたファイルに実行権限を付与し、実行する。対話モードで、Driverのインストールは「No」を選択し、Toolkitのみをインストールする。
- 環境変数を設定する(`~/.bashrc`などに追記)。パスは実際のインストール先に合わせる。
- シェルを再起動するか`source ~/.bashrc`を実行し、`nvcc --version`で確認する。
cd /path/to/downloaded/file/ chmod +x cuda_*.run sudo ./cuda_*.run
export CUDA_HOME=/usr/local/cuda-12.4 export PATH=${CUDA_HOME}/bin:${PATH} export LD_LIBRARY_PATH=${CUDA_HOME}/lib64:${LD_LIBRARY_PATH} - cuDNN(tarball):
- NVIDIA cuDNN Download(要NVIDIA Developer Program登録)から、インストールしたCUDA Toolkitバージョンに対応するcuDNN Library for Linux(x86_64 Tar)をダウンロードする。
- ダウンロードしたtarファイルを展開する。
- 展開されたディレクトリ(`include`、`lib`)内のファイルを、CUDA Toolkitのインストールディレクトリにコピーする。
- cuDNN Installation Guideに記載の方法でインストールを確認する。
tar -xf cudnn-*.tgz
cd cudnn-linux-x86_64-*/ sudo cp include/cudnn*.h ${CUDA_HOME}/include/ sudo cp lib/libcudnn* ${CUDA_HOME}/lib64/ sudo chmod a+r ${CUDA_HOME}/include/cudnn*.h ${CUDA_HOME}/lib64/libcudnn*
5. Git、cmake、curl、wget、p7zip-fullのインストール
バージョン管理システムGit、ビルドシステムCMake、ファイル転送ツールcurl/wget、圧縮解凍ツールp7zipなど、開発や日常作業で頻繁に利用する基本ツールをインストールする。
sudo apt update
sudo apt install -y git cmake curl wget p7zip-full
6. システムPython環境と基本パッケージ
Ubuntu 24.04には標準でPython 3.12がインストールされている。このセクションでは、システム環境に必要な基本ツールをインストールする方法を示すが、開発プロジェクトには次章で説明する仮想環境の使用を強く推奨する。システム環境への`pip install`は依存関係の問題を引き起こすリスクがある。
6.1 Python3開発用ファイル、pip、setuptools、venv
Pythonパッケージのビルドや仮想環境(`venv`)の作成に必要な基本ツールをインストールする。
sudo apt update
sudo apt install -y python3-dev python3-pip python3-setuptools python3-venv build-essential
6.2 Python開発環境(Jupyter、Spyder等)(システム環境、非推奨)
aptでインストール可能なIDEやツールの例である。最新版が必要な場合やプロジェクトごとの管理のためには、仮想環境内への`pip install`が推奨される。
sudo apt update
sudo apt install -y jupyter-notebook jupyter-qtconsole python3-ipykernel
sudo apt install -y spyder
6.3 主要Pythonパッケージ(システム環境、非推奨)
開発には仮想環境(次章参照)を利用すること。システムにインストールする場合、バージョン競合のリスクがある。
aptでインストール可能な基本パッケージの例:
sudo apt update
sudo apt install -y python3-numpy python3-scipy python3-pandas python3-matplotlib python3-sklearn python3-pil python3-h5py python3-opencv python3-requests python3-bs4 python3-lxml python3-yaml
TensorFlow、PyTorch、Jaxなどの機械学習ライブラリや、特定のバージョンが必要なパッケージは、必ず仮想環境内にインストールすること。
7. 隔離されたPython環境の構築と利用(推奨)
システムのPython環境とは別に、プロジェクトごとに独立したPython環境を構築することで、依存関係の衝突を防ぎ、環境の再現性を高めることができる。ここでは、pyenvを用いて複数のPythonバージョンを管理し、venvを用いてプロジェクト固有の仮想環境を作成する手順を推奨する。
- Pythonバージョン管理: pyenv
- 仮想環境作成: venv(Python標準)
- 例: Python 3.12を使用し、`~/venvs/myproject_env`に仮想環境を作成
7.1 pyenvのインストールと設定
pyenvは複数のPythonインタプリタを簡単に切り替えて利用できるようにするツールである。
- 依存関係のインストール
sudo apt update sudo apt install -y --no-install-recommends make build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget curl llvm libncurses-dev xz-utils tk-dev libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev git
- pyenvのインストール(公式インストーラ推奨) pyenv-installerを利用する。
curl https://pyenv.run | bash
- シェル設定 インストーラの指示に従い、`~/.bashrc`や`~/.zshrc`等に環境変数を設定する行を追加する。
# ~/.bashrc に追記 export PYENV_ROOT="$HOME/.pyenv" command -v pyenv >/dev/null || export PATH="$PYENV_ROOT/bin:$PATH" eval "$(pyenv init -)"
- シェル再起動 設定を反映させるためにシェルを再起動するか、`exec "$SHELL"`を実行する。
7.2 特定のPythonバージョンをインストール(pyenv)
プロジェクトで使用したいPythonのバージョンをpyenvでインストールする。
- インストール可能なバージョンのリスト表示
pyenv install --list
- 目的のバージョンのインストール(例: 3.12) ビルドに時間がかかることがある。
pyenv install 3.12
- インストール済みバージョンの確認
pyenv versions
7.3 プロジェクト用仮想環境の作成と有効化(venv)
インストールしたPythonバージョンを用いて、プロジェクト専用の仮想環境を作成する。
- 使用するPythonバージョンを選択(シェル単位、またはディレクトリ単位で指定)
pyenv shell 3.12
- venvで仮想環境を作成(例: `~/venvs/myproject_env`)
mkdir -p ~/venvs python -m venv ~/venvs/myproject_env
- 仮想環境の有効化(Activate) プロジェクト作業開始時に実行する。
source ~/venvs/myproject_env/bin/activate
- 仮想環境内のpip等を更新
pip install --upgrade pip setuptools wheel
- 仮想環境の無効化(Deactivate) 作業終了時に実行する。
deactivate
7.4 仮想環境内へのパッケージインストールと利用
必ず仮想環境を有効化(`source ~/venvs/myproject_env/bin/activate`)した状態で`pip install`を実行すること。これにより、パッケージはシステム全体ではなく、現在の仮想環境内にのみインストールされる。
- 開発環境(JupyterLab、Spyder等)のインストール
pip install jupyterlab spyder ipykernel python -m ipykernel install --user --name=myproject_env --display-name="Python (myproject_env)"
- 基本データサイエンス・数値計算パッケージ
pip install numpy pandas matplotlib scikit-learn Pillow h5py seaborn plotly requests beautifulsoup4 lxml openpyxl
- TensorFlow(GPU版例)
前提: NVIDIAドライバ、CUDA、cuDNNがシステムに正しくインストールされ、TensorFlowと互換性があること。TensorFlow 2.16以降は、CUDA 12.3とcuDNN 8.9以降が必要である。
pip install tensorflow[and-cuda] python -c "import tensorflow as tf; print(tf.config.list_physical_devices('GPU'))" - PyTorch(GPU版例)
PyTorch公式サイト(Get Started)で、OS:Linux、Package:Pip、Language:Python、Compute Platform:CUDA X.Yを選択し、表示されるコマンドを実行する。PyTorchは、CUDA 12.1および12.4に対応している。
pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121 python -c "import torch; print(f'PyTorch version: {torch.__version__}'); print(f'CUDA available: {torch.cuda.is_available()}'); print(f'CUDA version: {torch.version.cuda}')" - OpenCV
pip install opencv-python python -c "import cv2; print(cv2.__version__)"
- 地理情報系パッケージ例
システムにGDAL等のライブラリ(`sudo apt install libgdal-dev gdal-bin`)が必要となる場合がある。
pip install GDAL Fiona geopandas shapely pyproj rtree folium
8. 数値演算ライブラリ(OpenBLAS、LAPACK、Intel MKL)
NumPyやSciPyなどのPythonライブラリは、内部でBLAS(Basic Linear Algebra Subprograms)やLAPACK(Linear Algebra PACKage)といった低レベルの数値計算ライブラリを利用して、行列演算などを高速に実行する。
8.1 OpenBLAS、LAPACK
高パフォーマンスなオープンソースのBLAS/LAPACK実装である。多くのLinuxディストリビューションで標準的に利用されている。
sudo apt update
sudo apt install -y libopenblas-dev liblapack-dev
8.2 Intel MKL(Math Kernel Library)
Intelが提供する、Intel CPU向けに最適化された高性能な数値演算ライブラリ群である。対応するPythonパッケージ(NumPy、SciPy、scikit-learnなど)と組み合わせることで、パフォーマンス向上が期待できる場合がある。
注意: MKLの利用には、Intel oneAPI Base Toolkitのインストールが必要である。最新のインストール手順はIntel公式サイトで確認すること。外部リポジトリ追加はセキュリティリスクを伴う。
公式サイトの手順に従ってリポジトリを追加・設定した後、必要なコンポーネントをインストールする。
sudo apt update
sudo apt install -y intel-oneapi-mkl-devel
9. ディープラーニング応用ライブラリ(dlib、OpenPose等)
これらのライブラリの多くはインストールが複雑で、特定の依存関係(C++ライブラリ、CUDAバージョン等)を持つ。必ず各ライブラリの公式ドキュメントを参照し、可能であればDockerを利用するか、隔離された仮想環境にインストールすること。
9.1 dlib(C++機械学習ライブラリ + Python binding)
顔検出、顔ランドマーク推定、顔認識、オブジェクトトラッキングなど、多岐にわたる機能を提供する。
推奨インストール方法(Python仮想環境内):
source ~/venvs/myproject_env/bin/activate
sudo apt update
sudo apt install -y build-essential cmake libopenblas-dev liblapack-dev libjpeg-dev libpng-dev
pip install dlib
pip install face_recognition
9.2 OpenPose(リアルタイム姿勢推定ライブラリ)
人体の骨格、顔、手のキーポイントをリアルタイムで検出できるライブラリである。
注意: OpenPoseのソースからのビルドは、依存関係が非常に多く(Caffe、OpenCV、CUDA/cuDNN等)、ビルド時間も長く、環境設定が極めて複雑である。Ubuntu 24.04での動作保証はされていない。公式ドキュメント(GitHub)を熟読し、Dockerイメージの利用や、より導入が容易な代替ライブラリ(MediaPipe Pose、MMPoseなど)の利用を強く推奨する。
10. エディタとIDE
プログラミングや設定ファイルの編集に使用するエディタや統合開発環境(IDE)のインストール例である。
10.1 Geany(軽量IDE)
sudo apt update; sudo apt install -y geany geany-plugins
10.2 Sublime Text(高機能エディタ)
公式APTリポジトリ手順に従ってインストールする。外部リポジトリ追加はセキュリティリスクを伴う。
wget -qO - https://download.sublimetext.com/sublimehq-pub.gpg | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/sublimehq-archive.gpg > /dev/null
echo "deb https://download.sublimetext.com/ apt/stable/" | sudo tee /etc/apt/sources.list.d/sublime-text.list
sudo apt update
sudo apt install -y sublime-text
10.3 Visual Studio Code(高機能エディタ/IDE)
豊富な拡張機能で様々な言語開発に対応する。
公式サイトから.debパッケージをダウンロードしてインストールする。
sudo apt install ./code_*.deb
拡張機能はエディタ内からインストールする(例: Python、C/C++、Java Extension Pack、Remote - SSH、Docker、GitLens)。
10.4 emacs(高機能エディタ)
sudo apt update; sudo apt install -y emacs
設定は`~/.emacs.d/init.el`または`~/.emacs`に記述する。
11. Webブラウザ、リモートファイル転送、リモート接続
11.1 Firefox
Ubuntu標準のWebブラウザである(通常プリインストール済)。
sudo apt update; sudo apt install -y firefox firefox-locale-ja
11.2 Chromium
Google Chromeの基盤となっているオープンソースのWebブラウザ。
sudo apt update; sudo apt install -y chromium-browser chromium-browser-l10n
11.3 FileZilla(FTP/SFTPクライアント)
サーバーとのファイル転送に利用する。
sudo apt update; sudo apt install -y filezilla
11.4 Remmina(リモートデスクトップクライアント)
RDP、VNC、SSHなど多くのプロトコルに対応するリモート接続クライアント(通常プリインストール済)。
sudo apt update; sudo apt install -y remmina remmina-plugin-rdp remmina-plugin-vnc
11.5 xrdp(RDPサーバー)
WindowsのリモートデスクトップクライアントからUbuntuに接続する場合にインストールする。
sudo apt update; sudo apt install -y xrdp
sudo adduser xrdp ssl-cert
sudo ufw allow 3389/tcp
sudo ufw status
sudo systemctl restart xrdp
12. 各種ツール類(作図、ファイル検索など)
日々の作業や開発に役立つユーティリティツールである。
12.1 mlocate(ファイル検索CLI)
高速なファイル名検索コマンド`locate`を提供する。
sudo apt update; sudo apt install -y mlocate; sudo updatedb
12.2 catfish(ファイル検索GUI)
findやlocateを利用するGUIのファイル検索ツール。
sudo apt update; sudo apt install -y catfish
12.3 jq、jsonlint(JSON処理)
jqはコマンドラインJSONプロセッサ、jsonlintはJSON構文チェッカー。
sudo apt update; sudo apt install -y jq jsonlint
12.4 Pinta(画像編集)
シンプルなビットマップ画像エディタ。
sudo apt update; sudo apt install -y pinta
12.5 Flameshot(スクリーンショット)
注釈機能などが豊富なスクリーンショットツール。
sudo apt update; sudo apt install -y flameshot
12.6 GraphViz(グラフ描画)
DOT言語からグラフ画像を生成。
sudo apt update; sudo apt install -y graphviz
12.7 diagrams.net Desktop(作図)
フローチャート、UML、ネットワーク図など多様な図を作成できるツール。
公式サイトから最新の.debパッケージをダウンロードしてインストール。
sudo apt install ./drawio-*.deb
12.8 inotify-tools(ファイル監視)
ファイルシステムのイベント(変更、アクセス等)を監視するツール。
sudo apt update; sudo apt install -y inotify-tools
12.9 hardinfo(システム情報GUI)
ハードウェアやOSの詳細情報をGUIで表示。
sudo apt update; sudo apt install -y hardinfo
12.10 ネットワークユーティリティ
`net-tools`は古いコマンド(`ifconfig`等)を含む。`iproute2`(`ip`コマンド、通常標準装備)が推奨される。`netcat`はネットワーク接続のテスト等に利用する。
sudo apt update; sudo apt install -y net-tools netcat-openbsd
13. PostgreSQL 16(データベース)
Ubuntu 24.04 LTSの標準リポジトリに含まれるリレーショナルデータベース管理システムPostgreSQL 16をインストールする。
13.1 インストールと初期設定
- PostgreSQL 16と関連パッケージのインストール
sudo apt update # PostgreSQLサーバー、クライアント、共通ファイル、拡張集 sudo apt install -y postgresql-16 postgresql-client-16 postgresql-contrib-16 # C言語等での開発用ヘッダファイル sudo apt install -y postgresql-server-dev-16 libpq-dev # PostGIS (地理空間情報拡張) sudo apt install -y postgis postgresql-16-postgis-3 # PL/Python3 (データベース内でPythonを使う拡張) sudo apt install -y postgresql-plpython3-16 # Python用ドライバ (psycopg2 - apt版) sudo apt install -y python3-psycopg2 # Java JDBCドライバ (apt版) sudo apt install -y default-jdk libpostgresql-jdbc-java
- サービスの確認 インストール後、通常は自動起動・有効化される。
sudo systemctl status postgresql@16-main.service # 必要に応じて: sudo systemctl start/stop/restart/enable/disable postgresql@16-main.service
- psqlでの接続確認
postgresOSユーザーとしてpostgresDBユーザーで接続する(peer認証)。sudo -u postgres psql # psql> \conninfo -- 接続情報を表示 # psql> \l -- データベース一覧を表示 # psql> \q -- psqlを終了
- バージョンの確認
psql --version
13.2 パフォーマンスチューニング例(postgresql.conf)
設定ファイル(/etc/postgresql/16/main/postgresql.conf)を編集することでパフォーマンスを改善できる。変更後はPostgreSQLの再起動(sudo systemctl restart postgresql@16-main)が必要である。設定値はシステムのリソース(特にメモリ量)に合わせて調整する必要がある。
一般的な設定例:
# メモリ関連(環境に合わせて調整)
shared_buffers = 1GB # 推奨: 物理メモリの1/4程度
effective_cache_size = 4GB # 推奨: 物理メモリの1/2~3/4程度(OSキャッシュ含む)
maintenance_work_mem = 256MB # VACUUM、CREATE INDEX等で使用。一時的に増やしても良い
work_mem = 64MB # ソートやハッシュで使用。クエリ毎。複雑なクエリが多いなら増やす
# チェックポイント関連(書き込み負荷に応じて調整)
# max_wal_size = 1GB # WALサイズ上限(デフォルトで良い場合が多い)
# min_wal_size = 80MB # WALサイズ下限
# その他
# default_statistics_target = 100 # 統計情報の精度。複雑なクエリが多いなら増やす
# random_page_cost = 1.1 # SSD/NVMeの場合、4.0(HDD)から下げることを検討
# effective_io_concurrency = 200 # 高速なストレージ(NVMe等)で有効な場合あり(0は無効)
警告: データ損失リスクを伴う設定(fsync = off、wal_level = minimal など)は、テスト環境以外では使用してはならない。
13.3 psqlの基本的な使い方
psqlは強力なコマンドラインインターフェースである。
- 接続:
psql -U <user> -d <database> -h <host> -p <port> - ヘルプ:
\?(psqlコマンド)、\h <SQLコマンド>(SQLコマンド) - 接続情報:
\conninfo - DB一覧:
\l - テーブル一覧:
\dt - テーブル定義:
\d <table> - 実行時間計測:
\timing - 外部ファイル実行:
\i <filename.sql> - 終了:
\q
(詳細は 別ページ » で説明)
13.4 簡単なSQL実行例
sudo -u postgres psql
CREATE TABLE users (id serial PRIMARY KEY, username text UNIQUE NOT NULL, created_at timestamptz DEFAULT now());
INSERT INTO users (username) VALUES ('alice'), ('bob');
SELECT * FROM users;
DROP TABLE users;
\q
13.5 PL/Python拡張の有効化
データベース関数をPythonで記述できるようにする。
sudo -u postgres psql
CREATE EXTENSION plpython3u;
-- 確認(plpython3uが表示されればOK)
SELECT lanname FROM pg_language WHERE lanispl = true;
\q
14. データベース管理ツール
GUIでデータベースを操作・管理するためのツールである。
14.1 DBeaver Community Edition(汎用DBクライアント)
多くのデータベースに対応する人気のクライアントである。
公式サイトから最新の.debパッケージをダウンロードしてインストールする。
sudo apt install ./dbeaver-ce_*.deb
14.2 pgAdmin 4(PostgreSQL専用クライアント)
PostgreSQL公式の管理ツールである。Webベースのインターフェースも提供する。
公式サイトのAPTリポジトリ設定手順に従ってインストールする。外部リポジトリ追加はセキュリティリスクを伴う。
# 公式サイトの手順に従ってリポジトリとキーを追加後...
sudo apt update
sudo apt install pgadmin4 # または pgadmin4-desktop / pgadmin4-web
14.3 SQL Workbench/J(汎用DBクライアント)
Javaベースのクライアントである。
公式サイトから最新版のzipファイルをダウンロードし、任意の場所に展開して sqlworkbench.sh を実行する。
14.4 SQLite 3(コマンドライン)
SQLiteデータベースファイルを操作する基本コマンドである。
sudo apt update; sudo apt install -y sqlite3
14.5 SQLiteStudio(SQLite用GUI)
SQLiteデータベース用のGUI管理ツールである。
公式サイトから最新版のtar.xzアーカイブをダウンロードし、任意の場所に展開して sqlitestudio を実行する。
15. メディア関連ツール(GIS、動画編集、3DCG、点群処理など)
各種メディア処理やコンテンツ作成に役立つツール群である。
15.1 地理情報システム(GIS)関連
- QGIS 高機能なデスクトップGIS。
sudo apt install qgis qgis-plugin-grass - GRASS GIS オープンソースの老舗GIS。
sudo apt install grass - GDAL/OGR 地理空間データ変換ライブラリ/ツール。
sudo apt install gdal-bin python3-gdal libgdal-dev - PostGIS PostgreSQLの地理空間拡張(セクション13.1参照)。
15.2 Google Earth Pro(地球儀ビューア)
公式サイトから.debをダウンロードしてインストールする。
sudo apt install ./google-earth-pro-stable_current_amd64.deb
15.3 MeCab(日本語形態素解析)
sudo apt update; sudo apt install -y mecab libmecab-dev mecab-ipadic-utf8 python3-mecab
15.4 ImageMagick(画像処理コマンドライン)
画像の変換、リサイズ、合成などをコマンドラインで行える。
sudo apt update; sudo apt install -y imagemagick
15.5 VLC(メディアプレイヤー)
多くのフォーマットに対応する万能メディアプレイヤーである。
sudo apt update; sudo apt install -y vlc
15.6 OpenShot(動画編集)
ノンリニア動画編集ソフトウェアである。apt版は古い可能性があるため、公式サイトのAppImage等も検討する。
sudo apt update; sudo apt install -y openshot-qt
15.7 Kdenlive(動画編集)
高機能なノンリニア動画編集ソフトウェアである。FlatpakやAppImageでの利用も推奨される。
sudo apt update; sudo apt install -y kdenlive
15.8 Blender(3DCG制作)
モデリング、レンダリング、アニメーション、VFX等の統合環境である。公式サイトから最新版をダウンロードして利用することを推奨する(tar.xzを展開して実行)。
# apt版(バージョンが古い可能性が高い)
# sudo apt update; sudo apt install -y blender
15.9 MakeHuman(人体モデリング)
人体モデルを作成するツールである。公式サイトで最新版を確認する。
15.10 MeshLab(3Dメッシュ処理)
3Dスキャンデータやポリゴンメッシュの編集・処理・可視化を行うツールである。公式サイトからSnap、Flatpak、AppImage等でのインストールを推奨する。
# apt版(古い可能性あり)
# sudo apt update; sudo apt install -y meshlab
15.11 CloudCompare(3D点群/メッシュ処理)
大規模な点群データの処理・比較・可視化を行うツールである。公式サイトからSnapやFlatpak等でのインストールを推奨する。
15.12 PCL(Point Cloud Library)
3D点群処理のためのC++ライブラリである。
sudo apt update; sudo apt install -y libpcl-dev
参考(非推奨): ソースからのPCLビルド手順例
複雑で時間がかかる。
# 依存関係インストール(例: sudo apt install build-essential cmake libboost-all-dev ...)
# git clone https://github.com/PointCloudLibrary/pcl.git; cd pcl
# mkdir build && cd build; cmake ..; make -j$(nproc)
# sudo make install # 非推奨
15.13 OpenCV(コンピュータビジョンライブラリ)
画像処理・コンピュータビジョンのための定番ライブラリである。
aptでインストールするか、Python仮想環境内で pip install opencv-python を推奨する。
sudo apt update; sudo apt install -y libopencv-dev python3-opencv
# または仮想環境内で: pip install opencv-python
参考(非推奨): ソースからのOpenCVビルド手順例
複雑で時間がかかる。CUDA連携等はさらに複雑化する。
# 1. 依存関係インストール(例: sudo apt install build-essential cmake git pkg-config libgtk-3-dev ...)
# 2. OpenCV + Contrib ソース取得(git clone)
# 3. ビルドディレクトリ作成(mkdir build; cd build)
# 4. CMake実行(cmake .. -Dオプション多数...)
# 5. ビルド(make -j$(nproc))
# 6. インストール(sudo make install 非推奨)
16. Unreal Engine(ゲームエンジン)
注意: Unreal Engine 5が主流である。利用にはEpic GamesアカウントとGitHubアカウントの連携、ライセンス同意が必要である。ビルドには高性能PC、長時間のビルド時間、数十GB以上のディスク空き容量が必須である。
公式ドキュメント(ソースコードのダウンロード、ソースからのビルド)に従い、GitHubからソースコードをクローンし、Setup.sh、GenerateProjectFiles.sh、make を実行してビルドする。
17. Java、Java開発環境
Java言語での開発に必要なJDK(Java Development Kit)と、IDEの例である。
17.1 OpenJDK
オープンソースのJava実装である。Ubuntu 24.04 LTSではOpenJDK 21などが利用可能である。
sudo apt update
# LTS版であるOpenJDK 21 JDKをインストールする場合
sudo apt install -y openjdk-21-jdk
# または、ディストリビューションが推奨するデフォルトJDK
# sudo apt install -y default-jdk
# バージョン確認
java -version
javac -version
JAVA_HOME 環境変数の設定は、多くのツールで自動検出されるため必須ではないが、必要に応じて設定する(例: /usr/lib/jvm/java-21-openjdk-amd64)。
17.2 Eclipse IDE for Java Developers
Java開発で広く使われる統合開発環境(IDE)である。
apt版(sudo apt install eclipse)は古い可能性があるため、公式サイトから「Eclipse Installer」または「Eclipse IDE for Java Developers」パッケージをダウンロードして利用することを推奨する。
17.3 IntelliJ IDEA Community Edition
JetBrains社が提供する人気のJava IDEである。無償のCommunity Editionがある。
公式サイトからダウンロードするか、Snap(sudo snap install intellij-idea-community --classic)でインストールできる。
17.4 GreenFoot、BlueJ(教育用Java環境)
教育向けのシンプルなJava開発環境である。
それぞれGreenFoot公式サイト、BlueJ公式サイトから最新版をダウンロードしてインストールする。
18. RシステムとRStudio(統計解析環境)
統計解析とデータ可視化のための言語Rと、その統合開発環境RStudioのインストール手順である。
18.1 Rシステム本体のインストール(CRANリポジトリ推奨)
CRAN(The Comprehensive R Archive Network)のUbuntuリポジトリを利用することで、最新版に近いRをインストールできる。外部リポジトリ追加はセキュリティリスクを伴う。
# 依存パッケージのインストール
sudo apt update
sudo apt install -y --no-install-recommends software-properties-common dirmngr
# CRAN GPGキーの追加(キーは公式サイトで確認が必要な場合がある)
wget -qO- https://cloud.r-project.org/bin/linux/ubuntu/marutter_pubkey.asc | sudo tee -a /etc/apt/trusted.gpg.d/cran_ubuntu_key.asc
# CRANリポジトリの追加(noble = Ubuntu 24.04)
sudo add-apt-repository "deb https://cloud.r-project.org/bin/linux/ubuntu noble-cran40/"
# パッケージリストの更新とR本体のインストール
sudo apt update
sudo apt install -y --no-install-recommends r-base r-base-dev
# バージョン確認
R --version
追加のパッケージのインストール
sudo apt -y install r-recommended
sudo apt -y install r-mathlib
sudo apt -y install r-cran-boot
sudo apt -y install r-cran-class
sudo apt -y install r-cran-cluster
sudo apt -y install r-cran-codetools
sudo apt -y install r-cran-foreign
sudo apt -y install r-cran-hmisc
sudo apt -y install r-cran-kernsmooth
sudo apt -y install r-cran-lattice
sudo apt -y install r-cran-mass
sudo apt -y install r-cran-matrix
sudo apt -y install r-cran-mgcv
sudo apt -y install r-cran-nlme
sudo apt -y install r-cran-nnet
sudo apt -y install r-cran-rcmdr
sudo apt -y install r-cran-rpart
sudo apt -y install r-cran-spatial
sudo apt -y install r-cran-survival
sudo apt -y install r-cran-vr
sudo apt -y install r-cran-rodbc
sudo apt -y install littler
sudo apt -y install libjpeg62
ls /usr/lib/R/
18.2 RStudio Desktopのインストール
Rのための高機能なIDEである。無償版のRStudio Desktopをインストールする。
公式サイトからUbuntu 22+/Debian 11+ 向けの最新の .deb パッケージをダウンロードする。
sudo apt install ./rstudio-*-amd64.deb # ダウンロードしたファイル名を指定
18.3 Rパッケージのインストール
Rのパッケージは、Rコンソールを通常ユーザーで起動し(sudo なし)、install.packages() 関数を使用して個人のライブラリにインストールすることを推奨する。これにより、システム環境を汚さず、権限の問題も避けられる。
Bioconductorのパッケージは BiocManager を使用する。
一般的なパッケージのインストール例(Rコンソール内で実行):
# Rを起動(ターミナルで R と入力)
# よく使われるデータ操作・可視化パッケージ(tidyverseメタパッケージも便利)
install.packages(c("dplyr", "tidyr", "ggplot2", "data.table", "lubridate", "stringr", "readr", "readxl"))
# モデリング・機械学習関連の例
install.packages(c("caret", "randomForest", "glmnet", "xgboost", "lme4", "forecast", "survival"))
# レポーティング・インタラクティブ関連
install.packages(c("rmarkdown", "knitr", "shiny", "plotly", "DT"))
# Bioconductor パッケージのインストール例
if (!requireNamespace("BiocManager", quietly = TRUE)) install.packages("BiocManager")
# BiocManager::install(c("GenomicRanges", "SummarizedExperiment")) # 例
# CRAN Task Views(関連パッケージ一覧)の利用例
# install.packages("ctv")
# library(ctv)
# available.views() # 利用可能なビュー一覧
# install.views("MachineLearning") # 機械学習関連パッケージを一括インストール(時間と容量注意)
# インストール済みパッケージの確認
# installed.packages()
# library() # ロード可能なパッケージ一覧
# Rコンソールの終了
# quit() # 保存するか聞かれるので n(no)を選択することが多い
参考: 以前の大量パッケージインストールコマンド(非推奨)
以下のコマンドは古い形式であり、システムへの直接インストールを試みるため非推奨である。必要なパッケージは上記のように個別にインストールする。
# echo 'options(repos="http://cran.rstudio.com"); update.packages(checkBuilt=TRUE, ask=FALSE)' | sudo R --vanilla
# echo 'source("http://bioconductor.org/biocLite.R")' > /tmp/a.$$.r # 古いBiocLite
# echo 'biocLite("EBImage") ' >> /tmp/a.$$.r
# cat /tmp/a.$$.r | sudo R --vanilla
# echo 'install.packages("dplyr", ...)' | sudo R --vanilla
# ... (多数のパッケージ) ...
# for i in Cluster Graphics ...; do ... install.views ... done | sudo R --vanilla
# ... (さらに多数のパッケージ) ...
19. オプション: ゲーム環境
Ubuntuでゲームを楽しむためのいくつかの方法と、aptでインストール可能なゲームの例である。
- Steam 公式サイトからインストーラをダウンロード・インストールする。Linuxネイティブゲームに加え、Proton互換レイヤーにより多くのWindowsゲームが動作する。
- Lutris 公式サイトからインストールする。様々なゲームプラットフォーム(Steam、GOG、Humble Bundleなど)やエミュレータを統合管理できる。
- Heroic Games Launcher Epic Games StoreやGOGのゲームを管理・起動できるランチャーである。
- Ubuntu Software / Snap Store いくつかのゲームが提供されている。
- aptパッケージ いくつかのオープンソースゲームがaptでインストール可能である。
aptでのインストール例:
sudo apt update
sudo apt install -y 0ad flightgear frozen-bubble supertuxkart wesnoth gnome-chess gnome-mahjongg aisleriot extremetuxracer warzone2100 hedgewars openttd scorched3d pingus
参考: aptでインストール可能なゲームパッケージ例(一部、古い可能性あり)
以下のリストは過去のバージョンのものであり、Ubuntu 24.04で利用可能か、または最新版かは保証されない。必要に応じてパッケージ名を確認する。
# sudo apt -yV install wesnoth-1.10-dw # 古いバージョン指定例
# sudo apt -yV install wesnoth libmikmod2 libsdl-mixer1.2 libsdl-net1.2 libsmpeg0
# sudo apt -yV install wesnoth-1.10 wesnoth-1.10-aoi wesnoth-1.10-core wesnoth-1.10-data wesnoth-1.10-did wesnoth-1.10-dm wesnoth-1.10-ei wesnoth-1.10-httt wesnoth-1.10-l wesnoth-1.10-low wesnoth-1.10-music wesnoth-1.10-nr wesnoth-1.10-sof wesnoth-1.10-sotbe wesnoth-1.10-thot wesnoth-1.10-trow wesnoth-1.10-tsg wesnoth-1.10-ttb wesnoth-1.10-utbs
# sudo apt -yV install wesnoth-1.10-data wesnoth-1.0-music
# sudo apt -yV install libphysfs1 trigger trigger-rally trigger-rally-data
# sudo apt -yV install libsdl-net1.2 scorched3d scorched3d-data
# sudo apt -yV install hedgewars hedgewars-data libmikmod2 libsdl-mixer1.2 libsdl-net1.2 libsmpeg0
# sudo apt -yV install openttd openttd-data openttd-opengfx openttd-openmsx timidity timidity-daemon
# sudo apt -yV install openttd-opensfx
# sudo apt -yV install libglee0d1 libphysfs1 warzone2100 warzone2100-data warzone2100-music
# sudo apt -yV install nexuiz nexuiz-data nexuiz-music nexuiz-textures
# sudo apt -yV install libode1 darkplaces
# sudo apt -yV install frogatto frogatto-data libmikmod2 libsdl-mixer1.2 libsmpeg0
# sudo apt -yV install fb-music-high frozen-bubble frozen-bubble-data libmikmod2 libsdl-gfx1.2-4 libsdl-mixer1.2 libsdl-net1.2 libsdl-pango1 libsdl-perl libsmpeg0
# sudo apt -yV install gnome-games gnome-games-common gnome-games-extra-data
# sudo apt -yV install gnotski gnobots2 swell-foop gnotravex glchess lightsoff gnect torcs torcs-data torcs-data-tracks pingus bouncy circuslinux defendguin fretsonfire
# sudo apt -yV install supertuxkart-data supertuxkart tuxpuck tuxtype tuxtype-data cowsay
# sudo apt -yV install extremetuxracer extremetuxracer-data extremetuxracer-extras
# sudo apt -yV install magicor magicor-data qimo-games supertux supertux-data smc smc-data smc-music
# sudo mkdir /usr/share/games/smc/campaign # 古い設定の可能性
# sudo apt -yV install libphysfs1 tuxonice-userui tuxmath tuxpaint tuxpaint-data tuxpaint-stamps-default tuxpaint-plugins-default tuxguitar
# sudo apt -yV install redeclipse redeclipse-data
# sudo apt -yV install kturtle parley kwordquiz quadrapassel gbrainy adonthell adonthell-data laby gnome-chess khangman blinken gnomine atomix atomix-data sudoku gnome-sudoku kanagram
# sudo apt -yV install ri-li ri-li-data gamine gamine-data aisleriot fretsonfire-game fretsonfire-songs-sectoid fretsonfire-songs-muldjord iagno gnibbles ktuberling gtali glines ghotski childsplay gnome-mahjongg numptyphysics
# sudo apt -yV install blikken desktop-profiles freemind freemind-doc geogebra javahelp2 kbruch mathpiper melting simplyhtml gcompris gcompris-data gcompris-sound-en yorick yorick-data yorick-z celestia-gnome stellarium stellarium-data celestia-common libmarblewidget11