1. Linux磁盘及文件系统管理
1.1. 基本概念:
1.1.1. 磁盘接口类型:
IDE(ata):并口,133MB/s,设备/dev/hd[a-z]
SCSI:并口,Ultrascsi320, 320MB/S, UltraSCSI640, 640MB/S,设备/dev/sd[a-z]
宽带:16-1
窄带:8-1
SATA:串口,6gbps,设备/dev/sd[a-z]
SAS:串口,6gbps,设备/dev/sd[a-z]
USB:串口,480MB/s,设备/dev/sd[a-z] 并口:同一线缆可以接多块设备;
串口:同一线缆只可以接一个设备;
                 
1.1.2. 硬盘类型:
机械硬盘
track:磁道
sector:扇区,512bytes
cylinder:柱面
分区划分基于柱面:
平均寻道时间: 固态硬盘

https://www.cnblogs.com/chensiqiqi/p/6432371.html

1.1.3. 设备类型:
块设备(block):随机访问,数据交换单位是“块”;
字符设备(character):线性访问,数据交换单位是“字符”;
             
1.1.4. 设备文件:FHS,他是设备文件:关联至设备的驱动程序;设备的访问入口;
设备号:
  major:主设备号,区分设备类型;用于标明设备所需要的驱动程序;
  minor:次设备号,区分同种类型下的不同的设备;是特定设备的访问入口;
                         
mknod命令:
  make block or character special files
  mknod  [OPTION]...  NAME  TYPE  [MAJOR  MINOR]
    -m MODE:创建后的设备文件的访问权限;
               
1.1.5. 引用设备的方式:
  设备文件名
  卷标
  UUID
                     
1.1.6. 磁盘分区:MBR, GPT
  MBR(Master Boot Record):从第一扇区开始,0 sector
    分为三部分:
      446bytes:bootloader, 程序,引导启动操作系统的程序;
      64bytes:分区表,每16bytes标识一个分区,一共只能有4个分区(四个主分区或者三主一扩展,扩展分区可以分为n个逻辑分区);
      2bytes:MBR区域的有效性标识;55AA为有效;
     
1.1.7. fdisk命令:
  查看磁盘的分区信息:
    fdisk -l [-u] [device...]:列出指定磁盘设备上的分区情况;
  管理分区
    fdisk  device
  fdisk提供了一个交互式接口来管理分区,它有许多子命令,分别用于不同的管理功能;所有的操作均在内存中完成,没有直接同步到磁盘;直到使用w命令保存至磁盘上;
  常用命令:
    n:创建新分区
    d:删除已有分区
    t:修改分区类型
    l:查看所有已经ID
    w:保存并退出
    q:不保存并退出
    m:查看帮助信息
    p:显示现有分区信息
  注意:在已经分区并且已经挂载其中某个分区的磁盘设备上创建的新分区,内核可能在创建完成后无法直接识别;
                 
  查看:cat  /proc/partitions
  通知内核强制重读磁盘分区表:
    CentOS 5:partprobe [device]
    CentOS 6,7:partx, kpartx
      partx -a [device]
      kpartx -af [device]
  分区创建工具:parted, sfdisk;
                 
  创建文件系统:
  格式化:低级格式化(分区之前进行,划分磁道)、高级格式化(分区之后对分区进行,创建文件系统)
    元数据区,数据区
    元数据区:
      文件元数据:inode (index node)
      大小、权限、属主属组、时间戳、数据块指针
      符号链接文件:存储数据指针的空间当中存储的是真实文件的访问路径;
      设备文件:存储数据指针的空间当中存储的是设备号(major, minor);
      bitmap index:位图索引
             
1.1.8. VFS: Virtual File System
  Linux的文件系统: ext2(无日志功能), ext3, ext4, xfs, reiserfs, btrfs
         Linux 常用的文件系统 https://mp.weixin.qq.com/s/Q05C0wp6WkFTtC7aBJxbzA
  光盘:iso9660
  网络文件系统:nfs, cifs
  集群文件系统:gfs2, ocfs2
  内核级分布式文件系统:ceph
  windows的文件系统:vfat, ntfs
  伪文件系统:proc, sysfs, tmpfs, hugepagefs
  Unix的文件系统:UFS, FFS, JFS
  交换文件系统:swap
  用户空间的分布式文件系统:mogilefs, moosefs, glusterfs
 
