Ubuntuパッケージ管理どれを使う?apt/Snap/Flatpakの違いを現役講師が整理

HOMEリナックスマスター.JP 公式ブログLinux情報・技術・セキュリティ > Ubuntuパッケージ管理どれを使う?apt/Snap/Flatpakの違いを現役講師が整理
宮崎智広 この記事の監修:宮崎智広(Linux実務・教育歴20年以上・受講者3,100名超)
「Ubuntuに3種類のパッケージ管理が同居していて、結局どれを使えばいいんだろう」

正直に告白すると、私もしばらく Snap を雑に扱っていた時期があります。受講生から「Snap版の Slack が起動しないんですが」と聞かれて、その場でうまく答えられず、夜にドキュメントを読み直した、という反省があります。Ubuntu 26.04 LTS が出た 2026年4月以降、apt と Snap と Flatpak の3方式が同じデスクトップに同居する場面が一気に増えました。20年以上Linuxサーバーを触ってきましたが、サーバー運用とデスクトップとでは、選ぶ基準がまったく違います。本稿では、現役管理者の目線で「サーバー運用 / デスクトップ / 学習用検証機」の判断軸を1本通しながら、apt・Snap・Flatpak の違いを整理します。Ubuntu 26.04 LTS の全体像を先に把握しておきたい方は「Ubuntu 26.04 LTS 変更点まとめ|25.10から何が変わったか現役講師が解説」を先に読んでおくと、本稿の細かい話がスッと入ります。


Ubuntuパッケージ管理どれを使う?apt/Snap/Flatpakの違いを現役講師が整理
「このままじゃマズい」と感じていませんか?
参考書を開く気力もない、同年代に取り残される不安——
でも安心してください。プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
図解60P/登録10秒/解除も3秒 / 詳細はこちら

apt の基本 — Debian/Ubuntu の標準、システム統合度の高さ

apt は dpkg をベースにした Debian/Ubuntu 系の標準パッケージマネージャです。サーバーを組むなら、まず最初に体に入れるべき方式になります。

apt の本質は「システムと一体化したパッケージ管理」です。dpkg がローレベルでパッケージの展開・削除・状態管理を担当し、その上に乗った apt が依存関係の解決、リポジトリからの取得、アップグレードのオーケストレーションを担います。インストールされたバイナリは `/usr/bin` や `/usr/sbin` に直接配置され、設定ファイルは `/etc` 配下、サービスは systemd の管理下に入ります。サーバー運用での「OS と一体で動く前提」が崩れないので、systemd の depends-on や After= といった起動順制御も自然に効きます。

代表的な操作を並べておきます。

$ sudo apt update $ sudo apt install -y nginx $ sudo apt -y full-upgrade $ apt list --installed | grep nginx $ sudo apt remove --purge nginx

apt の弱点は「同じパッケージの複数バージョン同居が苦手」「リポジトリ提供版が古い場合がある」「リポジトリ自体が落ちると詰まる」の3点です。3つ目は他人事ではなく、2026年5月の Canonical DDoS 障害で `archive.ubuntu.com` が広域に詰まり、`apt update` がタイムアウトする事故が発生しました。詳細は「Canonical DDoS で apt update が止まった話|原因と回避策」にまとめてありますが、apt 中心の運用ほど上流リポジトリの可用性に依存することは、頭の片隅に置いておいた方がいいです。

ちなみに Ubuntu の `apt install` で「The program 'kubeadm' is currently not installed. You can install it by typing: sudo snap install kubeadm」のように Snap 版を提案されるのは、`command-not-found` パッケージの挙動です。リポジトリに無いパッケージで Snap 版が存在する場合に勝手に提案してくる仕様で、これが「Ubuntu = Snap 推し」と感じる原因のひとつになっています。

Snap の基本 — Canonical 主導、サンドボックス、自動更新

Snap は Canonical 主導で開発されているパッケージシステムです。Ubuntu 26.04 LTS にも標準同梱されていて、`snap` コマンドはインストール直後から使えます。

Snap の最大の特徴は「サンドボックス(confinement)」です。AppArmor + seccomp + cgroups + namespaces を組み合わせて、アプリを OS の他の部分から隔離した状態で動かします。confinement には3段階あります。

  • strict: デフォルト。フル隔離。ホストのファイルやデバイスにはインターフェース経由でしかアクセスできない
  • classic: 隔離なし。ホストへのフルアクセスを持つ。Canonical の審査が必要
  • devmode: 開発用。strict と同じインターフェースを宣言するが、違反しても警告だけで実行は止まらない

