summaryrefslogtreecommitdiffstats
path: root/docs/mastering-tool-for-restore-cd
diff options
context:
space:
mode:
authorPascal Rigaux <pixel@mandriva.com>2005-10-18 09:07:21 +0000
committerPascal Rigaux <pixel@mandriva.com>2005-10-18 09:07:21 +0000
commit4f19af9d55aacf5fea713bddf772001d674487f2 (patch)
tree44982eb5dd1b3d72d6cb05ef5d55a259fc426110 /docs/mastering-tool-for-restore-cd
parent2f78cbdc5d1ee3bb439fc8968c36a19175909dfa (diff)
downloaddrakx-4f19af9d55aacf5fea713bddf772001d674487f2.tar
drakx-4f19af9d55aacf5fea713bddf772001d674487f2.tar.gz
drakx-4f19af9d55aacf5fea713bddf772001d674487f2.tar.bz2
drakx-4f19af9d55aacf5fea713bddf772001d674487f2.tar.xz
drakx-4f19af9d55aacf5fea713bddf772001d674487f2.zip
*** empty log message ***
Diffstat (limited to 'docs/mastering-tool-for-restore-cd')
-rw-r--r--docs/mastering-tool-for-restore-cd84
1 files changed, 84 insertions, 0 deletions
diff --git a/docs/mastering-tool-for-restore-cd b/docs/mastering-tool-for-restore-cd
new file mode 100644
index 000000000..f915b5059
--- /dev/null
+++ b/docs/mastering-tool-for-restore-cd
@@ -0,0 +1,84 @@
+Restore CD architecture ########################################################
+
+the restore CD is based on a mdv rescue CD.
+it typically contains:
+
+ data/box.XXX/lst
+ data/box.XXX/hda5
+ isolinux/all.rdz
+ isolinux/isolinux.bin
+ isolinux/isolinux.cfg
+ isolinux/vmlinuz
+ install/stage2/rescue.clp
+
+
+ data/box.XXX #######################################################
+
+ - lst contains the partition table and the drive geometry
+ (the format is custom, read and generated by partimage_whole_disk)
+
+ - hda5 is an imagefile, a mirror of /dev/hda5
+ (the format is partimage only, the idea of partimage is same as dump(8))
+
+ isolinux ###########################################################
+
+ - kernel and stage1 (same as standard mdv rescue)
+
+ - isolinux.cfg customized to call directly save_all or rest_all
+ (with option keepmounted for rest_all)
+
+ install/stage2/rescue.clp ##########################################
+
+ - compressed loopback containing a iso9660 filesystem.
+ it is mostly the same as the mdv rescue.clp, *plus* partimage_whole_disk
+ (nb : use extract_compressed_fs/create_compressed_fs to expand/create rescue.clp)
+
+
+Mastering process ##############################################################
+
+1. install a distribution and customize it
+
+ nb: it's better to leave an empty space on the disk after the /home
+ partition (since the restore script grows it, it's no waste) to allow
+ adapting to different disk geometry without failing
+
+2. boot on part_save_all.iso
+3. "partimage_whole_disk -s hostfoo save_all /data/box" is called
+ 3.1. it connects to partimaged server on hostfoo
+ 3.2. it fins the first free /data/box.XXX
+ 3.3. it saves the partition table and geometry in /data/box.XXX/lst calling
+ partimage with action save_file (need a patched partimage)
+ 3.4. it saves the devices needing to be saved calling partimage with action save.
+ nb: it doesn't save swap partitions (useless)
+ nb: it doesn't save ntfs/fat partitions
+ nb: with option save_home_directory, the last linux partition is not saved
+
+4. a restore CD iso is built using the data from step (3.)
+5. restore CD is burned
+
+6. restore CD booted on the target computer
+7. "partimage_whole_disk rest_all /data/box.XXX" is called
+ 7.1. it resizes main windows partition if wanted and needed
+ 7.2. it gets the partition table and geometry and creates partition table
+ accordingly
+ 7.3. it creates swap partitions if needed
+ 7.4. it restores linux partitions
+ 7.5. it creates linux partitions if wanted (esp. for /home)
+ 7.6. it grows the last linux partition if wanted (esp. for /home)
+ 7.7. it installs the bootloader (calling rescue script "install_bootloader")
+
+
+Build process ##################################################################
+
+- patched partimaged must be installed and launched
+ (one gets patched partimage rpm building with option "--with jail")
+
+- the data gets to /var/lib/partimage/data/box.XXX (owned by user partimag)
+
+- sudo chmod a+r /var/lib/partimage/data/*/*
+
+- in gi/rescue, call
+ ./make_partimage_save_rest_all partimage-0.6.4-7mdk.i586.rpm /var/lib/partimage /data/box.XXX
+
+ => it calls ./make_rescue_img with special options to create a special rescue.clp
+ => generates part_save_all.iso and part_rest_all.iso