https://blog.csdn.net/xiaofei0859/article/details/71222776
             
                 
1.1.10. 链接文件:访问同一个文件不同路径;
硬链接:指向同一个inode的多个文件路径;
  特性:
    (1) 目录不支持硬链接;
    (2) 硬链接不能跨文件系统;
    (3) 创建硬链接会增加inode引用计数;
  创建:
ln  src  link_file

符号链接:指向一个文件路径的另一个文件路径;

  特性:
    (1) 符号链接与文件是两人个各自独立的文件,各有自己的inode;对原文件创建符号链接不会增加引用计数;
    (2) 支持对目录创建符号链接,可以跨文件系统;
    (3) 删除符号链接文件不影响原文件;但删除原文件,符号指定的路径即不存在,此时会变成无效链接;
  注意:符号链接文件的大小是其指定的文件的路径字符串的字节数;
  创建:     
ln -s  src link_file
 
2. 文件系统管理工具:
2.1. 创建文件系统的工具:mkfs
    mkfs.ext2, mkfs.ext3, mkfs.ext4, mkfs.xfs, mkfs.vfat, ...
 
2.2. 检测及修复文件系统的工具:fsck
    fsck.ext2, fsck.ext3, ...
 
2.3. 查看其属性的工具:dumpe2fs, tune2fs
 
2.4. 调整文件系统特性:tune2fs
 
2.5. ext系列文件系统专用管理工具:mke2fs
  mke2fs [OPTIONS]  device
    -t {ext2|ext3|ext4}:指明要创建的文件系统类型
      mkfs.ext4 = mkfs -t ext4 = mke2fs -t ext4
    -b {1024|2048|4096}:指明文件系统的块大小;
    -L LABEL:指明卷标;
    -j:创建有日志功能的文件系统ext3;
      mke2fs -j = mke2fs -t ext3 = mkfs -t ext3 = mkfs.ext3
    -i #:bytes-per-inode,指明inode与字节的比率;即每多少字节创建一个Indode;
    -N #:直接指明要给此文件系统创建的inode的数量;
    -m #:指定预留的空间,百分比;
    -O [^]FEATURE:以指定的特性创建目标文件系统;
                 
2.6. e2label命令:卷标的查看与设定
      查看:e2label device
      设定:e2label device LABEL
 
2.7. tune2fs命令:查看或修改ext系列文件系统的某些属性
    adjust tunable filesystem parameters on ext2/ext3/ext4 filesystems;
      注意:块大小创建后不可修改;
                 
  tune2fs [OPTIONS] device
    -l:查看超级块的内容;
    修改指定文件系统的属性:
    -j:ext2 --> ext3;
    -L LABEL:修改卷标;
    -m #:调整预留空间百分比;
    -O [^]FEATHER:开启或关闭某种特性;
    -o [^]mount_options:开启或关闭某种默认挂载选项
      acl
      ^acl
                             
2.8. dumpe2fs命令:显示ext系列文件系统的属性信息
    dumpe2fs  [-h] device
    用于实现文件系统检测的工具
    因进程意外中止或系统崩溃等 原因导致定稿操作非正常终止时,可能会造成文件损坏;此时,应该检测并修复文件系统; 建议,离线进行;
                 
2.9. ext系列文件系统的专用工具:
    e2fsck : check a Linux ext2/ext3/ext4 file system
    e2fsck [OPTIONS]  device
      -y:对所有问题自动回答为yes;
      -f:即使文件系统处于clean状态,也要强制进行检测;
    fsck:check and repair a Linux file system
      -t fstype:指明文件系统类型;
        fsck -t ext4 = fsck.ext4
      -a:无须交互而自动修复所有错误;
      -r:交互式修复;      
         
2.10. CentOS 6如何使用xfs文件系统:
  # yum  -y  install  xfsprogs
    创建:mkfs.xfs
    检测:fsck.xfs        
         
2.11. blkid命令:
        blkid device
        blkid  -L LABEL:根据LABEL定位设备
        blkid  -U  UUID:根据UUID定位设备
         
2.12. swap文件系统:
        Linux上的交换分区必须使用独立的文件系统;
            且文件系统的System ID必须为82;
             
        创建swap设备:mkswap命令
            mkswap [OPTIONS]  device
                -L LABEL:指明卷标
                -f:强制
                 
2.13. Windows无法识别Linux的文件系统; 因此,存储设备需要两种系统之间交叉使用时,应该使用windows和Linux同时支持的文件系统:fat32(vfat);
        # mkfs.vfat device
         
2.14. 文件系统的使用:
  首先要“挂载”:mount命令和umount命令
  根文件系统这外的其它文件系统要想能够被访问,都必须通过“关联”至根文件系统上的某个目录来实现,此关联操作即为“挂载”;此目录即为“挂载点”;
  挂载点:mount_point,用于作为另一个文件系统的访问入口;
    (1) 事先存在;
    (2) 应该使用未被或不会被其它进程使用到的目录;
    (3) 挂载点下原有的文件将会被隐藏;
             
  mount命令:
    mount  [-nrw]  [-t vfstype]  [-o options]  device  dir
    命令选项:
      -r:readonly,只读挂载;
      -w:read and write, 读写挂载;
      -n:默认情况下,设备挂载或卸载的操作会同步更新至/etc/mtab文件中;-n用于禁止此特性;
      -t vfstype:指明要挂载的设备上的文件系统的类型;多数情况下可省略,此时mount会通过blkid来判断要挂载的设备的文件系统类型;
      -L LABEL:挂载时以卷标的方式指明设备;
        mount -L LABEL dir
      -U UUID:挂载时以UUID的方式指明设备;
        mount -U UUID dir
      -o options:挂载选项
        sync/async:同步/异步操作;
        atime/noatime:文件或目录在被访问时是否更新其访问时间戳;
        diratime/nodiratime:目录在被访问时是否更新其访问时间戳;
        remount:重新挂载;
        acl:支持使用facl功能;
          # mount -o acl  device dir
          # tune2fs  -o  acl  device
          ro:只读
          rw:读写
          dev/nodev:此设备上是否允许创建设备文件;
          exec/noexec:是否允许运行此设备上的程序文件;
          auto/noauto:
          user/nouser:是否允许普通用户挂载此文件系统;
          suid/nosuid:是否允许程序文件上的suid和sgid特殊权限生效;
 
          defaults:Use default options: rw, suid, dev, exec, auto, nouser, async, and relatime.
                     
    一个使用技巧:可以实现将目录绑定至另一个目录上,作为其临时访问入口;
      mount --bind  源目录  目标目录
      查看当前系统所有已挂载的设备:
        # mount
        # cat  /etc/mtab
        # cat  /proc/mounts
      mount  -a:可自动挂载定义在/etc/fstab中所支持自动挂载的设备;
      挂载光盘:
        mount  -r  /dev/cdrom  mount_point
        光盘设备文件:/dev/cdrom, /dev/dvd
      挂载U盘:
        事先识别U盘的设备文件;
      挂载本地的回环设备:
        # mount  -o  loop  /PATH/TO/SOME_LOOP_FILE   MOUNT_POINT
 
 
  umount命令:
    umount  device|dir
      注意:正在被进程访问到的挂载点无法被卸载;
      查看被哪个或哪些进程所战用:
        # lsof  MOUNT_POINT
        # fuser -v  MOUNT_POINT
      终止所有正在访问某挂载点的进程:
        # fuser  -km  MOUNT_POINT
                     
2.15. 交换分区的启用和禁用:
  创建交换分区的命令:mkswap
    启用:swapon
      swapon  [OPTION]  [DEVICE]
        -a:定义在/etc/fstab文件中的所有swap设备;
    禁用:swapoff
      swapoff DEVICE
             
2.16. 设定除根文件系统以外的其它文件系统能够开机时自动挂载:/etc/fstab文件
  每行定义一个要挂载的文件系统及相关属性:
    6个字段:
      (1) 要挂载的设备:
        设备文件;
        LABEL
        UUID
        伪文件系统:如sysfs, proc, tmpfs等
      (2) 挂载点
        swap类型的设备的挂载点为swap;
      (3) 文件系统类型;
      (4) 挂载选项
        defaults:使用默认挂载选项;
        如果要同时指明多个挂载选项,彼此间以事情分隔;
          defaults,acl,noatime,noexec
      (5) 转储频率
        0:从不备份;
        1:每天备份;
        2:每隔一天备份;
      (6) 自检次序
        0:不自检;
        1:首先自检,通常只能是根文件系统可用1;
        2:次级自检
 
2.17. 两个命令:df和du
  df命令:
    df [OPTION]... [FILE]...
      -l:仅显示本地文件的相关信息;
      -h:human-readable
      -i:显示inode的使用状态而非blocks
  du命令:
    du [OPTION]... [FILE]...
      -s: sumary
      -h: human-readable
 
2.18. 查看硬盘是不是固态硬盘:
# cat /sys/block/sda/queue/rotational
1 #不是固态硬盘
0 #是固态硬盘

3. lvm

写个例子:

下面是本机状态

[root@hctjosadm01 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg_system-lv_root 4.0G 69M 4.0G 2% /
devtmpfs 910M 0 910M 0% /dev
tmpfs 920M 0 920M 0% /dev/shm
tmpfs 920M 41M 880M 5% /run
tmpfs 920M 0 920M 0% /sys/fs/cgroup
/dev/mapper/vg_system-lv_usr 4.0G 1.3G 2.8G 31% /usr
/dev/sda1 1014M 143M 872M 15% /boot
/dev/mapper/vg_system-lv_home 4.0G 33M 4.0G 1% /home
/dev/mapper/vg_system-lv_opt 4.0G 33M 4.0G 1% /opt
/dev/mapper/vg_system-lv_var 4.0G 2.3G 1.8G 56% /var
/dev/mapper/vg_system-lv_docker_registry 20G 104M 20G 1% /data_docker_registry
/dev/mapper/vg_system-lv_tmp 4.0G 33M 4.0G 1% /tmp
tmpfs 184M 0 184M 0% /run/user/0
[root@hctjosadm01 ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/sda2 vg_system lvm2 a-- <99.00g <51.00g
[root@hctjosadm01 ~]# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
lv_docker_registry vg_system -wi-ao---- 20.00g
lv_home vg_system -wi-ao---- 4.00g
lv_opt vg_system -wi-ao---- 4.00g
lv_root vg_system -wi-ao---- 4.00g
lv_swap vg_system -wi-ao---- 4.00g
lv_tmp vg_system -wi-ao---- 4.00g
lv_usr vg_system -wi-ao---- 4.00g
lv_var vg_system -wi-ao---- 4.00g
[root@hctjosadm01 ~]# vgs
VG #PV #LV #SN Attr VSize VFree
vg_system 1 8 0 wz--n- <99.00g <51.00g

3.1. 创建一个可用分区/文件夹

添加一块10G磁盘

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

Disk /dev/sdb: 10.7 GB, 10737418240 bytes, 20971520 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

如果是虚拟机而且安装了vmtools,会自己识别,如果是物理机需要执行

echo "- - -" > /sys/class/scsi_host/host0/scan

把/dev/sdb创建成pv

[root@hctjosadm01 ~]# pvcreate /dev/sdb
Physical volume "/dev/sdb" successfully created.
[root@hctjosadm01 ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/sda2 vg_system lvm2 a-- <99.00g <51.00g
/dev/sdb lvm2 --- 10.00g 10.00g

创建vg

[root@hctjosadm01 ~]# vgcreate vg_test /dev/sdb
Volume group "vg_test" successfully created
[root@hctjosadm01 ~]# vgs
VG #PV #LV #SN Attr VSize VFree
vg_system 1 8 0 wz--n- <99.00g <51.00g
vg_test 1 0 0 wz--n- <10.00g <10.00g

创建lv,使用100%的剩余空间

[root@hctjosadm01 ~]# lvcreate -n lv_test -l 100%FREE vg_test
Logical volume "lv_test" created.
[root@hctjosadm01 ~]# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
lv_docker_registry vg_system -wi-ao---- 20.00g
lv_home vg_system -wi-ao---- 4.00g
lv_opt vg_system -wi-ao---- 4.00g
lv_root vg_system -wi-ao---- 4.00g
lv_swap vg_system -wi-ao---- 4.00g
lv_tmp vg_system -wi-ao---- 4.00g
lv_usr vg_system -wi-ao---- 4.00g
lv_var vg_system -wi-ao---- 4.00g
lv_test vg_test -wi-a----- <10.00g

格式化并挂载

[root@hctjosadm01 ~]# mkfs.xfs /dev/mapper/vg_test-lv_test
meta-data=/dev/mapper/vg_test-lv_test isize=512 agcount=4, agsize=655104 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0, sparse=0
data = bsize=4096 blocks=2620416, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal log bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
[root@hctjosadm01 ~]# mkdir /test
[root@hctjosadm01 ~]# mount /dev/mapper/vg_test-lv_test /test/

需要开机启动的话需要修改/etc/fstab

echo "/dev/mapper/vg_test-lv_test /test/    xfs defaults 0 0" >> /etc/fstab

3.2. 增加一块磁盘,扩展分区容量

增加一块磁盘/dev/sdc

[root@hctjosadm01 ~]# fdisk -l /dev/sdc

Disk /dev/sdc: 10.7 GB, 10737418240 bytes, 20971520 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

吧/dev/sdc加入卷组vg_test中

[root@hctjosadm01 ~]# vgextend vg_test /dev/sdc
Physical volume "/dev/sdc" successfully created.
Volume group "vg_test" successfully extended
[root@hctjosadm01 ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/sda2 vg_system lvm2 a-- <99.00g <51.00g
/dev/sdb vg_test lvm2 a-- <10.00g 0
/dev/sdc vg_test lvm2 a-- <10.00g <10.00g
[root@hctjosadm01 ~]# vgs
VG #PV #LV #SN Attr VSize VFree
vg_system 1 8 0 wz--n- <99.00g <51.00g
vg_test 2 1 0 wz--n- 19.99g <10.00g

增加lv大小

[root@hctjosadm01 ~]# lvextend -L +5G /dev/mapper/vg_test-lv_test
Size of logical volume vg_test/lv_test changed from <10.00 GiB (2559 extents) to <15.00 GiB (3839 extents).
Logical volume vg_test/lv_test successfully resized.
[root@hctjosadm01 ~]# xfs_growfs /dev/mapper/vg_test-lv_test
meta-data=/dev/mapper/vg_test-lv_test isize=512 agcount=4, agsize=655104 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0 spinodes=0
data = bsize=4096 blocks=2620416, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
data blocks changed from 2620416 to 3931136

#如果是ext4的文件系统,请使用resize2fs /dev/mapper/vg_test-lv_test

[root@hctjosadm01 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg_system-lv_root 4.0G 69M 4.0G 2% /
devtmpfs 910M 0 910M 0% /dev
tmpfs 920M 0 920M 0% /dev/shm
tmpfs 920M 41M 880M 5% /run
tmpfs 920M 0 920M 0% /sys/fs/cgroup
/dev/mapper/vg_system-lv_usr 4.0G 1.3G 2.8G 31% /usr
/dev/sda1 1014M 143M 872M 15% /boot
/dev/mapper/vg_system-lv_home 4.0G 33M 4.0G 1% /home
/dev/mapper/vg_system-lv_opt 4.0G 33M 4.0G 1% /opt
/dev/mapper/vg_system-lv_var 4.0G 2.3G 1.8G 56% /var
/dev/mapper/vg_system-lv_docker_registry 20G 104M 20G 1% /data_docker_registry
/dev/mapper/vg_system-lv_tmp 4.0G 33M 4.0G 1% /tmp
tmpfs 184M 0 184M 0% /run/user/0
/dev/mapper/vg_test-lv_test 15G 33M 15G 1% /test

3.3. 缩小lv大小

先把文件系统umount

[root@hctjosadm01 ~]# umount /test

缩小文件系统会造成磁盘无法正常

[root@hctjosadm01 ~]# lvreduce -L 5G /dev/mapper/vg_test-lv_test
WARNING: Reducing active logical volume to 5.00 GiB.
THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce vg_test/lv_test? [y/n]: y
Size of logical volume vg_test/lv_test changed from <15.00 GiB (3839 extents) to 5.00 GiB (1280 extents).
Logical volume vg_test/lv_test successfully resized.
# 缩小后文件容易损坏
[root@hctjosadm01 ~]# mount /dev/mapper/vg_test-lv_test /test
mount: /dev/mapper/vg_test-lv_test: can't read superblock
[root@hctjosadm01 ~]# mkfs.xfs /dev/mapper/vg_test-lv_test
mkfs.xfs: /dev/mapper/vg_test-lv_test appears to contain an existing filesystem (xfs).
mkfs.xfs: Use the -f option to force overwrite.
# 重新格式化要加-f
[root@hctjosadm01 ~]# mkfs.xfs -f /dev/mapper/vg_test-lv_test
meta-data=/dev/mapper/vg_test-lv_test isize=512 agcount=4, agsize=327680 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0, sparse=0
data = bsize=4096 blocks=1310720, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal log bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
[root@hctjosadm01 ~]# mount /dev/mapper/vg_test-lv_test /test
[root@hctjosadm01 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/vg_system-lv_root 4.0G 69M 4.0G 2% /
devtmpfs 910M 0 910M 0% /dev
tmpfs 920M 0 920M 0% /dev/shm
tmpfs 920M 41M 880M 5% /run
tmpfs 920M 0 920M 0% /sys/fs/cgroup
/dev/mapper/vg_system-lv_usr 4.0G 1.3G 2.8G 31% /usr
/dev/sda1 1014M 143M 872M 15% /boot
/dev/mapper/vg_system-lv_home 4.0G 33M 4.0G 1% /home
/dev/mapper/vg_system-lv_opt 4.0G 33M 4.0G 1% /opt
/dev/mapper/vg_system-lv_var 4.0G 2.3G 1.8G 56% /var
/dev/mapper/vg_system-lv_docker_registry 20G 104M 20G 1% /data_docker_registry
/dev/mapper/vg_system-lv_tmp 4.0G 33M 4.0G 1% /tmp
tmpfs 184M 0 184M 0% /run/user/0
/dev/mapper/vg_test-lv_test 5.0G 33M 5.0G 1% /test

3.4. 从卷组中移除pv,注意,只能在线移除没有在用的pv

[root@hctjosadm01 ~]# vgreduce vg_test /dev/sdc
Removed "/dev/sdc" from volume group "vg_test"
[root@hctjosadm01 ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/sda2 vg_system lvm2 a-- <99.00g <51.00g
/dev/sdb vg_test lvm2 a-- <10.00g <5.00g
/dev/sdc lvm2 --- 10.00g 10.00g

3.5. 吧卷组整个移除

[root@hctjosadm01 ~]# umount /test
[root@hctjosadm01 ~]# lvremove /dev/mapper/vg_test-lv_test
Do you really want to remove active logical volume vg_test/lv_test? [y/n]: y
Logical volume "lv_test" successfully removed
[root@hctjosadm01 ~]# vgremove vg_test
Volume group "vg_test" successfully removed
[root@hctjosadm01 ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/sda2 vg_system lvm2 a-- <99.00g <51.00g
/dev/sdb lvm2 --- 10.00g 10.00g
/dev/sdc lvm2 --- 10.00g 10.00g
[root@hctjosadm01 ~]# vgs
VG #PV #LV #SN Attr VSize VFree
vg_system 1 8 0 wz--n- <99.00g <51.00g

【Linux】【Basis】磁盘分区的更多相关文章

  1. Linux中磁盘分区——理论篇

    Linux中磁盘分区——理论篇 现在主流的分区的方式有两种——MBR分区和GPT分区,本文将着重介绍MBR分区底层原理,及用相关命令验证相关原理 Linux中磁盘分区理论篇 为什么要对磁盘进行分区 M ...

  2. Linux下磁盘分区、挂载、卸载操作记录

    Linux下磁盘分区.挂载.卸载操作记录. 操作环境:CentOS release 6.5 (Final) Last :: from 118.230.194.76 [root@CentOS ~]# [ ...

  3. linux初学者-磁盘分区方式篇

    linux初学者-磁盘分区方式篇 一般的计算机都会采用mbr分区方式,这种分区方式只能够建立四个主分区,如果还需要或更多的分区,就需要将其中一个主分区建立成一个扩展分区,在里面建立逻辑分区,这些分区信 ...

  4. Linux系统磁盘分区、删除分区、格式化、挂载、卸载、开机自动挂载的方法总结

    Linux系统按照MBR(Master Boot Record)传统分区模式: 注意:传统的MBR(Master Boot Record)分区方式最大只能分2T容量的硬盘,超过2T的硬盘一般采用GPT ...

  5. Linux下磁盘分区挂载

    一般你去买vps都会看到介绍说硬盘多少G  比如 80G 但是你进入系统df -h的时候发现怎么只有10G呢, 其实这10G是用来装系统的和一些常用服务软件的  不是给你放网站数据的 那50G硬盘在哪 ...

  6. 文件系统管理 之 Linux 查看磁盘分区、文件系统、使用情况的命令和相关工具介绍

    一.df 命令:df 是来自于coreutils 软件包,系统安装时,就自带的:我们通过这个命令可以查看磁盘的使用情况以及文件系统被挂载的位置: 举例: [root@localhost beinan] ...

  7. linux 系统磁盘分区之fdisk

    对于学习磁盘分区,通常学习的都是fdisk命令 当然,对于小于2TB的磁盘,我们基本上是使用fdisk命令进行分区 下面就简单介绍一下fdisk操作磁盘的基本命令和场景模拟 常用命令介绍   fdis ...

  8. Linux 查看磁盘分区、文件系统、使用情况的命令和相关工具介绍

    磁盘分区表.文件系统的查看.统计的工具很多,有些工具是多功能的,不仅仅是查看磁盘的分区表,而且也能进行磁盘分区的操作:但在本文,我们只讲磁盘分区的查看,以及分区的使用情况的查看:本文只是给新手上路之用 ...

  9. linux下磁盘分区详解 图文(fdisk;mkfs)

    linux分区不同于windows,linux下硬盘设备名为(IDE硬盘为hdx(x为从a-d)因为IDE硬盘最多四个,SCSI,SATA,USB硬盘为sdx(x为a-z)),硬盘主分区最多为4个,不 ...

  10. 3. Linux系统磁盘分区介绍

    1. 磁盘分区基本知识 1)磁盘在使用前一般要先分区(相当于建房子要分房间一样). 2)磁盘分区一般有主分区.扩展分区和逻辑分区之分.一块磁盘最多可以有4个主分区,其中一个主分区的位置可以用一个扩展分 ...

随机推荐

  1. 用 Node.js 实现的最简单的 HTTP 服务器

    用 Node.js 实现的最简单的 HTTP 服务器 //app.js var http = require('http'); http.createServer(function(req, res) ...

  2. 设计模式学习-使用go实现桥接模式

    桥接模式 前言 定义 优点 缺点 应用场景 代码实现 参考 桥接模式 前言 桥接模式的代码实现非常简单,但是理解起来稍微有点难度,并且应用场景也比较局限,所以,相当于代理模式来说,桥接模式在实际的项目 ...

  3. VLAN实验

    VLAN实验 如图所示:图中共有四个广播域,左边逻辑的分为两个广播域,右边也是逻辑的分为两个广播域, 配置顺序先配置交换机,在配置路由器 SW1 配置: 1.首先创建vlan [sw1]vlan ba ...

  4. 如何系统学习C 语言(下)之 预处理命令篇

    大话c语言(下)之 预处理命令篇 预处理就是在编译之前,通过一些预处理命令对源代码进行管理和控制的过程. 由源代码得到可执行的程序,会经过预处理.编译.汇编和链接几个过程 预处理命令大致可以分为文件包 ...

  5. Forest v1.5.13 发布,声明式 HTTP 框架,已超 1.7k star

    Forest介绍 Forest 是一个开源的 Java HTTP 客户端框架,它能够将 HTTP 的所有请求信息(包括 URL.Header 以及 Body 等信息)绑定到您自定义的 Interfac ...

  6. 【Microsoft Azure 的1024种玩法】三.基于Azure云平台构建Discuz论坛

    [简介] Discuz!是一套通用社区论坛软件系统,用户在不需要任何编程的基础上,通过简单的设置和安装,在互联网上搭建起具备完善功能.很强负载能力和可高度定制的论坛服务. [前期文章] [操作步骤] ...

  7. List、ArrayList、迭代器、链表、Vector

    1.List接口中的常用方法. List是Collection接口的子接口.所以List接口中有一些特有的方法. void add(int index, Object element) Object ...

  8. Go语言核心36讲(Go语言实战与应用十四)--学习笔记

    36 | unicode与字符编码 在开始今天的内容之前,我先来做一个简单的总结. Go 语言经典知识总结 在数据类型方面有: 基于底层数组的切片: 用来传递数据的通道: 作为一等类型的函数: 可实现 ...

  9. jmeter中执行kafka topic指令

    前置条件 kafka版本:2.2.1 jmeter版本:5.3 插件:ApacheJMeter_ssh-1.2.0.jar 1.拷贝 ApacheJMeter_ssh-1.2.0.jar 到/lib/ ...

  10. Codeforces 1303G - Sum of Prefix Sums(李超线段树+点分治)

    Codeforces 题面传送门 & 洛谷题面传送门 个人感觉这题称不上毒瘤. 首先看到选一条路径之类的字眼可以轻松想到点分治,也就是我们每次取原树的重心 \(r\) 并将路径分为经过重心和不 ...