配布形式は SquashFS でパッケージされた単一ファイル(`.snap`)で、`/var/lib/snapd/snaps/` 配下にループバックマウントされます。`mount` コマンドの出力に `/snap/...` のループバックがズラッと並ぶのはそのためです。

$ snap list $ snap install slack --classic $ snap info chromium $ snap connections chromium $ snap services

Snap の運用上、いちばん意見が分かれるのが「自動更新」の挙動です。snapd デーモンはデフォルトで1日4回、リフレッシュ(更新チェック)を走らせます。「勝手に再起動される」「更新中に固まる」と嫌われがちな部分ですが、実は細かい制御が用意されています。

# 特定の snap を一時的にホールド(期間指定 / 無期限) $ sudo snap refresh --hold=24h slack $ sudo snap refresh --hold=forever slack # ホールド解除 $ sudo snap refresh --unhold slack # システム全体の更新スケジュール / 遅延 / 保持リビジョン数 $ sudo snap set system refresh.timer=fri,23:00-04:00 $ sudo snap set system refresh.hold="2026-06-01T00:00:00+09:00" $ sudo snap set system refresh.retain=3

ここで注意したいのは、「完全な無効化はできない」という点です。`refresh.hold` も RFC3339 で最大90日先までしか指定できません。snapd 自身と core snap のセキュリティ更新は仕様として強制されます。サーバー運用で「アップデートのタイミングは完全に握りたい」というポリシーがある現場では、ここがそのまま採用判断のボトルネックになります。

配布元は基本的に Canonical 運営の Snap Store の1択です。Flatpak の Flathub のように複数のリポジトリを混ぜる文化は弱く、ここも好き嫌いが分かれます。


Ubuntuパッケージ管理どれを使う?apt/Snap/Flatpakの違いを現役講師が整理 - 解説1

Flatpak の基本 — Red Hat 系発祥、Flathub、ランタイム共有

Flatpak は元々 Red Hat / GNOME 周辺で生まれた、ディストロ非依存のデスクトップアプリ配布の仕組みです。Snap が Canonical 軸なのに対し、Flatpak はコミュニティ主導の Flathub というリポジトリを軸に運用されています。

サンドボックスは bubblewrap がベースです。デフォルトでホストファイル・ネットワーク・デバイスノード・サンドボックス外プロセスをすべて遮断し、必要なリソースは「ポータル(Portals)」経由でユーザーの同意を取って初めて開放されます。たとえば「ファイル選択ダイアログを開きたい」「カメラを使いたい」「画面共有したい」といった要求は、すべて XDG Desktop Portal を通じてユーザーの明示的な許可で動きます。アプリ側のマニフェスト(`finish-args` セクション)で要求権限を宣言する形なので、後から `flatpak override` で権限を絞ることもできます。

ランタイム共有もFlatpakの大きな特徴です。Freedesktop ランタイムや GNOME ランタイム、KDE ランタイムをアプリ間で共有することで、ディスク使用量と更新トラフィックを抑える設計になっています。ここは Snap が「アプリ単位で完結」のスタンスなのと対照的です。

Ubuntu 26.04 LTS では Flatpak は標準同梱されていません。`apt install` で導入する流れになります。

$ sudo apt update $ sudo apt install -y flatpak # Flathub リポジトリ追加(推奨) $ flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo # 動作確認 $ flatpak --version # 1.16系(マイナーver は時期で変動) $ flatpak remotes

ここで知っておきたい制約があります。Ubuntu 23.10 以降の標準ストア(App Center)は Flatpak アプリのインストールに対応していません。「Flatpak をインストールしたのに App Center に Flathub のアプリが出てこない」という詰まりはこれが原因です。GUI 経由で扱いたいなら `gnome-software-plugin-flatpak` を別途入れて GNOME Software を併用するか、CLI(`flatpak install`)で運用する必要があります。

$ flatpak search inkscape $ flatpak install flathub org.inkscape.Inkscape $ flatpak run org.inkscape.Inkscape $ flatpak update $ flatpak override --user --filesystem=home org.inkscape.Inkscape

Flathub の運営はコミュニティ主導です。Canonical のような単一ベンダー集中ではない反面、各アプリの審査基準やメンテナーは案件ごとに違います。「公式が出しているか、誰がメンテしているか」を `flatpak info` や Flathub のページで毎回確認する習慣をつけた方がいいです。

3方式の比較表 — 現役管理者目線で1枚にまとめる

