Ubuntu 24.04 初期設定詳細ガイド

【概要】本ガイドは、Ubuntu 24.04 LTS をインストールした後に行う環境構築手順を解説する。セキュリティの向上、日本語環境の最適化、運用効率の改善を目的とした 18 の設定項目を、コマンドライン操作を中心に示す。

【対象バージョン】記述は Ubuntu 24.04 LTS を基準とする。22.04 LTS および 26.04 LTS でも大部分がそのまま通用するが、リポジトリ設定ファイルの形式(22.04 は /etc/apt/sources.list、24.04 以降は ubuntu.sources)と SSH の起動方式(24.04 以降は socket-based activation)が異なる。該当する項目で個別に注記する。

Ubuntu 24.04 のデスクトップ画面

目次

  1. 用語解説
  2. 基本概念と準備
    1. 管理者権限(sudo)の基礎知識
    2. ダウンロード元(ミラーサーバー)の設定
    3. apt パッケージ管理の準備
  3. システム更新と時刻設定
    1. システムの更新
    2. タイムゾーンとロケールの設定
    3. NTP 時刻同期の設定
  4. セキュリティ設定
    1. ファイアウォール(ufw)の設定
    2. OpenSSH サーバーの設定
  5. ハードウェアとドライバ
    1. グラフィックドライバの設定(NVIDIA)
  6. 日本語環境の構築
    1. 日本語フォントと言語サポートの導入
    2. 日本語入力の設定(IBus + Mozc)
    3. ユーザディレクトリの英語化
  7. システム管理とカスタマイズ
    1. 運用保守用ツールの導入
    2. システムログの確認方法
    3. 電源管理の設定
    4. キーボード設定(Caps Lock の変更)
  8. クリーンアップ
    1. 不要ソフトウェアの削除
    2. 不要ファイルの除去

【実行順序】番号順に実行する。順序と再起動に関する要点は次のとおりである。ファイアウォール(ufw)の設定では、SSH 用ポートを許可してから ufw を有効化する。NVIDIA ドライバの導入後は再起動する。ロケールの設定、ユーザディレクトリの英語化、キーボード設定の変更は、再ログインまたは再起動で反映される。

【サイト内の Ubuntu 関連ページ】

【外部リソース】

用語解説

第1章 基本概念と準備

1. 管理者権限(sudo)の基礎知識

目的

本ガイドのコマンドの多くは管理者権限を必要とする。Ubuntu では、システム設定の変更やソフトウェア導入に sudo コマンドを使用するため、最初にその仕組みを理解しておく。

基本的な使い方

インストール時に作成したユーザーアカウントでログインし、コマンドの先頭に sudo を付けて実行する。ユーザー自身のパスワードを入力すると、そのコマンドが管理者権限で実行される。

# 例: パッケージリストを更新(管理者権限が必要)
sudo apt update

重要な点

よくある問題

2. ダウンロード元(ミラーサーバー)の設定

目的

Ubuntu のパッケージダウンロード元を、地理的に近い日本国内のミラーサーバーに変更する。これによりパッケージのダウンロード速度が改善する場合がある。

Ubuntu 24.04 でのリポジトリ設定

Ubuntu 24.04 LTS では、リポジトリ設定ファイルの形式が変更された。従来の /etc/apt/sources.list ではなく、deb822 形式/etc/apt/sources.list.d/ubuntu.sources ファイルが使用される。1 つのリポジトリ設定を複数行のキー:値ペアで記述する。22.04 LTS では従来形式の /etc/apt/sources.list が使われるため、以下のファイル名を読み替える。

設定ファイルの構造

ubuntu.sources ファイルは以下のような構造を持つ。実際のファイルには通常、メインリポジトリ用ブロックとセキュリティリポジトリ用ブロックの 2 つが含まれる。

Types: deb
URIs: http://archive.ubuntu.com/ubuntu/
Suites: noble noble-updates noble-backports
Components: main restricted universe multiverse
Signed-By: /usr/share/keyrings/ubuntu-archive-keyring.gpg

現在の設定の確認

インストール時に地域として日本を選択した場合、すでに日本のミラーが設定されていることがある。次のコマンドで現在の URL を確認する。

grep URIs /etc/apt/sources.list.d/ubuntu.sources

実行コマンド

sed コマンド(テキスト置換コマンド)で ubuntu.sources ファイル内のサーバーアドレスを日本のミラーに置換する。

# バックアップを作成
sudo cp /etc/apt/sources.list.d/ubuntu.sources /etc/apt/sources.list.d/ubuntu.sources.backup

# ミラーサーバーを日本に変更
sudo sed -i -E 's|//([a-z]{2}\.)?archive\.ubuntu\.com|//jp.archive.ubuntu.com|g' /etc/apt/sources.list.d/ubuntu.sources

# パッケージリストを更新
sudo apt update

この 1 行で archive.ubuntu.comus.archive.ubuntu.com のような国別プレフィックス付きの両方を置換でき、httphttps のいずれにも対応する。すでに jp.archive.ubuntu.com になっている場合は結果が変わらないため、何度実行してもよい。

セキュリティリポジトリ(security.ubuntu.com)は変更しないことを推奨する。ミラーへの同期には遅延が生じる場合があり、セキュリティ更新の適用が遅れる可能性があるためである。上記の置換パターンは archive.ubuntu.com のみに一致するため、セキュリティリポジトリは対象外となる。

手動で編集する場合

テキストエディタで直接編集することもできる。

sudo nano /etc/apt/sources.list.d/ubuntu.sources

URIs: 行の URL を http://jp.archive.ubuntu.com/ubuntu/ に変更し、保存後に sudo apt update を実行する。

解説と注意点

sudo apt update で、変更したサーバーから最新のパッケージリスト情報を取得する。エラーが発生した場合は、バックアップファイルから次のように復元できる。

# バックアップから復元
sudo cp /etc/apt/sources.list.d/ubuntu.sources.backup /etc/apt/sources.list.d/ubuntu.sources
sudo apt update
ミラーサーバー変更後の apt update 実行例

3. apt パッケージ管理の準備

目的

HTTPS リポジトリの利用や GPG 署名の検証に必要な基本ツールをインストールする。これにより、公式以外の HTTPS 経由のリポジトリを追加・利用する前提が整う。

※ PPA(Personal Package Archive:Ubuntu 公式以外のソフトウェア配布元)を扱う場合は、別途 software-properties-common パッケージが必要となる(sudo apt install software-properties-common)。

実行コマンド

sudo apt update
sudo apt install ca-certificates curl gnupg lsb-release

解説と注意点

apt 関連パッケージインストール例

第2章 システム更新と時刻設定

4. システムの更新

目的

インストールされている全パッケージを最新の状態に更新する。これによりセキュリティ脆弱性の修正とバグ修正が適用される。

実行コマンド(手動更新)

# 1. パッケージリストを更新
sudo apt update

# 2. パッケージを包括的に更新(依存関係の変更も考慮)
sudo apt full-upgrade

# 3. 不要になったパッケージを削除
sudo apt autoremove

# 4. 古いパッケージキャッシュを削除
sudo apt autoclean

# 5. システムを再起動(カーネル更新時に必要)
sudo shutdown -r now

各コマンドの説明

full-upgrade は依存関係の解決のために既存パッケージの削除を伴う場合がある。実行前に sudo apt -s full-upgrade(シミュレーション実行)で削除対象を確認し、必要に応じてバックアップを取得する。

更新が「ロックされています」と表示される場合

起動直後は自動更新(apt-daily 等)が動作しており、Could not get lock /var/lib/dpkg/lock-frontend と表示されることがある。ロックファイルの削除や apt プロセスの強制終了は dpkg のデータベースを破壊するため行わない。数分待つか、次のようにロックの解放を待つオプションを付けて実行する。

sudo apt -o DPkg::Lock::Timeout=600 full-upgrade

自動更新機能(unattended-upgrades)

Ubuntu には、セキュリティ更新を自動的にインストールする unattended-upgrades 機能があり、Ubuntu 24.04 LTS では既定で有効である。

対象範囲: 既定では、セキュリティリポジトリ(noble-security)からの更新のみが自動適用される。一般のバグ修正や機能更新(noble-updates)、新規パッケージの追加は対象外である。また、カーネル更新が自動適用された場合も、再起動するまでは新しいカーネルで動作しない。したがって、自動更新が有効な環境でも、定期的に sudo apt update && sudo apt full-upgrade を手動で実行し、再起動を行う。

apt update 実行例
apt full-upgrade 実行例
apt autoremove 実行例
apt autoclean 実行例

5. タイムゾーンとロケールの設定

目的

タイムゾーンを日本標準時(Asia/Tokyo)に、ロケール(地域・言語の設定)を日本語 UTF-8(ja_JP.UTF-8)に設定する。これにより時刻表示とアプリケーションの表示言語が日本語環境に合う設定になる。

実行コマンド

# ロケール生成に必要なパッケージ(デスクトップ版では導入済み)
sudo apt update
sudo apt install locales tzdata

# タイムゾーンを日本標準時に設定
sudo timedatectl set-timezone Asia/Tokyo

# 日本語ロケールを有効化(行頭の # を外す)
sudo sed -i -E 's/^#[[:space:]]*(ja_JP\.UTF-8[[:space:]]+UTF-8)/\1/' /etc/locale.gen

# ロケール定義を生成
sudo locale-gen

# システム全体のデフォルトロケールを設定(LANG のみ設定)
sudo update-locale LANG=ja_JP.UTF-8 LANGUAGE="ja:en"

設定の確認

timedatectl status
locale
locale -a | grep ja_JP

解説と注意点

コメント行を解除する sed は、# と定義の間の空白の有無に左右されないよう [[:space:]]* を用いて記述している。すでに解除済みの行には一致しないため、繰り返し実行しても副作用はない。

LANGUAGE="ja:en" は、日本語の翻訳リソースがない場合に英語をフォールバック(代替)として使用する設定である。

LC_ALL を恒久的に設定しない理由: LC_ALL は他のロケール変数を強制的に上書きする変数であり、Debian / Ubuntu の慣習では恒久設定は行わない。これを固定すると、LANG=C LC_ALL=C コマンド名 のようにコマンド単位で一時的にロケールを切り替える操作が効かなくなる。必要なときだけコマンドの前に LC_ALL=... を置く方式をとる。

端末で export LANG=ja_JP.UTF-8 を実行した場合、その端末セッションでのみ有効である。システム全体への永続的な設定は上記の update-locale で行い、再ログインまたは再起動で反映される。

timedatectl 実行例
locale-gen 実行例
update-locale 実行後の確認例

6. NTP 時刻同期の設定

目的

ネットワーク上の NTP サーバー(Network Time Protocol:時刻同期サーバー)と時刻を同期する。これによりログのタイムスタンプ、スケジュール実行、TLS 証明書の有効期限検証が正しく動作する。Ubuntu 24.04 LTS では systemd-timesyncd サービスがこの役割を担う。

実行コマンド(確認と有効化)

# 現在の時刻同期状態を確認
timedatectl status

# NTP 同期が無効な場合は有効化する(既定では有効)
sudo timedatectl set-ntp true

timedatectl status の出力に System clock synchronized: yes および NTP service: active と表示されていれば、追加設定は不要である。

国内 NTP サーバーを指定する場合

設定ファイル本体を書き換えず、ドロップインディレクトリに設定を追加する。この方式であればパッケージ更新時に設定が上書きされない。

sudo mkdir -p /etc/systemd/timesyncd.conf.d
sudo nano /etc/systemd/timesyncd.conf.d/50-jp.conf
# 以下の 3 行を記述して保存する
#
# [Time]
# NTP=ntp.nict.jp
# FallbackNTP=ntp.ubuntu.com

sudo systemctl restart systemd-timesyncd.service
timedatectl timesync-status

解説と注意点

第3章 セキュリティ設定

7. ファイアウォール(ufw)の設定

