磁盘分区及lvm管理

1. 硬盘类型 /dev/sda VS /dev/hda

/dev/sda

    /dev/sda1

    /dev/sda2

    /dev/sda3

而又的安装时硬盘驱动设备名为

/dev/hda

   /dev/hda1

 

HDA是使用了ide接口的硬盘的名称.SDA是sata接口的硬盘的名称.

硬盘接口分为:

  • ide  (integrated drive electronics)  把盘体和控制器集成在一起

  • sata (serial ATA(advanced technology attachment))

  • scsi (small computer system interface)

  • 光纤通道 fibre channel

其中hda、hdb分别代表第一个IDE、第二个IDE。假如你电脑上插有2个IDE硬盘,就会出现hda、hdb吗?不一定,因为貌似IDE硬盘默认有两个部分,Master和Slave,即主分区和扩展分区,而且a、b是根据IDE接口插槽顺序来分的。这样的话,第一IDE插槽主分区为hda,扩展分区为hdb,第二IDE插槽主分区为hdc,扩展分区为hdd。

但是SATA硬盘好像没有扩展分区,而且Linux识别SATA等类型装置的顺序不是按插槽顺序来的,是按照设备被侦测到的顺序来定的,比如SATA的第1、5插槽分别插有硬盘,电脑上还插有一个USB,那么启动Linux的时候,先后侦测到SATA的第1、5插槽的硬盘和USB设备,那么分配的名称就分别是sda,sdb,sdc。

2. 分区

计算机中存放信息的主要的存储设备就是硬盘,但是硬盘不能直接使用,必须对硬盘进行分割,分割成的一块一块的硬盘区域就是磁盘分区。在传统的磁盘管理中,将一个硬盘分为两大类分区:主分区和扩展分区。主分区是能够安装操作系统,能够进行计算机启动的分区,这样的分区可以直接格式化,然后安装系统,直接存放文件。

       在一个MBR分区表类型的硬盘中最多只能存在4个主分区。如果一个硬盘上需要超过4个以上的磁盘分块的话,那么就需要使用扩展分区了。如果使用扩展分区,那么一个物理硬盘上最多只能3个主分区和1个扩展分区。扩展分区不能直接使用,它必须经过第二次分割成为一个一个的逻辑分区,然后才可以使用。一个扩展分区中的逻辑分区可以任意多个。

 磁盘分区后,必须经过格式化才能够正式使用,格式化后常见的磁盘格式有:FAT(FAT16)、FAT32、NTFS、ext2、ext3,ext4等。


fdisk 命令

root@dev:/home/s1# fdisk -l

Disk /dev/sda: 250.1 GB, 250059350016 bytes //这个硬盘有250.1 GB的容量
255 heads, 63 sectors/track, 30401 cylinders, total 488397168 sectors //255个磁头;63个扇区每磁道,30401个磁柱
Units = sectors of 1 * 512 = 512 bytes //每个 cylinder(磁柱)的容量是512字节
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000d7bf1

存储容量=磁道(柱面)数×磁头数×每道扇区数×每扇区字节数 = 30401 * 255 * 63 * 512 = 25396387380 bytes 

fdisk是交互式命令,其下有许多子命令说明如下:


Command (m for help): m        #交互式命令,提示键入“m”以获取帮助Command action             #可以看到,fdisk有如下这么多的子命令

a   toggle a bootable flag     #设定可启动标记
b   edit bsd disklabel
c   toggle the dos compatibility flag
d   delete a partition            #删除一个分区
l   list known partition types    #各分区类型所对应的Sy em ID
m   print this menu        
n   add a new partition          #新建一个分区
o   create a new empty DOS partition table
p   print the partition table      #显示当前的分区信息
q   quit without saving changes    #不保存退出  
s   create a new empty Sun disklabel
t   change a partition's system id    #修改指定分区的System ID
u   change display/entry units
v   verify the partition table
w   write table to disk and exit    #保存退出
x   extra functionality (experts only)

其中常用的类型为:

