2007-04-04

關於LiveCD 的 casper

Debian LiveCD 的 booting control 是藉用 Ubuntu 的 casper 來進行的.
而 casper 有一個缺點就是如果開機時指定 toram 它會把 live_media 整層
全都 copy 進 RAM, 事實上只需要 live_media/casper 這一層放進 RAM 即
可, 不必浪費 RAM.
所以改一下 casper 裡的
cp -a ${copyfrom}/* ${copyto} 改成
cp -a ${copyfrom}/casper ${copyto}

另外系統壓縮檔的檔名 filesystem.squashfs 實在太長太囉嗦了也順便改一
下成為 filesys.sqf 以符合 8.3 格式, 特別是在 fat 時會比較好用.
這只需把 casper 裡的 squashfs 全部改成 sqf 即可.

另外, casper 的啟動順序是
/init
/scripts/init-premount
mountroot()
find_lifefs()
mount mount_images_in_directory()
setup_unionfs()
/scripts/casper-bottom
/scripts/init-bottom

如果要指定 bootfrom 的話, 一定要搭配 live-media-timeout=秒 才會生效,
不然它會搜尋 partition 裡第一個有 /casper 的來當 /live_media

沒有留言: