動作確認環境
本記事のコマンドは Ubuntu 24.04 LTS(Docker公式イメージ ubuntu:24.04)で実際に実行し、その出力をそのまま掲載しています。Ubuntu 22.04 LTSでも同様の手順で動作します。
Ubuntuで.debファイルをインストールする方法は、主に2つあります。dpkg -iコマンドを使う方法と、apt install ./ファイル名.debを使う方法です。
結論を先に言うと、Ubuntu 22.04以降では apt install ./パッケージ.deb の使用を推奨します。依存パッケージを自動でインストールしてくれるため、dpkg -iの後に発生しがちなエラーを回避できます。
本記事では、Docker上のUbuntu 24.04で実際にdpkgとaptの両方を実行した結果を載せながら、.debファイルのインストール方法を丁寧に解説します。
この記事のポイント
apt install ./ファイル名.debが依存関係を自動解決する推奨の方法(Ubuntu 16.04以降)dpkg -iで依存エラーが出た場合はapt install -f(またはapt --fix-broken install)で解決できる- インストール後は
dpkg -l パッケージ名で「ii」状態になっているか確認する - 削除は
dpkg -r(バイナリのみ)またはdpkg -P(設定ファイルも含めて完全削除) - Ubuntu 24.04 の dpkg バージョンは 1.22.6、apt は 2.8.3(実測)
目次
- .debファイルとは
- 前提環境
- 方法①: dpkg -i でインストールする
- 依存関係エラーの対処法(apt install -f)
- 方法②: apt install ./ファイル名.deb でインストールする(推奨)
- インストールの確認方法(dpkg -l / dpkg -s)
- パッケージの削除(dpkg -r / dpkg -P)
- dpkg と apt の使い分けまとめ
- よくあるエラーと解決策
- まとめ
.debファイルとは
.debファイルは、Debian系Linux(UbuntuはDebianベースです)で使われるパッケージフォーマットです。Windowsの.exeインストーラーや、macOSの.dmgに相当するものと考えると分かりやすいです。
Ubuntuでは通常 apt install パッケージ名 でインストールしますが、公式リポジトリに登録されていないソフトウェア(Google Chrome、VS Code、Slackなど)は、公式サイトから.debファイルをダウンロードしてインストールする必要があります。
よくある.debインストールのシナリオ:
- Google Chrome:
google-chrome-stable_current_amd64.deb - VS Code:
code_1.xx.x_amd64.deb - Slack:
slack-desktop-x.x.x-amd64.deb - Discord:
discord-x.x.x.deb
前提環境
- OS:Ubuntu 24.04 LTS(Docker公式イメージ
ubuntu:24.04で実行) - dpkg バージョン:1.22.6(Ubuntu 22.04 では 1.21.1)
- apt バージョン:2.8.3
- 検証日:2026-06-13
Debian ‘dpkg’ package management program version 1.22.6 (arm64).
This is free software; see the GNU General Public License version 2 or
later for copying conditions. There is NO warranty.
$ apt –version
apt 2.8.3 (arm64)
方法①: dpkg -i でインストールする
dpkg -i(install の略)は、.debファイルを直接インストールする基本コマンドです。まず.debファイルを入手してから実行します。
手順1:.debファイルを入手する
通常は公式サイトからwgetやcurlでダウンロードします。ここでは練習としてapt-get downloadを使ってhelloパッケージの.debファイルを取得します。
$ sudo apt update
# apt-get download: インストールせずに .deb ファイルだけを取得する
$ apt-get download hello
Get:1 …/noble/main amd64 hello amd64 2.10-3build1 [25.2 kB]
Fetched 25.2 kB in 1s (44.0 kB/s)
$ ls -lh hello*.deb
-rw-r–r– 1 root root 25K Apr 8 2024 hello_2.10-3build1_amd64.deb
実際の作業ではwget https://example.com/package.debのようにダウンロードするか、ブラウザでダウンロードした.debファイルを~/Downloads/等に保存してから操作します。
手順2:dpkg -i でインストールする

