天天看点

Linux中磁盘的管理

文章目录

    • 一、 本地存储设备的识别
    • 二、设备的挂载和卸载
      • 2.1 设备的名称
      • 2.2 设备的挂载
      • 2.3设备卸载报错正忙
    • 三、磁盘分区
      • 3.1 磁盘分区概念
        • 1、硬盘 0磁道 1扇区 512个字节 中记录的信息如下:
        • 2、硬盘分区
      • 3.2 建立主分区
        • 1、分区
        • 2、建立分区报错Device or resource busy
      • 四、给设备安装文件系统
      • 五、swap分区
        • 5.1 swap分区建立
        • 5.2 swap分区删除
      • 六、配额划分
        • 6.1 划分额度
      • 七、磁盘加密解密
        • 7.1加密
        • 7.2 开机自动挂载上虚拟设备

一、 本地存储设备的识别

命令 含义
fdisk -l 系统真实存在的设备
cat /proc/partitions 系统可识别的设备
blkid 系统可使用的设备
df 系统正在挂载的设备
  • 系统真实存在的不一定能被识别,能识别的不一定能使用,能用的不一定是正在使用的

(1)fdisk -l 可以看到系统真实存在的设备

Linux中磁盘的管理

(2)cat /proc/partitions 系统可识别的设备

Linux中磁盘的管理

(3)blkid 系统可使用的设备

Linux中磁盘的管理

(4)df 查看已挂载的设备

Linux中磁盘的管理

二、设备的挂载和卸载

2.1 设备的名称

/ dev / xdx | dev/hd0 /dev/hd1 /dev/sda /dev/sdb /dev/sda1 /dev/sda2 /dev/sdb1

/ dev / sr0 | 光驱

