close

前一陣子風行一時的 Live CD,打著作業系統全裝到光碟裡,不怕損壞,隨身攜帶的口號,的確讓我很心動。
但是 Live CD 要使用就得燒一片,現在隨身碟體積小,又不怕刮。
改成隨身碟會更方便。我目前先試著將別人打包好的 Live CD 換成 Live USB。
希望以後可以自己打包 Live USB 而不用透過 Live CD 轉包過來。

我經過這幾天終於試出來如何從 Live CD 轉包成 Live USB。
採用 Linux 作業環境的人,可以更方便,隨便 google 都有可以參考。

我的工作環境是 notebook + winxp + USB 的 SD讀取機 + 1G SD卡。應該通用於USB隨身碟。
使用的軟體工具是 Grub4Dos, 7Zip。
1. 把 GRUB 裝到 USB SD 卡裡
有個 Grub4Dos 專案,可以在 M$ 環境使用GRUB,我們只要使用其中的 grubutil 裡頭的 grubinst_gui.exe 就可以把 GRUB 裝到 SD 卡的 MBR 裡。在這個步驟最怕的就是把原來硬碟的 MBR 給蓋過去,用這個工具就不用去猜你的 USB 是什麼代號了。 接著要把 grub4dos 的 grldr 放到隨身碟的根目錄中,這樣就可以了。
參考
http://blog.teatime.com.tw/1/post/277
https://gna.org/projects/grubutil/
https://gna.org/projects/grub4dos/
2. 下載 Live CD 並搬移檔案至 SD 卡裡
下載 Live CD 的位置,大家應該都很熟。
在 M$ 環境要解 iso 大家也許都不是很熟,其實常用的 7zip 這個免費工具,除了解壓縮之外,iso 也解得開。
把 iso 裡的東西 copy 到 SD 卡的最上層目錄即可
參考
Gentoo Live CD 下載點:
http://bouncer.gentoo.org/fetch/gentoo-2008.0-livecd/x86/
7zip官方網站:
http://www.7-zip.org/
3. 設定 GRUB 開機選項
首先要把 SD 卡裡的 isolinux 目錄底下的東西,全部搬到 SD 卡的最上層。
然後,把 isolinux.cfg 檔案打開來參考。你會看到

代碼:

label gentoo
  kernel gentoo
  append root=/dev/ram0 init=/linuxrc  dokeymap looptype=squashfs loop=/image.squashfs  cdroot initrd=gentoo.igz vga=791

這就是我們要抄的地方。
在 SD 卡的最上層目錄,建立一個檔案叫做 menu.lst,內容如下:

代碼:

title gentoo
root (hd0,0)
kernel (hd0,0)/gentoo append root=/dev/ram0 init=/linuxrc  dokeymap looptype=squashfs loop=/image.squashfs cdroot slowusb
initrd (hd0,0)/gentoo.igz

比對兩者你就知道該怎麼改了,主要是在 root (hd0,0), kernel (hd0,0)/gentoo 這兩個地方的 (hd0,0) 是給 grub 看的。在 chroot 後面加入 slowusb 是給開機程序看的。然後,我卡最久的是 initrd (hd0,0)/gentoo.igz 要分到下一行,這樣才行。我猜這是 GRUB 的關係。
4. 開機設定
到這裡只剩下,把 BIOS 的開機順序調一下,讓 USB 裝置可以開機,就大工告成了。
謝謝大家。

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 betaparticle 的頭像
    betaparticle

    betaparticle的部落格

    betaparticle 發表在 痞客邦 留言(0) 人氣()