lvm,raid,btrfs,ext操作总结

1.查看系统磁盘信息: fdisk

Disk /dev/sda: 21.5 GB, 21474836480 bytes, 41943040 sectors  // 安装操作系统内核的信息的

Disk /dev/sdb: 42.9 GB, 42949672960 bytes, 83886080 sectors  // 备份的使用来进行分区操作的。

Disk /dev/sdc: 21.5 GB, 21474836480 bytes, 41943040 sectors   // 实现增加和磁盘磁盘

创建分区信息如下:

 fdisk /dev/sdb  -----》执行分区信息操作,得到如下的信息信息

[root@mrzhang ~]# fdisk -l /dev/sdb

Device Boot Start End Blocks Id System

/dev/sdb1            2048    16779263    8388608  83  Linux

/dev/sdb2        16779264    33556479    8388608  83  Linux

/dev/sdb3        33556480    50333695    8388608  83  Linux

/dev/sdb4        50333696    83886079    16776192    5  Extended

下面开始实验操作

1)创建ext系列的文件系统:使用的命令信息如下:mkfs,下面是使用方式和操作管理实现

mkfs [options] [-t type] [fs-options] device [size]

选项包括:

-t:文件系统类型,默认位ext2

fs-options: 创建文件系统的时候传递的参数,不是很有效

-V:显示创建的过程信息

2)mke2fs: 创建ext系列文件系统,包括ext2,ext3以及ext4

常见的使用选项如下:

-b:指定块大小信息

-t:指定文件系统类型

-U:使用指定的uuid的设备创建文件系统

-v:显示创建的过程信息

-E:使用扩展选项,扩展选项很多,就不列举了

-g:指定一个快组包含多少块,一个文件系统是由多个快组构成的

-G:指定块组的数量

-i:指定多少字节一个inode,

-I指定inode的大小

-j:创建含有日志功能的ext3文件系统

-J:创建ext3文件系统的时候指定对应的参数信息,常见的参数信息如下:

        size:指定完整的日志大小,整体的

        device:直接指定存放日志的外部日志设备,外部设备已经使用如下的命令执行过

                mke2fs -O journal_dev external-journal

-L:指定卷名称

-m:指定超级用户预留的百分比

-M:指定上次挂载的目录

-n:不会真实的创建文件系统,而只是显示创建的过程

创建文件系统

[root@mrzhang ~]# mke2fs -t ext3 /dev/sdb1

mke2fs 1.42.9 (28-Dec-2013)

Filesystem label=

OS type: Linux

Block size=4096 (log=2)

Fragment size=4096 (log=2)

Stride=0 blocks, Stripe width=0 blocks

524288 inodes, 2097152 blocks

104857 blocks (5.00%) reserved for the super user

First data block=0

Maximum filesystem blocks=2147483648

64 block groups

32768 blocks per group, 32768 fragments per group

8192 inodes per group

Superblock backups stored on blocks:

32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632

Allocating group tables: done                           

Writing inode tables: done                           

Creating journal (32768 blocks): done

Writing superblocks and filesystem accounting information: done

[root@mrzhang ~]# blkid /dev/sdb1    // 创建文件系统成功之后可以使用blkid查看详情信息

/dev/sdb1: UUID="19939d72-017d-4e51-b1cd-a85b4b67930b" SEC_TYPE="ext2" TYPE="ext3"

3)下面是命令的相关的信息和操作实现

[root@mrzhang ~]# mke2fs -t ext2 -L "ext2" /dev/sdb1    // 重新创建文件系统ext2

[root@mrzhang ~]# blkid /dev/sdb1

/dev/sdb1: LABEL="ext2" UUID="e8829609-8ae2-4d1a-8a81-08e9493127d9" TYPE="ext2"

dumpe2fs: 显示设备上面的文件系统的超级快以及快组信息

[root@mrzhang ~]# dumpe2fs /dev/sdb1

fsck:检查和修复文件系统

3.创建lvm以及相关操作

lvm的创建过程主要包括首先创建进行磁盘格式化,要求格式化后的磁盘对应的类型是8e(Linux lvm格式),下面是示例信息

/dev/sdb5 50335744 62918655 6291456 8e Linux LVM

/dev/sdb6        62920704    75503615    6291456  8e  Linux LVM

/dev/sdb7        75505664    83886079    4190208  8e  Linux LVM

1)pvcreate: 创建lvm使用的磁盘信息

常见的选项位:

