linux系统管理---5.linux存储的基本管理


实验环境:一台全新的虚拟机,添加第二块5G的虚拟硬盘VirtlO Disk device。

在真实主机里面用virt-manager打开虚拟化管理界面------选择虚拟机Open打开,打开灯泡--------选择左下AddHardware-----Strogae设定内存为5GB;Dvice type为Disk device;Bus type为VirtlO
在这里插入图片描述
在westosa中查看硬盘设备,新增vdb 5G
在这里插入图片描述

一、设备识别

在Linux操作系统中,任何物理存储设备接入系统后都是以文件的形式存在,不同类别的设备接入系统后被识别的文件类型也不同。
在这里插入图片描述
设备查看:

fdisk -l  查看磁盘分区情况
lsblk    设备使用情况(MOUNTPOINT设备挂载点)
blkid   设备管理方式及设备id
df    -h/-H  查看正在被系统挂载的设备(h:1024换算 H:1000换算)
cat  /proc/partitions  查看系统识别设备

二、设备挂载

挂载目的:通过将设备挂载到目录上来访问设备。
在系统中有设备id的设备是可以被系统使用的。

1.临时挂载

挂载命令:

mount -o 挂载参数 设备名称 挂载点
umount                    设备|挂载点     ##卸载U盘         
mount                  ##查看挂载信息
mount -o rw /dev/vdal   /westos          ##可读+可写挂载设备   
mount -o remount,ro   /westos     ##转换挂载参数由读写变为只读

当卸载时出现设备正忙报错的情况使用一下命令:

fuser -kvm   设备|挂载点    ##-k 结束进程 -v 显示详细信息 -m 显示进程

先查看设备上正忙的信息:lsof /dev/sdb1
在这里插入图片描述

2.永久挂载

编辑设备挂载策略文件

vim  /etc/fstab
设备             挂载点         文件系统类型      挂载参数     是否备份    是否检测
/dev/sdb1        /mnt              swap         defaults         0        0

在这里插入图片描述

此文件编写后不会立即生效,需要执行mount -a 使得系统重新读取此文件。

三、设备中文件的查找(find)

find  -name                         ##按文件名称查找
find  -user                         ##按文件拥有者查找
find  -group                        ##按文件拥有组查找
find  -type  f | d | s | b | l |    ##按文件类型查找(d=目录;f=文件;s=socket套接字;b=块设备;l=软链接)

find  -perm  444                ##准确定位文件权限查找(u=r--&g=r--&o=r--)===1个条件
      -perm  /444               ##模糊定位文件权限查找(u含有r或者g含有r或者o含有r)===3个条件
      -perm  -444              ##模糊定位文件权限查找(ugo位都含有 r 权限)

find  -exec                              ##对查找出来的文件进行处理
find  -maxdepth 1                        ##查找的最大深度为1
find  -mindepth 1                        ##查找的最小深度为1

find  -cmin  1                    ##查找在一分钟时间点被修改的文件
      -cmin +1                    ##查找修改时间大于1min的文件
      -cmin -1                    ##查找修改时间小于1min的文件

find  -size  + 1M                        ##查找大于1M的文件
      -size  - 1M                        ##查找小于1M的文件

find  -o                        ##或者
find  -a                        ##并且(可以省略)
find  -not                        ##条件反选(=not后参数的否定参数)
find /mnt -perm /111 -type f -exec chmod ugo-x {} \; ###{} 表示find命令查找出来的所有结果 ,\是为了转译,  “;”特殊含义,对命令执行的时候前后分隔开

先建立文件,便于观察。
在这里插入图片描述
按文件名查找以及深度查找
在这里插入图片描述

用户身份查找
在这里插入图片描述

文件指定大小查找,需先做出来3个文件,如下图:

dd if=/dev/zero of=/dev/sdb bs=1M count=10
(if=input file of=output file bs=1M一块的大小是1M   count=10复制10块) 

在这里插入图片描述在这里插入图片描述

时间查找(主要作用是比如几分钟之内文件损坏或者出现问题,来检查哪里被修改过)
在这里插入图片描述权限查找
在这里插入图片描述在这里插入图片描述在这里插入图片描述 find /mnt -perm /111 -type f -exec chmod ugo-x {} ;
##{} 表示find命令查找出来的所有结果 ,\是为了转译, “;”特殊含义,对命令执行的时候前后分隔开
在这里插入图片描述

四、磁盘分区

操作系统在引导的过程中,硬件支持的模式主要MBR,GPT两种分区方式。
在这里插入图片描述
1.GPT分区方式:
在这里插入图片描述
此分区方式解决了MBR分区只有4个主分区的缺点,理论上来说分区没有数量限制,但因操作系统不同对此方式分区数量限制也不同。