82:Linux swap交换分区

83:Linux分区

8e:Linux逻辑卷

fd:Soft Raid

文件系统:

   VFSVirtual FileSystem 

        保证各种磁盘设备接口都可以使用

   Linuxext2, ext3,ext4, reiserfs, xfs, btrfs, swap

   光盘:iso9660

   Windows:fat32(vfat), ntfs

   Unix:ffs, ufs, jfs, jfs2

   网络文件系统:nfs,cifs

   集群文件系统:ocfs2,gfs2

   分布式文件系统:ceph,

     moosefs,mogilefs, hdfs, gfs, glusterfs

 

 (1)日志型文件系统

   非日志型文件系统:ext2

   日志型文件系统:ext3

 

  (2)swap:交换分区

         把硬盘当临时内存来使用


创建文件系统:

  在分区上执行格式化(高级格式化)

   要使用某种文件系统,满足两个条件:

     内核中:支持此种文件系统

     用户空间:有文件系统管理工具

 

  创建工具mkfs(make filesystem)

     mkfs -t type DEVICE

    mkfs.type DEVICE

    mkfs [Tab][Tab] 查看mkfs支持的文件格式

        mkfs.cramfs  mkfs.ext3    mkfs.minix   
        mkfs.btrfs   mkfs.ext2    mkfs.ext4    mkfs.xfs 


     ext系列文件系统的专用管理工具:

       mke2fs -t {ext2|ext3|ext4} DEVICE

          -b BLOCK: 1024, 2048, 4096 指定块大小;根据存储文件的大小决定块分配大小

          -L 'LABEL': 设定卷标名称

      -i #:给多大空间给一个inode

      -N #:为此磁盘分区一共保留多少个inode

      -m #:预留磁盘空间占据多大百分比的空间为后期管理使用

      -c:检查磁盘错误,仅下达一次-c时,会进行快速读取测试

      -j:相当于 mk2fs -t ext3; 本来mke2fs是ext2,加入journal成为ext3

      -O feature[,…] 启用指定特性

                has journal 启用日志功能

        -O ^feature[,…] 关闭指定特性 /etc/mke2fs.conf 默认特性配置文件

      

 

      blkid命令定位并显示块设备属性 locate/print block device attributes       

       blkid DEVICE

       查看 LABEL,UUID, TYPE

 LVM几个基本概念

物理存储介质(PhysicalStorageMedia):指系统的物理存储设备:磁盘,如:/dev/hda、/dev/sda等,是存储系统最底层的存储单元

物理卷(Physical Volume,PV):指磁盘分区或从逻辑上与磁盘分区具有同样功能的设备(如RAID),是LVM的基本存储逻辑块,但和基本的物理存储介质(如分区、磁盘等)比较,却包含有与LVM相关的管理参数。

物理块(Physical Extent,PE):每一个物理卷PV被划分为称为PE(Physical Extents)的基本单元,具有唯一编号的PE是可以被LVM寻址的最小单元。PE的大小是可配置的,默认为4MB。所以物理卷(PV)由大小等同的基本单元PE组成。

卷组(Volume Group,VG):类似于非LVM系统中的物理磁盘,其由一个或多个物理卷PV组成。可以在卷组上创建一个或多个LV(逻辑卷)。

逻辑卷(Logical Volume,LV):类似于非LVM系统中的磁盘分区,逻辑卷建立在卷组VG之上。在逻辑卷LV之上可以建立文件系统(比如/home或者/usr等)。

逻辑块(Logical Extent,LE):逻辑卷LV也被划分为可被寻址的基本单位,称为LE。在同一个卷组中,LE的大小和PE是相同的,并且一一对应。

LVM抽象模型

 

操作:

要创建一个LVM系统,一般需要经过以下步骤:

1、创建分区

使用分区工具(如:fdisk等)创建LVM分区,方法和创建其他一般分区的方式是一样的,区别仅仅是LVM的分区类型为8e。

2、创建物理卷

