任何电脑操作系统都有自己的磁盘管理工具,不论是DOS、Windows,还是Linux、FreeBSD及Solaris。没有磁盘管理工具,操作系统就不能安装和工作。如果要能从裸机上安装操作系统,则安装程序本身就要拥有磁盘分区和格式化磁盘的功能。本文专门介绍Linux下的磁盘管理工具。
唯我独尊的fdisk
与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 把分区修改写入磁盘。
伸缩自如的parted
用过PQ-Magic 工具调整分区大小的人可能不少,但知道Linux也可以调整分区的人恐怕就不多了。Linux有个parted 工具可以调整分区,但它的使用有些限制。如果想增大一个分区,那么该分区后边必须有未使用的空间,而且这个分区没有mount。
使用fdisk-l命令,则显示:
Disk /dev/hda: 255 heads, 63 sectors, 2498 cylinders
Units = cylinders of 16065 * 512 bytes
Device Boot Start End Blocks Id System
/dev/hda1 * 1 6 48163+ 83 Linux
...................
/dev/hda3 644 1159 4144770 83 Linux
...................
含义是分区3从柱面644开始,至1159结束,大小是4144770K。
这时如果想加大分区3,则使用下面的命令:
parted /dev/hda resize 3 644 1300
意思是把分区3调整为从柱面644至柱面1300结束。
重新启动机器,分区的改变就生效了。
e2label的妙用
许多用了多年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上。
tune2fs狸猫换太子
Red Hat 7.x可以采用ext3文件系统。本文无意详细比较ext2和ext3的优缺点,简单地说ext3比ext2好。如果要把以前的ext2文件系统转化为ext3文件系统,就可以用命令
tune2fs -j -e 0 -i 0 /dev/hdax
秩序的世界mkfs
mkfs相当于DOS/Windows中的格式化命令。不同的是Linux可以支持ext2/dos/vfat/等分区的格式化工作,不像Windows通常只能格式化 DOS/FAT32/FAT16/NTFS分区。
举例说明:
mkdosfs一看就知道是DOS格式的;
mke2fs格式化ext2文件系统;
mkfs.bfs格式化SCO Unix 文件系统;
mkfs.ext2也是格式化ext2用的;
mkfs.ext3格式化ext3文件系统;
mkfs.minix格式化minix文件系统的.minux ,它是个教学用的Unix;
mkfs.msdos一看就知道是DOS格式的;
mkfs.reiserfs文件系统.reiserfs是Linux玩家一个替代ext2/ext3的选择,但它被认为还不够稳定;
mkreiserfs和mkfs.reiserfs相同;
mkfs.vfat格式化fat分区;
mkswap格式化Linux 的交换分区。
e2fsck拯救磁盘
有时候因为突然断电或者其他原因导致磁盘错误,就需要用到磁盘修复工具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非常重要。磁盘管理最好的学习方法就是多学多练,请谨记在进行大胆的尝试之前,务必先小心地进行备份。磁盘管理的误操作经常会造成致命的损害。