zoukankan      html  css  js  c++  java
  • linux 简单记录7--使用 RAID 与 LVM 磁盘阵列技术(使用LVM扩展磁盘空间)

    使用 RAID 与 LVM 磁盘阵列技术:最后附LVM测试

    RAID(独立冗余磁盘阵列)

    RAID 0
    把多块物理硬盘设备(至少两块)通过硬件或软件的方式串联在一起,组成一个大的卷组,并将数据依次写入到各个物理硬盘中。
    若任意一块硬盘发生故障将导致整个系统的数据都受到破坏。
    RAID 1
    把两块以上的硬盘设备进行绑定,在写入数据时,是将数据同时写入到多块硬盘设备上(可以将其视为数据的镜像或备份)
    当其中某一块硬盘发生故障后,一般会立即自动以热交换的方式来恢复数据的正常使用。
    RAID 5
    把硬盘设备的数据奇偶校验信息保存到其他硬盘设备中。
    RAID 5 磁盘阵列组中数据的奇偶校验信息并不是单独保存到某一块硬盘设备中,而是存储到
    除自身以外的其他每一块硬盘设备上,这样的好处是其中任何一设备损坏后不至于出现致命缺陷
    RAID 5 技术实际上没有备份硬盘中的真实数据信息,而是当硬盘设备出现问题后通过奇偶校验信息来尝试重建损坏的数据。 
    RAID 这样的技术特性“妥协”地兼顾了硬盘设备的读写速度、数据安全性与存储成本问题
    RAID 10
    RAID 10 技术是 RAID 1+RAID 0 技术的一个“组合体”。
    RAID 10 技术需要至少 4 块硬盘来组建,其中先分别两两制作成 RAID 1 磁盘阵列,以保证数据的安全性;
    然后再对两个 RAID 1 磁盘阵列实施 RAID 0 技术,进一步提高硬盘设备的读写速度。
    从理论上来讲,只要坏的不是同一组中的所有硬盘,那么最多可以损坏 50%的硬盘设备而不丢失数据

    生产环境中用到的服务器一般都配备 RAID 阵列卡
    在虚拟机中,mdadm 命令用于管理 Linux 系统中的软件 RAID 硬盘阵列

    “mdadm [模式] <RAID设备名称> [选项] [成员设备名称]”。
    -a 检测设备名称
    -n 指定设备数量
    -l 指定 RAID 级别
    -C 创建
    -v 显示过程
    -f 模拟设备损坏
    -r 移除设备
    -Q 查看摘要信息
    -D 查看详细信息
    -S 停止 RAID 磁盘阵列
    详细查询linux RAID.txt
    # mdadm -Cv /dev/md0 -a yes -n 4 -l 10 /dev/sdb /dev/sdc /dev/sdd /dev/sde
    -C 参数代表创建一个 RAID 阵列卡; 
    -v参数显示创建的过程,同时在后面追加一个设备名称/dev/md0,这样/dev/md0 就是创建后的RAID 磁盘阵列的名称;
    -a yes 参数代表自动创建设备文件;
    -n 4 参数代表使用 4 块硬盘来部署这个 RAID 磁盘阵列;而-l 10 参数则代表 RAID 10 方案;
    最后再加上 4 块硬盘设备的名称
    # mkfs.ext4 /dev/md0 ##把制作好的 RAID 磁盘阵列格式化为 ext4 格式
    # mkdir /RAID
    # mount /dev/md0 /RAID ##创建挂载点然后把硬盘设备进行挂载操作。
    # df -h
    # mdadm -D /dev/md0  ##查看/dev/md0 磁盘阵列的详细信息
    # echo "/dev/md0 /RAID ext4 defaults 0 0" >> /etc/fstab ##把挂载信息写入到配置文件中

    损坏磁盘阵列及修复

    在确认有一块物理硬盘设备出现损坏而不能继续正常使用后,应该使用 mdadm 命令将其移除,然后查看 RAID 磁盘阵列的状态,可以发现状态已经改变。
    # mdadm /dev/md0 -f /dev/sdb
    mdadm: set /dev/sdb faulty in /dev/md0
    # mdadm -D /dev/md0
    /dev/md0:
    Number Major Minor RaidDevice State
    0 0 0 0 removed
    1 8 32 1 active sync /dev/sdc
    2 8 48 2 active sync /dev/sdd
    3 8 64 3 active sync /dev/sde
    0 8 16 – faulty /dev/sdb
    在 RAID 10 级别的磁盘阵列中,当 RAID 1 磁盘阵列中存在一个故障盘时并不影响 RAID10 磁盘阵列的使用。
    当购买了新的硬盘设备后再使用 mdadm 命令来予以替换即可,在此期间我们可以在/RAID 目录中正常地创建或删除文件。
    # umount /RAID
    # mdadm /dev/md0 -a /dev/sdb
    # mdadm -D /dev/md0
    Events : 56
    Number Major Minor RaidDevice State
    4 8 16 0 active sync /dev/sdb
    1 8 32 1 active sync /dev/sdc
    2 8 48 2 active sync /dev/sdd
    3 8 64 3 active sync /dev/sde
    # mount –a

    磁盘阵列+备份盘

    RAID 10 磁盘阵列中最多允许 50%的硬盘设备发生故障,但是存在这样一种极端情况,
    即同一 RAID 1 磁盘阵列中的硬盘设备若全部损坏,也会导致数据丢失。

    # mdadm -Cv /dev/md0 -n 3 -l 5 -x 1 /dev/sdb /dev/sdc /dev/sdd /dev/sde
    创建一个 RAID 5 磁盘阵列+备份盘。
    参数-n 3 代表创建这个RAID 5 磁盘阵列所需的硬盘数
    参数-l 5 代表 RAID 的级别
    参数-x 1 则代表有一块备份盘
    # mdadm -D /dev/md0
    Number Major Minor RaidDevice State
    0 8 16 0 active sync /dev/sdb
    1 8 32 1 active sync /dev/sdc
    4 8 48 2 active sync /dev/sdd
    3 8 64 - spare /dev/sde ###备份盘,等待中
    # mkfs.ext4 /dev/md0
    # echo "/dev/md0 /RAID ext4 defaults 0 0" >> /etc/fstab
    # mkdir /RAID
    # mount -a
    # mdadm /dev/md0 -f /dev/sdb ##模拟磁盘损坏
    # mdadm -D /dev/md0
    Number Major Minor RaidDevice State
    3 8 64 0 spare rebuilding /dev/sde
    1 8 32 1 active sync /dev/sdc
    4 8 48 2 active sync /dev/sdd
    0 8 16 - faulty /dev/sdb

    LVM(逻辑卷管理器)

    在硬盘分好区或者部署为 RAID 磁盘阵列之后,再想修改硬盘分区大小就不容易了。
    LVM(逻辑卷管理器)。 LVM 可以允许用户对硬盘资源进行动态调整。
    逻辑卷管理器是 Linux 系统用于对硬盘分区进行管理的一种机制,其创建初衷是为了解决硬盘设备在创建分区后不易修改分区大小的缺陷
    尽管对传统的硬盘分区进行强制扩容或缩容从理论上来讲是可行的,但是却可能造成数据的丢失。
    而 LVM 技术是在硬盘分区和文件系统之间添加了一个逻辑层,它提供了一个抽象的卷组,可以把多块硬盘进行
    卷组合并。用户不必关心物理硬盘设备的低层架构和布局,就可以实现对硬盘分区的动态调整。
    比如小明家里想吃馒头但是面粉不够了,于是妈妈从隔壁老王家、老李家、老张家分别借来一些面粉,准备蒸馒头吃。首先需
    要把这些面粉(物理卷[PV, Physical Volume])揉成一个大面团(卷组[VG, Volume Group])
    然后再把这个大团面分割成一个个小馒头(逻辑卷[LV, Logical Volume]),而且每个小馒头
    的重量必须是每勺面粉(基本单元[PE, Physical Extent])的倍数。
    常用的 LVM 部署命令
    功能/命令     物理卷管理        卷组管理       逻辑卷管理
    扫描         pvscan             vgscan          lvscan
    建立         pvcreate           vgcreate        lvcreate
    显示         pvdisplay          vgdisplay       lvdisplay
    删除         pvremove           vgremove        lvremove
    扩展                            vgextend        lvextend
    缩小                            vgreduce        lvreduce

    命令解释与集合

    1 让新添加的两块硬盘设备支持 LVM 技术
    # pvcreate /dev/sdb /dev/sdc
    2 把两块硬盘设备加入到 storage 卷组中,然后查看卷组的状态
    # vgcreate storage /dev/sdb /dev/sdc
    # vgdisplay
    3 切割出一个约为 150MB 的逻辑卷设备。
    在对逻辑卷进行切割时有两种计量单位。
    --1 是以容量为单位,所使用的参数为-L。例如,使用-L 150M 生成一个大小为 150MB 的逻辑卷。
    --2 是以基本单元的个数为单位,所使用的参数为-l。每个基本单元的大小默认为 4MB。例
    如,使用-l 37 可以生成一个大小为 37×4MB=148MB 的逻辑卷。
    # lvcreate -n vo -l 37 storage
    # lvdisplay
    4 把生成好的逻辑卷进行格式化,然后挂载使用。
    Linux 系统会把 LVM 中的逻辑卷设备存放在/dev 设备目录中(实际上是做了一个符号链
    接),同时会以卷组的名称来建立一个目录,其中保存了逻辑卷的设备映射文件(即/dev/卷组名称/逻辑卷名称)。
    # mkfs.ext4 /dev/storage/vo
    # mkdir /linuxprobe
    # mount /dev/storage/vo /linuxprobe
    5 查看挂载状态,并写入到配置文件,使其永久生效
    # df -h
    /dev/mapper/storage-vo 145M 7.6M 138M 6% /linuxprobe
    # echo "/dev/storage/vo /linuxprobe ext4 defaults 0 0" >> /etc/fstab
    
    扩容逻辑卷
    # umount /linuxprobe
    1 把上一个实验中的逻辑卷 vo 扩展至 290MB。
    # lvextend -L 290M /dev/storage/vo
    2 检查硬盘完整性,并重置硬盘容量。
    # e2fsck -f /dev/storage/vo
    # resize2fs /dev/storage/vo
    3 重新挂载硬盘设备并查看挂载状态。
    # mount -a
    # df -h
    
    缩小逻辑卷
    相较于扩容逻辑卷,在对逻辑卷进行缩容操作时,其丢失数据的风险更大。
    所以在生产环境中执行相应操作时,一定要提前备份好数据。
    另外 Linux 系统规定,在对 LVM 逻辑卷进行缩容操作之前,要先检查文件系统的完整性
    。在执行缩容操作前记得先把文件系统卸载掉
    # umount /linuxprobe
    1 检查文件系统的完整性。
    # e2fsck -f /dev/storage/vo
    2 把逻辑卷 vo 的容量减小到 120MB。
    # resize2fs /dev/storage/vo 120M
    # lvreduce -L 120M /dev/storage/vo
    [y/n]: y
    3 重新挂载文件系统并查看系统状态。
    # mount -a
    # df -h
    
    逻辑卷快照
    LVM 还具备有“快照卷”功能,该功能类似于虚拟机软件的还原时间点功能。
    例如,可以对某一个逻辑卷设备做一次快照,如果日后发现数据被改错了,就可以利用之前做好的快
    照卷进行覆盖还原。 LVM 的快照卷功能有两个特点:
    --快照卷的容量必须等同于逻辑卷的容量;
    --快照卷仅一次有效,一旦执行还原操作后则会被立即自动删除。
    # vgdisplay
    Alloc PE / Size 30 / 120.00 MiB Free PE / Size 10208 / 39.88 GiB
    卷组中已经使用了 120MB 的容量,空闲容量还有39.88GB。接下来用重定向往逻辑卷设备所挂载的目录中写入一个文件。
    # echo "Welcome to Linuxprobe.com" > /linuxprobe/readme.txt
    # ls -l /linuxprobe
    1 使用-s 参数生成一个快照卷,使用-L 参数指定切割的大小。另外,还需要在命令后面写上是针对哪个逻辑卷执行的快照操作。
    # lvcreate -L 120M -s -n SNAP /dev/storage/vo
    # lvdisplay
    --- Logical volume ---
    LV Path /dev/storage/SNAP
    LV Name SNAP
    VG Name storage
    LV UUID BC7WKg-fHoK-Pc7J-yhSd-vD7d-lUnl-TihKlt
    LV snapshot status active destination for vo
    LV Status available
    Allocated to snapshot 0.01%
    Snapshot chunk size 4.00 KiB
    2 在逻辑卷所挂载的目录中创建一个 100MB 的垃圾文件,然后再查看快照卷的状态。可以发现存储空间占的用量上升了
    # dd if=/dev/zero of=/linuxprobe/files count=1 bs=100M
    # lvdisplay
    Allocated to snapshot 83.71%
    Snapshot chunk size 4.00 KiB
    3 为了校验 SNAP 快照卷的效果,需要对逻辑卷进行快照还原操作。在此之前记得先卸载掉逻辑卷设备与目录的挂载
    # umount /linuxprobe
    # lvconvert --merge /dev/storage/SNAP
    4 快照卷会被自动删除掉,并且刚刚在逻辑卷设备被执行快照操作后再创建出来的 100MB 的垃圾文件也被清除了。
    # mount -a
    # ls /linuxprobe/
    
    删除逻辑卷
    需要提前备份好重要的数据信息,然后依次删除逻辑卷、卷组、物理卷设备,这个顺序不可颠倒。
    1 取消逻辑卷与目录的挂载关联,删除配置文件中永久生效的设备参数。
    # umount /linuxprobe
    # vim /etc/fstab
    2 删除逻辑卷设备,需要输入 y 来确认操作。
    # lvremove /dev/storage/vo
    3 删除卷组,此处只写卷组名称即可,不需要设备的绝对路径。
    # vgremove storage
    4 删除物理卷设备。
    # pvremove /dev/sdb /dev/sdc
    View Code

    测试与验证

    1 扩展磁盘空间
    [root@localhost ~]# lsblk
    NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
    sda               8:0    0   60G  0 disk 
    ├─sda1            8:1    0  953M  0 part /boot
    ├─sda2            8:2    0 37.3G  0 part /home
    ├─sda3            8:3    0   14G  0 part /
    ├─sda4            8:4    0    1K  0 part 
    ├─sda5            8:5    0  190M  0 part /boot/efi
    └─sda6            8:6    0  7.7G  0 part 
      └─centos-swap 253:0    0  7.7G  0 lvm  [SWAP]
    sdb               8:16   0   20G  0 disk  ##新增加的2块磁盘,分别20gb
    sdc               8:32   0   20G  0 disk 
    sr0              11:0    1 1024M  0 rom
    [root@localhost ~]# pvcreate /dev/sdb /dev/sdc ##创建物理卷组
      Physical volume "/dev/sdb" successfully created.
      Physical volume "/dev/sdc" successfully created.
    [root@localhost ~]# vgcreate storage /dev/sdb /dev/sdc ##创建卷管理
      Volume group "storage" successfully created
    [root@localhost ~]# vgdisplay ##查看卷
      --- Volume group ---
      VG Name               storage
      System ID             
      Format                lvm2
      Metadata Areas        2
      Metadata Sequence No  1
      VG Access             read/write
      VG Status             resizable
      MAX LV                0
      Cur LV                0
      Open LV               0
      Max PV                0
      Cur PV                2
      Act PV                2
      VG Size               39.99 GiB
      PE Size               4.00 MiB
      Total PE              10238
      Alloc PE / Size       0 / 0   
      Free  PE / Size       10238 / 39.99 GiB
      VG UUID               r1qEP9-f1LI-Q1k8-nd2a-w0bp-cJc0-FelWQh
       
      --- Volume group ---
      VG Name               centos
      System ID             
      Format                lvm2
      Metadata Areas        1
      Metadata Sequence No  2
      VG Access             read/write
      VG Status             resizable
      MAX LV                0
      Cur LV                1
      Open LV               1
      Max PV                0
      Cur PV                1
      Act PV                1
      VG Size               <7.66 GiB
      PE Size               4.00 MiB
      Total PE              1960
      Alloc PE / Size       1960 / <7.66 GiB
      Free  PE / Size       0 / 0   
      VG UUID               rIcE0e-uMmP-hc2m-LVxk-9e4F-s5e1-bhii32
    [root@localhost ~]# lvcreate -n vo -l 37 storage ##创建逻辑卷
      Logical volume "vo" created.
    [root@localhost ~]# lvdisplay ##查看
      --- Logical volume ---
      LV Path                /dev/storage/vo
      LV Name                vo
      VG Name                storage
      LV UUID                0cwDCJ-NPER-tiZq-9IaQ-QZ9U-f7Iw-YdIjGP
      LV Write Access        read/write
      LV Creation host, time localhost.localdomain, 2020-07-08 09:42:03 +0800
      LV Status              available
      # open                 0
      LV Size                148.00 MiB
      Current LE             37
      Segments               1
      Allocation             inherit
      Read ahead sectors     auto
      - currently set to     8192
      Block device           253:1
       
      --- Logical volume ---
      LV Path                /dev/centos/swap
      LV Name                swap
      VG Name                centos
      LV UUID                vgpchw-JhGV-u3j6-ax9u-z1KG-lSaE-220qp6
      LV Write Access        read/write
      LV Creation host, time localhost, 2020-07-02 16:23:58 +0800
      LV Status              available
      # open                 2
      LV Size                <7.66 GiB
      Current LE             1960
      Segments               1
      Allocation             inherit
      Read ahead sectors     auto
      - currently set to     8192
      Block device           253:0
    [root@localhost ~]# mkfs.ext4 /dev/storage/vo ##格式化创建的逻辑卷vo
    mke2fs 1.42.9 (28-Dec-2013)
    Filesystem label=
    OS type: Linux
    Block size=1024 (log=0)
    Fragment size=1024 (log=0)
    Stride=0 blocks, Stripe width=0 blocks
    38000 inodes, 151552 blocks
    7577 blocks (5.00%) reserved for the super user
    First data block=1
    Maximum filesystem blocks=33816576
    19 block groups
    8192 blocks per group, 8192 fragments per group
    2000 inodes per group
    Superblock backups stored on blocks: 
        8193, 24577, 40961, 57345, 73729
    
    Allocating group tables: done                            
    Writing inode tables: done                            
    Creating journal (4096 blocks): done
    Writing superblocks and filesystem accounting information: done 
    
    [root@localhost ~]# mkdir /linuxhq  ##创建新的目录
    [root@localhost ~]# mount /dev/storage/vo /linuxhq  ##挂载vo逻辑卷到新创建的目录
    [root@localhost ~]# df -h
    Filesystem              Size  Used Avail Use% Mounted on
    /dev/sda3                14G  7.5G  5.5G  58% /
    devtmpfs                977M     0  977M   0% /dev
    tmpfs                   993M  393M  600M  40% /dev/shm
    tmpfs                   993M   14M  979M   2% /run
    tmpfs                   993M     0  993M   0% /sys/fs/cgroup
    /dev/sda2                37G  870M   34G   3% /home
    /dev/sda1               922M  131M  729M  16% /boot
    /dev/sda5               190M  8.0K  190M   1% /boot/efi
    tmpfs                   199M   12K  199M   1% /run/user/42
    tmpfs                   199M     0  199M   0% /run/user/0
    /dev/mapper/storage-vo  140M  1.6M  128M   2% /linuxhq
    [root@localhost ~]# echo "/dev/storage/vo /linuxhq ext4 defaults 0 0 " >> /etc/fstab  ##永久生效
    [root@localhost ~]# cat /etc/fstab 
    
    #
    # /etc/fstab
    # Created by anaconda on Thu Jul  2 04:23:59 2020
    #
    # Accessible filesystems, by reference, are maintained under '/dev/disk'
    # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
    #
    UUID=5e4382d7-6863-4b58-84f0-548c0bf1d2e4 /                       ext4    defaults        1 1
    UUID=53f634a4-f101-4ede-8f6a-80f487f9385f /boot                   ext4    defaults        1 2
    UUID=99E4-1131          /boot/efi               vfat    umask=0077,shortname=winnt 0 0
    UUID=1382cd2b-f7f0-4c19-b724-a3c6210e56f1 /home                   ext4    defaults        1 2
    /dev/mapper/centos-swap swap                    swap    defaults        0 0
    /dev/storage/vo /linuxhq ext4 defaults 0 0 
    
    2 扩容逻辑卷
    在linuxhq目录下创建文件
    [root@localhost test1]# touch 1.txt 2.txt
    [root@localhost test1]# echo "acb 123" >1.txt 
    [root@localhost test1]# ll
    total 1
    -rw-r--r-- 1 root root 8 Jul  8 09:49 1.txt
    -rw-r--r-- 1 root root 0 Jul  8 09:49 2.txt
    [root@localhost test1]# pwd
    /linuxhq/test1
    测试扩展该逻辑卷
    [root@localhost ~]# umount /linuxhq/ ##卸载挂载的目录
    [root@localhost ~]# lvextend -L 300M /dev/storage/vo  ##扩展已经存在的逻辑卷
      Size of logical volume storage/vo changed from 148.00 MiB (37 extents) to 300.00 MiB (75 extents).
      Logical volume storage/vo successfully resized.
    [root@localhost ~]# e2fsck -f /dev/storage/vo ##检查硬盘的完整性
    e2fsck 1.42.9 (28-Dec-2013)
    Pass 1: Checking inodes, blocks, and sizes
    Pass 2: Checking directory structure
    Pass 3: Checking directory connectivity
    Pass 4: Checking reference counts
    Pass 5: Checking group summary information
    /dev/storage/vo: 14/38000 files (0.0% non-contiguous), 10455/151552 blocks
    [root@localhost ~]# resize2fs /dev/storage/vo ##重置硬盘容量
    resize2fs 1.42.9 (28-Dec-2013)
    Resizing the filesystem on /dev/storage/vo to 307200 (1k) blocks.
    The filesystem on /dev/storage/vo is now 307200 blocks long.
    
    [root@localhost ~]# mount /dev/storage/vo /linuxhq ##重新挂载目录
    [root@localhost ~]# mount -a
    [root@localhost ~]# df -h
    Filesystem              Size  Used Avail Use% Mounted on
    /dev/sda3                14G  7.5G  5.5G  58% /
    devtmpfs                977M     0  977M   0% /dev
    tmpfs                   993M  393M  600M  40% /dev/shm
    tmpfs                   993M   14M  979M   2% /run
    tmpfs                   993M     0  993M   0% /sys/fs/cgroup
    /dev/sda2                37G  870M   34G   3% /home
    /dev/sda1               922M  131M  729M  16% /boot
    /dev/sda5               190M  8.0K  190M   1% /boot/efi
    tmpfs                   199M   12K  199M   1% /run/user/42
    tmpfs                   199M     0  199M   0% /run/user/0
    /dev/mapper/storage-vo  287M  2.1M  266M   1% /linuxhq ##该磁盘空间已经扩展
    
    3 压缩逻辑卷
    [root@localhost mysql]# cp ibdata1 /linuxhq/test1/
    [root@localhost ~]# umount /linuxhq
    umount: /linuxhq: target is busy.
            (In some cases useful info about processes that use
             the device is found by lsof(8) or fuser(1))
    [root@localhost ~]# umount /linuxhq
    umount: /linuxhq: target is busy.
            (In some cases useful info about processes that use
             the device is found by lsof(8) or fuser(1))
    [root@localhost ~]# fuser -mv -k /dev/storage/vo
                         USER        PID ACCESS COMMAND
    /dev/dm-1:           root     kernel mount /linuxhq
                         root      16847 ..c.. bash
    [root@localhost ~]# umount /linuxhq
    [root@localhost ~]# e2fsck -f /dev/storage/vo
    e2fsck 1.42.9 (28-Dec-2013)
    Pass 1: Checking inodes, blocks, and sizes
    Pass 2: Checking directory structure
    Pass 3: Checking directory connectivity
    Pass 4: Checking reference counts
    Pass 5: Checking group summary information
    /dev/storage/vo: 18/76000 files (0.0% non-contiguous), 93587/307200 blocks
    [root@localhost ~]# resize2fs /dev/storage/vo 120M
    resize2fs 1.42.9 (28-Dec-2013)
    Resizing the filesystem on /dev/storage/vo to 122880 (1k) blocks.
    The filesystem on /dev/storage/vo is now 122880 blocks long.
    
    [root@localhost ~]# lvreduce -L 120M /dev/storage/vo 
      WARNING: Reducing active logical volume to 120.00 MiB.
      THIS MAY DESTROY YOUR DATA (filesystem etc.)
    Do you really want to reduce storage/vo? [y/n]: y
      Size of logical volume storage/vo changed from 300.00 MiB (75 extents) to 120.00 MiB (30 extents).
      Logical volume storage/vo successfully resized.
    [root@localhost ~]# mount -a
    [root@localhost ~]# df -h
    Filesystem              Size  Used Avail Use% Mounted on
    /dev/sda3                14G  7.5G  5.5G  58% /
    devtmpfs                977M     0  977M   0% /dev
    tmpfs                   993M  393M  600M  40% /dev/shm
    tmpfs                   993M   22M  971M   3% /run
    tmpfs                   993M     0  993M   0% /sys/fs/cgroup
    /dev/sda2                37G  870M   34G   3% /home
    /dev/sda1               922M  131M  729M  16% /boot
    /dev/sda5               190M  8.0K  190M   1% /boot/efi
    tmpfs                   199M   12K  199M   1% /run/user/42
    tmpfs                   199M     0  199M   0% /run/user/0
    /dev/mapper/storage-vo  113M   78M   27M  75% /linuxhq
    [root@localhost ~]# cd /linuxhq/test1/
    [root@localhost test1]# ll
    total 77827
    -rw-r--r-- 1 root root        8 Jul  8 09:49 1.txt
    -rw-r--r-- 1 root root        0 Jul  8 09:49 2.txt
    -rw-r--r-- 1 root root        0 Jul  8 11:05 3.txt
    -rw-r--r-- 1 root root        0 Jul  8 11:06 4.txt
    -rw-r--r-- 1 root root       12 Jul  8 11:06 5.txt
    -rw-r----- 1 root root 79691776 Jul  8 11:07 ibdata1
    [root@localhost test1]# lsblk
    NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
    sda               8:0    0   60G  0 disk 
    ├─sda1            8:1    0  953M  0 part /boot
    ├─sda2            8:2    0 37.3G  0 part /home
    ├─sda3            8:3    0   14G  0 part /
    ├─sda4            8:4    0    1K  0 part 
    ├─sda5            8:5    0  190M  0 part /boot/efi
    └─sda6            8:6    0  7.7G  0 part 
      └─centos-swap 253:0    0  7.7G  0 lvm  [SWAP]
    sdb               8:16   0   20G  0 disk 
    └─storage-vo    253:1    0  120M  0 lvm  /linuxhq
    sdc               8:32   0   20G  0 disk 
    sr0              11:0    1 1024M  0 rom

    --本章大量文字描述和命令来自《linux就该这么学》,实例验证全部来自本地虚拟机测试(亲测)。

  • 相关阅读:
    MyBaits resultMap 返回值与对象不匹配处理
    Play 常见命令
    Yarn源码分析之MRAppMaster:作业运行方式Local、Uber、Non-Uber
    Yarn源码分析之事件异步分发器AsyncDispatcher
    MapReduce源码分析之Task中关于对应TaskAttempt存储Map方案的一些思考
    Yarn源码分析之MapReduce作业中任务Task调度整体流程(一)
    MapReduce源码分析之作业Job状态机解析(一)简介与正常流程浅析
    Yarn源码分析之如何确定作业运行方式Uber or Non-Uber?
    Yarn源码分析之MRAppMaster上MapReduce作业处理总流程(二)
    Yarn源码分析之MRAppMaster上MapReduce作业处理总流程(一)
  • 原文地址:https://www.cnblogs.com/yhq1314/p/13267812.html
Copyright © 2011-2022 走看看