Chinaunix首页 | 论坛 | 博客
  • 博客访问: 29420032
  • 博文数量: 2065
  • 博客积分: 10377
  • 博客等级: 上将
  • 技术积分: 21525
  • 用 户 组: 普通用户
  • 注册时间: 2008-11-04 17:50
文章分类

全部博文(2065)

文章存档

2012年(2)

2011年(19)

2010年(1160)

2009年(969)

2008年(153)

分类: LINUX

2010-07-20 15:37:28

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

作者:北南南北
来自: LinuxSir.Org
摘要:本文对新增硬盘,切割硬盘,创建硬盘分区,为硬盘分区创建文件系统,以及加载文件系统的流程做总结性论述;主要是为初学者弄清楚这一操作过程;本文 涉及fdiskmkfsmount ... ... 等工具;对/etc/fstab 进行了解说;还有磁盘扫描工具fsck 等介绍;
++++++++++++++++++++++++++++++++++++++++++++++++++++++
正文
++++++++++++++++++++++++++++++++++++++++++++++++++++++

阅读此文,必须具备知识点:



如果您想加载一个分区(文件系统),首先您得确认文件系统的类型,然后才能挂载使用,比如通过mount 加载,或者通过修改 /etc/fstab来开机自动加载;
果您想添加一个新的分区,或者增加一个新的硬盘,您要通过分区工具来添加分区,然后要创建分区的文件系统,然后才是挂载文件系统;比如通过mount 加载,或者通过修改 /etc/fstab来开机自动加载;

笔记:1、使用分区工具来添加分区 ---- 2、对这个新分区创建文件系统 --- 3、然后再mount加载

本文总有一部份是您想要的;比如在新的分区上创建文件系统,如何挂载;如何卸载文件系统或者设备(比如cdrom )等;我建您最好通读本文,然后根据自己的需要再做选择性实践; Linux的一个小问题涉及的很多方面的知识,有时一篇文档是难以说清楚;我为了尽可能详细解说每一个过程,所以把分区工具、创建文件系统工具、查看文件 系统的工具分开来说,主要是让初学者比较容易理解。希望您能理解本人的用心;传说北南长的比较丑,但心的还是善良的 ... ...我是不会用一些垃圾文档来害您 ... ... 哈哈 ... ... 言归正传,开文~~~~
一、对存储设备的分区;
我们这里所指的存储设备主要是本地硬盘、移动硬盘(比如USB 1394接口的硬盘);由于磁盘很大并且为了满足我们各种需要,所以把硬盘分成若干个分区;比如我们可以用这个分区来安装Linux系统,那个分区用来 安装Windows系统... ... ;这点小事大家都明白;

笔记:这个就跟我们PC机的道理是一样的,我买了一块500G的硬盘总不至于就一个C盘吧。我总想划分出来一个C盘用来安装OS、一个D盘用来存放数据、一个E盘用来干嘛的。这其实就是一个分区的概念

至于如何在 Linux中进行硬盘分区操作,我们推荐您用 fdisk ,目前看来也是最好用的分区工具;其它工具比如parted cfdisk在某一方面有点优点,但这些优点可能为大家带来一些方便 ,比如 parted中的数据备份功能,这个功能对老手来说可能是优点,但对新手来说,的确是有风险的;所以我们还是推荐您用 fdisk 分区工具; fdisk 的使用说明: 请参考:
二、存储设备进行格式化,即建立文件系统的过程;

1
、文件系统的一点介绍
我们对存储设备分区还是远远不够的,我们还要对这些新增分区进行格式化;一个分区只有建立了某种文件系统后,这个分区才能使用;

笔记:还记得我们安装WEIN系统的过程不,先是格式化磁盘然后再对分区做一次格式化。比如你是用FAT还是使用NTFS

建立文件系统过程,就是用 相应格式化工具格式化分区的过程,这个过程和我们在Windows中格式化某个分区为NTFS分区类似;没有什么高深的内容,只是所用的工具不一样罢了; Linux操作系统中,目前几乎支持目前主流的文件系统,比如NTFS(只读)、FAT(可读可写)、ext2ext3reiserfshfs (MAC 操作系统的文件系统)、swap 交换分区... ... 还有一些咱们不熟悉的操作系统的文件系统等; Linux中,我们常用的文件系统无非是上面例出的这些;如果您新增了一个硬盘,可能想格式化成 Linux的文件系统,最佳选择是 reiserfs ext3;目前ext2已被 ext3取代;我们不推荐用ext2文件系统,ext2的使用风险比较大;速度最快的文件系统,当属reiserfsreiserfs 还有很多优点,比如更安全;ext3Redhat认为最好的文件系统,所以在Fedora 4.0在安装时,特地为reiserfs 的选择弄出点麻烦; 相对来说reiserfs还是比ext3要优秀;如果想深入学习文件系统的,您可以到官方论坛找相应的资料,最好是实践实践;

2
、格式化工具介绍和使用;

笔记:其实就是相当于如何格式化你的磁盘分区是用EXT3还是什么。这就是命令
fedora 4.0为例,我们常用的工具mkfs mkfs.ext3 mkfs.reiserfs mkfs.ext2 mkfs.msdos mkfs.vfat mkswap 提示:如果您不能创建reiserfs 文件系统,也就是说没有mkfs.reiserfs 或者mkreiserfs 命令,是您没有安装reiserfs-utils工具包,请参考:
1
mkfs的使用;
使用方法:

[root@localhost beinan]# mkfs -t 文件系统  存储设备

笔记:其中的存储设备其实就是表示哪块磁盘是D盘还是C盘的概念

注:
这里的文件系统是要指定的,比如 ext3 reiserfs ext2 fat32 msdos ... ...
设备比如是一个硬盘的分区,软盘,光驱等.. ... 在格式化分区之前,您得懂得如何查看硬盘分区情况,并有针对性的格式化;比如用 fdisk -l 来查看; 请参考: 比如我想格式化一个移动U盘中的一个分区;全景应该是:

[root@localhost beinan]# 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

我们可以看到有sda这个设备,所以可以用 fdisk -l /dev/sda专门来显示他的分区情况;比如我想格式化 /dev/sda6 分区为 ext3文件系统,则为:

[root@localhost beinan]# 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.

这样就格式化好了,sda6现在就是ext3文件系统了;我们就可以用mount 加载这个分区,然后使用这个文件系统;

[root@localhost beinan]# mkdir /mnt/sda6
[root@localhost beinan]# chmod 777 /mnt/sda6
[root@localhost beinan]# mount /dev/sda6   /mnt/sda6 [
加载分区]

当然您也可以把分区格式化成其它的文件系统;比如我们把 /dev/sda6格式化为ext3 ext2reiserfsfat32msdos 文件系统,命令格式如下;

[root@localhost beinan]# mkfs -t ext3  /dev/sda6
[root@localhost beinan]# mkfs -t ext2  /dev/sda6
[root@localhost beinan]# mkfs -t reiserfs  /dev/sda6
[root@localhost beinan]# mkfs -t fat32   /dev/sda6
[root@localhost beinan]# mkfs -t msdos   /dev/sda6
... ...


2
mkfs.ext3 mkfs.reiserfs mkfs.ext2 mkfs.msdos mkfs.vfat mke2fs 的介绍;
我们先说了一个mkfs 工具后,我们再来介绍 mkfs.ext3 mkfs.reiserfs mkfs.ext2 mkdosfs mkfs.msdos mkfs.vfat ,其实mkfs 在执行的命令的时候,也是调用的这个工具,这也是我先把mkfs介绍的主要原因; 通过文件名,我们就知道这些工具是支持什么文件系统;这些命令为我们提供了更多的方便;

[root@localhost beinan]# mkfs.ext3    /dev/sda6     注:把该设备格式化成ext3文件系统
[root@localhost beinan]# mke2fs -j   /dev/sda6      
注:把该设备格式化成ext3文件系统
[root@localhost beinan]# mkfs.ext2  /dev/sda6      
注:把该设备格式化成ext2文件系统
root@localhost beinan]# mke2fs    /dev/sda6         
注:把该设备格式化成ext2文件系统
[root@localhost beinan]# mkfs.reiserfs  /dev/sda6  
注:把该设备格式化成reiserfs文件系统
[root@localhost beinan]# mkfs.vfat   /dev/sda6       
注:把该设备格式化成fat32文件系统
[root@localhost beinan]# mkfs.msdos   /dev/sda6  
注:把该设备格式化成fat16文件系统,msdos文件系统就是fat16
[root@localhost beinan]# mkdosfs   /dev/sda6        
注:把该设备格式化成fat16文件系统,同mkfs.msdos
... ...


2
mkswap 把一个分区格式化成为swap交换区;

[root@localhost beinan]# mkswap /dev/sda6  注:创建此分区为swap 交换分区
[root@localhost beinan]# swapon  /dev/sda6 
注:加载交换分区;
[root@localhost beinan]# swapoff  /dev/sda6 
注:关闭交换分区;

我们查看系统已经加载的swap交换分区;

[root@localhost beinan]# swapon  /dev/sda6  注:加载交换分区;
[root@localhost beinan]# swapon -s               
Filename                                Type            Size    Used    Priority
/dev/hda7                               partition       787144  0       -1
/dev/sda6                               partition       225144  0       -3


为什么我的系统有两个交换分区?因为我用移动U盘做的实验,主要是为写教程之用;sda6是我在U盘上建的swap分区;

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


/dev/sda6         swap                    swap    defaults        0 0 
注:把此行中的/dev/hda7 改为您的交换分区就行;

或者把命令行直接写入 /etc/rc.d/rc.local中也行;

swapon  /dev/sda6  笔记:开机自动加载swap分区

如果您的硬盘不能再分区,您可以创建一个swap文件

[root@localhost beinan]# dd if=/dev/zero of=/tmp/swap bs=1024 count=524288

注:创建一个大小为512M swap 文件,在/tmp目录中;您可以根据自己的需要的大小来创建swap 文件;

读入了 524288+0 个块
输出了 524288+0 个块
[root@localhost beinan]# mkswap /tmp/swap
注:把/tmp/swap 文件,创建成swap 交换区
Setting up swapspace version 1, size = 536866 kB
no label, UUID=d9d8645d-92cb-4d33-b36e-075bb0a2e278
[root@localhost beinan]# swapon /tmp/swap  
注:挂载swap

[root@localhost beinan]# swapon -s
Filename Type Size Used Priority
/dev/hda7 partition 787144 888 -1
/tmp/swap file 524280 0 -2

注意:其实我们在安装系统的时候,就已经划分了交换分区;查看/etc/fstab,应该swap的行;如果您在安装系统时没有添加swap,可以通过这种办法来添加;
三、挂载文件系统;
挂载文件系统,目前有两种方法,一是通过 mount 来挂载,另一种方法是通过/etc/fstab文件来开机自动挂载

笔记:通过分区格式化之后如何挂载当前这个文件系统呢
1
、通过mount 来挂载磁盘分区(或存储设备)
mount
的用法其实也简单,我们说几个常用的;

挂载文件系统的命令格式:

[root@localhost beinan]# mount  [-t  文件系统 ]  [-o  选项设备  目录

注: -t 通过这个参数,我们来指定文件系统的类型,一般的情况下不必指定有时也能识加,-t 后面跟 ext3 ext2 reiserfsvfat ntfs 等,其中 vfat fat32fat16分区文件系统所所用的参数;如果您忘记了文件系统,也可以在-t 后面加auto -o 这个选项,主要选项有权限、用户、磁盘限额、语言编码等,但语言编码的选项,大多用于vfatntfs文件系统;由于选项太多,还是请您看看 man mount ;这里不多说; 设备 指存储设备,比如/dev/hda1 /dev/sda1 cdrom ...至于您的系统中有哪些存储设备,主要通过 fdisk -l 或者查看 /etc/fstab dmesg ;一般的情况下光驱设备是/dev/cdrom ;软驱设备是/dev/fd0 ;硬盘及移动硬盘以 fdisk -l 的输出为准;
1
)对光驱和软驱的挂载;


举例:

[root@localhost beinan]# mount /dev/cdrom
[root@localhost beinan]# mount /dev/fd0