目的

Ubuntu の標準ファイアウォール管理ツール ufw(Uncomplicated Firewall)を設定する。これにより、許可していないポートへの外部からの接続を遮断する。

実行コマンド

# ufw をインストール(Ubuntu では標準でインストール済み)
sudo apt update
sudo apt install ufw

# 既定の方針を明示する(外部からは拒否、内部からは許可)
sudo ufw default deny incoming
sudo ufw default allow outgoing

# SSH 接続を許可(リモート接続を使う場合、有効化の前に必須)
sudo ufw allow ssh

# ufw を有効化
sudo ufw enable

# 現在の設定を確認
sudo ufw status numbered

オプション: 追加のポート開放

# Web サーバー(HTTP/HTTPS)を許可する場合
# sudo ufw allow http
# sudo ufw allow https

解説と注意点

8. OpenSSH サーバーの設定

目的

OpenSSH サーバーをインストールし、基本的なセキュリティ設定を行う。これによりネットワーク経由でのリモート接続が可能になる。

実行コマンド(インストール)

sudo apt update
sudo apt install openssh-server

Ubuntu 24.04 での SSH 管理方式

Ubuntu 24.04 LTS では、SSH は socket-based activation 方式(接続要求が来たときに初めてデーモンを起動する方式)で管理される。ssh.service が常時起動するのではなく、ssh.socket が接続要求を待ち受け、接続時に SSH デーモンを起動する。Canonical によれば、この方式により 1 インスタンスあたり約 3MiB のメモリが節約される。

どちらの方式で動作しているかは次のコマンドで確認する。ssh.socketenabled であれば socket 起動方式である。両方を同時に有効にすると 22 番ポートの奪い合いが起きるため、有効にするのはいずれか一方とする。

systemctl is-enabled ssh.socket ssh.service

Ubuntu 24.04 LTS では、Canonical の公式説明によれば、/etc/ssh/sshd_configPort および ListenAddress の設定が systemd ジェネレータにより動的に読み取られ、ssh.socket の待ち受けに反映される。したがって、原則として sshd_config の編集だけでポート変更が可能である。ただし、22.10 以降からのアップグレード環境では /etc/systemd/system/ssh.socket.d/addresses.conf が残っており、そちらの設定が優先される場合がある。22.04 LTS は socket 起動方式ではないため、ssh.service のみを操作する。

実行コマンド(セキュリティ強化:基本手順)

ブルートフォース攻撃(総当たり攻撃)による認証試行のログ量とリスクを減らすため、ポート番号の変更と root ログイン禁止を行う。

# 1. 設定ファイルを編集
sudo nano /etc/ssh/sshd_config

# 2. 以下を変更
#   Port 22 → Port 10022(任意の 1024 以上の番号)
#   PermitRootLogin yes → PermitRootLogin no

# 3. 保存して閉じる(nano: Ctrl+O → Enter → Ctrl+X)

# 4. 設定内容の妥当性を検査(構文誤りがあればここで判明する)
sudo sshd -t

# 5. 設定の反映(socket 起動方式の場合)
sudo systemctl daemon-reload
sudo systemctl restart ssh.socket

#    設定の反映(ssh.service で常時起動している場合)
# sudo systemctl restart ssh

# 6. 新ポートをファイアウォールで許可し、旧ポート(22)の許可を削除
sudo ufw allow 10022/tcp
sudo ufw delete allow ssh

# 7. 新ポートで待ち受けているか確認
sudo ss -tlnp | grep -E '(:22 |:10022 )'

手順 5 では、確認コマンドで enabled と表示されたユニットのみを再起動する。socket 起動方式の環境で ssh.service を起動すると、ssh.socket と同じポートを奪い合い、いずれかが起動に失敗する。

ポートが変わらない場合の対処

確認コマンドの出力が :22 のままである場合は、ssh.socket に明示的な待ち受け設定を追加する。

sudo systemctl edit ssh.socket
# エディタが開いたら以下を入力して保存:
#
# [Socket]
# ListenStream=
# ListenStream=10022
#
# 1 行目の空の ListenStream= は「既定値(22 番)をリセット」する宣言であり、
# これを書かないと新ポートと 22 番の両方で待ち受ける