ここまで個別に見てきた3方式を、運用観点で1枚に整理します。表の項目は「現場で実際に意思決定の論点になりやすいもの」を優先しました。

観点 apt Snap Flatpak
配布元 Ubuntu 公式 + PPA Snap Store(Canonical) Flathub 中心(コミュニティ)
サンドボックス なし(OS統合) AppArmor + seccomp + cgroups + namespaces bubblewrap + ポータル
権限管理 OSのパーミッション snap connections / interfaces finish-args / flatpak override
更新方式 手動(apt update / upgrade) 自動(1日4回/完全停止不可) 手動(flatpak update)
ディスク使用量 小(共有ライブラリ) 大(squashfs + リビジョン保持) 中(ランタイム共有で抑制)
起動速度 速い 遅め(マウント+AppArmor評価)
オフライン運用 .deb で完結 snap ack / snap install で可 flatpak install --bundle で可
エンタープライズ運用 配信制御しやすい(リポジトリミラー) Brand Store / Snap Proxy 独自 OSTree リポジトリ運用
サーバー向き △(自動更新と再起動) ×(デスクトップ前提)
デスクトップ向き ○(ただし最新版は遅い) ○(公式アプリが揃う) ◎(最新GUIアプリが早い)

表で「サーバー向き」が apt 一強なのは、自動更新と再起動の制御性、systemd との統合度、リポジトリミラーリングの容易さ、ディスク効率といった運用要素の積み上げです。一方、デスクトップで最新版アプリを追いかけるなら Flatpak が一歩先に出ます。Snap はその中間で、Canonical が公式に出している商用アプリ(Slack、Spotify、Microsoft Teams 等)を1コマンドで入れる利便性が決定打になります。

ユースケース別の推奨 — 「迷ったらこう選ぶ」の早見

抽象論だけ並べても判断に困るので、現場で多いユースケースごとに「どれを優先で使うか」を整理します。私が受講生に伝えている指針と一致させてあります。

サーバー運用(Webサーバー・DB・中継サーバー等)

apt を主軸、Snap / Flatpak は原則使わない。 自動更新を握れない方式は、サービス停止のリスクとして避けるのが原則です。Snap で配布されている製品(一部の `snap install` 専用ツール、たとえば `microk8s` など)を使う必要がある場合は、`snap refresh --hold=forever` で制御権を取り戻したうえで、社内ポリシーに沿ったタイミングで明示的に更新します。

開発機(社内エンジニアの作業端末)

apt を基本、最新版が必要なものだけ Flatpak、商用アプリは Snap。 開発機は最新の SDK や IDE を追いかけたいケースが多く、Ubuntu リポジトリの提供版だと古すぎることがあります。VS Code、JetBrains 系、Inkscape、GIMP のような GUI ツールは Flatpak で最新版を入れる方が早いです。Slack や Microsoft Teams のような商用 SaaS クライアントは Snap が公式に出していることが多く、ここは Snap が現実解です。

一般デスクトップ(家族用 PC・社内事務 PC)

apt + 必要に応じて Flatpak。 Snap の自動更新は、PC をシャットダウンしようとすると「更新中なので待ってください」と出ることがあり、PC 操作に慣れていない人を混乱させがちです。一般ユーザー向けには、apt と Flatpak(GNOME Software 経由)の組み合わせの方がストレスが少ないです。

学習用検証機(Linux を勉強する用の机の上の1台)

3方式を全部入れて、違いを手で確かめるのが最強。 検証機は何度壊しても0円です。同じ Inkscape を `apt install inkscape` `snap install inkscape` `flatpak install flathub org.inkscape.Inkscape` の3通りで入れて、起動速度・ディスク使用量・設定ファイルの保存場所がどう違うかを自分の目で見ると、3方式の違いが体に残ります。古いPCを学習機にする手順は「古いPCをLinuxサーバー学習機に再生する方法【2026年版】」で別記事にまとめています。


Ubuntuパッケージ管理どれを使う?apt/Snap/Flatpakの違いを現役講師が整理 - 解説2

Ubuntu 26.04 LTS 環境での実例 — 併用と詰まりどころ

ここまでの話を、実際の Ubuntu 26.04 LTS 環境のコマンドで再現します。私自身が手を動かして詰まったところも含めて書きます。

apt と Snap の併用状態を確認する

Ubuntu 26.04 LTS のデスクトップは、インストール直後の状態でも、すでに apt パッケージと Snap パッケージが大量に同居しています。まず現状を眺めるところから始めます。

