博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Linux磁盘存储管理以及文件的查找
阅读量:3960 次
发布时间:2019-05-24

本文共 6558 字,大约阅读时间需要 21 分钟。

Linux磁盘存储管理以及文件的查找

1.设备识别

设备接入系统后都是以文件的形式存在

设备文件名称:

SATA/SAS/USB /dev/sda,/dev/sdb ##s= SATA, d=DISK a=第几快
IDE /dev/hd0,/dev/hd1 ##h= hard
VIRTIO-BLOCK /dev/vda,/dev/vdb ##v=virtio
M2(SSD) /dev/nvme0,/dev/nvme1 ##nvme=m2
SD/MMC/EMMC(卡) /dev/mmcblk0,/dev/mmcblk1 ##mmcblk=mmc卡
光驱 /dev/cdrom,/dev/sr0,/dev/sr1

设备查看:

fdisk -l ##查看磁盘分区情况
lsblk ##设备使用情况
blkid ##设备管理方式及设备id
df ##查看正在被系统挂载的设备
-a 列出所有的文件系统,包括系统特有的 /proc 等文件系统
-k 以 KBytes 的容量显示各文件系统
-m 以 MBytes 的容量显示各文件系统
-h 以人们较易阅读的 GBytes, MBytes, KBytes 等格式自行显示
-H 以 M=1000K 取代 M=1024K 的进位方式
-T 显示文件系统类型, 连同该 partition 的 filesystem 名称 (例如 ext3) 也列出
-i 不用硬盘容量,而以 inode 的数量来显示
cat /proc/partitions ##查看系统识别设备

2.设备挂载

在系统中有设备id的设备是可以被系统使用的

挂载命令:

mount	-o 挂载参数   device	挂载点umount   设备|挂载点mount    ##查看挂载信息mount -o rw /dev/vda1	/westosmount -o remount,ro /westos			##转换挂载参数由读写变为只读在卸载时当出现设备正忙:fuser -kvm  设备|挂载点		#-k 结束进程, -v 现实详细信息 -m 显示进程"注意:以上设备挂载都是临时挂载"设备永久挂载vim /etc/fstab		##设备挂载策略文件设备		挂载点		文件系统类型		挂载参数	是否备份	是否检测/dev/sr0	/westos		iso9660		defaults	  0       0此文件在编写完成后不会马上生效mount -a		##重新读取/etc/fstab文件此文件内容编写错误会导致系统启动失败按照提示在操作界面输入超级用户密码注释错误行重启系统即可

3.设备中文件的查找

链接: .

链接: .

find path -option [ -print ] [ -exec -ok command ] {} \

find -name 文件名称符合 name 的文件
-user 用户为指定用户的文件
-group 用户组为指定用户组的文件
-type x 文件类型是 x 的文件
-perm 222文件权限为222,/222或者关系,-222并且关系
-exec 执行命令
-maxdepth 表示最大深度
-mindepth 表示最小深度
-cmin n 在过去 n 分钟内被修改过
-o 或者
-a 并且
-not
find /mnt -perm /111 -type f -exec chmod ugo-x {} \; 将/mnt目录下文件类型为普通文件的,且三个权限位至少有一位有1权限(可执行权限)的文件的 三个权限位的可执行权限删除 {} 表示find命令查找结果,\是为了转译“;”

4.分区

MBR分区

主分区 主分区表记录分区的信息并可以直接使用的分区
扩展分区 主分区表记录的分区,不可直接使用,只是逻辑分区容器
逻辑分区 扩展分区之上划分的分区叫做逻辑分区

分区方法

