/dev/hda3 swap swap defaults 0 0
/dev/fd0 /mnt/floppy ext2 user,noauto 0 0
/dev/cdrom /mnt/cdrom iso9660 user,noauto,ro 0 0
none proc proc defaults 0 0
/dev/hda1 /mnt/dos msdos user,noauto 0 0
[olivier@snoopy olivier] less /etc/lilo.conf
boot=/dev/hda
map=/boot/map
install=/boot/boot.b
prompt
timeout=500
image=/boot/vmlinuz-2.0.34-1
label=linux
root=/dev/hda2
read-only
other=/dev/hda1
label=dos
table=/dev/hda
重新建立 Windows 的硬碟分割区
从现在起你一定得用 root 的身份操作。我尤其建议你用 root 登入(别用 su)。如果你用的是 vi 编辑器,你可能要下 w! 指令才能存档。建议你在每回存档完後,检查是否修改过的档案真的被存起来了。 (离开编辑器用 less 指令来查看)
你现在要用 fdisk 和 mke2fs 两个指令。这些可以在硬碟或是其它储存媒体上用。在使用前最好是不要连接 (mount) 要修改的那一个分割区。请看底下的三个步骤:
- 如果你要的分割区已经被连接上了,用 umount 指令来分离,如: umount /mnt/dos
- 启动 fdisk。更换 hda1 的分割区类别 (System Id)。我们现在告诉 fdisk 这个分割区要改成为 Linux 自有的分割区 (Linux Native Partition)。用 t 指令 (t, 1, 83)来修改。再用 p 指令来查看。唯一不同的地方是 Unkown 现在变成了 linux native 还有 System Id 现在变成了 83。最後,用 w 指令储存和离开。用 fdisk -l 指令再看一次。离开时我遇到以下的错误讯息:
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
Re-read table failed with error 16: Device or resource busy.
Reboot your system to ensure the partition table is updated.
但我不理会它所以没有重新开机。
- 格式化 (Format): mke2fs /dev/hda1。你会先看见很多数字在跳动,然後就再也见不到 Windows 了! 你也可以在 mke2fs 後加上 -c 的参数,这样可以顺便检查硬碟有没有损坏的地方。
好啦! Windows 没啦! 其实我并不是很排斥 Win98 (但讨厌 Microsoft),只是很喜欢 Linux...
使用新的分割区
好了,现在我有一个 1.5 Gb 的空白分割区,我打算把 600 Mb 拿来做 /home , 800 Mb 做 / 和 100 Mb 做交换区 (Swap partition)。我把 /home/myaccount 里 100Mb 的资料移到 /usr/local ,把 /usr/local 留在 hda2 上再把 / 移到 hda1 上:
Filesystem 1024-blocks Used Available Capacity Mounted on
/dev/hda1 1600672 465000 1130672 29% /
/dev/hda2 796065 110000 696065 13% /usr/local
/dev/hda4 628351 40739 587612 6% /home
足够我用好几年了....
照我上面的计划,我得先把 hda1 连接起来才行。一般就连接到 /mnt 即可。
- 在 /mnt 底下再建一个 tmp 的次目录 (sub-directory) 。来连接 hda1: mkdir/mnt/tmp.
- 连接 hda1 到 /mnt/tmp : mount -t ext2 /dev/hda1 /mnt/tmp (-t ext2 指定档案系统的种类)。
- 复制 / 到 /mnt/tmp/ 但保留目录结构: cp -ax / /mnt/tmp/。-a 参数在 man 说明里解释为: <
- 但这样做还是有一些地方不完整,因为 -x 参数的关系有两个目录没有被复制进来, /home 和 /proc。所以现在我们要在新的分割区上建立这两个目录: mkdir /mnt/tmp/home 然後 mkdir /mnt/tmp/proc 这两个目录一定不可漏掉,这样 /home (在 hda3 上) 和 /proc 以後才可以被连接上。
