您的位置:首页 > 运维架构 > Linux

Linux 创建文件系统及挂载文件系统详解

2012-08-08 17:23 120 查看
转载地址 :http://13233.blog.51cto.com/3233/82682/

[align=left]摘要:[/align]
[align=left]本文对新增硬盘,切割硬盘,创建硬盘分区,为硬盘分区创建文件系统,以及加载文件系统的流程做总结性论述;[/align]
[align=left]主要是为初学者弄清楚这一操作过程;[/align]
[align=left]本文涉及fdisk、mkfs、mount ... ... 等工具;[/align]
[align=left]对/etc/fstab 进行了解说;[/align]
[align=left]还有磁盘扫描工具fsck 等介绍;[/align]
如果您想加载一个分区(文件系统),首先您得确认文件系统的类型,然后才能挂载使用,比如通过mount 加载,或者通过修改 /etc/fstab来开机自动加载;

如果您想添加一个新的分区,或者增加一个新的硬盘,您要通过分区工具来添加分区,然后要创建分区的文件系统,然后才是挂载文件系统;比如通过mount 加载,或者通过修改 /etc/fstab来开机自动加载;
[align=left]一、对存储设备的分区;[/align]
我们这里所指的存储设备主要是本地硬盘、移动硬盘(比如USB
和1394接口的硬盘);由于磁盘很大并且为了满足我们各种需要,所以把硬盘分成若干个分区;
[align=left]在 Linux中进行硬盘分区操作的工具有:[/align]
[align=left]fdisk ,目前看来也是最好用的分区工具;[/align]
[align=left]parted 和cfdisk在某一方面有点优点,如 parted中的数据备份功能;[/align]
[align=left]推荐您用 fdisk 分区工具;[/align]
[align=left]二、存储设备进行格式化,即建立文件系统的过程;[/align]
[align=left]1、文件系统的一点介绍[/align]
[align=left]对存储设备分区还是远远不够的,我们还要对这些新增分区进行格式化;一个分区只有建立了某种文件系统后,这个分区才能使用;建立文件系统过程,就是用相应格式化工具格式化分区的过程;[/align]
[align=left]在Linux操作系统中,目前几乎支持目前主流的文件系统,比如NTFS(只读)、FAT(可读可写)、ext2、ext3、reiserfs、hfs (MAC 操作系统的文件系统)、swap 交换分区... ... 还有一些不熟悉的操作系统的文件系统等;[/align]
在Linux中,我们常用的文件系统无非是上面例出的这些;如果您新增了一个硬盘,可能想格式化成
Linux的文件系统,最佳选择是 reiserfs
或ext3;
[align=left]ext2的使用风险比较大;[/align]
速度最快的文件系统,当属reiserfs;reiserfs
还有很多优点,比如更安全;
[align=left]ext3是Redhat认为最好的文件系统;[/align]
[align=left]2、格式化工具介绍和使用;[/align]
我们常用的工具mkfs mkfs.ext3 mkfs.reiserfs mkfs.ext2 mkfs.msdos mkfs.vfat mkswap

[align=left]提示:如果您不能创建reiserfs 文件系统,也就是说没有mkfs.reiserfs 或者mkreiserfs 命令[/align]
[align=left]1)mkfs的使用;[/align]
[align=left]使用方法:[/align]
[align=left][root@localhost]# mkfs -t 文件系统 存储设备[/align]
注:

这里的文件系统是要指定的,比如 ext3 ;reiserfs ;ext2 ;fat32 ;msdos 等... ...

设备比如是一个硬盘的分区,软盘,光驱等.. ...
[align=left]在格式化分区之前,您得懂得如何查看硬盘分区情况,并有针对性的格式化;比如用 fdisk -l 来查看; [/align]
[align=left]比如我想格式化一个移动U盘中的一个分区;应该是:[/align]
[root@localhost]# fdisk -l

Disk /dev/hda: 80.0 GB, 80026361856 bytes

255 heads, 63 sectors/track, 9729 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System

/dev/hda1 * 1 765 6144831 7 HPFS/NTFS

/dev/hda2 766 2805 16386300 c W95 FAT32 (LBA)

/dev/hda3 2806 9729 55617030 5 Extended

/dev/hda5 2806 3825 8193118+ 83 Linux

/dev/hda6 3826 5100 10241406 83 Linux

/dev/hda7 5101 5198 787153+ 82 Linux swap / Solaris

/dev/hda8 5199 6657 11719386 83 Linux

/dev/hda9 6658 7751 8787523+ 83 Linux

/dev/hda10 7752 9729 15888253+ 83 Linux

Disk /dev/sda: 1035 MB, 1035730944 bytes

256 heads, 63 sectors/track, 125 cylinders

Units = cylinders of 16128 * 512 = 8257536 bytes

Device Boot Start End Blocks Id System

/dev/sda1 1 25 201568+ 83 Linux

/dev/sda2 26 125 806400 5 Extended

/dev/sda5 26 50 201568+ 83 Linux

/dev/sda6 51 76 200781 83 Linux
[align=left]sda这个设备是移动U盘,所以可以用 fdisk -l /dev/sda专门来显示他的分区情况;[/align]
[align=left]格式化 /dev/sda6 分区为 ext3文件系统,则为:[/align]
[root@localhost]# mkfs -t ext3 /dev/sda6