/ dev / mapper /* | 虚拟设备

2.2 设备的挂载

(1) mount 设备 挂载点 | 挂载点:通过挂载点来读取硬盘 ,相当于门

mount /dev/sdb1 /mnt : 挂载sdb1到mnt下

Linux中磁盘的管理

(2) umount /mnt | /dev/sdb1 卸载

Linux中磁盘的管理

(3) mount -o ro /dev/sdb1 /mnt 只读挂载

(4) mount 查看挂载信息

Linux中磁盘的管理

(5) mount -o remount , rw /dev/sdb1 | /mnt 重新读写挂载

Linux中磁盘的管理
Linux中磁盘的管理

2.3设备卸载报错正忙

cd 进入u盘挂载目录,打开一个文件或者进入一个目录, 然后卸载,会出现报错:

[[email protected] ~]# umount /mnt
umount: /mnt: target is busy.
        (In some cases useful info about processes that use
         the device is found by lsof(8) or fuser(1))
           
Linux中磁盘的管理

解决方法 :重新打开一个shell执行如下操作:

方法一

(1)fuser -kvm /mnt 会结束掉bash,退出root

Linux中磁盘的管理

(2)在root下 umount /mnt

Linux中磁盘的管理

方法二

(1)lsof /mnt 查看使用情况

(2)kill -9 pid

(3)umount /mnt

Linux中磁盘的管理

三、磁盘分区

3.1 磁盘分区概念

1、硬盘 0磁道 1扇区 512个字节 中记录的信息如下:

  • 512字节 = 446 字节 + 64 字节 + 2字节 [ mbr(主引导记录) + mpt(主分区标) + 55aa(硬盘的有效性标实) ]
  • mbr : 主引导记录 bootloder ,自动让磁头跳到启动分区 , 446个字节
  • mpt :硬盘的分区表 46字节
  • 55aa: 硬盘的有效性标识 2个字节
  • bios: 硬件 basic input output system 基本输入输出系统

2、硬盘分区

  • 1块硬盘上最多可以划分4个主分区,1个分区占用16个字节,但是当不够用时,我们可以建立第四个分区为扩展分区,在逻辑分区内可以建立多个逻辑分区。
  • 主分区 :真实存在的,Windows系统一般需要安装在这个主分区中,这样才能保证开机自动进入系统。简单来说,主分区就是可以引导电脑开机读取文件的一个磁盘分区,一块硬盘,最多可以同时创建4个主分区,当创建完四个主分区后,就无法再创建扩展分区和逻辑分区了。此外,主分区是独立的,对应磁盘上的第一个分区,目前绝大多数电脑,在分区的时候,一般都是将C盘分成主分区。
  • 扩展分区 扩展分区是虚拟的。除了主分区外,剩余的磁盘空间就是扩展分区了。 是一个容器,为划分逻辑分区而存在,容器坏了,里面也就坏了。

3.2 建立主分区

1、分区

实验环境:server虚拟机

(1)fdisk -l 显示真实存在的设备

Linux中磁盘的管理

(2)fdisk /dev/vdb 进入分区界面

字符 含义
d deletea partition 删除
n add a new partition 新建
p print the partition table 显示分区信息
t change a partition’s system id 修改分区系统id
q quit without saving changes 退出不保存
w write table to disk and exit 保存分区信息到硬盘
Linux中磁盘的管理
Linux中磁盘的管理

(3)相同过程再划分2个主分区,当系统有三个主分区时候,开始划分扩展区域。

  • 注意:主分区+扩展分区+逻辑分区的总数不能超过16个
Linux中磁盘的管理
Linux中磁盘的管理

2、建立分区报错Device or resource busy

当我们建立主分区保存时,出现报错,

WARNING: Re-reading the partition table failed with error 16: Device or resource busy

执行:

(1) cat /proc/partitions

(2) partprobe 同步分区表

(3) cat /proc/partitions

四、给设备安装文件系统

  • 主分区和扩展分区格式化才能使用

    (1)fdisk -l 显示真实存在的设备

Linux中磁盘的管理

(2)mkfs.xfs /dev/vdb1 格式化这个分区

(3)mount /dev/vdb1 /mnt 将这个分区挂载在一个目录才能生效,df查看挂载状态,此为临时挂载

Linux中磁盘的管理

(4)vim /etc/fstab 永久挂载,写入(设备 挂载点 文件系统 挂载参数 是否备份 是否检测)

/dev/vdb1 /mnt xfs defaults 0 0

Linux中磁盘的管理

(5)reboot,重启,查看是否开机已挂载

Linux中磁盘的管理

五、swap分区

  • swap分区: 系统的物理内存(这里应该是运行内存)不够用的时候,把物理内存中的一部分空间释放出来,以供当前运行的程序使用。那些被释放的空间可能来自一些很长时间没有什么操作的程序,这些被释放的空间被临时保存到Swap分区中,等到那些程序要运行时,再从Swap分区中恢复保存的数据到内存中。

5.1 swap分区建立

(1)划分分区并设定分区标签 82

Linux中磁盘的管理
Linux中磁盘的管理
Linux中磁盘的管理

(2)mkswap /dev/vdb5 同步识别swap

(3)swapon -a /dev/vdb5 激活swap分区

(4)swapon -s 显示所有swap分区

(5)vim /etc/fstab 设置为永久,写入 /dev/vdb5 swap swap defaults 0 0

Linux中磁盘的管理
Linux中磁盘的管理

5.2 swap分区删除

第一种:在 /etc/fstab 文件内手动删除 /dev/vdb5 swap swap defaults 0 0

第二种:

(1) swapoff /dev/vdb5 删除

(2) swapon -s 查看确认一下

Linux中磁盘的管理

六、配额划分

  • 额度:可使用的最大值
  • 配额:针对分区,限制用户使用的分区的大小
  • hard:文件大小 102400 ,1024k=1M,102400k=100M
  • inodes:用户在/dev/vdb1上的文件个数

6.1 划分额度

(1)umount /mnt

(2)mount -o usrquota /dev/vdb1 /mnt

(3)chmod 777 /mnt 让普通用户可以在此目录中,截取分区自己使用

Linux中磁盘的管理

(4)quotaon -uv /dev/vdb1 识别额度

(5)edquota -u student 划分配额 更改hard

Linux中磁盘的管理
Linux中磁盘的管理

(6)vim /etc/fstab 开机自动划分配额

写入 /dev/vdb1 /mnt xfs defaults,usrquota 0 0

Linux中磁盘的管理

测试:

(1)切换到student

(2)dd if=/dev/zero of=/mnt/studentfile bs=1M count=数字(当用户截取分区时超过root设置的分区会报错)

Linux中磁盘的管理

七、磁盘加密解密

  • 基于文件系统底层的加密
  • 好处:即便被破坏,数据仍处于加密
  • 坏处:会增加cpu的负载,cpu的吞吐会缓慢

7.1加密

/dev/mapper 存放虚拟设备

条件:新建一个未格式化分区

Linux中磁盘的管理
Linux中磁盘的管理

(1)cryptsetup luksFormat /dev/vdb7 给容器加盖子,加密

(2)cryptsetup open /dev/vdb7 westos 给设备解密变为虚拟设备

Linux中磁盘的管理

(3)mkfs.xfs /dev/mapper/westos 对虚拟设备格式化

Linux中磁盘的管理

(4)mount /dev/mapper/westos /xixi 挂载虚拟设备

(5)存放东西到挂载点:touch /xixi/file{1…3}

(6)umont /xixi 解挂

(7)cryptsetup close westos 关闭虚拟设备

Linux中磁盘的管理

7.2 开机自动挂载上虚拟设备

(1)vim /etc/fstab 永久挂载虚拟设备

/dev/mapper/westos /xixi xfs defaults

Linux中磁盘的管理

(2)vim /etc/crypttab 解密策略

westos /dev/vdb7 /root/westoskey

(3)vim /root/westoskey 密码

2019westos

(4)cryptsetup luksAddKey /dev/vdb7 /root/westoskey 联系解密策略和硬盘

Linux中磁盘的管理

(5) reboot , 查看是否自动挂载

Linux中磁盘的管理

继续阅读