-u:使用指定设备的uuid创建pv,

-v:显示创建的过程信息

[root@mrzhang ~]# pvcreate /dev/sdb5 /dev/sdb6 /dev/sdb7

  Physical volume "/dev/sdb5" successfully created.

  Physical volume "/dev/sdb6" successfully created.

  Physical volume "/dev/sdb7" successfully created.

其次需要对应的创建lvm的信息的,创建使用如下的指令:vgcreate

2)vgcreate:基于物理卷创建卷组信息

常见选项信息如下:

-v:显示创建过程

-s:指定创建的卷组的大小

-l:设定位最大的逻辑卷大小,指的是多少个

-p:设定最大的物理卷大小,指的是多少块的卷组信息

-systemid:指定新的vg卷的系统id

[root@mrzhang ~]# vgcreate -l 2000 testvg /dev/sdb5 /dev/sdb6 /dev/sdb7

  Volume group "testvg" successfully created

查看信息:[root@mrzhang ~]# vgdisplay

3)创建lv及逆行使用,使用的指令信息如下:lvcreate

lvcreate:在对应的卷组上面创建逻辑卷信息。

常见的选项信息如下:

-L:指定逻辑卷组的大小

-n:指定逻辑卷组的名称信息

-s:创建快照

使用的常见的用法为:lvcreate   LogicalVolume   PhysicalVolumePath

[root@mrzhang ~]# lvcreate -L 14G testvg /dev/sdb5 /dev/sdb6 /dev/sdb7

  Logical volume "lvol0" created.

查看信息:[root@mrzhang ~]# lvdisplay

下面开始使用磁盘,进行文件系统挂载:创建文件系统然后使用mount

常见的使用用法如下:

mount -t type device dir  

-t:指定挂载的文件系统的类型,

[root@mrzhang ~]# mke2fs -t ext4 /dev/testvg/lvol0   // 在lvm上面创建文件系统

[root@mrzhang ~]# blkid /dev/testvg/lvol0

/dev/testvg/lvol0: UUID="952018db-84d6-43b5-8440-b64493ab63b7" TYPE="ext4"  // 文件系统创建成功

[root@mrzhang ~]# mount -t ext4 /dev/testvg/lvol0 /mnt

[root@mrzhang ~]# df -h     // 查看是否挂载成功,和预期的结果相符

/dev/mapper/testvg-lvol0 14G 41M 13G 1% /mnt

[root@mrzhang ~]# cp /etc/fstab /mnt/    // 文件系统挂载使用

4)lvm的扩容和缩容

扩容的程序如下:

首先创建一个新的lvm的卷的信息

/dev/sdb3 33556480 50333695 8388608 8e Linux LVM

将新加入的磁盘创建pv

[root@mrzhang ~]# pvcreate /dev/sdb3

加入vg中:vgextend    对应的可以将物理卷加入到逻辑卷中 

vgextend    VolumeGroupName (逻辑卷名称)  PhysicalDevicePath 

 [root@mrzhang ~]# vgextend testvg /dev/sdb3 

然后将pv加入到lv中

lvresize  LogicalVolume (lv的名称)  PhysicalVolumePath(物理卷的路径)

[root@mrzhang ~]# lvresize /dev/testvg/lvol0 /dev/sdb3

调整文件系统的大小

[root@mrzhang ~]# resize2fs /dev/testvg/lvol0

[root@mrzhang ~]# df -h

/dev/mapper/testvg-lvol0 22G 44M 21G 1% /mnt   // 查看可以知道已经发生了变化的,是成功的。

缩容的程序如下:

1.卸载设备

[root@mrzhang ~]# umount /dev/testvg/lvol0

强制进行磁盘检测:

[root@mrzhang ~]# fsck -f /dev/testvg/lvol0

减小文件系统的大小

[root@mrzhang ~]# resize2fs /dev/testvg/lvol0 15G   // 缩小文件系统到指定的大小

[root@mrzhang ~]# lvreduce -L 15G /dev/testvg/lvol0 

[root@mrzhang ~]# mount /dev/testvg/lvol0 /mnt

[root@mrzhang ~]# df -h   // 查看检测成功

/dev/mapper/testvg-lvol0 15G 41M 14G 1% /mnt

下面执行的操作:缩容的时候减少磁盘的处理

首先移除系统的挂载使用umount

[root@mrzhang ~]# pvs -o+pv_used    // 查看pv中的其他的磁盘是否可以承载移除后的磁盘的压力