2.MBR分区方式:
在这里插入图片描述
如上图所示,MBR分区将磁盘分为主分区、扩展分区、分区表这3部分。
主分区:记录分区的信息并可以直接使用的分区。
扩展分区:主分区表记录的分区,不可直接使用,只是逻辑分区的容器。
逻辑分区:扩展分区里面划分的分区,不占用分区表。

分区方法:
fdisk交互式分区

fdisk  /dev/vdb 界面参数
 m                        ##获得帮助
 d                        ##删除
 l                        ##列出所有分区类型
 n                        ##新建分区
 p                        ##显示分区表
 t                        ##更改分区类型
 w                        ##保存更改
 q                        ##退出
 g                        ##设定分区方式为GPT
 o                        ##设定分区方式为MBR


udevadm settle         ##同步分区表
cat  /proc/partitions   ##查看分区情况

在这里插入图片描述

parted非交互式分区

parted  -l                                         ##查看分区表
parted  /dev/vdb  mklabel  msdos/gpt               ##设定设备分区方式(msdos=MBR;gpt=GPT)
parted  /dev/vdb  mkpart  primary  1  100          ##划分容量为100M的第一个分区
parted  /dev/vdb  rm  分区号                        ##删除分区

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.常见文件系统类型
在这里插入图片描述
磁盘划分出来的分区是不可使用的,只是划分出来了设备,但这个设备上没有文件系统(用来管理文件的软件),所以需要对设备先进行格式化。

blisk -l  | grep /dev/vdb

mkfs.xfs  /dev/vdb1               ##将设备格式化为xfs文件系统
mkfs.ext4  /dev/vdb3              ##将设备格式化为ext4文件系统
mkfs.xfs  -K  /dev/vdb6           ##将设备格式化为xfs文件系统(-K表示不舍弃空数据块)
udevadm  settle                   ##同步磁盘设备分区表

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述

五、swap分区

作用:充当内存的仓库,缓冲区。程序在运行时所有数据都在内存RAM中,当RAM使用量超过了限额程序运行会出错,为了使得系统更加稳定,我们可以在硬盘上划分一部分空间来作为内存缓冲区,即swap分区;当内存超过限额,内核会把内存中闲置的数据存放到swap中,当程序需要swap中的数据时,内核就会将swap分区中的数据交还给内存进程处理。
swap分区大小的建议:
在这里插入图片描述HIBERNATE:关机时自动备份内存数据的物理存储空间,一般为关闭状态。

swap管理命令:

swapon -s ##查看swap分区信息
创建swap分区
创建分区并设定分区的类型为linuxswap
mkswap /dev/vdb2 ##格式化设备文件系统为swap格式
swapon /dev/vdb2 -p 0---32767  ##添加设备,- p 指定设备的优先级(数字大优先级高)
以上操作为临时操作
swapoff /dev/vdb2  ##删除swap分区中的指定设备

在这里插入图片描述在这里插入图片描述在这里插入图片描述

永久添加swap分区

  vim /etc/fstab
  /dev/vdb1  swap swap  pri=4 0  0 ##pri优先级
  swapon -a  ##使系统重新读取此文件

在这里插入图片描述

六、磁盘配额

作用:设定用户能写入指定设备的最大额度,可以避免因系统中某个用户过度使用磁盘空间而造成其他用户无法正常工作。
设定方法:
临时配额:

quotaon -uv /dev/sda1 ##激活配额
edquota -u lee ##设定用户lee配额
Disk quotas for user lee (uid 1001):
设备          用户       已经创建数据      软限     硬限     户已经创文件个数  软限  硬限
Filesystem  blocks        soft           hard   inodes     soft     hard
/dev/sda1    20480          0             20480   1           0       0

实验:
1.fdisk /dev/vdb交互式对设置/dev/vdb分区,新建一个大小为100M的/dev/vdb1设备
在这里插入图片描述

2.格式化设备为xfs文件系统,挂载设备到/westos目录,挂载完成后修改目录权限
在这里插入图片描述

3.切换用户目录到/westos,dd创建文件直到设备空间被占满,这显然是不合理的
在这里插入图片描述

4.切换回超级用户,卸载/dev/vdb1重新挂载并激活配额参数usrquota,mount查看挂载信息可以看到挂载到/dev/vdb1的配额参数被激活
在这里插入图片描述
在这里插入图片描述

5.为westos用户设定磁盘配额为20M(默认单位为K),此时普通用户上传文文件大小受限制,用户westos只能写入大小为20M的数据。
在这里插入图片描述在这里插入图片描述

6.切换用户,此时,用户westos只能写入20M以下的数据
在这里插入图片描述

永久配额:

vim  /etc/fstab 

/dev/vdb1     /westos      xfs   defaults,usrquota  0  0

在这里插入图片描述
编写完需要执行 mount -a 以重新读取此文件,然后在执行 edquota -u username 命令对指定用户进行配额。

关闭配额:

quotaoff -uv /dev/vdb(v表示显示过程 u表示显示激活状态)
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值