ext2,ext3,reiserfs,hfs(MAC操作系统的文件系统),swap交换分区等等。
如果用户新增了一个硬盘,可能想格式化成linux的文件系统,最佳选择是reiserfs或ext3。速度最快的当属reiserfs,reiserfs还有很多优点,比如更安全。Ext3是redhat认为最好的文件系统。
2,格式化工具mkfs
以fedora4.0为例,我们常用的工具有mkfs, mkfs.ext3, mkfs.reiserfs, mkfs.ext2, mkfs.msdos, mkfs.vfat, mkswap。
如果用户无法使用mkfs.reiserfs或者mkreiserfs命令,这是由于没有安装reiserfs-utils工具包。
Mkfs命令的使用方法
# mkfs –t 文件系统 存储设备(比如pv或者lv)
这里的文件系统是要指定的,比如ext3,reiserfs,ext2,fat32,msdos等。。。
设备可以是一个硬盘的分区physical volume或者逻辑分区 logical volume。在进行格式化之前,可以使用fdisk –l来查看pv的创建情况。 或者使用lvscan来查看lv的创建情况。
比如我们想格式化物理卷 /dev/sda6为ext3文件系统, 则可以使用下面的命令 # mkfs –t ext3 /dev/sda6
比如我们想格式化逻辑卷 /dev/jax_vg1/jax_lv11为ext3文件系统,可以使用下面的命令。
# mkfs –t ext3 /dev/jax_vg1/jax_lv11
这样就格式化好了,jax_lv11现在就是ext3文件系统了;我们可以使用mount加载这个分区,然后使用这个文件系统。
# mkdir /oracle/jax_lv11
# chmod 777 /oracle/jax_lv11
# mount /dev/jax_vg1/jax_lv11 /oracle/jax_lv11 当然,我们也可以把分区格式化成其他的文件系统;比如我们把/dev/sde7格式化为ext3,ext2, reiserfs, fat32,msdos文件系统,命令格式如下。
# mkfs –t ext3 /dev/sde7 # mkfs –t ext2 /dev/sde7 # mkfs –t reiserfs /dev/sde7 # mkfs –t fat32 /dev/sde7
3,mkfs.ext3 mkfs.reiserfs mkfs.ext2
其实mkfs在执行命令的时候就是调用这里的几个工具。命令的功能就像他们在命令名称中暗示的那样。
比如我们把/dev/sde7格式化为ext3,ext2, reiserfs, fat32,msdos文件系统,命令格式如下。 # mkfs.ext3 /dev/sde7 # mkfs.ext2 /dev/sde7 # mkfs.reiserfs /dev/sde7 # mkfs.fat32 /dev/sde7
4,mkswap把一个分区格式化成为swap交换区
# mkswap /dev/sde7 //格式化为swap交换分区 # swapon /dev/sde7 //加载交换分区 # swapoff /dev/sde7 //关闭交换分区 查看交换分区可以使用下面的命令 # swapon –s
上面我们说使用命令swapon /dev/sde7可以加载分区。 而如果我们想让swap开机就加载,应该修改/etc/fstab文件。或者把命令行swapon /dev/sde7直接写入 /etc/rc.d/rc.local中也行。
如果您的硬盘不能再分区,可以创建一个swap文件。
# dd if = /dev/zero of=/tmp/swap bs=1024 count=524288 //在/tmp中创建一个大小为524MB的文件
# mkswap /tmp/swap //把文件/tmp/swap创建成swap交换区 # swapon /tmp/swap // 装载swap交换分区
其实,我们在安装系统的时候已经划分了交换分区;查看/etc/fstab可以看到有swap的行存在,如果您在安装系统时没有添加swap,可以通过上面介绍的方法来添加。 2.6 挂载文件系统 挂载文件系统有两种方式:1,使用mount挂载; 2,通过修改/etc/fstab来开机自动加载。挂载文件系统的命令格式:
# mount –t 文件系统 -o 选项 设备 目录 -t 通过这个参数来制定文件系统的类型,一般情况下不必指定有时也能识别。-t后可以跟ext2,ext3,reiserfs,vfat,ntfs等。如果忘记了文件系统,也可以在-t后加auto。-o这个选项有权限,用户,磁盘限额,语言编码等,具体选项可以查看man mount。设备指存储设备,比如/dev/sda1,/dev/sdd2,可以通过fdisk –l或者lvscan来查看。
1,使用mount来挂载光驱和软驱
一般情况下光驱设备是/dev/cdrom;软驱设备是/dev/fd0。 举例:
# mount /dev/cdrom # mount /dev/fd0
上述命令主要用来挂载光驱和软驱,至于mount到什么地方了,可以通过查看/etc/fstab来查看,同理软驱/dev/fd0设备也是如此。
/dev/hdc /media/cdrecorder auto users,exec,noauto,managed 0 0
上述查看结果表明光盘被mount到了 /media/cdrecorder目录,我们也可以自己指定cdrom的挂载位置。比如/mnt/cdrom,所以我们也可以这样来挂载光驱:
# mkdir /mnt/cdrom
# mount /dev/cdrom /mnt/cdrom
我们先建一个目录,然后执行mount命令,这样就挂载到/mnt/cdrom中了,之后我们就
可以在目录/mnt/cdrom中查看光盘中的资料和文件。这个目录用户想怎么建立就怎么建立。用什么目录不是最重要的。重要的是您知道自己在做什么。
2,使用mount挂载硬盘和移动硬盘的文件系统
一个分区只有创建了文件系统之后才能使用,前面我们说过,在linux中一般使用ext2,ext3,reiserfs,fat32,msdos,ntfs等文件系统。
对于ext2,ext3,reiserfs不需要指定文件系统的编码,其实mount也没有这个功能,这些linux文件系统,如果出现编码问题,一般是通过export LANG来指定,所以挂载这些文件系统比较简单。首先我们得建立一个文件系统挂载的目录,我们前面已经提到了,一个文件系统的分区要挂载到系统中,必须要有一个挂载点,也就是一个目录。
如下脚本完成一个分区到一个目录的挂载工作。 # mkdir /mnt/had5/ 注: 先创建一个挂载目录;
# chmod 777 /mnt/hda5/ 注: 设置目录的可读写权限
# mount –t ext3 /dev/hda5 /mnt/hda5 注:通过-t ext3来指定/dev/hda5是ext3文件系统,并且挂载到/mnt/hda5目录上。
# mount –t auto /dev/hda5 /mnt/hda5 注:假如我们不知道hda5上是什么文件系统,可以使用-t auto让系统定夺,然后挂载到/mnt/hda5
# mount /dev/hda5 /mnt/hda5 注:不加任何参数,直接mount,系统自动判断分区文件系统。
完成操作后,我们可以通过df –lh命令来确认是否已经挂载成功。
3,卸载文件系统umount
命令用法:
# umount 设备或挂载目录 举例:
# umount /dev/cdrom 注:卸载cdrom # umount /dev/fd0 注:卸载软驱 查看分区是否被挂载可以使用mount –s # mount –s
4,通过/etc/fstab文件来开机自动挂载文件系统
首先我们来查看/etc/fstab,主要看他的规范写法
# This file is edited by fstab-sync - see 'man fstab-sync' for details LABEL=/1 / ext3 defaults 1 1 /dev/devpts /dev/pts devpts gid=5,mode=620 0 0 /dev/shm /dev/shm tmpfs defaults 0 0 /dev/proc /proc proc defaults 0 0 /dev/sys /sys sysfs defaults 0 0
LABEL=SWAP-hda7 swap swap defaults 0 0
/dev/hdc /media/cdrecorder auto users,exec,noauto,managed 0 0
第一个字段,设备名,这里表示是文件系统。有时我们把挂载文件系统也说成挂载分区,在这个字段中也可以用分区标签;在例子中 /LABEL=/1就是fedora系统安装分区的标签,至于是在哪个分区,可以用df –lh查看。
[root@localhost beinan]# df -lh
Filesystem 容量 已用 可用 已用% 挂载点 /dev/hda8 11G 8.5G 1.9G 83% / /dev/shm 236M 0 236M 0% /dev/shm /dev/hda10 16G 6.9G 8.3G 46% /mnt/hda10
从上面的显示结果,我们可以知道label=/1是/dev/hda8的标签。
那么我们用什么命令来创建硬盘分区的标签呢?对于ext2和ext3文件系统,可以用e2label device [newlabel]。比如我们想把文件系统为ext3的分区/dev/hda9的标签设置/5,可以使用下面的命令:
# e2label /dev/hda9 /5 # mkdir /mnt/hda9
# chmod 777 /mnt/hda9
然后我们要在/etc/fstab中加入一行
/5 /mnt/hda9 ext3 defaults 0 0
警告: 上述测试请不要在linux的安装分区实践,否则会导致linux系统崩溃。 第三字段:文件系统类型; 第四字段:mount命令的选项;
第五字段:表示文件系统是否需要dump备份,1是需要,0不需要;
第六字段:是否在系统启动时,通过fsck磁盘检测工具来检查文件系统,1是需要,0不需要,2是跳过。
5,对文件系统进行扫描fsck
大家对windows中的scandisk不陌生吧,在linux中就有类似这样的工具fsck,不过fsck可不仅仅是扫描,还能修正文件系统的一些问题。值得注意的是fsck扫描文件系统时一定要在单用户模式,修复模式或者把设备umount后进行。警告,如果扫描正在运行中的系统,会造成系统文件损坏。如果系统正常,请不要用扫描工具,它可能会把您的系统搞坏掉,fsck运行是有危险的。
2.7 调整逻辑卷中文件系统的大小 建议在包含重要数据的分区操作之前先在不包含重要数据的文件系统中进行调整大小的测试。
强烈建议在调整文件系统之前创建和校对数据备份。 另外,读者被鼓励使用man帮助文档来熟悉操作命令。
1,lvextend & lvreduce命令调整逻辑卷
Lvextend命令用来执行逻辑卷lv的扩展工作。Lvreduce命令用来收缩指定逻辑卷的大小。
语法: Lvextend
[-A| --autobackup y|n ] [--alloc AllocationPolicy] [-d | --debug] [-f | --force] [-h | --help]
[-i | --stripes Stripes]
{-l | --extents [+]LogicalExtentsNumber[%{VG|PVS|FREE}] | -L| --size [+]LogicalVolumeSize[kKmMgGtTpPeE]} [-m| --mirrors Mirrors] [-n| --nofsck] [-r| --resizefs] [-t| --test]
[--type VolumeType] [-v| --verbose] [--version]
LogicalVolume[Path] [PhysicalVolumePath…] 选项 -l, --extents [+]LogicalExtentsNumber[%{VG|LV|PVS|FREE}]
扩展或者设置逻辑卷大小,默认单位为LE的大小。如果给+参数,表示为现有逻辑卷增加LogicalExtents大小,否则将逻辑卷调整为LogicalExtents。另外如果希望将卷组的10%附加给当前逻辑卷可以通过如下方式给定 +10 %VG
-L,--size [+]LogicalVolumeSize[kKmMgGtTpPeE] 扩展或者设置逻辑卷大小,默认单位为MB。 示例 Lvextend –L +54 /dev/vg01/lvol10 /dev/sdk3将从物理卷 /dev/sdk3中增加54MB的空间到逻辑卷 /dev/vg01/lvol10中去。这里有个前提就是物理卷/dev/sdk3是卷组/dev/vg01的一个成员并且物理卷/dev/sdk3上有足够的空间可以分配。
Lvextend /dev/vg01/lvol10 /dev/sdk3跟命令Lvextend –l +100%PVS /dev/vg01/lvol10 /dev/sdk3具有同样的功能,都是将物理卷/dev/sdk3中所有剩余的空间都分配给逻辑卷/dev/vg01/lvol10。
2,ext2online修改逻辑卷
执行完上述命令后要使用ext2online命令刷新逻辑卷,使得逻辑卷空间改变。
Ext2online工具现在只能用来重设置ext3类型的文件系统,而ext2resize可以重设ext2和ext3两种文件系统大小。
返回值