Linux下如何删除Windows分区( 二 )






你得修改两个设定档;/etc/fstab;和;/etc/lilo.conf;,它们看起来有点像底下的输出 。;

[olivier@snoopy;olivier];less;/etc/fstab

/dev/hda2;;/;ext2;defaults1;1
/dev/hda4;;/home;;;;;ext2;defaults1;2
/dev/hda3;;swap;;;;;;swap;defaults0;0
/dev/fd0;;;/mnt/floppy;;;;;;;ext2;user,noauto;;;;;0;0
/dev/cdrom;/mnt/cdromiso9660;;;;;;user,noauto,ro;;0;0
none;;;;;;;proc;;;;;;proc;defaults0;0
/dev/hda1;;/mnt/dos;;msdosuser,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/hda11600672;;;;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;说明里解释为:;<>;请自行参考;cp;的;man;说明 。-x;参数指定不要把和现在所在位置不同的分割区也包括进来 。以我为例,这样就不会把;/home;一起复制了 。整个复制过程在我的;AMD;K6;266;上花了;15;分钟 。所以你可以先去喝杯咖啡或威士忌再回来 。;

-;但这样做还是有一些地方不完整,因为;-x;参数的关系有两个目录没有被复制进来,;/home;和;/proc 。所以现在我们要在新的分割区上建立这两个目录:;mkdir;/mnt/tmp/home;然後;mkdir;/mnt/tmp/proc;这两个目录一定不可漏掉,这样;/home;(在;hda3;上);和;/proc;以後才可以被连接上 。;

推荐阅读