PV VG Fmt Attr PSize PFree Used

  /dev/sda2  cl_mrzhang lvm2 a--  19.00g    0  19.00g

  /dev/sdb3  testvg    lvm2 a--  8.00g 7.00g  1.00g

  /dev/sdb5  testvg    lvm2 a--  6.00g    0  6.00g

  /dev/sdb6  testvg    lvm2 a--  6.00g    0  6.00g

  /dev/sdb7  testvg    lvm2 a--  3.99g 1.98g  2.01g

[root@mrzhang ~]# pvmove /dev/sdb7    // 移除pv

[root@mrzhang ~]# pvs -o+pv_used   // 查看是否移除成功

/dev/sdb7 testvg lvm2 a-- 3.99g 3.99g 0   // 移除成功

[root@mrzhang ~]# vgreduce testvg /dev/sdb7    // 移除vg,需要注意移除磁盘之前需要及逆行检查的,并且还需要等到新加入的磁盘成功之后才可移除磁盘的。

5)raid讲解和使用

创建分区,使用默认的Linux分区格式即可

mdadm [mode] [options]

常见的选项信息如下:

-v:显示创建的过程信息

-C:新建raid族

-l:指定raid的级别,对应的有linear, raid0, 0, stripe, raid1, 1, mirror, raid4, 4, raid5, 5, raid6, 6, raid10, 10, multipath,mp, faulty, container

-n:指定创建raid使用多少设备

-x:指定创建raid时候时候创建的备份磁盘信息

[root@mrzhang ~]# mdadm -C /dev/md0 -l 0 -n 3 /dev/sdb1 /dev/sdb2 /dev/sdb3

[root@mrzhang ~]# mdadm --detail /dev/md0   // 查看信息

/dev/md0:

          Version : 1.2

    Creation Time : Tue Dec 25 21:32:40 2018

        Raid Level : raid0

        Array Size : 25138176 (23.97 GiB 25.74 GB)

      Raid Devices : 3

    Total Devices : 3

      Persistence : Superblock is persistent

      Update Time : Tue Dec 25 21:32:40 2018

            State : clean

    Active Devices : 3

  Working Devices : 3

    Failed Devices : 0

    Spare Devices : 0

        Chunk Size : 512K

Consistency Policy : unknown

              Name : mrzhang:0  (local to host mrzhang)

              UUID : 6237938c:84395f94:6625f0be:4759f740

            Events : 0

    Number  Major  Minor  RaidDevice State

      0      8      17        0      active sync  /dev/sdb1

      1      8      18        1      active sync  /dev/sdb2

      2      8      19        2      active sync  /dev/sdb3

备注:实际的企业应用中,不存在使用软件构建raid的,全部使用的是硬件进行的操作的,需要进行关注和理解操作。

6)使用btrfs文件系统:常见的使用命令: mkfs.btrfs

常见的使用选项信息如下:

-L:指定卷标

-U:或者是使用uuid创建

[root@mrzhang ~]# mkfs.btrfs -f -L "btrfs" /dev/md0

创建成功之后的显示的情况

btrfs-progs v4.4.1

See http://btrfs.wiki.kernel.org for more information.

Label:              btrfs

UUID:              8c07d182-a68e-4dcb-9e29-7f58ba61b5bd

Node size:          16384

Sector size:        4096

Filesystem size:    23.97GiB

Block group profiles:

  Data:            single            8.00MiB

  Metadata:        DUP              1.01GiB

  System:          DUP              12.00MiB

SSD detected:      no

Incompat features:  extref, skinny-metadata

Number of devices:  1

Devices:

  ID        SIZE  PATH

    1    23.97GiB  /dev/md0

[root@mrzhang ~]# btrfs filesystem df -h /media    // 验证创建成功

Data, single: total=8.00MiB, used=256.00KiB

System, DUP: total=8.00MiB, used=16.00KiB

Metadata, DUP: total=1.00GiB, used=112.00KiB

GlobalReserve, single: total=16.00MiB, used=0.00B

备注:raid和lvm只是底层的磁盘的逻辑使用方式,在lvm以及raid上面创建逻辑磁盘安装文件系统是没有任何冲突的,现阶段企业中使用的分布式的文件系统并且采用的是整体的机柜的,只有一个磁盘的,所以上面的操作基本上在实际的企业中使用不多的。

你可能感兴趣的:(lvm,raid,btrfs,ext操作总结)