sudo systemctl daemon-reload
sudo systemctl restart ssh.socket
sudo ss -tlnp | grep 10022

解説と注意点

第4章 ハードウェアとドライバ

9. グラフィックドライバの設定(NVIDIA)

目的

NVIDIA 製グラフィックカード搭載時に、プロプライエタリドライバ(製造元提供の専用ドライバ)をインストールする。デフォルトの nouveau ドライバ(オープンソース版)では機能・性能が制限される場合があり、専用ドライバの導入により NVIDIA 製グラフィックカードの性能を利用できる。

CUDA を利用する数値計算や機械学習の用途では、PyTorch 等が NVIDIA プロプライエタリドライバを前提とするため、本ステップの実施が必要である。

※ NVIDIA 製グラフィックカードを搭載していない場合、このステップは不要である。

実行コマンド

# NVIDIA 製グラフィックカードの搭載を確認(何も表示されなければ本ステップは不要)
lspci | grep -i nvidia

# ドライバ検出ツールを導入(デスクトップ版では導入済み)
sudo apt update
sudo apt install ubuntu-drivers-common

# 利用可能なドライバを確認
sudo ubuntu-drivers list

# 推奨ドライバを自動インストール
sudo ubuntu-drivers install

# システムを再起動
sudo reboot

lspcipciutils パッケージが提供する(ステップ 13 を参照)。

動作確認

nvidia-smi

ドライバのバージョンと GPU の情報が表示されれば、ドライバは正しく読み込まれている。

よくある問題

第5章 日本語環境の構築

10. 日本語フォントと言語サポートの導入

目的

日本語フォントと翻訳データ(言語サポートパッケージ)をインストールする。これにより日本語が正しく表示され、アプリケーションのメニューが日本語化される。

実行コマンド

sudo apt update
sudo apt install language-selector-common

# 不足しているパッケージを確認する(何も表示されなければ導入は不要)
check-language-support

# 表示されたパッケージを導入する
sudo apt install $(check-language-support)

解説

check-language-support コマンドは language-selector-common パッケージが提供し、ステップ 5 で設定したロケールに基づいて必要なパッケージ(日本語フォント、翻訳データ等)を検出する。$() 構文(コマンド置換:コマンドの実行結果を別のコマンドの引数として渡す記法)でその結果を apt install に渡し、一括インストールする。

すでに必要なパッケージがすべて導入されている場合、check-language-support は何も出力しない。この状態で sudo apt install $(check-language-support) を実行すると引数のない apt install となりエラーで終了するため、上記のように先に単独で実行して結果を確認する。

check-language-support を使ったインストール例

11. 日本語入力の設定(IBus + Mozc)

目的

日本語入力メソッド(IME:Input Method Editor、入力方式)を設定する。これにより日本語テキストの入力が可能になる。Ubuntu 24.04 LTS では IBus(入力フレームワーク)と Mozc(Google 日本語入力のオープンソース版)の組み合わせが標準である。

※ サーバー用途など GUI を使用しない環境では不要である。

インストール

sudo apt update
sudo apt install ibus ibus-mozc mozc-utils-gui

mozc-utils-gui は後述の Mozc 設定ツールを提供する。設定を変更しない場合は省略してよい。

設定手順(GUI)

  1. 「設定」→「キーボード」を開く
  2. 「入力ソース」の「+」ボタンをクリック
  3. 「日本語」→「日本語(Mozc)」を選択して追加
  4. 設定後、いったんログアウトして再ログインする(または再起動する)

入力切り替え

半角/全角 キーまたは Super+スペース キーで入力ソースが切り替わる。

日本語入力テスト例

Mozc 設定ツール

キーバインドや変換候補の設定を変更する場合に使用する(mozc-utils-gui が必要)。

/usr/lib/mozc/mozc_tool --mode=config_dialog &

Wayland か X11 かの確認

