实验环境:
系统里添加两块硬盘
##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 ##查看正在被系统挂载的设备
cat /proc/partitions ##查看系统识别设备
##2.设备挂载##
在系统中有设备id的设备是可以被系统使用的
(1)设备临时挂载
挂载命令:
mount -o 挂载参数 device 挂载点
umount 取消挂载,可以跟设备/挂载点
mount ##查看挂载信息
mount -o rw /dev/vda1 /westos
mount -o remount,ro /westos ##转换挂载参数由读写变为只读
在卸载时当出现设备正忙:
fuser -kvm 设备|挂载点 #-k 结束进程, -v 现实详细信息 -m 显示进程
(2)设备永久挂载
设备永久挂载
vim /etc/fstab ##设备挂载策略文件
设备 挂载点 文件系统类型 挂载参数 是否备份 是否检测
/dev/sr0 /westos iso9660 defaults 0 0
此文件在编写完成后不会马上生效
mount -a ##重新读取/etc/fstab文件
此文件内容编写错误会导致系统启动失败
按照提示在操作界面输入超级用户密码
注释错误行
重启系统即可
##3.设备中文件的查找##
find
-name #文件名查找
-user #所有人查找
-group #按所有组查找
-type f d s b l #按类型查找,d是目录,f是文件
-perm 222 /222 -222 #按权限查找
222是查找u、g、o都是2的文件
/222是查找u或g或o中含有2的文件
-222是查找u g o 都含有2的文件
-exec #查找到文件后执行命令
-maxdepth 1 #最大查找深度为1
-mindepth 1 #最小查找深度为1
-cmin 1 -1 +1 #按修改时间查找
-size +|-| 1M #按大小查找,+表示1M以上的文件
-表示1M以下的文件
1M表示大小为1M的文件
-o #o是或者的意思
-a #a是and的意思可以不要
-not #非的意思,查找不符合条件的文件
##4.分区##
分区方式: 位数 分区表大小 支付分区个数 支持单个分区大小
legacy (MBR) 32 64byte 主分区4个 2.2TB 所有分区16个
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
UEFI (GPT) 64 128byte 理论上无限制 8ZiB windows 128
##MBR分区方式:##
主分区:
主分区表记录分区的信息并可以直接使用的分区
扩展分区:
主分区表记录的分区,不可直接使用,只是逻辑分区容器
逻辑分区:
扩展分区之上划分的分区叫做逻辑分区
#分区方法#
fdisk /dev/sdb
Welcome to fdisk (util-linux 2.32.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Device does not contain a recognized partition table.
Created a new DOS disklabel with disk identifier 0x4018d2a4.
Command (m for help): m ##获得帮助
d ##删除
l ##列出所有分区类型
n ##新建
p ##显示分区表
t ##更改分区类型
w ##保存更改
q ##退出
g ##设定分区方式为GPT
o ##设定分区方式为mbr
##新建分区##
Command (m for help): n #新建
Partition 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 ##同步分区表
mkfs.xfs -K /dev/sdb1 ##格式化设备为xfs文件系统(相当与在/dev/sda1上安装设备管理软件)
##-K 不丢弃空数据块
mount /dev/sdb1 /mnt/westos ##mount命令挂在为临时挂在,如果需要永久挂在需要编写/etc/fstab
parted 命令(非交互式)方式建立分区:
####parted####
parted /dev/vdb mklabel msdos
parted /dev/vdb mkpart primary 1 100
parted /dev/vdb rm 2
常用文件系统对比:
####常用文件系统对比####
文件系统 FAT16 FAT32 NTFS EXT3 EXT4 XFS
最大卷 2GB 4GB 256TB 32TB 1EB 16EB
最大单个文件 4GB 8TB 16TB 2TB 16TB 8EB
最大文件个数 65536 4177920 4294967295 32000个子目录 无限子目录
代表系统 DOS/Win95 Win98 Win2000以后 RHEL5 RHEL6 RHEL7~
#man 5 fs ##查看获取帮助
设备删除:
#####设备删除######
dd if=/dev/zero of=/dev/sdb bs=1M count=1
mbr分区方式转换成GPT:
#mbr分区方式转换成GPT#
parted /dev/sda
(parted) mklabel
New disk label type? gpt
Warning: 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) q
##5.swap分区##
作用:
程序在运行时所有数据是在RAM
当RAM使用量超过了限额
为了使系统更加稳定
我们在硬盘上划分一部分空间来作内存缓冲区swap
当内存使用超过限额,内核会把内存中闲置的数据存放到swap中
当程序需要swap分区中的数据时内核将swap分区中的数据在交还给内存进程处理
swap分区大小建议:
内存大小 swap分区建议大小 当允许HIBERNATE
2GiB以下 内存两倍 内存3倍 2-8GiB 等于物理内存 物理内存2倍 8-64GiB 4GiB 1.5倍物理内存
64GiB以上 4GiB HIBERNATE不开
swap管理
swapon -s ##查看swap分区信息
(1)临时创建swap分区
创建swap分区
创建分区并设定分区的类型为Linuxswap
mkswap /dev/sda1 ##格式化设备位swap格式
swapon /dev/sda1 -p 0-32767 ## -p表示指定swap的优先级
(2)永久创建swap分区
vim /etc/fstab
/dev/sda1 swap swap pri=4 0 0
swapon -a
(3)删除swap
删除swap
vim /etc/fstab
/dev/sda1 swap swap pri=4 0 0 ##删除此行
swapoff /dev/sda1
##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 - lee
cd /pub
dd if=/dev/zero of=/pub/leefile bs=1M count=22 ##截取数据失败只能写入20M数据
关闭配额:
quotaoff -uv /dev/sda1
vim /etc/fstab ##去掉配额参数usrquota