RHCE学习笔记:RH133 2.4-管理文件系统

xiyoukeke 2010-04-27

注:由于Javaeye博客和本人博客(http://mven.cn)格式不同,转载时需改格式,故RHCE学习笔记不再发布在百度空间里,大家可以访问以下地址获得:

个人博客:http://mven.cn

CSDN博客:http://blog.csdn.net/eryin

51CTO博客:http://eryin.blog.51cto.com/

------------------------------------------华丽的分割线------------------------------------------

RHCE是Red Hat Certified Engineer的简称——红帽认证工程师 始于1999年3月。

Red Hat是全世界Linux厂商中的龙头老大,其市场占有率从1999年起就已超过了50%。并在业界得到广泛应用。而红帽认证工程师也是业界公认的最权威的Linux认证之一。RHCE 是世界上第一个面向Linux 的认证考试,它不是一个普通的认证测试,和其他操作系统认证考试相比,它没有笔试,全部是现场实际操作,所以RHCE成了业界公认的最难的认证考试之一。Red Hat在北京举行的RHCE十年庆典中统计表明,截至2009年6月,中国大陆通过人数为2037人。

RH133 是讲红帽Linux系统管理:涵盖了红帽认证技师需掌握的技能。

本笔记基于培亚RHCE教学视频,学习的目的是系统的了解Red Hat Enterprise Linux,希望对大家有所帮助。

本笔记每周发布一章,时间暂定于每周5下午18时0分,本章是RHCE中RH133中的第4章-管理文件系统,RH133前面三章和RH033的内容会陆续补齐,感谢大家的关注。

本章目录:

2.4.1、系统初始时如何辨别硬碟设备

2.4.2、磁碟分割的相关事项

2.4.3、管理磁碟分割区

2.4.4、建立文件系统(格式化磁碟分割区)

2.4.5、将ext2的格式转成ext3和两者的异同

2.4.6、设定磁碟分割区的Labels

2.4.7、挂载(mount)磁碟分割区

2.4.8、挂载(mount)的参数

2.4.9、如何卸载(umount)文件系统

2.4.10、挂载文件系统范例

2.4.11、挂载共享目录

2.4.12 /etc/fstab 开机执行的挂载文件

2.4.13、自动挂载程序Auto-Mounter

2.4.14、ext2/ext3文件系统的属性设置

2.4.15、虚拟内存设置(Swap)

2.4.16、维护文件系统的工具和重要的相关事项

2.4.17、增加新硬碟

2.4.1、系统初始时如何辨别硬碟设备

根据MBR来识别,MBR共分为512Bytes。

446Bytes

16x4Byte

2

BootLoader

Partitiontable注1

 

注1:Partition包含以下三个部分

1)、Partition ID  (5:延申  82:Swap   83:Linux   8e:LVM     fd:RAID)

2)、Partition起始磁柱          3)、Partition的磁柱数量

综述:Linux在初始时通过Partition table的信息识别硬碟设备。

2.4.2、磁碟分割的相关事项

IDE:63个Partition       SCSI:15个Partition

为何要分多个Partition?

1)、便于控制,分为多个Partition可以将应用程序、用户资料、保密信息分别存放;

2)、效率,硬碟在便用一段时间后,会发生区块不连续的情况,搜索范围太大,太慢;

3)、Quotas,磁盘限额,仅能用于Partition;

4)、资料恢复,便于备份,只备份一个Partition,如/home。

2.4.3、管理磁碟分割区

#fdisk –l /dev/sda/       #列出sda的Partition tables

#fdisk /dev/sda/     #管理Partition

指令说明:m帮助    d删除   n建立   p显示   q离开   t改ID   w保存并退出

建立步骤:输入n >> 起始磁柱编号>> 最后磁柱编号(每个磁柱8M)或增加容量大小(+100M或+1000K) >> 回车

删除步骤:输入d >> Partition编号 >> 回车

保存修改后,必须使用partprobe指令初始化Partition table或者重新启动系统才能生效。

2.4.4、建立文件系统(格式化磁碟分割区)

格式化(Format)是指把Partition切割成block(资料存放的最小单位),指定有多少inodes,每多个block会组成block group。

除了boot sector外,第一个block是Super block,存放这个Partition中有多少个block和inode,已经用了多少个block和inode。如果Super block损坏,则Partition无法使用,所以每隔多个block会备份一个Super block。

#dumpe2fs /dev/sda1 | more         #查看Partition资讯并一页一页的显示

#mke2fs –options device

参数说明:

-b每个block的size是多少bytes,最大为4096

-c 格式化前先检查Partition里有没有损坏的block

-i每个inode的size是多少bytes

-N inode的总数量

-m保留多少空间给super-user,即root,默认为5%

-L 设定label(可以理解为标签)

-j 设置ext3的格式,包含journal的功能

