000 - -Linux LVM逻辑卷管理笔记

更新时间:2024-07-06 01:04:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

Linux LVM逻辑卷管理学习笔记 ................................................................................................... 2 一, Linux磁盘结构 ...................................................................................................................... 2

1.1 固定分区的管理方式 .............................................................. 2 1.2 LVM的管理方式 ............................................................................ 2 1.3 LVM基本术语 .................................................................................... 2 二, Linux磁盘管理相关命令 ...................................................................................................... 3

2.1 物理卷管理 ............................................................................................. 3

1,相关命令 ..................................................................................................................... 3 2,创建pv ....................................................................................................................... 4 3,查看pv ....................................................................................................................... 4 4,删除PV ....................................................................................................................... 4 2.2 卷组管理 ................................................................................................... 4

1,添加卷组pvcreate ..................................................................................................... 5 2, 扩展卷组pvextend .................................................................................................... 5 3, 查看卷组vgdisplay .................................................................................................... 5 4, 从卷组中删除物理卷vgreduce .............................................................................. 6 5,删除卷组pvreduce ................................................................................................... 6 6,合并拆分卷组vgmerge & vgsplit ............................................................................. 6 7, 重命名卷组vgrename ............................................................................................... 6 2.3 逻辑卷管理 ........................................................................................... 7

1,添加逻辑卷lvcreate ................................................................................................... 7 2, 更改逻辑卷大小lvextend & lvreduce & lvresize..................................................... 7 3, 查看逻辑卷信息lvdisplay & lvscan .......................................................................... 8 4, 删除逻辑卷 lvremove ............................................................................................... 8 2.4 文件系统类型 ................................................................................... 8

1,文件系统的类型 ......................................................................................................... 8 2,linux文件系统的选择 ............................................................................................... 9 3,linux文件系统的安全性 ........................................................................................... 9 2.5 创建文件系统 ................................................................................. 10

1,文件系统的一点介绍 ............................................................................................... 10 2,格式化工具mkfs ..................................................................................................... 11 3,mkfs.ext3 mkfs.reiserfs mkfs.ext2 .......................................................................... 11 4,mkswap把一个分区格式化成为swap交换区 .................................................... 12 2.6 挂载文件系统 ................................................................................. 12

1,使用mount来挂载光驱和软驱 .............................................................................. 12 2,使用mount挂载硬盘和移动硬盘的文件系统 ..................................................... 13 3,卸载文件系统umount ............................................................................................ 13 4,通过/etc/fstab文件来开机自动挂载文件系统 ...................................................... 13 5,对文件系统进行扫描fsck ....................................................................................... 14 2.7 调整逻辑卷中文件系统的大小 .......................... 14

1,lvextend命令调整逻辑卷 ....................................................................................... 15

三, Linux磁盘管理实战 ............................................................................................................ 16

Linux LVM逻辑卷管理学习笔记

作者 jaxzhang

本次学习主要是在熟悉Linux磁盘结构后,能够熟练的掌握Linux磁盘管理相关命令。

一, Linux磁盘结构

LVM(Logical Volume Manager逻辑卷管理器)是一种把硬盘空间划分成“弹性”逻辑卷的方法。这里的“弹性”体现在不必重新分区也能被简单地重新划分大小。

这里LVM是Linux操作系统中一个磁盘管理子系统,而不是文件系统。 1.1 固定分区的管理方式 一般来说,一个分区大小是固定的。在分区空间使用完时,我们只能重新分区以扩大相应分区的大小,或者,将磁盘链接指向新的硬盘空间。

