Ich habe eine Minimalversion von CentOS 6.7 auf einem USB-Stick installiert, einige Anwendungen/Pakete kopiert/installiert und entsprechend angepasst.
Jetzt möchte ich ein ISO meines angepassten Betriebssystems erstellen und es mithilfe des ISO auf anderen Systemen installieren.
Ist das möglich?
Dank im Voraus.
Antwort1
Anders als beispielsweise bei Microsoft Windows sind die Dateien im Dateisystem nichts Magisches oder Besonderes. Das System bricht nicht zusammen, wenn sie sich in einem anderen Sektor der Festplatte befinden als bei der Erstinstallation. Das heißt, Sie können einfach eine Dateikopie des gesamten Dateisystems von einer Festplatte auf eine andere erstellen und es funktioniert einfach.
Wenn Sie dies wissen, können Sie:
tar cfxz mysystem.tar.gz /
Wenn sich /boot, /home, /usr oder /var auf separaten Dateisystemen befinden, müssen Sie sie in der Tar-Befehlszeile auflisten. Die -x
Option verhindert den Abstieg in gemountete Dateisysteme, um /proc
, und auszuschließen /sys
. Beispiel: wenn es sich bei allen um separat gemountete Dateisysteme handelt:
tar cfxz mysystem.tar.gz / /boot /home /usr /var
Passen Sie es an Ihre Installation an.
- Erstellen Sie einen USB-Stick mit
gparted
- Montieren Sie es
- Kopiere
mysystem.tar.gz
es dorthin. unmounten Sie es.
Senden Sie den USB-Stick (oder eine Kopie davon) an die Person, die das Programm installieren muss, mit den Anweisungen:
- booten
- Verwenden Sie gparted, um die Partitionen (Rootfs, Swap und andere) zu erstellen.
- Rufen Sie eine Root-Shell auf
- mounten Sie die Partitionen unter /target. Beispiel: wenn Sie / und /boot auf /dev/sda1 und /dev/sda2 haben:
mkdir -p /target mount /dev/sda1 /target mkdir -p /target/boot mount /dev/sda2 /boot
- Extrahieren
mysystem.tar.gz
auf/target
:
tar xfz /mysystem.tar.gz -C /target
Bearbeiten Sie
/target/etc/fstab
es nach Bedarf, damit es mit den Dateisystemen auf diesem neuen System übereinstimmt.falls
/target/etc/udev/rules/70-persistent-net.rules
vorhanden, löschen Sie es.Bereiten Sie sich auf das Chrooten in /target vor, um Folgendes auszuführen
grub-install
:
for i in proc dev sys dev/pts ; do mount -o bind /$i /target/$i ; done
chroot /target
install-grub /dev/sda
exit
for i in proc dev sys dev/pts boot /; do umount /target/$i ; done
- Neustart. Ihr System sollte auf die neue Festplatte geklont werden.
Diese Methode funktioniert genauso gut, wenn Sie eine bootfähige CD oder DVD erstellen, die beides gparted
und eine Kopie von enthält mysystem.tar.gz
.
Antwort2
Sie können dd
zum Erstellen des ISO Folgendes verwenden:
sudo dd if=/dev/sda of=/path/to/new/iso.iso
(Ändern Sie if
(Eingabedatei) und of
(Ausgabedatei) entsprechend.)
Und um es auf jeder Festplatte zu installieren, auf der Sie es installieren möchten:
sudo dd if=/path/to/iso.iso of=/dev/sdb
(Ändern Sie if
(Eingabedatei) und of
(Ausgabedatei) entsprechend.)