创建物理卷的命令为pvcreate,利用该命令将希望添加到卷组的所有分区或者磁盘创建为物理卷。将整个磁盘创建为物理卷的命令为:

#pvcreate /dev/hdb

将单个分区创建为物理卷的命令为:

#pvcreate /dev/hda5

3、创建卷组

创建卷组的命令为vgcreate,将使用pvcreate建立的物理卷创建为一个完整的卷组:

#vgcreate web_document /dev/hda5 /dev/hdb

vgcreate命令第一个参数是指定该卷组的逻辑名:web_document。后面参数是指定希望添加到该卷组的所有分区和磁盘。vgcreate 在创建卷组web_document以外,还设置使用大小为4MB的PE(默认为4MB),这表示卷组上创建的所有逻辑卷都以4MB为增量单位来进行扩充 或缩减。由于内核原因,PE大小决定了逻辑卷的最大大小,4MB的PE决定了单个逻辑卷最大容量为256GB,若希望使用大于256G的逻辑卷则创建卷组 时指定更大的PE。PE大小范围为8KB到512MB,并且必须总是2的倍数(使用-s指定,具体请参考manvgcreate)。(centos 6.2系统已发现没有这种限制)

4、激活卷组

为了立即使用卷组而不是重新启动系统,可以使用vgchange来激活卷组:

#vgchange -ay web_document

5、添加新的物理卷到卷组中

当系统安装了新的磁盘并创建了新的物理卷,而要将其添加到已有卷组时,就需要使用vgextend命令:

#vgextend web_document /dev/hdc1

这里/dev/hdc1是新的物理卷。

6、从卷组中删除一个物理卷

要从一个卷组中删除一个物理卷,首先要确认要删除的物理卷没有被任何逻辑卷正在使用,就要使用pvdisplay命令察看一个该物理卷信息:

如果某个物理卷正在被逻辑卷所使用,就需要将该物理卷的数据备份到其他地方,然后再删除。删除物理卷的命令为vgreduce:

#vgreduce web_document /dev/hda1

7、创建逻辑卷

创建逻辑卷的命令为lvcreate:

#lvcreate -L1500 -n www1 web_document

该命令就在卷组web_document上创建名字为www1,大小为1500M的逻辑卷,并且设备入口为 /dev/web_document/www1(web_document为卷组名,www1为逻辑卷名)。如果希望创建一个使用全部卷组的逻辑卷,则需 要首先察看该卷组的PE数,然后在创建逻辑卷时指定:

#vgdisplay web_document | grep"TotalPE"

TotalPE45230

#lvcreate -l45230 web_document -n www1

8、创建文件系统

笔者推荐使用reiserfs文件系统,来替代ext2和ext3:

创建了文件系统以后,就可以加载并使用它:

#mkdir/data/wwwroot

#mount /dev/web_document/www1/data/wwwroot

如果希望系统启动时自动加载文件系统,则还需要在/etc/fstab中添加内容:

/dev/web_document/www1/data/wwwrootreiserfsdefaults12

9、删除一个逻辑卷

删除逻辑卷以前首先需要将其卸载,然后删除:

#umount /dev/web_document/www1

#lvremove /dev/web_document/www1

lvremove–doyoureallywanttoremove"/dev/web_document/www1"?[y/n]:y

lvremove–doingautomaticbackupofvolumegroup"web_document"

lvremove–logicalvolume"/dev/web_document/www1"successfullyremoved

10、扩展逻辑卷大小

LVM提供了方便调整逻辑卷大小的能力,扩展逻辑卷大小的命令是lvextend:

#lvextend -L12G /dev/web_document/www1

lvextend–extendinglogicalvolume"/dev/web_document/www1"to12GB

lvextend–doingautomaticbackupofvolumegroup"web_document"

lvextend–logicalvolume"/dev/web_document/www1"successfullyextended

上面的命令就实现将逻辑卷www1的大小扩招为12G。

#lvextend -L +1G /dev/web_document/www1

lvextend–extendinglogicalvolume"/dev/web_document/www1"to13GB

