Ubuntu で Cubic を使用して ISO イメージファイルを作る

Cubic は,Ubuntu の ISO イメージファイルをカスタマイズするグラフィカルなツールである。次の操作を行うことができる。

◆ カスタマイズした ISO イメージファイルの用途

カスタマイズした ISO イメージファイルから,「Ubuntu でライブ USB メモリ の作成」の手順で ライブ USB メモリ を作ることができる。このライブ USB メモリでは次のことができる。

◆ このページでは次のことを行う.(Ubuntu 環境を想定)

前準備 (Ubuntu 環境)

  1. システム更新

    Cubic をインストールする前に,作業に使う Ubuntu を最新の状態にする。

    システム更新: 別ページ »で説明

    sudo apt update
    sudo apt upgrade -y
    
  2. Ubuntu の ISO イメージファイルを入手しておく

    カスタマイズの元にする公式の ISO イメージファイル(例: ubuntu-26.04-desktop-amd64.iso)をダウンロードする。

Cubic のインストール (Ubuntu)

Cubic は Ubuntu の公式リポジトリには含まれていない。PPA (Personal Package Archive) を追加してインストールする。Cubic は Ubuntu 18.04.5 以降,および Debian 11 以降とその派生ディストリビューションに対応している。

  1. universe リポジトリと Cubic の PPA を追加する。
    sudo apt-add-repository universe
    sudo apt-add-repository ppa:cubic-wizard/release
    

    リポジトリの追加を確認するプロンプトが表示されたら,Enter キーを押す。

  2. パッケージリストを更新する。
    sudo apt update
    
  3. Cubic をインストールする。
    sudo apt install --no-install-recommends cubic
    

    --no-install-recommends は,推奨パッケージを併せてインストールしないようにするオプションである。

使ってみる (Cubic の基本的な使い方)

Cubic はウィザード形式で,画面下部の「Next」ボタンで次のページに進む。

  1. Cubic を起動

    アプリケーションメニューから「Cubic」を検索して起動する。

  2. プロジェクトディレクトリの選択

    Cubic は作業用にプロジェクトディレクトリを使う。空のディレクトリを選択または新規作成する。ISO イメージの展開と生成のため,数十 GB の空き容量があるディレクトリを選ぶ。

  3. 元となる ISO イメージの選択(Project ページ)

    「前準備」でダウンロードした Ubuntu の公式 ISO イメージファイル(ubuntu-26.04-desktop-amd64.iso など)を選択する。

    カスタマイズ後の ISO に関する情報(ファイル名,バージョン,ボリューム ID など)が自動で入力される。必要に応じて編集する。

    「Next」をクリックすると,ISO ファイルの展開と仮想環境の準備が始まる。これには数分かかる場合がある。

  4. 不要な snap パッケージの削除(Snaps ページ)

    ISO に含まれる snap パッケージの一覧が表示される。削除するものにチェックを付ける。

    Ubuntu のインストーラは snap パッケージであるため,snapd パッケージは削除しない。

  5. chroot 環境でのカスタマイズ(Terminal ページ)

    仮想環境のターミナルが表示される。ここがカスタマイズ作業の中心である。root でログインした状態であるため,sudo を付ける必要はない。

    このターミナル内での操作は,作成される ISO イメージに直接反映される。

    この仮想環境は chroot によるファイルシステムであり,systemd,snapd,X11 などのサービスは動作しない。

    以下は,このターミナル内で行うカスタマイズ操作の例である。

    • パッケージリストの更新とアップグレード
      apt update
      apt upgrade -y
      
    • リポジトリの追加

      Ubuntu 24.04 以降では,APT のリポジトリ設定は deb822 形式で /etc/apt/sources.list.d/ubuntu.sources に置かれている。PPA を追加する場合は次のように操作する(リポジトリの追加はシステムの安定性に影響する場合がある)。

      apt install -y software-properties-common
      add-apt-repository -y ppa:mozillateam/ppa
      apt update
      

      設定ファイルを直接編集する場合は nano エディタを使う。Ctrl+O で保存,Ctrl+X で終了する。

      nano /etc/apt/sources.list.d/ubuntu.sources
      apt update
      
    • 不要なパッケージの削除

      ISO イメージのサイズを減らしたり,用途を特化させたりできる。インストールされているパッケージだけを指定する。

      # 例: ゲームの削除
      apt purge -y gnome-sudoku gnome-mines gnome-mahjongg
      
      # 例: Snaps ページで Thunderbird の snap を削除した場合,対応する deb パッケージも削除
      apt --yes autoremove --purge '?name(thunderbird)'
      
    • 必要なパッケージの追加

      必要なソフトウェアをあらかじめ ISO イメージに含めることができる。snap パッケージは Cubic ではインストールできない。

      # 例: VLC メディアプレイヤーのインストール
      apt install -y vlc
      
      # 例: Git のインストール
      apt install -y git
      
      # 例: LibreOffice の主要コンポーネントのインストール
      apt install -y libreoffice-calc libreoffice-writer libreoffice-impress
      
    • 設定ファイルの編集や追加

      chroot 環境内で /etc 以下の設定ファイルを編集できる。/etc/skel/ にファイルを置くと,新しいユーザの作成時にそのファイルがホームディレクトリにコピーされる。

    • ファイルのコピー

      ホスト OS のファイルをカスタマイズ環境にコピーするには,ターミナルウィンドウにファイルをドラッグ&ドロップするか,ヘッダーバーのコピーボタンを使う。ファイルはターミナルの現在のディレクトリにコピーされるため,あらかじめ cd でコピー先に移動しておく。

      # 例: 壁紙を追加する場合,先にコピー先へ移動する
      cd /usr/share/backgrounds
      
    • 依存関係の修復

      パッケージ操作後に依存関係の問題が発生した場合に実行する。

      apt -f install
      

    カスタマイズ作業が終わったら「Next」をクリックする。

  6. パッケージ一覧の確認(Packages ページ)

    カスタマイズ後のファイルシステムに含まれるパッケージの一覧(マニフェスト)が表示される。ライブ環境のみに残すパッケージと,インストール後のシステムに残すパッケージを選択できる。

  7. カーネルなどの選択(Options ページ)

    Kernel タブでは,ISO の起動に使用する Linux カーネルを選択する。Preseed タブでは自動インストール用の設定ファイル,Boot タブではブートローダの設定ファイルを編集できる。内容を変更する必要がない場合は,そのまま「Next」をクリックする。

  8. 圧縮方式の選択(Compression ページ)

    ファイルシステムの圧縮に使うアルゴリズムを lz4,lzo,gzip,zstd,xz から選択する。既定は gzip である。lz4 に近いものほど処理は速く生成される ISO は大きくなり,xz に近いものほど処理は遅く ISO は小さくなる。

  9. ISO イメージの生成(Generate ページ)

    「Generate」をクリックすると,カスタマイズ内容を反映した新しい ISO イメージファイルの生成が始まる。これには数分から数十分かかる場合がある。

  10. 完了の確認(Finish ページ)

    生成が完了すると,作成された ISO ファイルのパスと,MD5 チェックサムファイルのパスが表示される。指定したプロジェクトディレクトリ内に,カスタマイズされた ISO イメージファイル(*.iso)が作成されている。

    「Test」ボタンをクリックすると,QEMU エミュレータが起動して,生成した ISO のライブ環境を確認できる。「Close」をクリックすると Cubic を終了する。「Delete all project files...」にチェックを付けて終了した場合,ISO ファイルとチェックサムファイルは残るが,そのプロジェクトのカスタマイズを後から続けることはできなくなる。