fdisk /dev/磁盘名称 交互模式下分区
parted 非交互和交互模式下分区(采用parted分区的话一般采用非交互模式,交互模式下相对比较繁琐)
[root@d westos]# fdisk /dev/vdbCommand (m for help): md  				##删除l				##列出所有分区类型n				##新建p				##显示分区表t 				##更改分区类型w 				##保存更改q				##退出g				##设定分区方式为GPTo				##设定分区方式为mbrCommand (m for help): nPartition type   p   primary (0 primary, 0 extended, 4 free)		##主分区   e   extended (container for logical partitions)	##扩展分区Select (default p): p					##建立主分区Partition number (1-4, default 1):1			##分区表位置First sector (2048-20971519, default 2048):		##分区起始位置推荐使用默认Last sector, +sectors or +size{
K,M,G,T,P} (2048-20971519, default 20971519): +100M ##分区结束位置Command (m for help):wq ##退出保存,如果直接q表示退出不保存udevadm settle #同步分区表 partx -d /dev/vdb##清理分区表partx -a /dev/vdb##重新加载分区表mkfs.xfs -K /dev/vdb1 ##格式化设备为xfs文件系统(相当与在/dev/vda1上安装设备管理软件)##-K 不丢弃空数据块mount /dev/sdb1 /mnt/westos ##mount命令挂在为临时挂在,如果需要永久挂在需要编写/etc/fstab设备删除dd if=/dev/zero of=/dev/设备名称 bs=1M count=1fdisk /dev/磁盘名 在交互模式下删除,选d,之后选择删除的分区号parted 非交互模式下删除。后面使用rm加指定分区号#mbr分区方式转换成GPT#parted /dev/vda(parted) mklabelNew disk label type? gptWarning: The existing disk label on /dev/sda will be destroyed and all data on this disk will be lost.Do you want to continue?Yes/No? yes(parted) quit在RHEL8中可以直接使用fdisk /dev/vdbg ##g表示把/dev/sdb设备的分区方式调整为GPT

5.swap分区

作用:

程序在运行时所有数据是在RAM,当RAM使用量超过了限额,为了使系统更加稳定,我们在硬盘上划分一部分空间来作内存缓冲区swap,当内存使用超过限额,内核会把内存中闲置的数据存放到swap中,当程序需要swap分区中的数据时内核将swap分区中的数据在交还给内存进程处理。

swap管理   swapon -s	##查看swap分区信息创建swap分区:(1)创建分区并设定分区的类型为Linuxswap(2)mkswap	 /dev/磁盘名				 %格式化设备位swap格式(3)swapon	 /dev/磁盘名	 -p 0-32767		 %-p表示指定swap的优先级 以上操作都位临时操作,如果永久添加swap分区则需要编辑下面的文件:vim /etc/fstab/dev/磁盘名		swap	swap	    default,pri=1	0 0swapon -a 重新读取/etc/fstab文件删除swap(1)vim /etc/fstab /dev/sda1  swap    swap        default,pri=1   0 0	 %删除此行(2)swapoff /dev/磁盘名

6.磁盘配额

作用:

设定用户能写入指定设备的最大额度。

mount /dev/sda1 /pub/ -o usrquota	##挂载设备并激活配额参数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永久开启配额vim /etc/fstab/dev/sda1	/pub	xfs	defaults,usrquota 0 0
测试:su - leecd /pubdd if=/dev/zero of=/pub/leefile bs=1M count=22		##截取数据失败只能写入20M数据关闭配额:quotaoff  -uv /dev/sda1vim /etc/fstab						##去掉配额参数usrquota

练习

1.在虚拟机中添加一块新的硬盘,大小为10G

2.在新硬盘中建立分区并挂在到/westosdir目录中,分区大小为500M
3.设定/westosdir目录中所有用户可以自由新建文件但不能删除不属于自己的文件
4.设定westos用户和lee用户能写入/westosdir目录中的最大数据不能超过10M
5.在系统中添加swap分区,大小为1G,优先级为1
6.以上要求在重启主机后仍然生效