# Snap でインストール済みのパッケージ一覧 $ snap list Name Version Rev Tracking Publisher Notes core22 20240408 1380 latest/stable canonical* base firefox 128.0-1 4451 latest/stable/… mozilla** - gnome-42-2204 0+git.510a601 176 latest/stable/… canonical* - gtk-common-themes 0.1-81-g442e511 1535 latest/stable/… canonical* - snap-store 41.3-77-g7d85 1248 latest/stable/… canonical* - snapd 2.63 21465 latest/stable canonical* snapd # apt 経由でインストール済みのパッケージ数 $ apt list --installed 2>/dev/null | wc -l 1834

Firefox は Ubuntu 22.04 以降、Snap 版がデフォルトです。これを apt 版に戻すか、そのまま Snap 版を使うかは、好みと運用要件で分かれます。Snap 版のままでいくなら、起動の遅さに目をつぶる代わりに、Mozilla からの自動更新が早いというメリットを取れます。

Flatpak を追加導入する

Ubuntu 26.04 LTS には Flatpak が標準同梱されていません。デスクトップで GUI アプリの最新版を使いたいなら、自分で入れます。

$ sudo apt update $ sudo apt install -y flatpak $ sudo apt install -y gnome-software-plugin-flatpak # GNOME Software 併用したい場合 $ flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo # 一度ログアウトしてから再ログイン推奨(GNOME Software のプラグイン認識のため) $ flatpak install flathub org.inkscape.Inkscape $ flatpak run org.inkscape.Inkscape

Ubuntu 23.10 以降の標準 App Center は Flatpak 非対応なので、上の `gnome-software-plugin-flatpak` を入れて GNOME Software(旧称 Software)を併用するのが現実的な落とし所になります。「App Center に Flathub のアプリが出てこない」という詰まりはこの仕様で説明できます。

Snap版 Slack が起動しない事例の一時回避

これは私が受講生から相談されて、その場で答えられなかった事例です。Ubuntu 26.04 LTS のデスクトップは Wayland セッションが標準ですが、Snap 版の Slack(Electron アプリ)は Wayland にネイティブ対応していないため、アイコンをクリックしても起動しないことがあります。

注意: 以下は Slack 公式・Canonical 公式の手順ではなく、Qiita のユーザー実例として公開されている一時回避策です。Snap 側または Slack 側が Wayland に正式対応するまでのつなぎとして使ってください。

# 1. システムの .desktop ファイルをユーザー領域にコピー $ install -D -m 0644 \ /var/lib/snapd/desktop/applications/slack_slack.desktop \ "$HOME/.local/share/applications/slack_slack.desktop" # 2. Exec 行に --ozone-platform=x11 を追加 # (エディタで開いて Exec=/snap/bin/slack %U → Exec=/snap/bin/slack --ozone-platform=x11 %U に変更) # 3. デスクトップデータベースを更新 $ update-desktop-database "$HOME/.local/share/applications"

これでアイコンから起動できるようになります。あくまで一時回避なので、Slack のメジャーアップデートでこの手順自体が不要になる日が来ます。Wayland 全般のトラブルや、Ubuntu 26.04 LTS のその他の詰まりは「Ubuntu 26.04でよくあるトラブル12選|起動しない・ネット繋がらない・GUI落ちる時の対処」に12件まとめてあります。

Snap の自動更新を業務時間外にずらす

私が現場でよく投入する設定です。日中の業務時間に Snap の更新が走って固まる事故を避けるため、リフレッシュを夜間にずらします。

$ sudo snap set system refresh.timer=mon..fri,23:00-04:00 $ sudo snap set system refresh.retain=3 $ sudo snap refresh --hold=24h # その日の更新を1日だけ止める $ sudo snap refresh --time # 次回リフレッシュ予定時刻を確認

`refresh.timer` の指定は systemd timer の OnCalendar 形式に近い文法で、曜日と時間帯を指定できます。完全停止はできない仕様なので、「いつ走らせるかを握る」方向で運用するのが現実的です。

Inference Snaps(参考:26.10 以降のプレビュー)

Ubuntu 26.04 LTS そのものではなく、その先の話として書いておきます。Canonical は Inference Snaps の公式ドキュメントを公開しており、Qwen や DeepSeek などの生成AIモデルをホストハードウェアに最適化された形でパッケージし、`snap install` で導入する仕組みを進めています。OpenAI API 互換、Open WebUI 連携対応で、ローカル LLM 環境を一発で立ち上げる用途を想定しています。ユーザーが日常で触れるプレビューは Ubuntu 26.10 'Stonking Stingray'(2026-10-15リリース予定)からの想定で、26.04 LTS 標準でいきなり使える機能ではない点だけ押さえておいてください。