第一行是mount 光驱,至于mount 到哪了,我们可以通过查看 /etc/fstab来查看;同理软驱/dev/fd0设备也是如此;比如我们在/etc/fstab

/dev/hdc                /media/cdrecorder       auto    users,exec,noauto,managed 0 0

我们可以肯定的是光盘被mount 到了 /media/cdrecorder 目录; 但我们也可以自己来指定cdrom 挂载的位置 ;比如 /mnt/cdrom ,所以我们也可以这样来挂载光驱;

[root@localhost beinan]#mkdir /mnt/cdrom
[root@localhost beinan]# mount /dev/cdrom  /mnt/cdrom

们先建一个目录,然后执行mount 命令,这样cdrom 就挂在 /mnt/cdrom 中了;我们就可以在/mnt/cdrom 中查看光盘中资料和文件;这个目录您想怎么建就怎么建。用什么目录不是最重要的。重要的是您知道自己在做什么就行了。比如我们也可以把这个目录建成 dvdrom ;然后用 mount /dev/cdrom /mnt/dvdrom 来挂载; 有时我们的设备是COMBO的,有支持dvd cd 还能支持刻录的;我们最好查一下光驱设备的,主要有两个方法,一是通过查看 /etc/fstab ,二是通过ls -l 来查看;比如我们在/etc/fstab中查看到类似下面的一行;

/dev/hdc                /media/cdrecorder       auto    users,exec,noauto,managed 0 0

通过这个,我们能知道hdc 就是cdrom 也是dvdrom的设备 ,更是 cdrecorder的设备;为了验证我们的说法;请用ls -l 来列文件;

[root@localhost beinan]# ls -lh /dev/dvd*
lrwxrwxrwx  1 root root 3 2005-09-13  /dev/dvd -> hdc
[root@localhost beinan]# ls -lh /dev/cdrom
lrwxrwxrwx  1 root root 3 2005-09-13  /dev/cdrom -> hdc
[root@localhost beinan]# ls -lh /dev/cdwriter
lrwxrwxrwx  1 root root 3 2005-09-13  /dev/cdwriter -> hdc

这不一目了然了吗?dvd cdrom cdwriter 的文件名都链接到了hdc这个设备,所以光驱设备根源就是/dev/hdc ;所以我们也可以这样挂载光驱;

[root@localhost beinan]# mkdir /mnt/cdrom
[root@localhost beinan]# mount  /dev/hdc   /mnt/cdrom

笔记:通过这个命令mount  /dev/hdc   /mnt/cdrom  把这个分区挂载到这个目录/mnt/cdrom下面我们就可以进入到这个目录下查看这个分区里面的全部资料信息了


2
)挂载硬盘和移动硬盘的文件系统;
一个分区只有创建了文件系统后才能使用,前面我们说过了,我们在Linux大多用的是ext2 ext3reiserfsfat32msdos ntfs等;

[1]
挂载Linux文件系统;
对于ext2 ext3 reiserfs 不需要指定文件系统的编码,其实mount 也没有这个功能;这些Linux文件系统,如果出现编码问题,一般是通过export LANG来指定;所以挂载这些文件系统比较简单; 首先我们得建一个文件系统挂载的目录;我们前面已经提到了;一个有文件系统的分区要挂到系统中,必须要有一个挂载点;这个挂载点就是一个目录;比如我们通过fdisk -l 得知hda5 Linux分区,并且创建了文件系统,比如是reiserfs 文件系统吧;

[root@localhost beinan]# fdisk -l /dev/hda

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

我们先用fdisk -l 来查看一下分区情况:我们想要挂载/dev/hda5分区,比如hda5分区创建的是reiserfs文件系统;

[root@localhost beinan]# mkdir /mnt/hda5/   注:先创建一个挂载目录;
[root@localhost beinan]# chmod 777  /mnt/hda5/   
注:设置/mnt/hda5的权限为任何用户可写可读可执行;这样所有的用户都能在写入;
[root@localhost beinan]# mount -t reiserfs /dev/hda5 /mnt/hda5   
注:通过-t reiserfs 来指定/dev/hda5reiserfs 文件系统, 并且挂载到/mnt/hda5目录;

