linux下的磁盘存储管理

2 篇文章 0 订阅
1 篇文章 0 订阅


/dev/hd0并口硬盘

/dev/sda串口硬盘
/dev/cdrom  /dev/sr0
光驱
/dev/mapper
虚拟设备

fdisk -l 
真实存在的设备 >cat /proc/partitions系统中真实识别的>blkid 系统中正在用或可用设备 >df 系统真实使用的设备
1.
设备的挂载:
  
插入u-->df,查看u盘是否挂载
  umount /dev/sdb1  
删除挂载
  mount /dev/sdb1/ /mnt/ 
重新挂载设备
  cd /mnt/
  umount /dev/sdb1/ 
不能删除挂载,(有程序正在此设备上执行)
  fuser -kvm /dev/sdb1  
结束设备上正在运行的程序
  umount /dev/sdb1/   
成功删除挂载
  umount -o ro /dev/sdb1/ /mnt/   
只读挂载
  umount -o remount,rw /dev/sdb1   
将挂载的方式改成读写挂载

2.
硬盘分区管理
   mbr 
启动分区    mbt 记录分区(分区表)  55aa 硬盘标识
  
主分区(不能超过2T    扩展分区     逻辑分区(三个分区最多可以共存16个)
  fdisk   /dev/vdb  
进入分区界面
  
进入分区界面后的命令(进入界面后可以写m,得到帮助菜单)
   a        toggle a bootable flag
   b       edit bsd disklabel
   c        toggle the dos compatibility flag
   d       delete a partition
(删除分区)
   g       create a new empty GPT partition table
   G       create an IRIX (SGI) partition table
   l         list known partition types
   m      print this menu
(进入帮助菜单)
   n      add a new partition
(新建一个分区)
   o      create a new empty DOS partition table
        print the partition table
(查看分区表信息)
   q      quit without saving changes
(退出分区界面)
   s      create a new empty Sun disklabel
        change a partition's system id
(修改分区id
   u      change display/entry units
   v      verify the partition table
   w      write table to disk and exit
(将当前操作写入硬盘分区表)
   x       extra functionality (experts only)


  第一个分区完成,若要在建立重复以上动作
  
因为 64位分区表只能建立 4个分区,所以 第四个分区强烈建议分区类型为e(即扩展分区)
  
然后即可在扩展分区中再进行分区(所有分区类型为 “l”即逻辑分区)

  分区完成之后,p查看分区,wq退出保存。


  退出保存后,若系统重读了分区表则继续,若没重读则执行 partprobe命令 手动同步到分区表

3.挂载分区:
  
首先对分区进行格式化,即在分区中安装系统文件
  mkfs.xfs /dev/vdb1
  blikid                  
查看格式化后的分区
  mount /dev/vdb1 /mnt    
vdb1分区挂载在 /mnt下(挂载必须在格式化之后进行)
  df                      
查看是否挂载成功
  
4.改变分区类型为 gpt
    
解除原有分区挂载

    删除原有分区(建议删除


    执行parted/dev/vdb进入parted界面


  新建分区,即为gpt类型


  mkfs.xfs  -f /dev/vdb1 格式化( -f 强制格式化)
  mount /dev/vdb1  /mnt  
挂载(临时挂载,关机后消失)

  df



还原分区类型:
 
  fdisk -l   
查看分区类型               

5.自动挂载分区(永久挂载)
  vim /etc/fstab

    /dev/vdb1   /mnt   xfs       defaults        0      0



   mount -a   读取/etc/fstab下的文件并挂载未挂载的设备


6.swap分区:系统不需要挂载
   
建立一个分区(看上面建立分区的内容)

   t 改为swap分区(l查看所有类型)




   partprobe   同步到分区表

   cat /proc/partitions   查看设备文件


   mkswap /dev/vdb2  格式化
   swapon -a /dev/vdb2   
激活 swap分区(临时激活,关机后消失)
   swapon -s        
查看 swap分区

   vim /etc/fstab

    /dev/vdb2     swap  swap   defaults   0  0


   swapon -a      读取 /etc/fstab下的文件并激活未激活的 swap分区设备(永久激活)
   
   
删除 swap分区
    vim /etc/fstab
     
删除此行   /dev/vdb2    swap   swap   defaults  0   0

    swapoff /dev/vdb2  关闭swap分区

   

    fdisk /dev/vdb2     删除 vdb2分区
     d
     2
    partprobe     
同步分区表

7.分区加密
    
创建一个分区
    cryptsetup luksFortmat /dev/vdb1 
对设备进行加密
   

    
验证:
    mount /dev/vdb1  /mnt    
挂载设备(失败)  
    cryptsetup  open /dev/vdb1 
文件名(随便起) 解开加密

    mkfs.xfs /dev/mapper/westos    对解密的文件格式化

   

    mount /dev/mapper/westos /mnt  挂载设备

   

    umount /mnt   解除挂载

    cryptsetup close westos     关闭解密  

    

  自动加密分区

    vim /root/diskpass    写入密码

    chmod 600 /root/diskpass   权限

   

    cryptsetup luksAddKey /dev/vdb1/root/diskpass

   

    vim /etc/crypttab

     文件名  /dev/vdb1 /root/diskpass

   

    vim /etc/fstab

      /dev/fstab   /mnt xfs  defaults 0 0

       

    reboot



  删除加密分区
    vim /etc/fstab 
删除写的命令
    vim /etc/crypttab  

    rm -fr /root/diskpass

   

    cryptsetup close westos 关闭解密
    cryptsetup luksRemoveKey/dev/vdb1
 
8.磁盘阵列  
watch -n 1 cat /proc/mdstat   
监控
mdadm -C /dev/md0 -a yes -l 1 -n 2 -x 1 /dev/vdb{1..3}

 -C 创建   -a yes(若/dev/md0下没有md0文件则创建) -l 1(级别)-n 2(两个分区同时读写)-x 1(一个分区闲置)


mkfs.xfs /dev/md0 /mnt/
mount /dev/md0 /mnt
df

设备管理

   mdadm -D /dev/md0    查看设备状态


   mdadm /dev/md0 -f /dev/vdb2  强制损坏该设备


   mdadm /dev/md0 -r /dev/vdb2  删除该设备

   mdadm /dev/md0 -a /dev/vdb2  添加该设备


9.设备删除
  umount /mnt  
解除挂载
  mdadm -S /dev/md0 
停止

  fdisk /dev/vdb  删除


  partprobe  手动同步分区列表

/dev/hd0并口硬盘

/dev/sda串口硬盘
/dev/cdrom  /dev/sr0
光驱
/dev/mapper
虚拟设备

fdisk -l 
真实存在的设备 >cat /proc/partitions系统中真实识别的>blkid 系统中正在用或可用设备 >df 系统真实使用的设备
1.
设备的挂载:
  
插入u-->df,查看u盘是否挂载
  umount /dev/sdb1  
删除挂载
  mount /dev/sdb1/ /mnt/ 
重新挂载设备
  cd /mnt/
  umount /dev/sdb1/ 
不能删除挂载,(有程序正在此设备上执行)
  fuser -kvm /dev/sdb1  
结束设备上正在运行的程序
  umount /dev/sdb1/   
成功删除挂载
  umount -o ro /dev/sdb1/ /mnt/   
只读挂载
  umount -o remount,rw /dev/sdb1   
将挂载的方式改成读写挂载

2.
硬盘分区管理
   mbr 
启动分区    mbt 记录分区(分区表)  55aa 硬盘标识
  
主分区(不能超过2T    扩展分区     逻辑分区(三个分区最多可以共存16个)
  fdisk   /dev/vdb  
进入分区界面
  
进入分区界面后的命令(进入界面后可以写m,得到帮助菜单)
   a        toggle a bootable flag
   b       edit bsd disklabel
   c        toggle the dos compatibility flag
   d       delete a partition
(删除分区)
   g       create a new empty GPT partition table
   G       create an IRIX (SGI) partition table
   l         list known partition types
   m      print this menu
(进入帮助菜单)
   n      add a new partition
(新建一个分区)
   o      create a new empty DOS partition table
        print the partition table
(查看分区表信息)
   q      quit without saving changes
(退出分区界面)
   s      create a new empty Sun disklabel
        change a partition's system id
(修改分区id
   u      change display/entry units
   v      verify the partition table
   w      write table to disk and exit
(将当前操作写入硬盘分区表)
   x       extra functionality (experts only)


  第一个分区完成,若要在建立重复以上动作
  
因为 64位分区表只能建立 4个分区,所以 第四个分区强烈建议分区类型为e(即扩展分区)
  
然后即可在扩展分区中再进行分区(所有分区类型为 “l”即逻辑分区)

  分区完成之后,p查看分区,wq退出保存。


  退出保存后,若系统重读了分区表则继续,若没重读则执行 partprobe命令 手动同步到分区表

3.挂载分区:
  
首先对分区进行格式化,即在分区中安装系统文件
  mkfs.xfs /dev/vdb1
  blikid                  
查看格式化后的分区
  mount /dev/vdb1 /mnt    
vdb1分区挂载在 /mnt下(挂载必须在格式化之后进行)
  df                      
查看是否挂载成功
  
4.改变分区类型为 gpt
    
解除原有分区挂载

    删除原有分区(建议删除


    执行parted/dev/vdb进入parted界面


  新建分区,即为gpt类型


  mkfs.xfs  -f /dev/vdb1 格式化( -f 强制格式化)
  mount /dev/vdb1  /mnt  
挂载(临时挂载,关机后消失)

  df



还原分区类型:
 
  fdisk -l   
查看分区类型               

5.自动挂载分区(永久挂载)
  vim /etc/fstab

    /dev/vdb1   /mnt   xfs       defaults        0      0



   mount -a   读取/etc/fstab下的文件并挂载未挂载的设备


6.swap分区:系统不需要挂载
   
建立一个分区(看上面建立分区的内容)

   t 改为swap分区(l查看所有类型)




   partprobe   同步到分区表

   cat /proc/partitions   查看设备文件


   mkswap /dev/vdb2  格式化
   swapon -a /dev/vdb2   
激活 swap分区(临时激活,关机后消失)
   swapon -s        
查看 swap分区

   vim /etc/fstab

    /dev/vdb2     swap  swap   defaults   0  0


   swapon -a      读取 /etc/fstab下的文件并激活未激活的 swap分区设备(永久激活)
   
   
删除 swap分区
    vim /etc/fstab
     
删除此行   /dev/vdb2    swap   swap   defaults  0   0

    swapoff /dev/vdb2  关闭swap分区

   

    fdisk /dev/vdb2     删除 vdb2分区
     d
     2
    partprobe     
同步分区表

7.分区加密
    
创建一个分区
    cryptsetup luksFortmat /dev/vdb1 
对设备进行加密
   

    
验证:
    mount /dev/vdb1  /mnt    
挂载设备(失败)  
    cryptsetup  open /dev/vdb1 
文件名(随便起) 解开加密

    mkfs.xfs /dev/mapper/westos    对解密的文件格式化

   

    mount /dev/mapper/westos /mnt  挂载设备

   

    umount /mnt   解除挂载

    cryptsetup close westos     关闭解密  

    

  自动加密分区

    vim /root/diskpass    写入密码

    chmod 600 /root/diskpass   权限

   

    cryptsetup luksAddKey /dev/vdb1/root/diskpass

   

    vim /etc/crypttab

     文件名  /dev/vdb1 /root/diskpass

   

    vim /etc/fstab

      /dev/fstab   /mnt xfs  defaults 0 0

       

    reboot



  删除加密分区
    vim /etc/fstab 
删除写的命令
    vim /etc/crypttab  

    rm -fr /root/diskpass

   

    cryptsetup close westos 关闭解密
    cryptsetup luksRemoveKey/dev/vdb1
 
8.磁盘阵列  
watch -n 1 cat /proc/mdstat   
监控
mdadm -C /dev/md0 -a yes -l 1 -n 2 -x 1 /dev/vdb{1..3}

 -C 创建   -a yes(若/dev/md0下没有md0文件则创建) -l 1(级别)-n 2(两个分区同时读写)-x 1(一个分区闲置)


mkfs.xfs /dev/md0 /mnt/
mount /dev/md0 /mnt
df

设备管理

   mdadm -D /dev/md0    查看设备状态


   mdadm /dev/md0 -f /dev/vdb2  强制损坏该设备


   mdadm /dev/md0 -r /dev/vdb2  删除该设备

   mdadm /dev/md0 -a /dev/vdb2  添加该设备


9.设备删除
  umount /mnt  
解除挂载
  mdadm -S /dev/md0 
停止

  fdisk /dev/vdb  删除


  partprobe  手动同步分区列表

10.激活分区配额及其验证:
 
激活:
   
创建一个分区
    mkfs.xfs /dev/vdb1  
格式化
   
当分区类型为ext时需执行以下命令
  
quotacheck -u/dev/vdb1
    quotaon -u /dev/vdb1
)

    mount -o userquota /dev/vdb1 挂载

    

    mount 查看挂载设备状态

    

    edquota -u studentu 指定用户)

    

      Disk quotas for user student (uid1000):

      Filesystem                   blocks       soft       hard    inodes     soft     hard

      /dev/vdb1                         0          0     20480          1        0       0

      

      blocks显示的是设备文件的真实大小(改变对实际无影响)  
      soft 
软件(超过后会发出警告)   
      hard
硬件(最多使用的容量)       容量
      inodes
(个数)   soft(多少次数会被警告)    hard(最多能用几次)    次数
    chmod 777 /mnt  
/mnt一个权限

 
验证:切换到 student用户                     
      dd if=/dev/zero of=/mnt/studentfilebs=1M count=10
截取无限 0字节设备文件十块每块 1M/mnt/student文件中

      激活配额的用户下做dd 截取命令 if inputfile /dev/zero 无限0字节 of outputfile bs 每块大小 count 块数 10

    

  开机自动激活配额:
   vim /etc/fstab
     /dev/vdb1 /mnt xfs defaults,usrquota0 0
   mount -a

   

   

11.lvm  作用:使硬盘能无限扩容或无限分区
     pv 
物理卷   处理过的物理分区
     vg 
物理卷组
     pe 
物理扩展 lvm的最小单位
     lvm
把物理卷组分离出来

lvs
对分区设备的挂载情况进行查看
创建 lvm
  watch -n 1 'pvs;vgs;lvs;df -h /mnt  
监控命令
  fdisk /dev/vdb 
创建分区

    t 转换分区类型为lvm8e wq  同步分区表

  

  pvcreate /dev/vdb1    创建 pv
  vgcreate vg0 /dev/vdb1
创建 vg  vg0所创建的 vg名字,可随意)

  lvcreate -L 300M -n lv0 vg0 创建lv 300M分离出大小;lv0创建的lvm的名字,可随意;vg0从何处创建,名字取决于你创建的vg的名字)

   

  mkfs.xfs /dev/vg0/lv0 格式化
  mount /dev/vg0/lv0 /mnt
挂载

  df                      查看

  

  ll /dev/vg0/lv0

  ll /dev/mapper/vg0-lv0  查看文件,两个文件为同一个,都是/md-0文件

  

  /dev/mapper 存放虚拟设备
 xfs
拉伸: xfs只能拉伸不能缩减
  
1 vg中容量足够

         lvextend -L 500M/dev/vg0/lv0   将容量拉伸到500M

        

         xfs_growfs /dev/vg0/lv0         格式化

        

   2 vg中容量不足
         pvcreate /dev/vdb2              
第二个分区创建 pv
         vgextend vg0 /dev/vdb2          
将第二个分区的 pv添加到 vg0

         lvextend -L 1500M/dev/vg0/lv0   将容量拉伸到1500M

        

         xfs_growfs /dev/vg0/lv0          xfs类型的格式化(等同于刷新)

        

 ext4 拉伸: ext即可拉伸也可缩减
    umount /mnt                   
解除挂载

    mkfs.ext4 /dev/vg0/lv0         将设备格式化为ext4类型

    

    lvextend -L 1800 /dev/vg0/lv0  将容量拉伸到1800M

    resize2fs /dev/vg0/lv0         ext4类型的格式化

     

 ext4 缩减:
    umount /mnt                   
卸载

    e2fsck -f /dev/vg0/lv0         扫描设备(以便于安全缩减)

    

    resize2fs /dev/vg0/lv0 1000M   将设备容量缩减到 1000M

    mount /dev/vg0/lv0 /mnt        挂载(可以看到系统中的容量已经缩减)

    

    lvreduce -L 1000M /dev/vg0/lv0 缩减设备容量

    

 缩减 vg

    pvmove /dev/vdb1 /dev/vdb2     vdb1中的数据移到vdb2中(若实验中vdb1数据过大不能移入则将设备再缩减,若要移出的设备为空设备,则不需要做此步骤)

    vgreduce vg0 /dev/vdb1         移出vg0中的vdb1设备

    

    pvremove /dev/vdb1             移出vdb1

    

 设备快照:(快照不会被读取,值为了保存更改)
 
保证 vg0中容量足够大,能够建立快照
    touch /mnt/file{1..10}                      
在挂载设备的目录中建立文件,方便验证

    lvcreate -L 50M -n lv0backup -s/dev/vg0/lv0 创建快照

    

    mount /dev/vg0/lv0backup                     挂载(快照可以直接挂载)

    

    ls /mnt       
    rm -fr /mnt/*
    umount /mnt/                                 
卸载
    lvremove /deev/vg0/lv0backup                
移除快照
    lvcreate -L 50M -n lv0backup -s/dev/vg0/lv0
重新创建快照
    mount /dev/vg0/lv0backup /mnt               
重新挂载

    ls /mnt                                      查看文件

    

删除设备:
    umount /mnt                       
卸载
    lvremove /dev/vg0/lv0backup       
删除快照
    umount /mnt                       
卸载
    lvremove /dev/vg0/lv0             
删除 lv0
    vgremove vg0                      
删除 vg0
    pvremove /dev/vdb{1..2}            
删除设备 vdb1..2
   

/dev/hd0并口硬盘

/dev/sda串口硬盘
/dev/cdrom  /dev/sr0
光驱
/dev/mapper
虚拟设备

fdisk -l 
真实存在的设备 >cat /proc/partitions系统中真实识别的>blkid 系统中正在用或可用设备 >df 系统真实使用的设备
1.
设备的挂载:
  
插入u-->df,查看u盘是否挂载
  umount /dev/sdb1  
删除挂载
  mount /dev/sdb1/ /mnt/ 
重新挂载设备
  cd /mnt/
  umount /dev/sdb1/ 
不能删除挂载,(有程序正在此设备上执行)
  fuser -kvm /dev/sdb1  
结束设备上正在运行的程序
  umount /dev/sdb1/   
成功删除挂载
  umount -o ro /dev/sdb1/ /mnt/   
只读挂载
  umount -o remount,rw /dev/sdb1   
将挂载的方式改成读写挂载

2.
硬盘分区管理
   mbr 
启动分区    mbt 记录分区(分区表)  55aa 硬盘标识
  
主分区(不能超过2T    扩展分区     逻辑分区(三个分区最多可以共存16个)
  fdisk   /dev/vdb  
进入分区界面
  
进入分区界面后的命令(进入界面后可以写m,得到帮助菜单)
   a        toggle a bootable flag
   b       edit bsd disklabel
   c        toggle the dos compatibility flag
   d       delete a partition
(删除分区)
   g       create a new empty GPT partition table
   G       create an IRIX (SGI) partition table
   l         list known partition types
   m      print this menu
(进入帮助菜单)
   n      add a new partition
(新建一个分区)
   o      create a new empty DOS partition table
        print the partition table
(查看分区表信息)
   q      quit without saving changes
(退出分区界面)
   s      create a new empty Sun disklabel
        change a partition's system id
(修改分区id
   u      change display/entry units
   v      verify the partition table
   w      write table to disk and exit
(将当前操作写入硬盘分区表)
   x       extra functionality (experts only)


  第一个分区完成,若要在建立重复以上动作
  
因为 64位分区表只能建立 4个分区,所以 第四个分区强烈建议分区类型为e(即扩展分区)
  
然后即可在扩展分区中再进行分区(所有分区类型为 “l”即逻辑分区)

  分区完成之后,p查看分区,wq退出保存。


  退出保存后,若系统重读了分区表则继续,若没重读则执行 partprobe命令 手动同步到分区表

3.挂载分区:
  
首先对分区进行格式化,即在分区中安装系统文件
  mkfs.xfs /dev/vdb1
  blikid                  
查看格式化后的分区
  mount /dev/vdb1 /mnt    
vdb1分区挂载在 /mnt下(挂载必须在格式化之后进行)
  df                      
查看是否挂载成功
  
4.改变分区类型为 gpt
    
解除原有分区挂载

    删除原有分区(建议删除


    执行parted/dev/vdb进入parted界面


  新建分区,即为gpt类型


  mkfs.xfs  -f /dev/vdb1 格式化( -f 强制格式化)
  mount /dev/vdb1  /mnt  
挂载(临时挂载,关机后消失)

  df



还原分区类型:
 
  fdisk -l   
查看分区类型               

5.自动挂载分区(永久挂载)
  vim /etc/fstab

    /dev/vdb1   /mnt   xfs       defaults        0      0



   mount -a   读取/etc/fstab下的文件并挂载未挂载的设备


6.swap分区:系统不需要挂载
   
建立一个分区(看上面建立分区的内容)

   t 改为swap分区(l查看所有类型)




   partprobe   同步到分区表

   cat /proc/partitions   查看设备文件


   mkswap /dev/vdb2  格式化
   swapon -a /dev/vdb2   
激活 swap分区(临时激活,关机后消失)
   swapon -s        
查看 swap分区

   vim /etc/fstab

    /dev/vdb2     swap  swap   defaults   0  0


   swapon -a      读取 /etc/fstab下的文件并激活未激活的 swap分区设备(永久激活)
   
   
删除 swap分区
    vim /etc/fstab
     
删除此行   /dev/vdb2    swap   swap   defaults  0   0

    swapoff /dev/vdb2  关闭swap分区

   

    fdisk /dev/vdb2     删除 vdb2分区
     d
     2
    partprobe     
同步分区表

7.分区加密
    
创建一个分区
    cryptsetup luksFortmat /dev/vdb1 
对设备进行加密
   

    
验证:
    mount /dev/vdb1  /mnt    
挂载设备(失败)  
    cryptsetup  open /dev/vdb1 
文件名(随便起) 解开加密

    mkfs.xfs /dev/mapper/westos    对解密的文件格式化

   

    mount /dev/mapper/westos /mnt  挂载设备

   

    umount /mnt   解除挂载

    cryptsetup close westos     关闭解密  

    

  自动加密分区

    vim /root/diskpass    写入密码

    chmod 600 /root/diskpass   权限

   

    cryptsetup luksAddKey /dev/vdb1/root/diskpass

   

    vim /etc/crypttab

     文件名  /dev/vdb1 /root/diskpass

   

    vim /etc/fstab

      /dev/fstab   /mnt xfs  defaults 0 0

       

    reboot



  删除加密分区
    vim /etc/fstab 
删除写的命令
    vim /etc/crypttab  

    rm -fr /root/diskpass

   

    cryptsetup close westos 关闭解密
    cryptsetup luksRemoveKey/dev/vdb1
 
8.磁盘阵列  
watch -n 1 cat /proc/mdstat   
监控
mdadm -C /dev/md0 -a yes -l 1 -n 2 -x 1 /dev/vdb{1..3}

 -C 创建   -a yes(若/dev/md0下没有md0文件则创建) -l 1(级别)-n 2(两个分区同时读写)-x 1(一个分区闲置)


mkfs.xfs /dev/md0 /mnt/
mount /dev/md0 /mnt
df

设备管理

   mdadm -D /dev/md0    查看设备状态


   mdadm /dev/md0 -f /dev/vdb2  强制损坏该设备


   mdadm /dev/md0 -r /dev/vdb2  删除该设备

   mdadm /dev/md0 -a /dev/vdb2  添加该设备


9.设备删除
  umount /mnt  
解除挂载
  mdadm -S /dev/md0 
停止

  fdisk /dev/vdb  删除


  partprobe  手动同步分区列表

 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值