IPK ファイル形式とは?
.ipk は、OpenWrt ルーター、Yocto Project ビルド、Entware(NAS やセットトップボックス)、LG webOS スマート TV、Boot to Qt などの組み込み Linux システム向けの標準パッケージマネージャーである opkg (Open PacKaGe Management) で使用されるパッケージファイル形式です。
構造的には、.ipk ファイルは Unix の ar アーカイブであり(オフセット 0 のマジックヘッダー !<arch> で識別可能)、3 つのメンバーが含まれています:debian-binary(テキスト «2.0»)、control.tar.gz(パッケージのメタデータとインストールスクリプト)、および data.tar.gz(ターゲットデバイス上で展開されるファイルシステムペイロード)です。この構造は Debian の .deb パッケージ と同一であり、標準的な ar および tar コマンドで完全に解凍可能です。
この形式は、2001 年に iPAQ や Sharp Zaurus などの Linux 携帯端末向けの ipkg (Itsy Package Manager) として誕生しました。opkg フォークは 2008 年頃に登場し、現在は Yocto Project コミュニティによってメンテナンスされています。
現代の .deb パッケージとは異なり、.ipk ファイルは暗号署名を必須としていませんが、オプションの MD5 チェックサムがコントロールアーカイブ内に含まれる場合があります。この形式は、dpkg/apt では重すぎるリソース制約のある組み込み Linux システムにおけるデプロイメント標準であり続けています。
セキュリティと安全性
リスク: MEDIUMIPK パッケージはターゲットデバイス上で root としてインストール前後のシェルスクリプトを実行するため、悪意のある IPK はシステムを完全に侵害する可能性があります。公式のパッケージフィード(OpenWrt パッケージ、Entware)または信頼できるソースからのみインストールしてください。デスクトップ PC でアーカイブマネージャーを使用して IPK の内容を検査するだけであれば、リスクはありません。
形式の詳細
概要- Shana Informed Filler フォームパッケージ - Shana Corporation によるレガシーな Windows フォームソフトウェアがフォームパッケージに .ipk を使用していました。現在は廃止され、ウェブサイトは BC 州政府のものになっています。
- iOS/iPhone ファームウェアパッケージ(稀) - 初期の一部のジェイルブレイクツールが Cydia パッケージ(Darwin 上の opkg ベース)に .ipk を使用していました。
IPK ファイルを開くプログラム
opkg install package.ipk - ターゲットデバイスにインストールします。デスクトップで検査するには ar x package.ipk を実行してから tar xzf data.tar.gz を使用します。 技術的詳細
詳細仕様| コンテナ形式 | Unix `ar` アーカイブ |
| マジックヘッダー | 改行が続く `!<arch>`(オフセット 0 の 8 バイト) - Debian `.deb` と同一 |
| 内部メンバー | `debian-binary`, `control.tar.gz`, `data.tar.gz` |
| 圧縮 | 内部の tar アーカイブは gzip 圧縮。外側の `ar` は非圧縮 |
| 形式バージョンマーカー | `debian-binary` メンバーにテキスト «2.0» を含む |
| メタデータ | `control.tar.gz` に保存(名前、バージョン、アーキテクチャ、依存関係、インストール/削除スクリプト) |
| ペイロード | ターゲットデバイスのファイルシステムルートに展開される `data.tar.gz` |
| チェックサム | `control/md5sums` 内のオプションの MD5 合計。必須の暗号署名はなし |
| 一般的なパッケージサイズ | 数 KB ~ 50 MB。ほとんどのパッケージは 5 MB 未満 |
| インストールコマンド | `opkg install package.ipk` |
| 互換性 | 標準的な `ar` および `tar` (GNU binutils) で解凍可能 |
| リリース日 | 2001 (ipkg / Itsy Package Manager for Sharp Zaurus/iPAQ handhelds) |
| 最新バージョン | opkg 0.6.x (2024); format stable since Debian 2.0 roots |
| オープンスタンダード | はい · ロイヤリティフリー |
| 仕様書 | git.yoctoproject.org |
IPK の変換
コミュニティ Q&A
ユーザーからの質問まだ質問はありません。IPK ファイルについて最初の質問をしてみましょう。
よくある質問
OpenWrt に IPK ファイルをインストールするにはどうすればよいですか?
opkg install /tmp/package.ipk を実行します。アーキテクチャ(例:mipsel_24kc)が一致していることを確認してください。Windows で IPK ファイルを開くにはどうすればよいですか?
ar のメンバーが表示されるので、各 .tar.gz を展開して開くことで内容を閲覧できます。IPK と DEB の違いは何ですか?
debian-binary 2.0 マーカーを持つ ar アーカイブです。IPK は opkg を介してリソース制約のある組み込み Linux を対象とし、DEB は dpkg/apt を介して Debian/Ubuntu を対象としています。