まとめ — 「サーバーは apt、デスクトップは適材適所」が答え

apt・Snap・Flatpak の3方式を、サーバー運用・デスクトップ・学習機の3つの軸で整理してきました。長くなったので要点を5つに絞ります。

  • サーバー運用は apt 一択。 自動更新を握れない方式(Snap)は本番投入のリスクとして原則避ける
  • デスクトップは適材適所。 最新版GUIアプリは Flatpak、商用SaaSクライアントは Snap、それ以外は apt
  • Snapの自動更新は完全停止できない。 `refresh.timer` と `--hold` で「いつ走らせるか」を握る方向に発想を切り替える
  • FlatpakはUbuntu 23.10以降のApp Centerが非対応。 `gnome-software-plugin-flatpak` 併用か CLI 運用で割り切る
  • 学習機では3方式を全部入れて違いを手で確かめる。 ディスク使用量・起動速度・設定ファイルの場所の差を自分の目で見ると、判断軸が体に残る

最後に正直なところを書きます。Snap を雑に扱っていた時期の私は、受講生からの「Slack が起動しないんですが」に答えられず、夜にドキュメントを読み直しました。3方式の違いは「使い分けの理屈」を知っていれば防げる詰まりが多いです。本稿で取り上げたコマンドは、机の上の検証機で1回ずつ叩いてみるのがいちばん早いです。動かないところは、それ自体が次の学習テーマになります。


Ubuntuパッケージ管理どれを使う?apt/Snap/Flatpakの違いを現役講師が整理 - まとめ

参考

・Snap 公式ドキュメント: https://snapcraft.io/docs
・Snap 自動更新の制御: https://snapcraft.io/docs/how-to-guides/manage-snaps/manage-updates/
・Flatpak 公式ドキュメント: https://docs.flatpak.org/
・Flatpak セットアップ(Ubuntu): https://flatpak.org/setup/Ubuntu
・Inference Snaps(Canonical 公式): https://documentation.ubuntu.com/inference-snaps/
・Ubuntu 26.04 LTS 変更点まとめ: Ubuntu 26.04 LTS 変更点まとめ|25.10から何が変わったか現役講師が解説
・Ubuntu 26.04 LTS よくあるトラブル12選: Ubuntu 26.04でよくあるトラブル12選
・Canonical DDoS で apt update が止まった話: Canonical DDoS で apt update が止まった話|原因と回避策

パッケージ管理の違いは分かった、その先で迷っていませんか?

apt・Snap・Flatpak を使い分けられるようになっても、Linux サーバーを業務で扱うには「systemdの起動制御」「権限とSELinux/AppArmor」「ネットワーク設計」など、地続きの基礎が必要です。
現場で20年以上Linuxサーバーに関わってきた私が、初心者向けに「最初の1台から本番運用までの型」を1本にまとめた『Linuxサーバー構築入門マニュアル(図解60P)』を完全無料でプレゼントしています。

「独学の時間がもったいない」「プロから直接、現場の技術を最短で学びたい」という本気の方には、2日で実務レベルのスキルが身につく【初心者向けハンズオンセミナー】も開催しています。

無料メルマガで学習を続ける

Linuxの実践スキルをメールで毎週お届け。
登録は1分、解除もいつでも可。

登録無料・いつでも解除できます

暗記不要・1時間後にはサーバーが動く

3,100名以上が実践した「型」を無料で公開中

プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
その「型」を図解60Pにまとめた入門マニュアルを、完全無料でプレゼントしています。

登録10秒/合わなければ解除3秒 / 詳細はこちら

Linux無料マニュアル(図解60P) 名前とメールで30秒登録
宮崎 智広

この記事を書いた人

宮崎 智広(みやざき ともひろ)

株式会社イーネットマーキュリー代表。現役のLinuxサーバー管理者として20年以上の実務経験を持ち、これまでに累計3,100名以上のエンジニアを指導してきたLinux教育のプロフェッショナル。「現場で本当に使える技術」を体系的に伝えることをモットーに、実践型のLinuxセミナーの開催や無料マニュアルの配布を通じてLinux人材の育成に取り組んでいる。

趣味は、キャンプにカメラ、トラウト釣り。好きな食べ物は、ラーメンにお酒。休肝日が作れない、酒量を減らせないのが悩み。最近、ドラマ「フライトエンジェル」を観て涙腺が崩壊しました。


Linux無料マニュアル(図解60P) 名前とメールで30秒登録