例如, 有某个分区在创建时设置大小为1GB。 随着时间的推移, 此分区即将被占满。 如果使用以前的磁盘管理技术, 我们只能装一个大些的磁盘并分区, 然后将原来的分区上的数据移动到新分区中来。 有了LVM技术,我们只需要将新的磁盘空间添加到原来的分区中而不需要移动数据。LVM给我们带来了磁盘管理的灵活性。 1.2 LVM的管理方式 LVM可以将若干个物理卷(Physical Volumes, PV)(例如磁盘、分区)组成一个卷组(Volume Group, VG),而这些物理卷的大小可以并不相同, 甚至类型也可以不同(如IDE、SCSI磁盘)。之后,卷组被划分为逻辑卷(Logical Volumes,LV),也就是虚拟分区。 而逻辑卷的大小可以随时动态的调整从而实现了灵活管理磁盘分区的目的。 1.3 LVM基本术语 LVM主要涉及以下概念: ? PV(Physical Volume):物理卷,处于LVM的最底层,可以是物理磁盘或者分区。 ? VG(Volume Group):卷组,建立在PV之上,可以含有一个到多个PV。 ? LV(Logical Volume):逻辑卷,建立在VG之上,相当于原来分区的概念。不过

大小可动态改变。 ? PE(Physical Extend):物理区域,PV中可以用于分配的最小存储单元,可以在建

立PV时指定,如 1,2,4,8… … 64M,同一VG中所有PV的PE应该相同。 ? LE(Logical Extend):逻辑区域,LV中可以用于分配的最小存储单元,取决于LV

所在PV的PE大小。

? VGDA(Volume Group Descriptor Area):卷组描述区域,存在于每个PV中,用于

描述该PV本身、PV所在VG、VG中的LV以及LV中的物理区域分配等信息,在使用pvcreate命令建立PV时建立。

在上图中,有两个大小不同的物理磁盘(类型也可以不同,比如IDE和SCI),其中。 ? 物理磁盘1我们划分了两个分区(大小可以不同),物理磁盘2我们划分了三个分

区;

? 之后,我们在这5个分区的每个分区上创建物理卷(PV);

? 接着我们将前三个分区(两个属于物理磁盘1,一个属于物理磁盘2)组成VG1,

将后两个分区(全部来自于物理磁盘2)组成一个卷组VG2;

? 然后我们将卷组VG1划分为两个逻辑卷LV11(跨物理卷PV1,PV2和PV3的一

部分)和LV12(PV3的一部分),并将卷组VG2完全划分给LV2;

? 最后,我们将/usr mount到LV11上, 将/var mount到LV12上,将/home mount到

LV2上。

二, Linux磁盘管理相关命令

2.1 物理卷管理 物理卷是卷组的组成部分,一个物理卷就是一个磁盘分区或在逻辑上与磁盘分区等价的设备(如RAID中的LUN)。每个物理卷被划分成若干个被称为PE(physical Extents)的基本单元,具有唯一编号的PE是可以被LVM寻址的最小单元。PE的大小是可以更改的,默认为4MB。

1,相关命令

Pvdisplay: 显示PV属性

Pvcreate: 创建PV(在PV上初始化VGDA) Pvdata: 显示PV上的VGDA信息 Pvchange:改变PV属性

Pvmove: 在PV间移动PE/LE

2,创建pv

使用pvcreate命令可以创建物理卷,可以在整个磁盘上创建物理卷,也可以在一个磁盘分区上创建物理卷。

例如,要在第二块SCSI磁盘上创建物理卷可以使用如下命令。 Pvcreate /dev/sdb

如果要在磁盘分区上创建pv,首先要使用分区工具(fdisk或者parted)在磁盘上面创建分区,然后把分区的系统号码修改为8e,即linuxLVM,命令如下面所示。

Fdisk /dev/sde

Command (m for help): t Partition number(1-2): 1

Hex code(type L to list codes): 8e

Changed system type of partition 1 to 8e(Linux LVM).

最后使用pvcreate命令创建物理卷,例如sde1分区上创建物理卷,命令如下所示: Pvcreate /dev/sde1

3,查看pv

使用pvdisplay命令可以查看物理卷的信息,如果不带任何选项,则pvdisplay将显示系统中所有物理卷的信息,如下所示。