Ubuntu 24.04の環境で dpkg -i hello_2.10-3build1_amd64.deb を実際に実行した結果です。
Selecting previously unselected package hello.
(Reading database … 4376 files and directories currently installed.)
Preparing to unpack hello_2.10-3build1_amd64.deb …
Unpacking hello (2.10-3build1) …
Setting up hello (2.10-3build1) …
Setting up hello (2.10-3build1) ... と表示されればインストール成功です。エラーが出ない場合はこれで完了です。
注意: sudo が必要です
dpkg -i はシステムへのインストールを伴うため、sudo(管理者権限)が必要です。sudo dpkg -i ファイル名.deb のように実行してください。
依存関係エラーの対処法(apt install -f)
正直、dpkg -iを使うと依存関係エラーが発生することがよくあります。依存関係(dependency)とは「このパッケージを動かすために必要な他のパッケージ」のことです。
例えばnginxの.debファイルだけをdpkg -iでインストールしようとすると、iproute2やnginx-commonが不足しているためエラーになります。実際に Ubuntu 24.04 で確認した出力がこちらです:

Selecting previously unselected package nginx.
Preparing to unpack nginx_1.24.0-2ubuntu7.11_amd64.deb …
Unpacking nginx (1.24.0-2ubuntu7.11) …
dpkg: dependency problems prevent configuration of nginx:
nginx depends on iproute2; however:
Package iproute2 is not installed.
nginx depends on nginx-common (= 1.24.0-2ubuntu7.11); however:
Package nginx-common is not installed.
dpkg: error processing package nginx (–install):
dependency problems – leaving unconfigured
このエラーが出た場合は、apt install -f(--fix-brokenの略)を実行することで、不足している依存パッケージを自動的にインストールして修復できます。
The following NEW packages will be installed:
iproute2 nginx-common libxtables12 …
Setting up iproute2 (6.1.0-1ubuntu6.3) …
Setting up nginx-common (1.24.0-2ubuntu7.11) …
Setting up nginx (1.24.0-2ubuntu7.11) …
$ nginx -v
nginx version: nginx/1.24.0 (Ubuntu)
apt install -f の後、nginx -v で nginx version: nginx/1.24.0 (Ubuntu) と表示されれば修復完了です。
方法②: apt install ./ファイル名.deb でインストールする(推奨)
Ubuntu 16.04以降では apt install ./パッケージ名.deb を使う方法が推奨されています。 この方法は依存関係を自動で解決してくれるため、前述の dpkg -i → apt install -f の2ステップが1コマンドで済みます。
注意: パスに「./」を必ず付ける
apt install ./package.deb と書く際、先頭の ./ は必須です。./ がないと apt は「パッケージ名」として解釈し、リポジトリを検索してしまいます。
$ sudo apt install ./nginx_1.24.0-2ubuntu7.11_amd64.deb
Reading package lists… Done
Building dependency tree… Done
The following additional packages will be installed:
iproute2 nginx-common libxtables12 …
The following NEW packages will be installed:
iproute2 nginx nginx-common
Setting up iproute2 (6.1.0-1ubuntu6.3) …
Setting up nginx-common (1.24.0-2ubuntu7.11) …
Setting up nginx (1.24.0-2ubuntu7.11) …
$ nginx -v
nginx version: nginx/1.24.0 (Ubuntu)
1コマンドで依存パッケージ(iproute2、nginx-common など)も含めて全てインストールされました。これが dpkg -i との最大の違いです。
絶対パスで指定する場合は次のように書きます:
$ sudo apt install /home/user/Downloads/google-chrome-stable_current_amd64.deb
Reading package lists… Done
Building dependency tree… Done
…
インストールの確認方法(dpkg -l / dpkg -s)
インストール後に正しく入っているか確認するには dpkg コマンドを使います。
dpkg -l で一覧表示する
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
ii hello 2.10-3build1 amd64 example package based on GNU hello
先頭の ii が「インストール済み(インストール希望)かつ正常状態」を意味します。ii になっていれば問題ありません。
dpkg -s で詳細情報を見る
Package: hello
Status: install ok installed
Priority: optional
Section: devel
Installed-Size: 144
Architecture: amd64
Version: 2.10-3build1
Status: install ok installed と表示されれば正常にインストールされています。
dpkg -L でインストールされたファイルを確認する
/.
/usr
/usr/bin
/usr/bin/hello
/usr/share/doc/hello
/usr/share/man/man1/hello.1.gz
パッケージの削除(dpkg -r / dpkg -P)
dpkg -iでインストールしたパッケージを削除するには、dpkg -r(remove)または dpkg -P(purge)を使います。

$ sudo dpkg -r hello
(Reading database … 4383 files and directories currently installed.)
Removing hello (2.10-3build1) …
# -P (purge): 設定ファイルも含めて完全削除
$ sudo dpkg -P hello
(Reading database … 4376 files and directories currently installed.)
Removing hello (2.10-3build1) …
apt で削除する場合も同様で、apt remove hello(設定ファイルを残す)または apt purge hello(完全削除)を使えます。
dpkg と apt の使い分けまとめ

| コマンド | 依存関係の自動解決 | 推奨シーン |
|---|---|---|
apt install ./pkg.deb |
✅ 自動解決 | 通常はこちらを使う(Ubuntu 16.04以降) |
dpkg -i pkg.deb |
⚠️ なし | スクリプト内など apt が使えない場面 |
apt install -f |
✅ 自動解決 | dpkg -i 後にエラーが出た場合の修復 |
dpkg -r パッケージ名 |
— | バイナリのみ削除(設定ファイルを残す) |
dpkg -P パッケージ名 |
— | 設定ファイルも含めて完全削除 |

Ubuntu 22.04(dpkg 1.21.1 / apt 2.4.14)と Ubuntu 24.04(dpkg 1.22.6 / apt 2.8.3)で実際にバージョンを計測した結果、基本的なコマンドの使い方や動作は同じでした。VPSでよく使われる Ubuntu 22.04 LTS でも本記事の手順がそのまま使えます。
よくあるエラーと解決策
エラー①: dependency problems — leaving unconfigured
nginx depends on iproute2; however: Package iproute2 is not installed.
dpkg: error processing package nginx (–install):
dependency problems – leaving unconfigured
原因:依存パッケージが不足しています。
解決策:sudo apt install -f を実行する。または最初から sudo apt install ./nginx.deb を使う。
エラー②: dpkg-deb: error: archive has premature member
原因:.debファイルが壊れている(ダウンロード途中で中断した等)。
解決策:.debファイルを再ダウンロードする。
エラー③: dpkg: error: requested operation requires superuser privilege
原因:sudoなしで実行しました。
解決策:sudo dpkg -i パッケージ.deb のように sudo を付けて実行する。
エラー④: dpkg: error processing archive — trying to overwrite
trying to overwrite ‘/usr/bin/foo’, which is also in package bar
原因:別のパッケージがすでに同じファイルをインストールしています。
解決策:sudo dpkg -i --force-overwrite パッケージ.deb で強制上書きするか、競合する既存パッケージを先に削除する。
まとめ
Ubuntuで.debファイルをインストールする方法を実際のコマンド出力とともに解説しました。
- Ubuntu 16.04以降では
sudo apt install ./パッケージ名.debが推奨。依存関係を自動解決してくれる sudo dpkg -i パッケージ名.debでも可能だが、依存エラーが出た場合はsudo apt install -fで修復する- インストール後は
dpkg -l パッケージ名で「ii」状態を確認する - 削除は
sudo dpkg -r パッケージ名(バイナリのみ)またはsudo dpkg -P パッケージ名(完全削除) - Ubuntu 24.04 の dpkg 1.22.6 と Ubuntu 22.04 の dpkg 1.21.1 で、基本的な動作は同じ(実測確認済み)
VPSを借りて本格的にUbuntuサーバーを運用するなら、まずレンタルサーバーを用意する必要があります。初心者にも設定しやすいVPSの選び方は以下の記事を参考にしてください。
Ubuntu VPS 選び方ガイド【初心者向け比較まとめ】



コメント