Linux 基础-8

硬件设备

设备文件分为 : 块设备文件 (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
上一篇