# pvdisplay

4,删除PV

如果物理卷不再需要,可以使用pvremove命令将其删除,如下所示 # pvremove /dev/sde7

Labels on physical volume “/dev/sde7” successfully wiped

物理卷被删除后,其所在的磁盘分区并不会被删除。 要执行pvremove的物理卷必须是已经不属于任何卷组,否则将会失败。 2.2 卷组管理 LVM的卷组类似于非LVM系统中的物理硬盘,他是由一个或者多个物理卷组成,可以在卷组上创建一个或多个逻辑卷。通过它可以方便地管理磁盘空间,当卷组空间不足的时候可以往卷组中添加新的物理卷,扩展卷组的容量。

和LVM卷组管理相关的命令包括: VGCREATE:创建vg卷组 Vgextend: 向vg中增加pv Vgreduce: 从vg中删掉pv

Vgscan: 查找系统现有VG卷组

Vgdisplay: 显示vg卷组属性; Vgchange:改变VG卷组属性 Vgmerge: 合并vg Vgsplit: 拆分vg

Vgrename: 重命名vg Vgremove: 删除vg

1,添加卷组pvcreate

物理卷pv创建完成后就可以开始创建卷组。卷组是由一个或多个物理卷组成的存储池。例如要创建一个名为jax_vg1的卷组,可以使用下面的命令。

# vgcreate jax_vg1 /dev/sdd1 /dev/sde1

Volume group “jax_vg1” successfully created.

2, 扩展卷组pvextend

当卷组空间不足的时候,可以使用vgextend命令往卷组中添加新的物理卷,方便地扩展卷组的容量。

# vgextend jax_vg1 /dev/sdd2

Volume group “jax_vg1” successfully extended

3, 查看卷组vgdisplay

使用vgdisplay命令可以查看卷组的信息。例如要查看上例中创建的卷组jax_vg1,执行如下命令。

# vgdisplay jax_vg1 --- volume group ---

VG name jax_vg1 //vg名称 System ID

Format lvm2

Metadata areas 3 //vg名称 Metadata sequence no 2

Vg access read/write //访问许可,可读写 Vg status resizeable //vg状态

Max lv 0 // 最大的LV数目 Cur lv 0 // 当前lv数目 Open lv 0 // 打开的lv数目 Max pv 0 // 最大的pV数目 Cur pv 2 // 当前pv数目 Open pv 2 // 打开的pv数目 Act pv

Vg size 5.59 GB //vg大小

PE size 4.00MB // PE的大小 Total PE 1430 // vg的PE数目

Alloc PE/size 0 / 0 //已经使用的PE数目和大小 Free PE / SIZE 1430 / 5.59GB // 空闲的PE数目和大小 VG UUID

上面描述的信息可以得知,卷组jax_vg1的格式为lvm2, 访问许可为可读写,卷组大小为5.59GB, 物理块大小为4MB, 总的物理块为1430,已分配的为0, 空闲物理块为1430,大小为5.59GB。

4, 从卷组中删除物理卷vgreduce

通过vgreduce命令可以把VG中未使用的PV从VG中删除, 例如要从卷组jax_vg1中删除物理卷 /dev/sdd1,可以使用下面的命令

# vgreduce jax_vg1 /dev/sdd1

如果要从卷组中删除所有未使用的物理卷,可以使用如下命令。 # vgreduce –a

5,删除卷组pvreduce

当卷组不再需要的时候, 可以使用vgremove命令删除。 如果卷组中已经创建了LV, 则系统会提示用户确认是否要进行删除, 命令及运行结果如下所示。

# vgremove jax_vg1

卷组被删除后,卷组中的所有物理卷将不属于任何卷组,可以对这些物理卷进行删除。 # pvscan

输出结果中vgname为空的都是没划分给任何卷组的物理卷,用户可以删除这些物理卷,或者分配给其他卷组使用。

