加入收藏 | 设为首页 | 会员中心 | 我要投稿 成都站长网 (https://www.028zz.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Linux > 正文

Linux系统的磁盘管理(磁盘管理、分区管理,配额,加密)

发布时间:2022-10-11 20:30:18 所属栏目:Linux 来源:网络
导读: 一、系统的磁盘管理 1.本地存储设备的识别
fdisk -l # 查看硬盘上设备的真实存在的所有设备
cat /proc/partitions # 查看系统识别的设备
blkid # 查看

一、系统的磁盘管理 1.本地存储设备的识别

fdisk -l                # 查看硬盘上设备的真实存在的所有设备
cat /proc/partitions    # 查看系统识别的设备
blkid                   # 查看系统可以使用的设备
df                      # 查看系统正在挂载的设备
	df  -h          #查看到的设备大小更准确( 以2^n 计算  1M=1024K )
	df  -H          #查看到的设备大小不准确( 以10^n 计算 1M=1000K)
注:从上到下,查看到的依次减少

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

在这里插入图片描述

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

在这里插入图片描述

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

(4)df 系统正在挂在的设备

在这里插入图片描述

(5)df-h与df-H的区别

df -h (1M=1024K)

df - H (IM=1000K)

在这里插入图片描述

2、设备的挂载和卸载

/dev/sda1   # /dev=设备  s=sata,d=disk,a表示第一块硬盘,1表示第一块磁盘的第一块

(1)设备名称

   /dev/xdxn     # 例如: /dev/sda   /dev/vda /dev/hd0    
		 x:硬盘类型(s:sata硬盘  h:串口硬盘  v:虚拟硬盘)     
		 x:a..z,硬盘所在个数     
		 n:1..16,分区所在个数
  /dev/mapper/*  系统中的虚拟设备
  /dev/vdb1     1代表第一个分区

(2)设备的挂载与卸载相关命令

mount    设备    挂载点
mount    /dev/sdb1     /mnt       # 挂载/dev/sdb1设备到/mnt下
mount   -o ro  /dev/sdb1  /mnt    # 只读挂载,ro表示只读
mount  -o remount,rw  /dev/sdb1   # 重新读写挂载,这个命令可以不用卸载之前的挂载
umoutn /mnt 
umoutn /dev/sdb1                  # 卸载,卸载的时候可以卸载设备,也可以卸载挂载点
mount                             # 查看挂载信息

做此实验可以将自己的u盘插入电脑(在真机里做)

df查看u 盘的挂载点

在这里插入图片描述

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

在这里插入图片描述

umount /mnt 或umoun /dev/sdb1 卸载,卸载的时候可以卸载设备,也可以卸载挂载点

在这里插入图片描述

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

mount 查看挂载信息

显示ro,则证明是只读挂载

测试:进入/mnt(u盘挂载点),不能建立文件(只读挂载)

在这里插入图片描述

从只读挂载到读写挂载的转换有两种

方法一: 先卸载刚才挂载的(umount)如果卸载不了,看下方(3)解决设备正忙的情况

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

方法二: 不想解挂的时候,使用remount,rw改为读写模式

在这里插入图片描述

测试:进入/mnt(u盘挂载点),可以建立文件(读写挂载)

在这里插入图片描述

(3)解决设备正忙的情况

方法一:

发现进程:fuser -vm /dev/sdb1

终止进程:fuser -kvm/dev/sdb1

卸载成功

方法二:

发现进程:lsof /dev/sdb1

在这里插入图片描述

终止进程:kill -9pid

卸载成功

有时卸载时显示设备正忙的原因:是因为你就在挂载目录下,此时退出挂载目录,就可以正常卸载了

二、系统的分区管理 1、磁盘分区信息

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

512 =446 +64+2

(1)446 ——> mbr主引导记录 (2)64 ——>mpt主分区表

最多有4个主分区,一个分区用16个字节记录
主分区:用主分区表记录的分区
扩展分区:专门用来存储更多的分区(相当于一个容器)
逻辑分区:扩展分区里的分

(3)2 ——>硬盘的有效性标识“55aa” 2.分区的划分及管理

主分区的创建及管理

实现一个分区设备的创建使用,一般经过如下动作:

划分创建一个分区、格式化、挂载

(1)创建分区

首先可以先查看一下系统真实存在的设备,选择合适的分区设备

在这里插入图片描述

开始创建分区(这里我们选的设备是/dev/vdb)

在这里插入图片描述

m 可以查看参数帮助列表:

在这里插入图片描述

新建分区参数选择设置如下:

查看分区列表

如果分区没有显示,则可以使用partprobe命令(同步分区表)

在这里插入图片描述

(2)格式化 mkfs.xfs /dev/vdb1

blkid 显示系统可用的设备

在这里插入图片描述

(3)挂载设备

实现永久挂载

编辑挂载策略文件 /etc/fstab

/dev/vdb5     /mnt        xfs     defaults      0       0
 设备          挂载点     文件系统    挂载参数    是否备份  是否检测

激活设备(重新读取该文件,使其挂载)

在这里插入图片描述

测试

先解挂

在这里插入图片描述

重新激活设备(重新读取该文件,使其挂载)

实现永久挂载成功

在这里插入图片描述

拓展分区的创建及管理 (1)创建拓展分区

当系统已经有三个主分区时

在这里插入图片描述

再创建分区时,默认提示就由p(主分区)——> e(拓展分区)

在这里插入图片描述

填e,后续可以一路选择默认,把剩余所有空间分给扩展分区,最后保存

在这里插入图片描述

a.再次添加分区,方式如同添加主分区一样,这次添加的分区就是逻辑分区(拓展分区里的分区)

这里不再截图描述

b.同步分区列表Linux 磁盘管理,查看分区列表信息

在这里插入图片描述

3.swap分区的管理 (1)创建swap分区

新建一个分区

在这里插入图片描述

t 表示修改分区id (默认情况下,此分区是Linux类,要该为swap类型)

L 表示列出所以id类型代码

找到关于swap分区类型的代码——>82

在这里插入图片描述

输入82,把/dev/vdb6的分区类型修改为swap

在这里插入图片描述

同步分区列表

在这里插入图片描述

将/dev/vdb6格式化为swap格式,否则设备不可用

mkswap /dev/vdb6

在这里插入图片描述

激活swap设备,使系统利用此设备

swapon -a /dev/vdb6

在这里插入图片描述

实现永久挂载

编辑挂载策略文件 /etc/fstab

注意:swap分区不需要挂载

(2)删除swap分区

编辑挂载策略文件 /etc/fstab ,删除相应内容

在这里插入图片描述

swapoff 设备

fdisk /dev/vdb 删除第6个分区

在这里插入图片描述

同步分区列表,显示已经删除

在这里插入图片描述

注:删除分区时,要先停止设备,不能先删除分区

三、磁盘配额

注意:磁盘配额针对设备,而非用户

(1)创建一个设备

新建一个目录

新建一个分区

在这里插入图片描述

同步分区列表

在这里插入图片描述

格式化

在这里插入图片描述

挂载 (usrquota——>用户配额)

(2)激活配置参数

打开配置文件

设置student用户最大额度为20M(20480k=20M)

赋予权限,方便测试

编辑挂载策略文件

在这里插入图片描述

测试:

在这里插入图片描述

20M没有超过最大设置额度,可以正常截取

21M超过最大设置额度提示,提示“超过配额限制”,则其真实截取大小还是为20M

四、磁盘加密 LUKS简介

LUKS(Linux Unified Key Setup)为Linux硬盘加密提供了一种标准,它不仅能通用于不同的Linux发行版本,还支持多用户/口令。因为它的加密密钥独立于口令,所以如果口令失密,我们可以迅速改变口令而无需重新加密真个硬盘。通过提供一个标准的磁盘上的格式,它不仅方便之间分布的兼容性,而且还提供了多个用户密码的安全管理。必须首先对加密的卷进行解密,才能挂载其中的文件系统。

所需工具

工具:cryptsetup(默认已经安装);常用参数:luksFormat 加密、luksOpen 打开映射、luksClose 关闭映射、luksAddKey 添加密钥

思路:

使用cryptsetup对分区进行了加密后,这个分区就不再允许直接挂载。LUKS也是一种基于device mapper 机制的加密方案。如果要使用这个分区,必须对这个分区做一个映射,映射到/dev/mapper这个目录里去,我们只能挂载这个映射才能使用。然而做映射的时候是需要输入解密密码的。

前面我们添加的磁盘vdb5我们用其作实验

1、对磁盘进行加密

cryptsetup luksFormat /dev/vdb1 ##加密磁盘vdb1

注意:这里要大写YES!!然后输入该设备的密码。设置密码#密码要超过8个字节,而且要满足复杂性

密码:

cipan1234

在这里插入图片描述

我们可以看到,当加密操作完成后,已经“上锁”的磁盘是不能直接挂载的,若要对磁盘进行挂载,必须先将“锁”打开:

2、使用加密磁盘 (1)打开加密磁盘:

cryptsetup open /dev/vdb1 westos ##/dev/vdb是真实的经过加密的设备

##westost是加密后的真实设备映射的虚拟设备(名称)

打开后,我们在/dev/mapper中可以看到虚拟设备westos

在这里插入图片描述

(2)给磁盘添加文件系统:

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

在这里插入图片描述

(3)挂载设备:

可以正常的使用此设备进行读写:

在这里插入图片描述

在此设备上新建文件如下:

(4)卸载&关闭设备:

先将设备卸载,再关闭,关闭设备的操作就像将设备上的已经打开的“锁”再 锁上,关闭设备之后,我们不能再挂载设备,从而也就不能在设备上读写。

umount /mnt/ #卸载设备

cryptsetup close westos #关闭设备(westos就是我们在打开时指定的虚拟设备)

关闭后,我们可以看到,/dev/mapper中,虚拟设备redhat消失,在下次打开加密设备时,由我们指定新的虚拟设备:

在这里插入图片描述

(5)我们再将设备重新打开、挂载,发现我们存储在设备中的文件依然存在:

在这里插入图片描述

3、加密磁盘开机自动挂载

先建立/pub目录用来永久挂载加密磁盘:

(1)开机自动挂载:

打开vim /etc/fstab

添加:

/dev/mapper/redhat	    /pub    xfs      defaults        0       0       
     设备		    挂载点  文件类型   挂载方式默认   是否备份   是否检查

(2)设置虚拟设备与真实设备的映射

在打开加密磁盘时,需要我们指定相应的虚拟设备,在上面的编辑中,我们指定了设备与挂载点,但是我们指定的设备是系统中当前并不存在的虚拟设备,因此,我们还需要建立虚拟设备与真实设备的映射,也就是打开加密磁盘:

打开vim /etc/crypttab

添加:

redhat      /dev/vdb1     /root/vdb1passwd
虚拟设备	      真实设备	     校验文件

##表示:真实设备通过此校验文件成功后建立此虚拟设备

(3)建立校验文件

在上面,我们指定/root/vdb1passwd为校验文件,但是此文件中系统并不存在,因此我们需要自己建立此文件,并在此文件中写入磁盘的密码:

添加密码:

(4)为加密的设备添加密码校验文件

上面建立了校验文件,但是此时,此文件与设备并不存在联系,因此还需让这两者建立联系:

cryptsetup luksAddKey /dev/vdb1 /root/vdb1passwd   ##指定此加密设备的校验文件为/root/vdb1passwd

完成这些操作后,加密磁盘就可以开机自动挂载,可以看到当前/dev/mapper/redhat并没有挂载到/pub上:

在这里插入图片描述

reboot后,我们可以看到设备自动挂载,并且设备中还存在我们建立的文件file{1…5}:

在这里插入图片描述

4.删除加密设备:

删除设备的过程即是删除我们对设备做的所有更改

1.删除自动挂载文件中的内容:vim /etc/fstab

删除:/dev/mapper/redhat /pub xfs defaults 0 0

在这里插入图片描述

2.删除/etc/crypttab:

3.删除校验文件;

4.卸载设备:

5.关闭设备:

6.格式化设备:

在这里插入图片描述

此设备就变为一个普通的设备,我们不再需要进行“打开”“关闭”等操作,可以直接对设备进行挂载:

(编辑:成都站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!