笔记:如何挂载一个分区
[root@localhost beinan]# mount  -t auto   /dev/hda5 /mnt/hda5  
注:假如我们不知道hda5reiserfs 文件系统,我们可以用 -t auto 让系统定夺,然后挂载到/mnt/hda5
[root@localhost beinan]# mount /dev/hda5 /mnt/hda5  
注:不加任何参数,直接 mount   /dev/hda5 /mnt/hda5;系统自动判断分区文件系统;

是不是被挂载了,我们通过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
/dev/hda5             7.9G  5.8G  2.1G  74% /mnt/hda5





[2]
挂载Windows文件系统;
请参考:
3
)卸载文件系统umount


命令用法:

[root@localhost beinan]# umount  设备或挂载目录



举例:

[root@localhost beinan]# mount -t auto /dev/hda5 /mnt/hda5   注:挂载/dev/hda5

[root@localhost beinan]# df -lh       注:查看/dev/hda5是否被挂载;
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
/dev/hda5             7.9G  5.8G  2.1G  74% /mnt/hda5

[root@localhost beinan]# umount /dev/hda5  注:卸载/dev/hda5

[root@localhost beinan]# df -lh        注:看是否卸载了/dev/hda5
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

[root@localhost beinan]#umount /dev/cdrom  注:卸载cdrom
[root@localhost beinan]#umount  /dev/fd0  
注:卸载软驱;

... ... 再说一个查看分区是否被挂载了的命令,直接用 mount -s

[root@localhost beinan]# mount -s


2
、通过/etc/fstab文件来开机自动挂载文件系统
1
)理解fstab
上面我们说了mount挂载存储设备文件系统的办法;现在我们再来说一说在/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的标签;那我们用什么命令来创建硬盘分区的标签呢? 对于ext3ext2文件系统,我们可以用 e2label 来设置

e2label device [newlabel]

比如我们想把文件系统为ext3 的分区/dev/hda5的标签设备为 /5 ,我们应该执行如下的命令:

[root@localhost beinan]# e2label /dev/hda5  /5  
[root@localhost beinan]# mkdir /mnt/hda5 
注:创建挂载/dev/hda5分区的目录;
[root@localhost beinan]# chmod 777 /mnt/hda5 
注:打开权限,所有用户可读可写可执行;

然后我们要改/etc/fstab 中加一行

/5         /mnt/hda5                    ext3     defaults        0 0

警告: 请不要在您的Linux的安装分区(也就是Linux系统/ 所在的分区)实践,会导致您的Linux系统崩溃;如果想实践,请在其它分区测试; 如果是reiserfs文件系统,我们应该用 [root@localhost beinan]# reiserfstune -l 标签 设备 举例:比如我为reiserfs 文件系统 /dev/hda10设置标签为 /10

[root@localhost beinan]# reiserfstune -l /10 /dev/hda10

我们在/etc/fstab中加入一行;

/10              /mnt/hda10              reiserfs defaults       0 0


警告: 请不要在您的Linux的安装分区(也就是Linux系统/ 所在的分区)实践,会导致您的Linux系统崩溃;如果想实践,请在其它分区测试; 第二字段:文件系统的挂载点;
第三字段:文件系统类型;[能够直接查看到当前这个文件系统是什么类型的]
四字段:mount 命令的选项,和mount 中的-o 同理;defaults包括这些选项 rw, suid, dev, exec, auto, nouser, async;通过实践,这个默认的还能满足我们的需要;至于这些选项的意思,请参看man mount

第五字段:表示文件系统是否需要dump 备份,是真假关系;1是需要,0 是不需要;
第六字段: 是否在系统启动时,通过fsck磁盘检测工具来检查文件系统,1是需要,0是不需要,2是跳过; 基于这些认识;比如我们要开机自动挂载/dev/hda5 ;我们可以如下做;

[root@localhost beinan]# mkdir /mnt/hda5/   注:先创建一个挂载目录;
[root@localhost beinan]# chmod 777  /mnt/hda5/   
注:设置/mnt/hda5的权限为任何用户可写可读可执行;这样所有的用户都能在写入;

然后我们在/etc/fstab 中加如下的一行;

/dev/hda5              /mnt/hda5             reiserfs defaults       0 0