6,合并拆分卷组vgmerge & vgsplit

命令vgmerge和vgsplit用来重新组合和拆分现有的卷组。如果想将jax_vg2卷组下的所有物理卷都合并到jax_vg1中, 可以使用如下命令实现。合并后的卷组名称为jax_vg1

# vgmerge jax_vg1 jax_vg2

如果希望将jax_vg1下面的物理卷/dev/sdd2 /dev/sde2拆分到新的卷组jax_vg3中,则可以通过下面的命令实现。

# vgsplit jax_vg1 jax_vg2 /dev/sdd2 /dev/sde2

7, 重命名卷组vgrename

命令vgrename用来给现有卷组起一个新的名称。如下命令执行后, 新拆分的卷组jax_vg3将被命名为jax_vg2.

# vgrename jax_vg3 jax_vg2

2.3 逻辑卷管理 逻辑卷类似于非LVM系统中的磁盘分区,在逻辑卷上可以建立文件系统,文件系统建立完成后就可以挂载到操作系统中进行使用。逻辑卷被划分为称为LE(Logical Extents)的基本单位。在同一个卷组中,le的小和pe是相同的,并且一一对应。

和LVM逻辑卷管理相关的命令包括: Lvdisplay: 显示lv卷组属性 Lvscan: 查找系统现有lv卷组

Lvcreate: 创建lv卷组(在lv上初始化LVDA) Lvchange:改变lv卷组属性 Lvextend: 扩展lv大小 Lvreduce: 收缩lv大小 Lvrename: 重命名lv Lvremove: 删除lv

1,添加逻辑卷lvcreate

当卷组创建后,可以使用lvcreate命令在卷组上创建逻辑卷。例如要在卷组jax_vg1上创建一个100MB的逻辑卷jax_lv11,可以使用下述的命令。

# lvcreate –L 100M –n jax_lv11 jax_vg1

除了使用KB,MB,GB这些常规单位之外,lvcreate命令还可以使用PE数作为单位。 由vgdisplay可以看到卷组jax_vg1的PE大小为4MB,如果要创建一个大小为100MB的逻辑卷,则需要25个PE,命令如下:

# lvcreate –l 25 –n jax_lv12 jax_vg1 卷组和逻辑卷创建后,会在/dev目录下创建一个以VG名称命名的目录,在目录下会创建以LV名称命名的设备文件,如下所示。

# ll /dev/jax_vg1 Total 0

Lrwxrwxrwx 1 root root 08 spi 24 08:08 jax_lv11 -> /dev/mapper/jax_vg1-jax_lv11 Lrwxrwxrwx 1 root root 08 spi 24 08:08 jax_lv12 -> /dev/mapper/jax_vg1-jax_lv12

2, 更改逻辑卷大小lvextend & lvreduce & lvresize

使用lvresize命令可以更改已有逻辑卷的大小。一般情况下不建议减少逻辑卷的空间,因为这样可能会导致逻辑卷上的文件系统中的数据丢失,所以除非用户已经确定被减少的空间中的数据不再需要或者已经把重要数据备份出来,否则不要减少逻辑卷的空间以免造成不可挽回的损失。如果想将上面步骤创建的逻辑卷jax_lv11修改为150M可以使用下面两个命令的一种。

# lvresize –L 150M /dev/jax_vg1/jax_lv11 # lvextend –L +50M /dev/jax_vg1/jax_lv11

如果想将jax_lv11修改为50M可以使用下面两个命令中的一个。 # lvresize –L 50M /dev/jax_vg1/jax_lv11

# lvreduce –L -100M /dev/jax_vg1/jax_lv11

3, 查看逻辑卷信息lvdisplay & lvscan

使用lvdisplay命令可以查看制定逻辑卷的信息, # lvdisplay /dev/jax_vg1/jax_lv11 # lvdisplay /dev/vg_data/lv_data1 --- Logical volume ---