lvextend–doingautomaticbackupofvolumegroup"web_document"

lvextend–logicalvolume"/dev/web_document/www1"successfullyextended

上面的命令就实现将逻辑卷www1的大小增加1G。

增加了逻辑卷的容量以后,就需要修改文件系统大小以实现利用扩充的空间。笔者推荐使用reiserfs文件系统来替代ext2或者ext3。因此这里仅 仅讨论reiserfs的情况。Reiserfs文件工具提供了文件系统大小调整工具:resize_reiserfs。对于希望调整被加载的文件系统大 小:

#resize_reiserfs -f /dev/web_document/www1

一般建议最好将文件系统卸载,调整大小,然后再加载:

#umount /dev/web_document/www1

#resize_reiserfs /dev/web_document/www1

#mount-treiserfs /dev/web_document/www1/data/wwwroot

对于使用ext2或ext3文件系统的用户可以考虑使用工具

ext2resize。

11、减少逻辑卷大小

使用lvreduce即可实现对逻辑卷的容量,同样需要首先将文件系统卸载

#umount /data/wwwroot

#resize_reiserfs -s -2G /dev/web_document/www1

#lvreduce -L -2G /dev/web_document/www1

#mount-treiserfs /dev/web_document/www1/data/wwwroot

原创文章,作者:zsyzgw,如若转载,请注明出处:http://www.178linux.com/41830

(0)
zsyzgwzsyzgw
上一篇 2016-09-19
下一篇 2016-09-19

相关推荐

  • 二叉树的应用详解 – 数据结构

    概述: 平衡树——特点:所有结点左右子树深度差≤1 排序树——特点:所有结点“左小右大字典树——由字符串构成的二叉排序树判定树——特点:分支查找树(例如12个球如何只称3次便分出轻重)带权树——特点:路径带权值(例如长度) 最优树——是带权路径长度最短的树,又称 Huffman树,用途之一是通信中的压缩编码。 1. 二叉排序树(二叉查找树 Bina…

    Linux干货 2015-04-07
  • “Apache” 服务器中的战斗机

    一,apache世界使用排名第一的web服务器软件。它被音译为阿帕奇,与武装直升机里的佼佼者阿帕奇同名,它虽没有阿帕奇那么霸气的外观,但是它具有和它一样的强大火力,它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。它快速、可靠并且可通过简单的API扩充,将Perl/Python等解释器编译到服务器中…

    2017-08-19
  • CentOS6 网卡bonding

    Bonding ;理念 将多块网卡绑定同一IP地址对外提供服务,可以实现高可用 或者负载均衡。直接给两块网卡设置同一IP地址是不可以的 。通过bonding,虚拟一块网卡对外提供连接,物理网卡的 被修改为相同的MAC地址 banding工作模式 Mode 0 (balance-rr) 轮转(Round-robin)策略: 从头到尾顺序的在每一个slave 接…

    Linux干货 2017-11-24
  • 第七周练习

    1、创建一个10G分区,并格式为ext4文件系统; (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl; (2) 挂载至/data/mydata目录,要求挂载时禁止程序自动运行,且不更新文件的访问时间戳; 1.[root – gwx ~]#>fdisk /dev/sdb2.W…

    Linux干货 2016-12-11
  • Linux文件管理和Bash特性

    一、Linux基本文件管理命令 主要介绍cp、mv、rm命令的基本用法以及使用示例 cp命令 cp命令用来将一个或多个源文件或者目录复制到指定的目的文件或目录 cp (选项) (参数) 常用选项: -a:此参数的效果和同时指定”-dpR”参数相同,用于实现归档; -d:复制符号链接文件本身,而非其指向的源文件; -f:强行复制文件或目录,不论目标文件或目录是…

    Linux干货 2017-07-09
  • find和grep命令练习

                                    find和grep命令练习 1、显示当前系统上root,fedora,或user1用户的默认shell; ~]# cat /etc/pa…

    Linux干货 2016-10-23