他のシステムにインストールするために ISO を使用できるようなカスタマイズされた Linux OS の ISO を構築するにはどうすればよいでしょうか?

他のシステムにインストールするために ISO を使用できるようなカスタマイズされた Linux OS の ISO を構築するにはどうすればよいでしょうか?

USB スティックに Centos6.7 の最小バージョンをインストールし、いくつかのアプリケーション/パッケージをコピー/インストールし、それに応じてカスタマイズしました。

今、カスタマイズした OS の ISO を作成し、ISO を使用して他のシステムにインストールしたいと考えています。

それは可能ですか?

前もって感謝します。

答え1

たとえば、Microsoft Windows とは異なり、ファイルシステム上のファイルには魔法や特別なことは何もありません。システムが最初にインストールされたときとは別のディスクセクターにファイルがあっても、システムが壊れることはありません。つまり、ファイルシステム全体を 1 つのディスクから別のディスクにコピーするだけで、問題なく動作します。

これを知っておくと、次のことが可能になります。

  • tar cfxz mysystem.tar.gz /

/boot、/home、/usr、または /var が別のファイルシステム上にある場合は、tar コマンドラインでそれらをリストする必要があります。 オプションは、、および-xを除外してマウントされたファイルシステムへの降下を防ぎます。たとえば、これらがすべて別々にマウントされたファイルシステムである場合は、次のようになります。/proc/sys

tar cfxz mysystem.tar.gz / /boot /home /usr /var

インストールに合わせて調整します。

  • USBスティックを作成するgparted
  • 取り付ける
  • mysystem.tar.gzそこにコピーします。
  • アンマウントします。

  • USB スティック (またはそのコピー) をインストールが必要な人に、以下の手順を添えて送信します。

    1. 起動する
    2. gparted を使用してパーティション (rootfs、swap、その他) を作成します。
    3. ルートシェルを起動する
    4. パーティションを /target の下にマウントします。たとえば、/dev/sda1 と /dev/sda2 に / と /boot がある場合:

    mkdir -p /target mount /dev/sda1 /target mkdir -p /target/boot mount /dev/sda2 /boot

    1. 抽出mysystem.tar.gz/target:

    tar xfz /mysystem.tar.gz -C /target

    1. 必要に応じて編集し/target/etc/fstab、新しいシステムのファイルシステムと一致するようにします。

    2. 存在する場合は/target/etc/udev/rules/70-persistent-net.rules削除します。

    3. 実行するために /target に chroot する準備をしますgrub-install:

    for i in proc dev sys dev/pts ; do mount -o bind /$i /target/$i ; done

    1. chroot /target
    2. install-grub /dev/sda
    3. exit
    4. for i in proc dev sys dev/pts boot /; do umount /target/$i ; done
    5. 再起動します。システムが新しいディスクに複製されるはずです。

gpartedこの方法は、 と のコピーの両方を含む起動可能な CD または DVD を作成する場合も同様に機能しますmysystem.tar.gz

答え2

ddiso を作成するには以下を使用できます:

sudo dd if=/dev/sda of=/path/to/new/iso.iso

(それに応じてif(入力ファイル) とof(出力ファイル) を変更します。)

インストールしたいすべてのディスクにインストールするには、次の手順を実行します。

sudo dd if=/path/to/iso.iso of=/dev/sdb

(それに応じてif(入力ファイル) とof(出力ファイル) を変更します。)

関連情報