一.本地存储设备的识别
fdisk -l //真实存在的设备
注意:实验必须切换到root用户下
cat /proc/partitions //系统识别的设备,系统不一定能用
blkid //系统可使用的设备,系统不一定正在挂载
>df //系统正在挂载的设备
二.设备的挂载和卸载
(1)设备名称
>/dev/xdx ##/dev/hd0 /dev/hd0 /dev/hd1 /dev/sda /dev/sda1 /dev/sda2 /dev/sdb1
>/dev/sr0 ##光驱
>/dev/mapper/* ##虚拟设备
(2)设备的挂载
mount 设备 挂载点
mount /dev/sdc1 /mnt //挂载sdc1到/mnt下
umount /mnt | /dev/sdc1 //卸载
mount -o ro /dev/sdb1 | /mnt //只读挂载,
>注意:在设置之前必须把以前的挂载卸载掉
问题及解决:
mount //查看挂载信息
检测:
mount -o remount,rw /dev/sdb1 | /mnt
##重新读写挂载
检测:
注意:当挂载设备到/mnt/下时不能在/mnt/的目录下对其进行卸载,应到家目录下对其进行卸载。
(3).解决设备正在忙的情况
出现问题:umount /dev/sdb1
umount: /mnt: target is busy.<有程序在使用的设备>
解决方法1:
fuser -v /mnt ##查看那是哪个程序正在占用
fuser -vm /mnt ##更详细的查看是哪个程序正在占用
fuser -kvm /mnt ##查看并结束占用的程序
umount /mnt/ ##再卸载
注意:用该命令的时候kill了使用该设备的程序会回到普通用户,因此要再次切到root用户下进行卸载
解决方法2:
lsof /mnt/ ##用该命令查出pid,然后用kill命令结束该进程
kill -9 277446
umount /mnt
三.磁盘分区
- 概念:磁盘分区是使用编辑器再次盘上划分几个逻辑部分,盘片一旦划分成数个分区,不同类的目录和文件可以存储进不同的部分一个MBR分区表类型中的硬盘最多只能存在四个主分区,如果一个人硬盘上需要超过四个以上的磁盘分块的话,那么就需要扩展分区。如果使用扩展分区,那么一个物理硬盘上最多只能有3个主分区和一个扩展区。且扩展区不能直接使用,它必须经过第二次分割成为一个个逻辑分区,然后才可以使用。
- 目的:分区允许在一个磁盘上有多个文件系统。
(1)硬盘0磁道1扇区的512个字节中记录的信息如下
512=446 + 64 + 2
<table>
<thead>
<tr>
<th>446</th>
<th>64</th>
<th>2</th>
</tr>
</thead>
<tbody>
<tr>
<td>mbr(主引导记录)</td>
<td>mpt(主分区标)</td>
<td>55aa(硬盘有效性标识)</td>
</tr>
</tbody>
</table>
首个512字节后跟的是硬盘分区标
64B
1个分区占用16个字节
1块硬盘上最多可以划分4个主分区
(2)分区步骤:
fdisk -l ##查看硬盘的分区情况
fdisk /dev/vdb ##编辑该分区
d delete a partition ##删除
n add a new partition ##新建
p print the partition table ##显示分区信息
q quit without saving changes ##退出
t change a partition‘s system id ##修改分区id
w write table to disk and exit ##保存并退出
- 建立主分区
- 当系统已经有三个主分区时
四.给设备安装文件系统
1.ext3 rhel5及之前的版本
- 最多支持32TB的文件系统和2t文件,实际2tb文件系统,16G文件
- ext3目前只支持32000个子目录
- ext3文件系统使用32位空间记录块数量和节点数量
- 当数据写到ext3文件系统中时,ext3的数据分配器每次只能分配一个4KB的块
2.ext4 rhel6版本
- ext4的文件系统容量达到1EB,而文件内容则达到16TbB
- 理论上支持无限数量的子目录
- ext4文件系统使用64位空间记录块数量和节点数量
- ext4的多块分配器支持一次调用分配多个数据块
3.xfs rhel7版本
- xfs为日志文件系统
- 根据所记录的日志在很短的时间内迅速恢复磁盘文件的内容
- 采用优化算法,日志记录对整体文件操作影响非常小
- 是一个64-bit的文件系统,它可以支持上百万T字节的存储空间
- 能以接近裸设备I/O的性能存储数据
xfs文件系统的特性:
- 数据完全性
- 传输特性
- 可扩展性
mkfs.xfs
实验:本例格式化文件系统
- 准备工作:首先在分区下再建立一个扩展分区/dev/vdb5假设分1000M
mkfs.xfs /dev/vdb5 //将/dev/vdb5格式化使其成为xfs文件系统
- mount /dev/vdb1 /mnt //挂载
- vim /etc/fstab //编辑该文件系统reboot之后仍然会自动挂载
系统重启之后发现挂载不生效
mount -a //使编写文件内容生效
检测:
reboot虚拟机后发现挂在点仍旧存在,则永久更改生效
五.swap分区管理
swap分区的作用:我们在安装系统的时候已经区建立了swap分区,swap分区是Linux系统的交换分区,当内存不够用的时候,我们使用swap分区存放内存中暂时不用的数据。也就是说,当内存不够用时,我们使用swap分区来暂时代替。 - 1.swap分区建立
建议swap分区的大小是内存的两倍,但不超过2GB。但是有时候服务器的访问量确实很大,有可能出现swap分区不够用的情况,所以我们需要学习swap分区的建立方法。
划分分区并设定分区标签为82
-
mkswap /dev/vdb6 //将swap分区格式化
-
swapon -a /dev/vdb6 ##加载vdb6为虚拟内存分区
-
swapon -s ##查看虚拟内存分区
-
vim /etc/fstab //永久建立swap分区
2.swap分区删除 -
vim /etc/fstab //删除所加的分区建立的相应内容
-
swapoff /dev/vdb6 //关闭swap分区
-
swapon -s //查看
六配额
配额是针对分区的,管理员可以为用户所能使用的磁盘空间进行配额限制,每一位用户只能使用最大配额范围内的磁盘空间。即可对用户存储文件数量限制,也可对用户存储文件大小做限制。
(1)创建一个设备
mkdir /pub ##新建一个目录
chmod 1777 /pub ## 赋予权限,便于测试
- 新建一个分区,并且同部分区列表,如果分区没有显示,则可以使用partprobe命令(同部分区列表)
- mkfs.xfs /dev/vdb5 ##分区格式化
- mount -o usrquota /dev/vdb5 /pub //挂载,并打开用户配额,usrquota----->用户配额
(2)激活配置参数 - 打开配置文件
设置student用户最大额度为20M(20480k=20M)
- 编辑挂载策略文件
- 测试
20M没有超过最大限额,可以正常截取
21M超过最大额度提示,提示超过配额限制,则其真实截取大小仍为21M
七.磁盘加密
将计算机用户的磁盘进行加密以防止信息泄露。
- 对所需要加密的磁盘进行加密
cryptsetup luksFormat /dev/vdb5
注意:由于用到的是rhel7.0系统,因此在输入yes时要大写,且密码要输入俩次
- 将加密磁盘用新目录打开
cryptsetup open /dev/vdb5 westos ##westos为新目录(自定义),该目录的名字是临时的每次打开可以起的名字任意
ll /dev/mapper #查看加密文件
- 格式化新目录westos,然后挂载
mkfs.xfs /dev/mapper/westos
mount /dev/mapper/westos /mnt/
- 验证加密成功
touch /mnt/file
vim /mnt/file
umount /mnt/
cryptsetup close westos //关闭加密认证
注意:若只是umount /mnt/那么再次挂载还是能看到内容
umount /mnt/
cryptsetup close westos //关闭加密认证
再次打开加密文件的时候:
2.加密磁盘开机自动挂载
vim /etc/fstab ##设置开机挂载
/dev/mapper/hehehe /mnt/ xfs defaults 0 0
vim /etc/cryttab ##连接vdb5到密码文件
hehehe /dev/vdb5 /root/hehehe_key
vim /root/hehehe_key ##创建密码文件
westos2019
cryptsetup luksAddKey /dev/vdb5 /root/hehehe_key ##加载该钥匙
验证:
当reboot虚拟机之后
3.删除开机自动挂载
vim /etc/fatab ##删除开机挂载
umount /mnt ##卸载
cryptsetup close hehehe ##关闭加密
mkfs.xfs /dev/vdb5 ##格式化vdb5