Ubuntu 24.04 のデフォルトは Wayland であるが、ログイン画面で X11 セッションを選ぶこともできる。現在のセッション種別は次のコマンドで確認できる。

echo $XDG_SESSION_TYPE
# 出力例: wayland もしくは x11

代替: Fcitx5 を使用する場合

Wayland 環境で IBus + Mozc を使用すると、アプリケーションによっては変換候補ウィンドウの表示位置がずれることがある。その場合は Fcitx5 に切り替える。LXQt を採用する Lubuntu では Fcitx5 が標準の構成である。

sudo apt update
sudo apt install fcitx5 fcitx5-mozc mozc-utils-gui
Fcitx5 と Mozc のインストール例

インストール後、「設定」→「システム」→「地域と言語」で「キーボード入力に使う IM システム」を「Fcitx 5」に変更し、ログアウトして再ログインする。IBus と Fcitx5 を同時に有効にしないよう、切り替え後は一方のみを使用する。

再起動コマンド実行例

12. ユーザディレクトリの英語化

目的

日本語環境でインストールすると作成される日本語名ディレクトリ(「ダウンロード」「ドキュメント」等)を英語名(Downloads、Documents 等)に変更する。これによりコマンドライン操作時のパス入力が容易になる。

実行コマンド

sudo apt update
sudo apt install xdg-user-dirs-gtk
LANG=C LC_ALL=C xdg-user-dirs-gtk-update

解説

LANG=C LC_ALL=C をコマンドの先頭に付けることで、そのコマンドだけを英語ロケールで実行し、英語のディレクトリ名を生成させる。

実行後、GUI ダイアログが表示される。「Don't ask me this again」にチェックを入れ、「Update Names」をクリックする。ダイアログを表示せずに実行する場合は --force オプションを付ける(LANG=C LC_ALL=C xdg-user-dirs-gtk-update --force)。

ユーザーディレクトリ名変更確認ダイアログ
ユーザーディレクトリ名変更後の確認例

変更後の ~/.config/user-dirs.dirs:

XDG_DESKTOP_DIR="$HOME/Desktop"
XDG_DOWNLOAD_DIR="$HOME/Downloads"
XDG_TEMPLATES_DIR="$HOME/Templates"
XDG_PUBLICSHARE_DIR="$HOME/Public"
XDG_DOCUMENTS_DIR="$HOME/Documents"
XDG_MUSIC_DIR="$HOME/Music"
XDG_PICTURES_DIR="$HOME/Pictures"
XDG_VIDEOS_DIR="$HOME/Videos"

旧名称のディレクトリが空でない場合、その中身は自動では移動されない。旧ディレクトリが残っている場合は、中身を新しいディレクトリへ移動してから旧ディレクトリを削除する。

第6章 システム管理とカスタマイズ

13. 運用保守用ツールの導入

目的

ネットワーク確認やハードウェア情報表示に用いるツールをインストールする。これによりトラブルシューティングやシステム状態の確認が行える。

実行コマンド

sudo apt update
sudo apt install net-tools pciutils

各パッケージの用途

運用保守ツールインストール例

14. システムログの確認方法

目的

システムの動作記録(ログ)を journalctl コマンドで確認する方法を把握する。これにより問題発生時の原因特定が行える。ログは systemd(システム管理デーモン)のジャーナル(記録の保存先)に記録される。

主なコマンド

# リアルタイムでログを監視(Ctrl+C で終了)
sudo journalctl -f

# 今回の起動以降のログを表示
sudo journalctl -b

# エラー以上のログのみ表示
sudo journalctl -p err

# 特定のサービスのログを表示(例: SSH)
sudo journalctl -u ssh.service

オプション例

# 昨日からのログ
sudo journalctl --since "yesterday"

# 過去 1 時間のログ
sudo journalctl --since "1 hour ago"

解説

15. 電源管理の設定

目的

一定時間操作がない場合の画面ブランク(画面消灯)やサスペンド(スリープ)を抑制する。これにより、長時間の計算処理やリモート接続中に画面消灯やスリープが発生することを防げる。

※ ラップトップでバッテリー駆動時間を重視する場合は、この設定は行わない。

GNOME 環境向け設定(Ubuntu 標準)

# アイドル時の画面ブランクを無効化
gsettings set org.gnome.desktop.session idle-delay 0

# AC 電源時の自動サスペンドを無効化
gsettings set org.gnome.settings-daemon.plugins.power sleep-inactive-ac-type 'nothing'

XFCE 環境向け設定(Xubuntu など)

xfconf-query -c xfce4-power-manager -p /xfce4-power-manager/dpms-enabled -s false
xfconf-query -c xfce4-power-manager -p /xfce4-power-manager/inactivity-sleep-mode-on-ac -s 0

注意点

16. キーボード設定(Caps Lock の変更)

目的

Caps Lock キーを無効化するか、追加の Ctrl キーとして機能させる。これにより Caps Lock の誤操作による意図しない大文字入力を防げる。

実行方法

/etc/default/keyboard ファイルの XKBOPTIONS を編集する。

sudo cp /etc/default/keyboard /etc/default/keyboard.backup
sudo nano /etc/default/keyboard

XKBOPTIONS 行を以下のように変更する。

設定の反映

# コンソール(CUI)への反映
sudo setupcon

# デスクトップ(GUI)への反映は再ログインまたは再起動が必要

注意点

第7章 クリーンアップ

17. 不要ソフトウェアの削除

目的

使用しないプリインストールアプリケーション(オフィススイート、メールクライアント等)を削除する。これによりディスク容量を節約し、更新対象のパッケージ数を減らせる。

削除前の確認

Ubuntu 24.04 では、アプリケーションが deb と snap のどちらで導入されているかによって削除方法が異なる。Firefox と Thunderbird は snap で提供される。まず両方を確認する。

# snap で導入されているアプリの一覧
snap list

# deb で導入されているか確認(例: libreoffice)
dpkg -l | grep libreoffice

実行コマンド例(deb パッケージ)

# 削除対象を事前に確認(実際には削除しない)
sudo apt -s purge '^libreoffice.*'

# LibreOffice(オフィススイート)を削除
sudo apt purge '^libreoffice.*'

# 不要になった依存パッケージを削除
sudo apt autoremove

# 古いパッケージキャッシュを削除
sudo apt autoclean

実行コマンド例(snap パッケージ)

# Thunderbird(メールクライアント)を削除
sudo snap remove thunderbird

sudo apt purge 'thunderbird*' を実行しても、snap 本体は削除されない。deb 側に残る移行用パッケージが消えるだけである。

注意点

削除するパッケージは用途に合わせて選択する。purge は設定ファイルも含めて削除する。

パッケージ名にワイルドカード(*)を使う際は、シングルクォート(')で囲む。引用符を付けずに libreoffice* と書くと、シェルがカレントディレクトリのファイル名に対して展開を試み、意図しない引数が渡される場合がある。

また、引用符で囲んで apt に渡した文字列は、シェルのワイルドカードではなく POSIX 正規表現として解釈される。正規表現では * は「直前の 1 文字の 0 回以上の繰り返し」を意味するため、'libreoffice*' は「libreoffic に e が 0 個以上続く」という意味になる。意図を明確にするには '^libreoffice.*' のように記述する。削除前に -s(シミュレーション)で対象を必ず確認する。

18. 不要ファイルの除去

目的

パッケージキャッシュや不要ファイルを削除してディスクスペースを整理する。

実行コマンド

# 不要な依存パッケージを削除
sudo apt autoremove

# 古いパッケージキャッシュを削除
sudo apt autoclean

# 古いシステムログを削除(7 日分を残す)
sudo journalctl --vacuum-time=7d

# 使用中のディスク容量を確認
df -h /

古いカーネルの削除

カーネル更新を繰り返すと /boot の空き容量が不足する場合がある。sudo apt autoremove は、現在使用中のカーネルと直前のカーネルを残して古いカーネルを削除する。手動で linux-image-* を指定して削除すると、起動できないカーネル構成になるおそれがあるため行わない。

注意点