这样重启机器就能看到效果了;
四、对文件系统进行扫描fsck
大家对Windows中的scandisk不寞生吧,在Linux中就有类似这样的工具fsck,不过fsck 可不仅仅是扫描,还能修正文件系统的一些问题。值得注意的是fsck 扫描文件系统时一定要在单用户模式、修复模式或把设备umount后进行。 警告:如果扫描正在运行中的系统,会造成系统文件损坏;如果您的系统是正常,请不要用扫描工具,她可能会把您的系统搞坏掉,fsck运行是有危险的; Fedora 为例,文件系统扫描工具有 fsck fsck.ext2 fsck.jfs fsck.msdos fsck.vfat fsck.ext3 fsck.reiserfsreiserfsck 其中fsck 默认支持文件系统ext2,如果想支持ext3文件系统的扫描,应该加-j 参数,最好是我们应该根据不同的文件系统来调用不同的扫描工具,比如 fsck.ext2fsck.jfsfsck.msdosfsck.ext3fsck.reiserfsreiserfsck)等。我们也可以 根据自己的文件系统选择不同的扫描工具; 举例:扫描/dev/hda10分区(基于reiserfs文件系统 );

[root@localhost beinan]# fsck.reiserfs /dev/hda10
reiserfsck 3.6.19 (2003 )

*************************************************************
** If you are using the latest reiserfsprogs and  it fails **
** please  email bug reports to reiserfs-list@namesys.com, **
** providing  as  much  information  as  possible --  your **
** hardware,  kernel,  patches,  settings,  all reiserfsck **
** messages  (including version),  the reiserfsck logfile, **
** check  the  syslog file  for  any  related information. **
** If you would like advice on using this program, support **
** is available  for $25 at  /support.html. **
*************************************************************

Will read-only check consistency of the filesystem on /dev/hda10
Will put log info to 'stdout'

Do you want to run this program?[N/Yes] (note need to type Yes if you do):Yes
###########
reiserfsck --check started at Wed Sep 14 08:54:17 2005
###########
Replaying journal..
Reiserfs journal '/dev/hda10' in blocks [18..8211]: 0 transactions replayed
Checking internal tree..finished
Comparing bitmaps..finished
Checking Semantic tree:
finished
No corruptions found  
注:没有发现错误;
There are on the filesystem:
        Leaves 2046
        Internal nodes 15
        Directories 130
        Other files 2305
        Data block pointers 1863657 (70565 of them are zero)
        Safe links 0
###########
reiserfsck finished at Wed Sep 14 08:54:33 2005
###########

对于fsck.ext2fsck.ext3常用的几个选项:

-p         Automatic repair (no questions) 注:自动修复文件系统存在的问题;
-y         Assume "yes" to all questions  
注:如果文件系统有问题,会跳出提示是否修复,如果修复请按y
-c         Check for bad blocks and add them to the badblock list
注:对文件系统进行坏块检查;这是一个极为漫长的过程;
-n         Make no changes to the filesystem  
注:不对文件系统做任何改变,只要扫描,以检测是否有问题;

举例:比如 /dev/hda6 (文件系统是ext3的),我想扫描并自动修复;

[root@localhost beinan]# fsck.ext3  -p /dev/hda6

注意: 针对不同文件系统,最好用相应的工具;虽然有时fsck 在不加参数的情况下能识别不同的文件系统; 对于不同工具的最为详细的参数,请参看--help或者man ,谢谢。。
后记: 创建文件系统和加载文件系统就算写的差不多了;再高深的可能也不是我所能写的。为了写文件系统系统的挂载,我已经写过几篇文档。可能还得需补充几篇短小文档,以及还有一个总结性的文档; 比如Fedora Core 4.0 默认安装不支持创建reiserfs 文件系统,解决办法是安装reiserfs-utils ,这也是需要补充的;
附录:

阅读(775) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

hkebao2010-07-20 21:09:51

Python 2.0发布于2000年10月16日,内含很多新特性包括:一个完整的垃圾收集并支持Unicode。而最重要的改变是它自己的开发进程,转向了一个更加透明和社区支持的进程。 原来是从2.0那个时候开始就支持Unicode编码的。