LV Name /dev/jax_vg1/jax_lv11

VG Name jax_vg1 //逻辑卷所属的卷组 LV UUID 3CrIH1-rZr6-UkNZ-1Z5n-gHw2-SM5T-by5fKg LV Write Access read/write LV Status available # open 0

LV Size 1.46 GB //逻辑卷的大小

Current LE 375 //逻辑卷的逻辑块数 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256

Block device 253:0

可以看到,逻辑卷/dev/vg_data/lv_data1所属的卷组为vg_data,访问许可为可读写,卷组状态为可用,逻辑卷大小为1.46GB,总的逻辑块数为375。

4, 删除逻辑卷 lvremove

使用lvremove命令可以删除指定逻辑卷,删除前系统会提示用户确认。 # lvremove /dev/jax_vg1/jax_lv11

删除后,逻辑卷上的所有数据均会被清除。 2.4 文件系统类型 1,文件系统的类型

文件系统的类型有很多,用户可以在《linux文件系统(filesystem)资源索引》中查看;但我们在linux中常用的文件系统主要有ext3,ext2及reiserfs;windows和dos常用的文件系统是fat系列(包括fat16和fat32等)和ntfs文件系统;光盘文件系统是ISO-9660文件系统;网络存储nfs服务器在客户端访问时,文件系统是nfs,这个比较特殊一点;如果希望了解更多,可以访问所用的文件系统的官方网站。

2,linux文件系统的选择

对于专家们来说,哪个文件系统都是安全的;用linuxfish的话来说“哪个文件系统的设计者都不是傻子,他们应该明白自己的作品是怎么回事”。作为文件系统的设计者,在使用过程中所遇到的每个问题,他们都应该有解决办法。但我们毕竟不是专业从事文件系统研究的,所以我们有必要从使用角度来说明文件系统的安全性;对于初学linux的弟兄,一定会遇到文件系统选择的左右为难,因为大多新手并不知道哪个文件系统更好。

A, ext2文件系统

ext2文件系统应该说是linux最正宗的文件系统,早期的linux都是用ext2,但随着技术的发展,大多linux的发行版本目前并不用这个文件系统了;比如redhat和fedora大多都建议用ext3,ext3是由ext2发展而来的。Ext2支持undelete(反删除),如果用户误删除文件,有时是可以恢复的,但操作比较麻烦,所以对于linux新手来说,我们还是不建议使用ext2文件系统。Ext2文件系统的官方主页是: http://e2fsprogs.sourceforge.net/ext2.html B,ext3文件系统

Ext3是一个用于linux的日志文件系统,ext3支持大文件;但不支持反删除undelete操作;redhat和fedora都力挺ext3. C, reiserfs文件系统

reiserfs文件系统是一款优秀的文件系统,支持大文件,支持反删除(undelete)。测试表明reiserfs文件系统的undelete功能几乎能恢复90%以上的数据,有时能恢复到100%,操作也相对容易

D, linux文件系统对大文件支持的对比 Filesystem Ext2/ext3 with 1KB blocksize Ext2/ext3 with 2KB blocksize Ext2/ext3 with 4KB blocksize Ext2/ext2 with 8KB blocksize Reiserfs 3.5 单位换算: 1024 Bytes=1KB 1024KB = 1MB 1024MB=1TB 1024TB = 1PB 1024PB = 1EB

File size limit 16GB 256GB 2TB 64TB 2GB Filesystem size limit 2TB 8TB 8TB 32TB 16TB 3,linux文件系统的安全性

任何一个文件系统在专家眼中都是安全的,就像MS说windows是安全性可靠一样,我们想象,如果MS专家来用windows绝对没有任何问题,但毕竟人家是专家,我们是使用者; 专家和使用者还是有很大区别的。因为我们不是专家,所以我们才要选择更为安全易用的文件系统。

A, ext2,ext3和reiserfs文件系统的自动修复能力对比

