Linux下的存储管理-swap分区和磁盘配额(RHEL8.0)

Brigitte ·
更新时间:2024-11-11
· 991 次阅读

文章目录一.swap分区1.swap作用2.swap分区大小建议3.swap管理二.磁盘配额1.磁盘配额作用2.磁盘配额设定方法 一.swap分区 1.swap作用

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

2.swap分区大小建议


说明:HIBERNATE是一个开源框架,做数据的插件。HIBERNATE开启之后,会暂存系统的电源信息。开机之后会把电源信息交还给内存,使得开机速度变快

3.swap管理

①查看swap分区

[root@rhel8 ~]# swapon -s ##查看swap分区信息 Filename Type Size Used Priority /dev/nvme0n1p2 partition 511996 0 -2

②创建swap分区
创建分区并设定分区的类型为Linuxswap

[root@rhel8 ~]# fdisk /dev/sda 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 0x034d90a2. Command (m for help): n Partition type p primary (0 primary, 0 extended, 4 free) e extended (container for logical partitions) Select (default p): Using default response p. Partition number (1-4, default 1): First sector (2048-20971519, default 2048): Last sector, +sectors or +size{K,M,G,T,P} (2048-20971519, default 20971519): +100M Created a new partition 1 of type 'Linux' and of size 100 MiB. Command (m for help): t Selected partition 1 Hex code (type L to list all codes): 82 Changed type of partition 'Linux' to 'Linux swap / Solaris'. Command (m for help): wq The partition table has been altered. Calling ioctl() to re-read partition table. Syncing disks. [root@rhel8 ~]# mkswap /dev/sda1 ##格式化设备位swap格式 Setting up swapspace version 1, size = 100 MiB (104853504 bytes) no label, UUID=10cb10c6-fd54-4fc3-8871-bf084a991bf8 [root@rhel8 ~]# swapon -a /dev/sda1 ##激活 [root@rhel8 ~]# swapon -s ##查看swap信息,/dev/sda1优先级是-3 Filename Type Size Used Priority /dev/nvme0n1p2 partition 511996 0 -2 /dev/sda1 partition 102396 0 -3 [root@rhel8 ~]# swapoff /dev/sda1 ##卸载swap [root@rhel8 ~]# swapon /dev/sda1 -p 1 ##-p表示指定swap的优先级 [root@rhel8 ~]# swapon -s ##查看swap信息,/dev/sda1优先级1 Filename Type Size Used Priority /dev/nvme0n1p2 partition 511996 0 -2 /dev/sda1 partition 102396 0 1

以上操作都是临时操作

③永久添加swap分区

[root@rhel8 ~]# vim /etc/fstab /dev/sda1 swap swap pri=4 0 0 [root@rhel8 ~]# swapon -a

④删除swap

[root@rhel8 ~]# vim /etc/fstab /dev/sda1 swap swap pri=4 0 0 ##删除此行 [root@rhel8 ~]# swapoff /dev/sda1 二.磁盘配额 1.磁盘配额作用

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

2.磁盘配额设定方法

①激活配额

mount /dev/sda1 /pub/ -o usrquota ##挂载设备并激活配额参数 quotaon -uv /dev/sda1 ##激活配额

②设定用户配额

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

③永久开启配额

vim /etc/fstab /dev/sda1 /pub xfs defaults,usrquota 0 0

测试:截取超过20M数据失败,只能写入20M数据

[root@rhel8 ~]# su - tony ##切换到tony用户 [tony@rhel8 pub]$ dd if=/dev/zero of=/pub/tonyfile bs=1M count=40 dd: error writing '/pub/tonyfile': Disk quota exceeded 21+0 records in 20+0 records out 20971520 bytes (21 MB, 20 MiB) copied, 0.00919345 s, 2.3 GB/s

④关闭配额

quotaoff -uv /dev/sda1 vim /etc/fstab ##去掉配额参数usrquota
作者:chaos_oper



存储管理 Linux 存储 磁盘配额

需要 登录 后方可回复, 如果你还没有账号请 注册新账号