在U盘上装Linux系统

在U盘上装Linux系统

为了方便Linux系统在硬盘上的安装和特殊情况下的系统管理,有时候需要借助于硬盘之外的Linux系统,LiveCD可以刻录在光盘上,小一些的可以装在U盘上。

一、在U盘上建立Linux文件系统
最新版的grub能否识识别U盘上的内核呢,我试了一下,不同的文件系统有的能挂载,有的挂不了,vfat文件系统,能挂载,但它不属于Linux文件系统。ext3文件系统,无法挂载(奇怪,不知道为什么)。reiserfs文件系统,能挂载。

最后,用reiserfs是成功的。

二、U盘上的操作系统的选择
puppy是一个非常小的LiveCD,可用于U盘,我下载了: puppy-4.00-k2.6.21.7-seamonkey.iso,一共才88M,挂载后的内容如下:

# ls
boot.cat  boot.msg  initrd.gz  isolinux.bin  isolinux.cfg  pup_400.sfs  vmlinuz  zdrv_400.sfs

将pup_400.sfs挂载于另一目录,内容如下:

# ls -p
archive/  bin/  dev/  etc/  lib/  mnt/  opt/  proc/  root/  sbin/  tmp/  usr/  var/

不可能全都拷到U盘里,因为我的U盘才128兆,只能有选择地拷贝,放弃/usr,只要其它的:

bin/  dev/  etc/  lib/  mnt/  opt/  proc/  root/  sbin/  tmp/  var/

并mkdir一个boot文件夹,把前面的vmlinuz 和 initrd.gz 放进去。

重新启动电脑,grub中

root (hd2,0)
kernel /boot/vmlinuz root=/dev/hda2
initrd /boot/initrd.gz
boot

因为有两块硬盘的存在,所以U盘被识别为hd2,成功地boot进入之后,有功能比较齐全的shell可用,而这样一个Linux系统只占了48M的空间。
应该是hdb或者sdb吧,Linux设备命名我记得是hda,hdb,...或者是 sda,sdb,..呀,难道又改了?