硬件设备
设备文件分为 : 块设备文件 (b) 和字符设备文件 (c) 。常见的存储设备如下
- /dev/hd[a-d] IDE
- /dev/sd[a-z] SCSI/SATA/USB
- /dev/md[0-…] RAID
- /dev/fd[0-7] 帧缓冲设备
- /dev/loop[0-7] 本地循环设备
- /dev/cdrom CD-ROM
- /dev/sr0 SCSI CD-ROM
- /dev/ram[0-7] 内存磁盘
其中存储设备命名规则如下:
/dev/sda1
dev # 硬件目录
sd # SCSI 设备
a # 同类型编号,a 为第一个块硬盘
1 # 分区号
可以使用 file
辨识文件类型
file [options] FILE
也可以使用 ls -l
看第一个字符分辨文件类型
– : 普通文件
d : 目录
c : 字符设备文件
b : 块设备文件
l : 符号链接文件
p : 管道文件
s : 套接字文件
文件系统
文件系统是操作系统用于有效地存储、组织、管理和访问磁盘上的数据的一种系统,定义了数据保存在存储设备上的方式和结构。常见的文件系统有 :
EXT3/EXT4
日志文件系统,常用于 Linux。EXT4 为 EXT3 的改进版,支持更大的文件系统和文件大小
XFS
高性能日志文件系统
FAT16/FAT32
广泛用于 DOS、Windows 等等操作系统。FAT16 最大支持 2GB 分区和 2GB 文件,FAT 32 最大支持128 GB分区和最大 4GB 的文件
NTFS
Windows 操作系统的文件系统,支持最大 2TB 的分区和最大 2TB 的文件
ISO 9660
以光盘介质发布的文件系统
磁盘管理
blkid
显示块设备信息
blkid [options]
# -o list 显示系统中全部块设备信息
lsblk
查看磁盘使用情况
lsblk [options]
# -a 显示所有设备信息
# -f 显示文件系统
fdisk
管理磁盘分区工具
fdisk [options]
# -l 列出所有分区表
# /dev/sda 指定操作 sda
类似的分区工具还有 sfdisk、cfdisk、parted 等
mkfs
格式化文件系统
mkfs [options]
# -t 指定文件系统
mkfs.xfs /dev/sdb # 将磁盘格式化为 XFS
mkfs.ext4 /dev/sdb # 将磁盘格式化为 EXT4
挂载 (mount)
将存储设备或文件系统连接到系统的目录结构中,使其成为文件系统的一部分
挂载的命令为 mount
,使用 umount
取消挂载。
# 挂载
mount [options]
# -a 挂载 /etc/fstab 文件中定义的所有文件系统
# -r 以只读模式挂载文件系统
# -t 指定文件系统类型
# 取消挂载
umount [options]
# -a 卸载所有已挂载的文件系统
# -f 强制卸载文件系统
# -R 递归卸载,卸载指定的目录树中的所有挂载
当需要开机自动挂载时,可以在 /etc/fstab
中配置挂载点 :
# /etc/fstab
# Created by anaconda on Thu Mar 14 12:26:56 2024
#
# Accessible filesystems, by reference, are maintained under '/dev/disk/'.
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info.
#
# After editing this file, run 'systemctl daemon-reload' to update systemd
# units generated from this file.
# <设备名> <挂载点> <文件系统类型> <挂载选项> <转储> <fsck 顺序>
/dev/mapper/cs-root / xfs defaults 0 0
UUID=13d44963-dba3-4cca-96ac-e295eabb0375 /boot xfs defaults 0 0
/dev/mapper/cs-swap none swap defaults 0 0
交换分区 SWAP
SWAP 分区是当内存不足以容纳当前所有活跃进程时,系统用来临时存储数据的虚拟内存空间
mkswap
交换分区格式化
mkswap [options]
mkswap /dev/sda1
使用 swapon
手动挂载交换分区,swapoff
取消挂载交换分区。也可以将 swap 分区写入 /etc/fstab 文件中开机自动挂载交换分区
swapon [options]
swapoff [options]
# -a 操作所有 /etc/fstab 文件中的交换分区
磁盘配额 quota
通过磁盘容量配额服务来限制某位用户或某个用户组针对特定文件夹可以使用的最大硬盘空间或最大文件个数,一旦达到这个最大值就不再允许继续使用,其中分为软限制与硬限制
软限制 : 当达到软限制时会提示用户,但仍允许用户在限定的额度内继续使用
硬限制 : 当达到硬限制时会提示用户,且强制终止用户的操作
磁盘配额需要系统支持 quota 磁盘配额技术,并且磁盘开启对 quota 技术。可以在 /etc/fstab
文件中添加 uquota 参数
UUID=13d44963-dba3-4cca-96ac-e295eabb0375 /boot xfs defaults,uquota 0 0
重启后使用 mount | grep usrquota
查看磁盘是否开启 quota
[root@localhost ~]# mount | grep usrquota
/dev/sda1 on /boot type xfs (rw,relatime,seclabel,attr2,inode64,logbufs=8,logbsize=32k,usrquota)
xfs_quota
用于管理设备的磁盘配额
xfs_quota [options]
# -x 专家模式
# -c 附加执行命令
xfs_quota -x -c 'limit bsoft=3m bhard=6m isoft=3 ihard=6 test' /boot
# 硬盘使用量的软限制和硬限制分别为 3MB 和 6MB ;创建文件数量的软限制和硬限制分别为 3 个和 6 个
xfs_quota -x -c 'timer -u -b 7days' /boot
# 设置宽限期限
xfs_quota -x -c report /boot
# 查看配额使用情况
xfs_quota -x -c 'state' /boot
# 查看配额状态
edquota
也可以管理系统的磁盘配额
edquota [options]
# -u 指定用户
# -t 显示宽限期限
[root@localhost ~]# edquota -u test
Disk quotas for user test (uid 1000):
Filesystem blocks soft hard inodes soft hard
/dev/sda1 0 3072 6144 0 3 6