ext2、ext3及reiserfs 都能自动修复损坏的文件系统,也都是在开机时进行。从表现来

看reiserfs更胜一筹;ext2和ext3文件系统在默认的情况下是“This filesystem will be automatically checked every 21 mounts or 180 days, whichever comes first”,也就是每间隔21次挂载文件系统或每180天,就要自动检测一次。通过实践来看ext2和ext3在auto check上是存在风险,有时文件系统开机后就进入单用户模式,并且把整个系统 “扔”进lost+found\目录,如果要恢复系统,就得用fsck 来进行修复;当然fsck 也同样存在风险;所以我们对ext2和ext3文件系统的使用,对新手来说的确需要心里准备;毕竟修复已经损坏的ext2和ext3文件系统是有困难的;另外ext2和ext3文件系统对于意外关机和断电,也可能导致文件系统损坏,所以我们在使用过程中,必须是合法关机;比如执行poweroff指令来关掉机器; reiserfs 文件系统也能自动修复,他在自动检测和修复上具有很强的功能,几乎很少出现ext2和ext3的情况,另外从速度来说他也比ext2、ext3文件系统的速度要快;通过我两个月的测试来看,reiserfs 对于意外断电表现最佳。为了验证reiserfs 文件系统的在意外断电的安全性上,我每天都直接断掉电源关机,但我们不应该说reiserfs 是安全的直接断电了事,直接断电有时也会造成硬盘物理损伤;reiserfs文件系统从未出现象ext2和ext3那样用手动方式来进行修复的情况。从这方面来说reiserfs 还是极为安全的; B, ext2,ext3和reiserfs反删除功能对比

从文件系统的反删除来看,ext2和reiserfs 都支持反删除,对于一般使用者来说应该是安全的,但对于保密单位来说可能意味着不安全。从反删除角度来说明文件系统的安全性,也是有两方面;昨天和Linuxfish 讨论了这个问题,他说在Windows中引入了文件粉碎机这个可笑的工具,目的就是不让恢复已删除的文件。如果您的工作是从事比较机密的,用ext3比较好,因为ext3一旦删除文件,是不可恢复的,虽然网上也有几个关于反删除恢复操作在ext3中,但实践来看,并不是那么容易;因为反删除能恢复相应的绝秘资料的泄秘,所以ext3可能更适合您;如果您是一般使用者,我还是建议用reiserfs文件系统,他支持反删除功能,反删除操作也比较容易;但也会存在一点问题。比如在Fedora或Redhat中,有一个关于系统安全的selinux,在默认情况下,可能在reiserfs 中不支持selinux ;不过值得一说的是selinux是一个绝对庞大、功能丰富、涉及面极广的安全工具,selinux并不是一般使用者就能驾驭的了的;所以我们建议初学者在使用Linux系统时先关掉selinux 功能;但您可以慢慢尝试熟悉使用它;在Fedora和Redhat最新的版本中,reiserfs文件系统的确是不支持selinux,所以您在Fedora或Redhat中采用了reiserfs ,并且还想用selinux ,还是自己找解决办法,可能要打内核补丁才行;至于其它Linux发行版本是否存在这个问题,还得需要您来尝试; 2.5 创建文件系统 创建文件系统的过程也就是将存储设备格式化的过程。在逻辑卷建立好之后,需要在上面创建文件系统,这个过程一般被称为格式化或者初始化,可以使用mkfs实现。

1,文件系统的一点介绍

一个分区只有建立了某种文件系统后,这个分区才能使用;建立文件系统过程,就是用相应的格式化工具分区的过程,这个过程和我们在windows中格式化某个分区为NTFS没任何区别,只是所用的工具不一样而已。

Linux操作系统几乎支持目前主流的文件系统,比如NTFS(只读),FAT(可读写),

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两种文件系统大小。

返回值

本文来源:https://www.bwwdw.com/article/5v4.html

Top