RUN ファイル形式とは?
.runファイルは、Linuxプラットフォーム上でソフトウェアアプリケーションをインストールするためのコードと指示を含む実行ファイルです。ほとんどの.runファイルはMakeself(Stéphane Peter氏による)で生成されており、2部構成の構造になっています。まず#!/bin/shのシバン(shebang)で始まるプレーンテキストのシェルスクリプトヘッダーがあり、その直後に圧縮されたTARアーカイブのペイロードが追加されています。スクリプトヘッダーは、埋め込まれたCRC(およびオプションでMD5またはSHA-256)チェックサムを検証し、ペイロードを一時ディレクトリに解凍してから、埋め込まれたセットアップコマンドを自動的に実行します。
.run形式は、デバイスドライバー、SDK、および大規模なアプリケーションインストーラーの配布に広く使用されており、特にNVIDIA GPUドライバーやCUDAツールキットが有名です。インストーラーを起動するには、実行権限がまだ設定されていない場合はまず設定し(chmod +x file.run)、次に./file.runまたはsh file.runで実行する必要があります。
インストーラーを実行せずに、Makeselfの.runアーカイブを安全に検査または抽出することも可能です:
- 内容をリスト表示:
./file.run --list - 抽出のみ:
./file.run --noexec --target /some/dir
パッケージ管理されているLinuxシステムでは、一般的に.debや.rpmなどの形式が好まれますが、ディストリビューションに依存しない配布やプロプライエタリなソフトウェアの提供には、依然として.runが一般的です。
セキュリティと安全性
リスク: HIGH.run は実行可能コードです。これを実行すると、ユーザーの権限で任意のシェルコマンドが実行されます。多くのインストーラーは sudo を要求し、root 権限を与えます。そのため、悪意のある、または改ざんされた .run は、他のインストーラーと同様に危険です。安全規則:(1) .run ファイルは HTTPS 経由で公式ベンダー(NVIDIA、SDK の公式サイトなど)からのみダウンロードすること。(2) シェルスクリプトであるため、エディタでヘッダーを読み、実行前に «./file.run --list» / «--check» を使用して検査および検証すること。(3) 信頼できない .run をパイプ実行したり sudo で実行したりしないこと。Makeself ラッパーは破損に対して整合性(CRC/MD5/SHA256)を自己検証しますが、それはソースの信頼性を保証するものではありません。
形式の詳細
概要RUN ファイルを開くプログラム
技術的詳細
詳細仕様| フォーマットタイプ | スクリプト本体の後に圧縮されたバイナリペイロードが追加された実行可能シェルスクリプト(プレーンテキストヘッダー + バイナリ末尾) |
| MIMEタイプ | application/x-makeself; または application/x-shellscript, text/x-sh, application/octet-stream |
| ファイルシグネチャ | バイトオフセット0で #!/bin/sh シバン(16進数 23 21 2F 62 69 6E 2F 73 68)で開始。固定のバイナリマジックナンバーはなし |
| エンコーディング | プレーンテキストの UTF-8 シェルスクリプトヘッダーに続き、固定のセパレーターなしでバイナリ圧縮アーカイブが追加されている |
| 圧縮 | デフォルトは gzip。Makeself は bzip2, xz, zstd, lzo、または非圧縮ペイロードもサポート |
| コンテナ構造 | 埋め込まれた TAR アーカイブを一時ディレクトリに解凍し、埋め込まれたセットアップコマンドを実行するシェルスタブ |
| 整合性検証 | Makeself ヘッダーに常に埋め込まれている CRC チェックサム。オプションで MD5 または SHA-256。抽出開始前に自己検証される |
| 実行 | chmod +x file.run && ./file.run、または sh file.run - パッケージマネージャーやインストールツールは不要 |
| 実行せずに検査/抽出 | ./file.run --list で内容を一覧表示。./file.run --noexec --target DIR でセットアップを実行せずにペイロードを抽出 |
| 主な生成ツール | Stéphane Peter氏による Makeself (makeself.io)。Makeself のバージョン番号はアーカイブヘッダーに埋め込まれている |
| 関連プラットフォーム | Linux(主要ターゲット)。BSD、Solaris、およびその他の Unix 系システムもサポート |
| 典型的なファイルサイズ | 数百KBから数GB。大規模なドライバーや SDK インストーラー(NVIDIA, CUDA, GOG ゲーム)は 10 GB を超えることもある |
| 暗号化サポート | デフォルトではなし。Makeself は安全な配布のために GPG 暗号化されたペイロードをオプションでサポート |
| ペイロードオフセット | 内部の TAR ペイロードに固定のオフセットはない - シェルスクリプトが実行時に埋め込まれたヘッダーメタデータから動的に計算する |
| リリース日 | Makeself first released ~1998; the .run convention popularized by NVIDIA/3rd-party Linux installers (2000s) |
| 最新バージョン | Makeself 2.7.1 (2025) |
| オープンスタンダード | はい · ロイヤリティフリー |
| 仕様書 | makeself.io |
RUN の変換
コミュニティ Q&A
ユーザーからの質問まだ質問はありません。RUN ファイルについて最初の質問をしてみましょう。