できた ISO イメージファイルを使ってみる

作成したカスタマイズ ISO イメージが意図通りに動作するかを確認する。

Ubuntu Desktop 23.04 以降,および Ubuntu Server 21.10 以降では,インストーラの snap パッケージを含む overlay ファイルシステムにより,カスタマイズ内容の一部がライブ環境で見えないことがある。overlay ファイルシステムはインストール時にはコピーされないため,Terminal ページで行ったカスタマイズはインストール後のシステムに反映される。

◆ qemu を用いたシステム起動チェック

仮想環境で起動テストを行う。Cubic の「Test」ボタンで起動する QEMU エミュレータはディスクを持たないためインストールの確認はできないが,次の手順で仮想ディスクを用意すればインストールまで確認できる。

(/path/to/your/custom.iso は,作成した ISO ファイルのパスに置き換える。-m 4096 はメモリ割り当て量 (MB) の例であり,環境に合わせて調整する。)

# qemu-system-x86 と qemu-utils をインストール
sudo apt -y update
sudo apt -y install qemu-system-x86 qemu-utils
# 仮想ディスクイメージを作成 (テスト用,80G は例)
qemu-img create -f qcow2 cubic_test.img 80G
# 64 ビット Linux ISO の場合
qemu-system-x86_64 -enable-kvm -hda cubic_test.img -cdrom /path/to/your/custom.iso -boot d -m 4096 -usb

◆ ISO イメージファイルを VMware Workstation Pro / VirtualBox を使って起動

VMware Workstation Pro や VirtualBox でも起動テストができる。VMware Workstation Pro は,個人・商用のいずれの用途でも無償で利用できる。仮想マシンの設定で,作成した ISO イメージファイルを CD/DVD ドライブにマウントして起動する。仮想マシンの OS タイプは「Ubuntu (64-bit)」を選択する。

◆ Rufus や balenaEtcher を用いてライブ USB メモリを作成し,実機で起動

実機での動作確認を行う場合は,Rufus (Windows) や balenaEtcher (Linux, macOS, Windows) を使って,作成した ISO イメージファイルからライブ USB メモリを作成する。作成した USB メモリから PC を起動し,Ubuntu が起動すること,カスタマイズが反映されていることを確認する。

実機で起動しない場合は,PC 起動時に SHIFT キー(BIOS の場合)または ESC キー(UEFI の場合)を押しながら起動して GRUB メニューを表示し,「Advanced options for Ubuntu」からリカバリモード (recovery mode) を選んで起動を試す。リカバリモードでは,グラフィックスドライバやネットワークの問題を切り分けることができる。