[root@d ~]# mkdir /westosdir[root@d ~]# fdisk /dev/vdbCommand (m for help): nLast sector, +sectors or +size{
K,M,G,T,P} (2048-20971519, default 20971519): +500M[root@d ~]# mkfs.xfs -K /dev/vdb1[root@d ~]# useradd lee[root@d ~]# fdisk /dev/vdbCommand (m for help): tHex code (type L to list all codes): 82[root@d ~]# mkswap /dev/vdb2[root@d ~]# swapon /dev/vdb2 -p 1[root@d Desktop]# udevadm settle [root@d ~]# chmod 1777 /westosdir/[root@d ~]# mount /dev/vdb1 /westosdir/ -o usrquota [root@d ~]# quotaon -uv /dev/vdb1[root@d ~]# edquota -u westos [root@d ~]# edquota -u leevim /etc/fstab/dev/vdb1 /westosdir xfs defaults,usrquota 0 0vim /etc/fstab/dev/vdb2 swap swap defaults,pri=1 0 0检测结果# units generated from this file.#UUID=caa4a2c5-1d4e-4774-bc2b-5e71fd7d8b7a / xfs defaults 0 0UUID=f377f432-db5f-4172-aba5-edb5770d8b50 /boot xfs defaults 0 0UUID=23e3187c-cdf8-47be-8ad9-ad4048f65a02 swap swap defaults 0 01Disk /dev/vda: 10 GiB, 10737418240 bytes, 20971520 sectorsUnits: sectors of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 512 bytesI/O size (minimum/optimal): 512 bytes / 512 bytesDisklabel type: dosDisk identifier: 0xd2ba91baDevice Boot Start End Sectors Size Id Type/dev/vda1 * 2048 1026047 1024000 500M 83 Linux/dev/vda2 1026048 2050047 1024000 500M 82 Linux swap / Solaris/dev/vda3 2050048 20971519 18921472 9G 83 LinuxDisk /dev/vdb: 10 GiB, 10737418240 bytes, 20971520 sectorsUnits: sectors of 1 * 512 = 512 bytesSector size (logical/physical): 512 bytes / 512 bytesI/O size (minimum/optimal): 512 bytes / 512 bytesDisklabel type: dosDisk identifier: 0xcabd18f4Device Boot Start End Sectors Size Id Type/dev/vdb1 2048 1026047 1024000 500M 83 Linux/dev/vdb2 1026048 3123199 2097152 1G 82 Linux swap / Solaris2Filesystem Size Used Avail Use% Mounted on/dev/vdb1 495M 39M 456M 8% /westosdir3drwxrwxrwt. 2 root root 22 Nov 20 20:47 /westosdir4dd: error writing '/westosdir/testfile': Disk quota exceeded11+0 records in10+0 records out10485760 bytes (10 MB, 10 MiB) copied, 0.00645216 s, 1.6 GB/s5Filename Type Size Used Priority/dev/vda2 partition 511996 0 -2/dev/vdb2 partition 1048572 0 1

转载地址:http://hjhzi.baihongyu.com/

你可能感兴趣的文章
linux exec的用法
查看>>
C语言中如何使用宏
查看>>
Http与RPC通信协议的比较
查看>>
Source Insight的对齐问题
查看>>
ubuntu设置开机默认进入字符界面方法
查看>>
chrome 快捷键
查看>>
Linux下buffer和cache的区别
查看>>
程序员不应该再犯的五大编程错误
查看>>
[转载][转帖]Hibernate与Sleep的区别
查看>>
Linux系统的默认编码设置
查看>>
Linux系统调用
查看>>
Linux 信号signal处理机制
查看>>
Linux 信号signal处理函数
查看>>
perror简介
查看>>
linux的system () 函数详解
查看>>
在shell脚本的第一行中,必须写#!/bin/bash
查看>>
一句话##错误 'ASP 0116' 丢失脚本关闭分隔符
查看>>
文件上传漏洞之.htaccess
查看>>
常见网络安全设备默认口令
查看>>
VirtualBox虚拟机网络配置
查看>>