作者:马路遥 本文选自:开放系统世界——赛迪网
2002年10月14日
任何电脑操作系统都有自己的磁盘管理工具,不论是DOS、Windows,还是Linux、FreeBSD及Solaris。没有磁盘管理工具,操作系统就不能安装和工作。如果要能从裸机上安装操作系统,则安装程序本身就要拥有磁盘分区和格式化磁盘的功能。本文专门介绍Linux下的磁盘管理工具。
与DOS和Windows相同,Linux下的分区命令也是fdisk。它是完全字符界面的工具,好多初学者对其望而生畏。其实不然,fdisk
有详细的提示信息,非常简单易用,而且功能远比DOS和Windows 的fdisk强大。
fdisk -l
命令显示已经存在的分区。
对/dev/hda 进行分区的命令是:
| fdisk /dev/hda |
这时就进入了交互界面。
m 显示fdisk提示,这个是最常见的。
p 显示目前的分区情况。
n 新增分区。
d
删除分区。
t 改变分区格式。
l 支持分区列表。它可以支持的分区有DOS/FAT16/FAT32/OS2等等。
q
退出,没有保存这次修改。如果你只是想熟悉一下fdisk 的使用方法,最后就要用q退出
w 把分区修改写入磁盘。
用过PQ-Magic 工具调整分区大小的人可能不少,但知道Linux也可以调整分区的人恐怕就不多了。Linux有个parted
工具可以调整分区,但它的使用有些限制。如果想增大一个分区,那么该分区后边必须有未使用的空间,而且这个分区没有mount。
使用parted
/dev/hda p 命令,则显示:

含义是分区3从728.438M开始,至800.296M结束.而磁盘的总容量是999.632M,这时如果想加大分区3,则使用下面的命令:
| parted /dev/hda resize 3 728.438 999.632 |
意思是把分区3调整为从728.438M至999.632M结束。
现在最好是重新安装一次您的grub或者lilo,再启动机器,分区的改变就生效了。
许多用了多年Linux的人可能也没有用过e2label命令。但是这个命令相当有效。在介绍它之前,我们先看看 /etc/fstab 文件:
| label=//ext3 defaults 1 1 /dev/hda7 /usr ext3 defaults 1 1 |
第二行的意思很容易懂,就是把/dev/hda7 mount到/usr 上。第一行没有指明分区,意思是把label(卷标)为/ 的分区mount到/上。这样写的好处在于即使如果把硬盘从主板上的ide0(hda) 换到ide2(hdc)上,系统仍然可以自动挂载正确的分区。通常Linux安装的时候已经自动指定了卷标。如果是手动增加的新分区,可以用下边的命令为其指定卷标:
| e2label /dev/hdax /new mkdir /new |
然后在/etc/fstab 里加入:
| label=/new /new ext3 defaults 1 1 |
下次重新起动机器的时候,就会把卷标为/new 的分区挂接到/new上。
Red Hat
7.x可以采用ext3文件系统。本文无意详细比较ext2和ext3的优缺点,简单地说ext3比ext2好。如果要把以前的ext2文件系统转化为ext3文件系统,就可以用命令
| tune2fs -j -e 0 -i 0 /dev/hdax |
有时候因为突然断电或者其他原因导致磁盘错误,就需要用到磁盘修复工具e2fsck了。命令如下:
| e2fsck /dev/hdax -a |
注意:一般情况下,可以用e2fsck -p /dev/hdax
方法自动修复损坏了的分区,但e2fsck不能修复已经mount的硬盘。
总体而言,Linux 上进行系统管理不但不比DOS/Windows
9x Fdisk/Format工具复杂,而且比DOS/Windows 9x上的功能更加强大。
然而,相对于Windows
2000的图形化磁盘管理工具,Linux的分区管理工具就不够简单易用。但是,Windows
2000没有创建和识别FAT和NTFS以外的分区能力。
Linux几乎对所有操作系统的分区都能支持,唯一遗憾的是它对NTFS分区的管理能力不足。如果你的电脑上除了Windows系统之外,还存在Linux/FreeBSD/Solaris
x86等其它操作系统的话,就不得不放弃Windows
2000的管理工具,而采用Unix/Linux的磁盘管理工具。
能够熟练地进行磁盘管理对用好Linux非常重要。磁盘管理最好的学习方法就是多学多练,请谨记在进行大胆的尝试之前,务必先小心地进行备份。磁盘管理的误操作经常会造成致命的损害。