2.4.5、将ext2的格式转成ext3和两者的异同

ext2和ext3的异同:

基本一模一样,只是ext3会在最后拿出一块空间留给journal。

ext2写入数据时,先写入buffer里,buffer写满了再写入到硬碟。

ext3写入数据时,先写入buffer里,buufer写满要写入硬碟时,先通知journal,写入完成后,再通知journal。

解释:如果非正常关机,ext2的格式开机后检查所有文件,而ext3只检查journal,时间快很多。

转换操作说明:

#tune2fs –j /dev/sda1

ext3有三种journal模式:

·ordered,默认的,只会记录mate-data,也就是inode table里的资讯

·journaled,记录资料本身的资讯,需要很大的空间

·writeback,不会记录inode table和资料本身的资讯,但会提供较好的效果

2.4.6、设定磁碟分割区的Labels

#e2label /dev/sda1       #查看Partition的label名称

#e2label /dev/sda1 data     #设定/dev/sda1的label名称为data

2.4.7、挂载(mount)磁碟分割区

在读取光碟或软碟时,必须把它们对应到某个目录上,这个目录就叫做mount_point(挂载点)

#mkdir /data                     #建立/data目录

#mount /dev/sda1 /data    #把/dev/sda1挂载到/data目录上

#umount /data                  #卸载/data目录

#mount –L /data /data       #将/data(/dev/sda1的label)挂载到/data目录上

2.4.8、挂载(mount)的参数

mount [-tvfstype] [-o options] device mount_point

-t vfstype(文件类型)

(vfat(windows可读),ext2,ext3,iso9660(光碟),etc)

通常不需要-t

-o 参数说明:

·suid 挂载后可使用suid或sgid的特殊权限

·dev 允许挂载的文件系统建立device files,如/dev/sda1等系统里存在的文件

·exec 可执行里面的可执行文件

·auto 开机后自动挂载此文件系统

·nouser 允许super user挂载这个文件系统

·async 不同步(asynchronously),先写入buffer里,再写入硬碟,可提高效率

·loop 用来挂载loopback的设备,如光碟

·ro 只读           rw 可读写

默认使用:rw,suid,dev,exec,auto,nouser,and async

2.4.9、如何卸载(umount)文件系统

#umount  device | mount_point          #指定卸载的设备或目录

正在使用中无法卸载的解决办法:

#fuser –v /data                 #显示哪个服务或哪个用户正在使用/data

#fuser –km /data         #停止所有对/data文件系统的操作然后再umount

直接改变文件系统的状态:

#mount -0 remount,ro /data    #将/data改为只可读,参数为“零”

2.4.10、挂载文件系统范例

挂载不允许执行的文件系统

#mount -0 noexec /dev/sda1 /data     

挂载光碟映像文件

#mkdir /iso            #建立挂载点

#mount –t iso9660 –o ro,loop boot.iso /iso           #格式为iso9660,参数只读、光碟格式

2.4.11、挂载共享目录

NFS(Unix/Linux对Linux)

查看有哪些共享目录

# showmount –e ip

挂载共享目录

# mount ip:/share/nfs /mnt/ftp

SMB(Unix/Linux对Windows)

查看有哪些共享目录

# smbclient -L IP -N

挂载共享目录

# mount //ip/share_name /mnt/nfs -0 username=user%pass

2.4.12 /etc/fstab 开机执行的挂载文件

Label=/home    /home  ext3                default        1                     0

设备                 挂载点   文件系统类型      参数注1       dump_frep注2 先后顺序 注3

注1:见2.4.8

注2:dump的次数(天),意为清除垃圾文件,次数为设置的值。

#cp /etc/fstab /etc/fstab.bak         #备份fstab文件为fstab.bak

#vi /etc/fstab

按下yy复制/home那一行,然后按下p粘贴。

修改/home部分为/data,检查后面的参数,确认后即可。

注3:0为忽略不检查,1为第一个检查,2为第二个检查,如果有多个1,则从上到下

2.4.13、自动挂载程序Auto-Mounter

进入挂载点的时候,自动挂载2.4.11讲的共享目录,默认60秒自动断开。

下面设置Auto_Mounter的配置文件:

#vi /etc/auto.master                #编辑Auto_Mounter的主要配置文件

/mnt/nfs          /etc/auto.nfs          --timeout=60

要监控的目录      挂载设置文件           60内无动作自动卸载

#cp /etc/auto.misc /etc/auto.nfs

server1            -ro,soft,intr                                  ip:/share/nfs

服务器名称        只读,发生错误时记录,允许中断      共享的地址和目录

#cd /mnt/nfs/server1         #挂载成功后在/mnt/nfs不显示,直接进入会报错,需重启服务

#service autofs restart      #启动Auto-Mounter的服务

2.4.14、ext2/ext3文件系统的属性设置

#lsattr test                 #查看test的属性,不加任何参数可查看本目录下的所有文件

#chattr +|-|=attribute[attribute..] file [file..]     #改变文件或多个文件属性加或减

ext2/ext2 Filesystem Attributes 文件系统属性

·A 当文件被修改时存取的时间记录不会被修改

·a 只允许附加内容,不允许覆盖原有内容

·d 使用dump指令备份时跳过这个文件

·i 文件永远不改变,不能删除或更改名称

·j 将文件资讯记录到ext3的journal里,即使挂载为ordered或writeback参数

·S 当文件被修改时,立刻同步,并写入硬碟

实验:#vi test              #建立test文件并输入a\b\c三行

#chattr +a test            #为test文件加上a的属性

#cat > test      #测试是否可以覆盖test文件里的内容,结果报错Operation not permitted

#cat >> test    #附加内容,随便输入一些字符,然后按Crtl+C退出

#chattr –a test            #为test文件减去a的属性

#chattr =aAS test        #为test设置aAS的属性

#chattr = test              #删除所有属性

2.4.15、虚拟内存设置(Swap)

两种类型:1、Partition  2、File

基本设定:1、建立Partition或File,如是Partition,ID要为82;

2、使用mkswap指令对Partition或File写入Swap特殊的识别标志;

3、修改/etc/fstab文件,以便开机后自动挂载Swap

4、使用swapon –a ,如果不加名称则启用所有(Partition)或swapon swapfile启用Swap

使用swapon –s检查Swap的使用情况

举例说明_1、使用Partition

#fdisk /dev/sda           #建立Partition,见2.4.3,这里不做示范

改ID步骤:输入t >> Partition号 >> 输入ID(82(L可看到列表))>> w(保存退出)

#partprobe            #使新的Partition Table生效,或用重启的方式

#mkswap /dev/sda7     #为/dev/sda7写入Swap标志

#vi /etc/fstab              #修改/etc/fstab文件,复制原来的swap行,只需修改第一列为新建立的Swap Partition(/dev/sda7)

/dev/sda7        swap    swap    defaults           0 0

#swapon –a                #启用/etc/fstab文件里记录的所有Swap

举例说明_2、便用Files

#dd if=/dev/zero of=/swap/swap bs=100M count=10

dd是用来转换并复制档案,if输入,of输出,block大小为10M,建立10个block

#mkswap /swap/swap        #为/swap/swap写入Swap标志

#vi /etc/fstab                    #修改/etc/fstab文件,复制原来的swap行,只需修改第一列为新建立的Swap File

/swap/swap      swap    swap    defaults           0 0

#swapon /swap/swap        #启用/swap/swap为Swap

2.4.16、维护文件系统的工具和重要的相关事项

·fsck指令,如果有遗失或损坏,检查Filesystem的一致性,也就是检查有无遗失或损坏

#umount /data            #先卸载文件系统

#fsck –y /dev/sda1      #y的参数是检查途中如果有问题,则自动回答yes

#mount /data              #检查完没问题的话再挂载/data

·电脑在开机时就会检查Filesystem的文件有没有遗失或损坏

根据/etc/fstab最后一栏检查,顺序见2.4.12注3

·检查出有问题的直接放在lost+found目录里,如果有文件出问题了,可以在这儿找找看

·如果在开机时发生了严重的错误,会用Sulogin的方式启动,即为Repair filesystem(修复文件系统)

举例说明_1:修复/etc/fstab严重错误

#vi /etc/fstab              #修改/etc/fstab文件,使其出现严重错误,如:

LABEL=abc      /          ext3          defaults           1 1

重新开机后,就会报严重的错误,在启动界面输入root的密码后

(Repair filesystem)2 # mount –o remount,rw /dev/sda2  #重新挂载为可读可写

(Repair filesystem)2 # vi /etc/fstab

LABEL=/          /          ext3          defaults           1 1

举例说明_2:ext2文件系统已经有资料,转成ext3文件系统

#umount /dev/sda1                      #卸载文件系统

#tune2fs –j /dev/sda1                  #转换ext2为ext2格式

#mount /dev/sda1                        #挂载文件系统

#dumpe2fs /dev/sda1 | more         #查看Partition资讯并一页一页的显示

#dumpe2fs –h /dev/sda1              #h参数意为Super block的信息

2.4.17、增加新硬碟

·将物理硬盘接到电脑上

·电脑开机后用建立新的Partition,并决定Partition ID

·建立完使用partprobe指令让新的Partition table生效

·格式化Partition,如是Swap Partition则写入Swap标志

·如果用label表示法,则为Partition设定一个label名称

·建立新的挂载点,即目录,将Partition挂载目录上

·修改/etc/fstab,写入新建的Partition挂载信息

本文来自:韦少乾博客(mven.cn)

详细出处:http://mven.cn/post/57.html

相关推荐