mke2fs 1.37 (21-Mar-2005)

Filesystem label=

OS type: Linux

Block size=1024 (log=0)

Fragment size=1024 (log=0)

50200 inodes, 200780 blocks

10039 blocks (5.00%) reserved for the super user

First data block=1

Maximum filesystem blocks=67371008

25 block groups

8192 blocks per group, 8192 fragments per group

2008 inodes per group

Superblock backups stored on blocks:

8193, 24577, 40961, 57345, 73729

Writing inode tables: done

Creating journal (4096 blocks): done

Writing superblocks and filesystem accounting information:注:在这里直接回车;

done

This filesystem will be automatically checked every 26 mounts or

180 days, whichever comes first. Use tune2fs -c or -i to override.
[align=left]这样就格式化好了,sda6现在就是ext3文件系统了;我们就可以用mount 加载这个分区,然后使用这个文件系统;[/align]
[root@localhost]# mkdir /mnt/sda6

[root@localhost]# chmod 777 /mnt/sda6

[root@localhost]# mount /dev/sda6 /mnt/sda6
[align=left]当然您也可以把分区格式化成其它的文件系统;比如我们把 /dev/sda6格式化为ext3 、ext2、reiserfs、fat32、msdos 文件系统,命令格式如下;[/align]
[root@localhost]# mkfs -t ext3 /dev/sda6

[root@localhost]# mkfs -t ext2 /dev/sda6

[root@localhost]# mkfs -t reiserfs /dev/sda6

[root@localhost]# mkfs -t fat32 /dev/sda6

[root@localhost]# mkfs -t msdos /dev/sda6

... ...


2)mkfs.ext3 mkfs.reiserfs mkfs.ext2 mkfs.msdos mkfs.vfat mke2fs
的介绍;

[align=left]mkfs.ext3 mkfs.reiserfs mkfs.ext2 mkdosfs mkfs.msdos mkfs.vfat ,其实mkfs 在执行的命令的时候,也是调用的这些工具;[/align]
通过文件名,我们就知道这些工具是支持什么文件系统;这些命令为我们提供了更多的方便;

[root@localhost]# mkfs.ext3 /dev/sda6
注:把该设备格式化成ext3文件系统

[root@localhost]# mke2fs -j /dev/sda6 注:把该设备格式化成ext3文件系统

[root@localhost]# mkfs.ext2 /dev/sda6 注:把该设备格式化成ext2文件系统

root@localhost]# mke2fs /dev/sda6 注:把该设备格式化成ext2文件系统

[root@localhost]# mkfs.reiserfs /dev/sda6
注:把该设备格式化成reiserfs文件系统

[root@localhost]# mkfs.vfat /dev/sda6 注:把该设备格式化成fat32文件系统

[root@localhost]# mkfs.msdos /dev/sda6 注:把该设备格式化成fat16文件系统,msdos文件系统就是fat16;

[root@localhost]# mkdosfs /dev/sda6 注:把该设备格式化成fat16文件系统,同mkfs.msdos

... ...
[align=left][/align]
2)mkswap
把一个分区格式化成为swap交换区;

[root@localhost]# mkswap /dev/sda6
注:创建此分区为swap 交换分区

[root@localhost]# swapon /dev/sda6 注:加载交换分区;

[root@localhost]# swapoff /dev/sda6 注:关闭交换分区;
[align=left][/align]
[align=left]查看系统已经加载的swap交换分区;[/align]
[root@localhost]# swapon /dev/sda6 注:加载交换分区;

[root@localhost]# swapon -s

Filename Type Size Used Priority

/dev/hda7 partition 787144 0 -1

/dev/sda6 partition 225144 0 -3

如果让swap开机就加载,应该改 /etc/fstab文件,加类似如下一行;

/dev/sda6 swap swap defaults 0 0 注:把此行中的/dev/hda7 改为您的交换分区就行;
[align=left]或者把命令行直接写入 /etc/rc.d/rc.local中也行;[/align]
[align=left]swapon /dev/sda6[/align]
[align=left]如果您的硬盘不能再分区,您可以创建一个swap文件[/align]
[root@localhost]# dd if=/dev/zero of=/tmp/swap bs=1024 count=524288
注:创建一个大小为512M 的swap 文件,在/tmp目录中;您可以根据自己的需要的大小来创建swap 文件;

读入了 524288+0 个块

输出了 524288+0 个块

[root@localhost]# mkswap /tmp/swap 注:把/tmp/swap 文件,创建成swap 交换区

Setting up swapspace version 1, size = 536866 kB

no label, UUID=d9d8645d-92cb-4d33-b36e-075bb0a2e278

[root@localhost]# swapon /tmp/swap 注:挂载swap

[root@localhost]# swapon -s

Filename Type Size Used Priority

/dev/hda7 partition 787144 888 -1

/tmp/swap file 524280 0 -2
[align=left]注意:其实我们在安装系统的时候,就已经划分了交换分区;查看/etc/fstab,应该swap的行;如果您在安装系统时没有添加swap,可以通过这种办法来添加;[/align]
[align=left]后续还有![/align]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: