磁盘管理 LVM

来源:互联网 发布:下个会声会影软件 编辑:程序博客网 时间:2024/05/12 20:02

#########磁盘加密##################

fdisk /dev/vdb                                //分盘

cryptsetup luksFormat /dev/vdb1   //上锁

cryptsetup open /dev/vdb1 westos//解锁后的文件名为westos

mkfs.xfs /dev/mapper/westos         //格式化

mount /dev/mapper/westos /mnt/   //挂载到/mnt

crytsetup close westos                  //关闭


##########永久加密#################

    vim /etc/crypttab                        //添加内容

   +  hello  /dev/vdb1 /root/lukspsfile

   vim /root/lukspsfile                     //密码

   +  ly1024.4346

    chmod 600  /root/lukspsfile       //只能用户读写

    cryptsetup luksAddKey /dev/vdb1 /root/lukspsfile //将两个文件关联

    vim /etc/fstab                             //添加内容

   +   /dev/mapper/hello /mnt xfs defaults 0 0 

    reboot

    df


##########清除加密##################

     vim /etc/fstab                               //编辑文件,删除之前填写的

   -   /dev/mapper/hello /mnt xfs defaults 0 0 

     >/etc/crypttab                             //清空

    rm -fr /root/lukspsfile                   //删除文件 

    umount /mnt/                               //卸载

    cryptsetup close hello                 //关闭

    mkfs.xfs /dev/vdb1 -f                   //强制格式化

    df

    mount /dev/vdb1 /mnt

    df

   umount /mnt


#########磁盘阵列###################

    1  fdisk /dev/vdb                          //划分磁盘

    2  partprobe                                 //重读分区表

    3  ll -l /dev/md0                            //查看存在md0否

    4  mdadm -C /dev/md0 -a yes -l 1 -n 2 -x 1 /dev/vdb{1..3}

    //-C 创建 -a 如果md0不存在则创建 是否创建 yes 级别( 0 1 5 ) -n 用几块作阵列 -x 闲置一块

    5  mkfs.xfs /dev/md0                    //格式化

    6  mount /dev/md0 /mnt               //挂载使用

    7  cat /proc/mdstat 


############################

   mdadm -f /dev/md0 /dev/vdb1          //破坏vdb1

   mdadm -D /dev/md0                         //显示 

   mdadm -r /dev/md0 /dev/vdb1          //移除vdb1

   mdadm -f /dev/md0 /dev/vdb2          //弄坏vdb2

   mdadm -a /dev/md0 /dev/vdb1         //添加vdb1

   mdadm -r /dev/md0 /dev/vdb2          //移除vdb2

   mdadm -f /dev/md0 /dev/vdb1          //破坏vdb1

   mdadm -r /dev/md0 /dev/vdb1          //移除vdb1

   umount /mnt                                      //卸载

   mdadm -f /dev/md0 /dev/vdb3          //破坏vdb3

   mdadm -S /dev/md0                         //stop

###########配额#################

   mount -o usrquota /dev/vdb1 /pub

   quotaon -uv /dev/vdb1

   chmod 1777 /pub

   edquota -u student

   su - student

   vim /etc/fstab/

   + hard 1024 k 

   df

   blkid

   vim /etc/fstab

   + /dev/vdb1 /pub xfs defaults,usrquota 0 0  

   reboot

#############################

逻辑卷

   1  fdisk /dev/vdb

   2  partprobe 

划分物理分区并把分区id 修改为8e     //类型

   Device Boot      Start         End      Blocks   Id  System

/dev/vdb1            2048      206847      102400   8e  Linux LVM

/dev/vdb2          206848      411647      102400   8e  Linux LVM

    7  pvcreate  /dev/vdb1                  //榨汁

    8  vgcreate  hello /dev/vdb1         //

    9  lvcreate  -L 50M -n apple hello//取汁

   10  mkfs.xfs /dev/hello/apple        //格式化

   11  mount /dev/hello/apple /mnt/

   12  df

   13  ll /dev/hello/apple               

   14  ll /dev/mapper/hello-apple

############################

===pv===

  PV         VG    Fmt  Attr PSize  PFree

  /dev/vdb1  hello lvm2 a--  96.00m     0

  /dev/vdb2  hello lvm2 a--  96.00m 92.00m

===vg===

  VG    #PV #LV #SN Attr   VSize   VFree

  hello   2   1   0 wz--n- 192.00m 92.00m

===lv===

  LV    VG    Attr  LSize   Pool Origin Data%  Move Log Cpy%Sync Convert

  apple hello -wi-ao---- 100.00m

Filesystem               Size  Used Avail Use% Mounted on

/dev/vda1                 10G  3.0G  7.1G  30% /

devtmpfs                 906M     0  906M   0% /dev

tmpfs                    921M   80K  921M   1% /dev/shm

tmpfs                    921M   17M  904M   2% /run

tmpfs                    921M     0  921M   0% /sys/fs/cgroup

/dev/mapper/hello-apple   97M  2.8M   94M   3% /mnt

[root@desktop5 ~]# watch -n 1 'echo ===pv===;pvs;echo ===vg===; vgs;echo ===lv===;lvs;df -h;'

   16  pvcreate  /dev/vdb2                         //再来一块

   18  lvextend -L 100M /dev/hello/apple 

   19  vgextend  hello /dev/vdb2                //vdb2加到组hello

   20  lvextend  -L 100M /dev/hello/apple  //增长到100M

   21  xfs_growfs  /dev/hello/apple            //填充杯子到100M

注意:不能无限扩大,文件系统受限制 

#########################

   31  umount /dev/hello/apple

   32  mkfs.ext4 /dev/hello/apple               //xfs不能缩减

   34  e2fsck -f /dev/hello/apple                //检测一下

   40  resize2fs /dev/hello/apple 80M       //文件系统缩减

   41  lvreduce -L 80M /dev/hello/apple   //物理逻辑缩减

   42  pvmove /dev/vdb1 /dev/vdb2         //1块上的移动到块2

   43  vgreduce hello /dev/vdb1               //从组中把块1删除

   44  pvremove /dev/vdb1                       //移除块1





##########################

    mount /dev/hello/apple 

    xfs_growfs /dev/hello/apple 

    lvextend -L 150M /dev/hello/apple 

    xfs_growfs /dev/hello/apple 

    ext4 /dev/hello/apple 

    resize2fs  150M /dev/hello/apple 

    resize2fs  /dev/hello/apple  150M

    fdisk /dev/vdb

    partprobe 

    reboot

   vgreduce --removemissing hello --force

###########################

    lvcreate  -L 10M -n lv0 -s /dev/hello/apple    //快照名为lv0

    mount /dev/hello/lv0 /mnt                               //挂载到/mnt

    mkfs.xfs  -f /dev/hello/lv0                                //格式化

    mount /dev/hello/lv0 /pub

    umount /mnt

    umount /pub

    lvremove  /dev/hello/apple

    lvremove  /dev/hello/lv0

    vgremove  hello

    pvremove  /dev/vdb2

    pvs

[root@localhost ~]# lvcreate -L 10M -n lv0 -s /dev/hello/apple

  Rounding up size to full physical extent 12.00 MiB

  Logical volume "lv0" created

[root@localhost ~]# mount /dev/hello/lv0 /mnt

[root@localhost ~]# mkfs.xfs -f /dev/hello/lv0

mkfs.xfs: /dev/hello/lv0 contains a mounted filesystem

Usage: mkfs.xfs

/* blocksize */ [-b log=n|size=num]

/* metadata */ [-m crc=[0|1]

/* data subvol */ [-d agcount=n,agsize=n,file,name=xxx,size=num,

    (sunit=value,swidth=value|su=num,sw=num|noalign),

    sectlog=n|sectsize=num

/* force overwrite */ [-f]

/* inode size */ [-i log=n|perblock=n|size=num,maxpct=n,attr=0|1|2,

    projid32bit=0|1]

/* no discard */ [-K]

/* log subvol */ [-l agnum=n,internal,size=num,logdev=xxx,version=n

    sunit=value|su=num,sectlog=n|sectsize=num,

    lazy-count=0|1]

/* label */ [-L label (maximum 12 characters)]

/* naming */ [-n log=n|size=num,version=2|ci,ftype=0|1]

/* no-op info only */ [-N]

/* prototype file */ [-p fname]

/* quiet */ [-q]

/* realtime subvol */ [-r extsize=num,size=num,rtdev=xxx]

/* sectorsize */ [-s log=n|size=num]

/* version */ [-V]

devicename

<devicename> is required unless -d name=xxx is given.

<num> is xxx (bytes), xxxs (sectors), xxxb (fs blocks), xxxk (xxx KiB),

      xxxm (xxx MiB), xxxg (xxx GiB), xxxt (xxx TiB) or xxxp (xxx PiB).

<value> is xxx (512 byte blocks).

[root@localhost ~]# umount /mnt

[root@localhost ~]# umount /pub

umount: /pub: not mounted

[root@localhost ~]# vgremove /dev/hello/apple

  Invalid volume group name: hello/apple

  Run `vgremove --help' for more information.

[root@localhost ~]# lvremove /dev/hello/apple

Do you really want to remove active logical volume lv0? [y/n]: y

  Logical volume "lv0" successfully removed

Do you really want to remove active logical volume apple? [y/n]: y

  Logical volume "apple" successfully removed

##########################


0 0
原创粉丝点击