文章目录
- swap分区
- 什么是swap分区
- swap分区使用情况查看工具
- free
- 案例
- swapon
- 创建swap分区过程
swap分区
什么是swap分区
swap分区是指在Linux操作系统中为了提高系统运行效率而设置的一块特殊的硬盘空间,也称为虚拟内存。当系统内存不足时,会将一部分不常用的内存数据存储到swap分区中,以释放内存空间,从而保证系统的稳定运行。swap分区的大小一般设置为物理内存大小的两倍,但也可以根据实际情况进行调整。
swap分区使用情况查看工具
Linux系统中,swap分区的大小和使用情况可以通过命令行工具如swapon和free来查看和管理。
free
Linux free命令用于查看系统内存使用情况,包括物理内存和交换空间的使用情况
命令格式
free [options]
参数
- -b:以字节为单位显示内存使用情况
- -k:以KB为单位显示内存使用情况
- -m:以MB为单位显示内存使用情况
- -g:以GB为单位显示内存使用情况
- -s:间隔指定秒数后持续输出内存使用情况
- -t:显示内存总量
- -h:以易读的方式显示内存使用情况
输出详解
- total:物理内存总量
- used:已使用的物理内存量
- free:空闲物理内存量
- shared:被多个进程共享的内存量
- buffers:缓存的内存量
- cache:缓存的文件系统的内存量
- available:可用的物理内存量
- Swap:交换空间总量、已使用的交换空间量、空闲交换空间量
案例
以MB为单位显示内存使用情况
[root@localhost ~]# free -m total used free shared buff/cache available Mem: 7802 417 7212 11 172 7159 Swap: 8063 0 8063
每3秒输出一次内容的使用情况
[root@localhost ~]# free -s 3 total used free shared buff/cache available Mem: 7990068 427416 7385364 12052 177288 7331104 Swap: 8257532 0 8257532
以人能够看懂的方式显示内存使用情况
[root@localhost ~]# free -h total used free shared buff/cache available Mem: 7.6G 418M 7.0G 11M 173M 7.0G Swap: 7.9G 0B 7.9G
swapon
Linux swapon命令用于启用交换空间,也就是将指定的交换分区或交换文件加入到系统的交换空间中 命令使用方法我们在创建swap分区过程中介绍使用
创建swap分区过程
确定分区大小:一般来说,swap分区的大小应该是系统内存大小的两倍。但是,如果系统内存很大,也可以考虑将swap分区的大小设置为系统内存大小的1.5倍或1倍。
确定分区位置:swap分区应该位于硬盘的末尾,这样可以避免对其他分区的影响
使用fdisk或parted等命令创建分区:可以使用fdisk或parted等分区管理工具来创建swap分区,具体操作步骤包括选择要操作的硬盘、创建新的分区、设置分区类型为Linux swap等
格式化分区:在创建好swap分区后,需要使用mkswap命令将其格式化为swap分区,这样才能被系统识别并使用
启用swap分区:使用swapon命令将swap分区加入到系统的交换空间中,从而使操作系统可以将不常用的内存数据存储到swap分区中,释放物理内存资源。
下面我们创建Linux swap分区:
- 确定分区大小和位置,假设我们要创建一个大小为5GB的swap分区,硬盘为/dev/sdb,我们可以使用fdisk命令创建swap分区
[root@localhost ~]# fdisk /dev/sdb WARNING: fdisk GPT support is currently new, and therefore in an experimental phase. Use at your own discretion. 欢迎使用 fdisk (util-linux 2.23.2)。 更改将停留在内存中,直到您决定将更改写入磁盘。 使用写入命令前请三思。 命令(输入 m 获取帮助):n # 创建分区 分区号 (1-128,默认 1): # 指定分区号 第一个扇区 (34-104857566,默认 2048): # 指定起始扇区和结束扇区 Last sector, +sectors or +size{K,M,G,T,P} (2048-104857566,默认 104857566):+5G # 给分区分配5G内存 已创建分区 1 命令(输入 m 获取帮助):t # 设置分区类型 已选择分区 1 分区类型(输入 L 列出所有类型):L # 查看分区类型 选择 Linux swap类型 1 EFI System C12A7328-F81F-11D2-BA4B-00A0C93EC93B 2 MBR partition scheme 024DEE41-33E7-11D3-9D69-0008C781F39F 3 Intel Fast Flash D3BFE2DE-3DAF-11DF-BA40-E3A556D89593 4 BIOS boot 21686148-6449-6E6F-744E-656564454649 5 Sony boot partition F4019732-066E-4E12-8273-346C5641494F 6 Lenovo boot partition BFBFAFE7-A34F-448A-9A5B-6213EB736C22 7 PowerPC PReP boot 9E1A2D38-C612-4316-AA26-8B49521E5A8B 8 ONIE boot 7412F7D5-A156-4B13-81DC-867174929325 9 ONIE config D4E6E2CD-4469-46F3-B5CB-1BFF57AFC149 10 Microsoft reserved E3C9E316-0B5C-4DB8-817D-F92DF00215AE 11 Microsoft basic data EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 12 Microsoft LDM metadata 5808C8AA-7E8F-42E0-85D2-E1E90434CFB3 13 Microsoft LDM data AF9B60A0-1431-4F62-BC68-3311714A69AD 14 Windows recovery environment DE94BBA4-06D1-4D40-A16A-BFD50179D6AC 15 IBM General Parallel Fs 37AFFC90-EF7D-4E96-91C3-2D7AE055B174 16 Microsoft Storage Spaces E75CAF8F-F680-4CEE-AFA3-B001E56EFC2D 17 HP-UX data 75894C1E-3AEB-11D3-B7C1-7B03A0000000 18 HP-UX service E2A1E728-32E3-11D6-A682-7B03A0000000 19 Linux swap 0657FD6D-A4AB-43C4-84E5-0933C84B4F4F 20 Linux filesystem 0FC63DAF-8483-4772-8E79-3D69D8477DE4 21 Linux server data 3B8F8425-20E0-4F3B-907F-1A25A76F98E8 22 Linux root (x86) 44479540-F297-41B2-9AF7-D131D5F0458A 23 Linux root (ARM) 69DAD710-2CE4-4E3C-B16C-21A1D49ABED3 24 Linux root (x86-64) 4F68BCE3-E8CD-4DB1-96E7-FBCAF984B709 25 Linux root (ARM-64) B921B045-1DF0-41C3-AF44-4C6F280D3FAE 26 Linux root (IA-64) 993D8D3D-F80E-4225-855A-9DAF8ED7EA97 27 Linux reserved 8DA63339-0007-60C0-C436-083AC8230908 28 Linux home 933AC7E1-2EB4-4F13-B844-0E14E2AEF915 29 Linux RAID A19D880F-05FC-4D3B-A006-743F0F84911E 30 Linux extended boot BC13C2FF-59E6-4262-A352-B275FD6F7172 31 Linux LVM E6D6D379-F507-44C2-A23C-238F2A3DF928 32 FreeBSD data 516E7CB4-6ECF-11D6-8FF8-00022D09712B 33 FreeBSD boot 83BD6B9D-7F41-11DC-BE0B-001560B84F0F 34 FreeBSD swap 516E7CB5-6ECF-11D6-8FF8-00022D09712B 35 FreeBSD UFS 516E7CB6-6ECF-11D6-8FF8-00022D09712B 36 FreeBSD ZFS 516E7CBA-6ECF-11D6-8FF8-00022D09712B 37 FreeBSD Vinum 516E7CB8-6ECF-11D6-8FF8-00022D09712B 38 Apple HFS/HFS+ 48465300-0000-11AA-AA11-00306543ECAC 39 Apple UFS 55465300-0000-11AA-AA11-00306543ECAC 40 Apple RAID 52414944-0000-11AA-AA11-00306543ECAC 41 Apple RAID offline 52414944-5F4F-11AA-AA11-00306543ECAC 42 Apple boot 426F6F74-0000-11AA-AA11-00306543ECAC 43 Apple label 4C616265-6C00-11AA-AA11-00306543ECAC 44 Apple TV recovery 5265636F-7665-11AA-AA11-00306543ECAC 45 Apple Core storage 53746F72-6167-11AA-AA11-00306543ECAC 46 Solaris boot 6A82CB45-1DD2-11B2-99A6-080020736631 47 Solaris root 6A85CF4D-1DD2-11B2-99A6-080020736631 48 Solaris /usr & Apple ZFS 6A898CC3-1DD2-11B2-99A6-080020736631 49 Solaris swap 6A87C46F-1DD2-11B2-99A6-080020736631 50 Solaris backup 6A8B642B-1DD2-11B2-99A6-080020736631 51 Solaris /var 6A8EF2E9-1DD2-11B2-99A6-080020736631 52 Solaris /home 6A90BA39-1DD2-11B2-99A6-080020736631 53 Solaris alternate sector 6A9283A5-1DD2-11B2-99A6-080020736631 54 Solaris reserved 1 6A945A3B-1DD2-11B2-99A6-080020736631 55 Solaris reserved 2 6A9630D1-1DD2-11B2-99A6-080020736631 56 Solaris reserved 3 6A980767-1DD2-11B2-99A6-080020736631 57 Solaris reserved 4 6A96237F-1DD2-11B2-99A6-080020736631 58 Solaris reserved 5 6A8D2AC7-1DD2-11B2-99A6-080020736631 59 NetBSD swap 49F48D32-B10E-11DC-B99B-0019D1879648 60 NetBSD FFS 49F48D5A-B10E-11DC-B99B-0019D1879648 61 NetBSD LFS 49F48D82-B10E-11DC-B99B-0019D1879648 62 NetBSD concatenated 2DB519C4-B10E-11DC-B99B-0019D1879648 63 NetBSD encrypted 2DB519EC-B10E-11DC-B99B-0019D1879648 64 NetBSD RAID 49F48DAA-B10E-11DC-B99B-0019D1879648 65 ChromeOS kernel FE3A2A5D-4F32-41A7-B725-ACCC3285A309 66 ChromeOS root fs 3CB8E202-3B7E-47DD-8A3C-7FF2A13CFCEC 67 ChromeOS reserved 2E0A753D-9E48-43B0-8337-B15192CB1B5E 68 MidnightBSD data 85D5E45A-237C-11E1-B4B3-E89A8F7FC3A7 69 MidnightBSD boot 85D5E45E-237C-11E1-B4B3-E89A8F7FC3A7 70 MidnightBSD swap 85D5E45B-237C-11E1-B4B3-E89A8F7FC3A7 71 MidnightBSD UFS 0394EF8B-237E-11E1-B4B3-E89A8F7FC3A7 72 MidnightBSD ZFS 85D5E45D-237C-11E1-B4B3-E89A8F7FC3A7 73 MidnightBSD Vinum 85D5E45C-237C-11E1-B4B3-E89A8F7FC3A7 74 Ceph Journal 45B0969E-9B03-4F30-B4C6-B4B80CEFF106 75 Ceph Encrypted Journal 45B0969E-9B03-4F30-B4C6-5EC00CEFF106 76 Ceph OSD 4FBD7E29-9D25-41B8-AFD0-062C0CEFF05D 77 Ceph crypt OSD 4FBD7E29-9D25-41B8-AFD0-5EC00CEFF05D 78 Ceph disk in creation 89C57F98-2FE5-4DC0-89C1-F3AD0CEFF2BE 79 Ceph crypt disk in creation 89C57F98-2FE5-4DC0-89C1-5EC00CEFF2BE 80 OpenBSD data 824CC7A0-36A8-11E3-890A-952519AD3F61 81 QNX6 file system CEF5A9AD-73BC-4601-89F3-CDEEEEE321A1 82 Plan 9 partition C91818F9-8025-47AF-89D2-F030D7000C2C 分区类型(输入 L 列出所有类型):19 # 选择Linux swap类型 已将分区“Linux filesystem”的类型更改为“Linux swap” 命令(输入 m 获取帮助):p # 打印分区信息 磁盘 /dev/sdb:53.7 GB, 53687091200 字节,104857600 个扇区 Units = 扇区 of 1 * 512 = 512 bytes 扇区大小(逻辑/物理):512 字节 / 512 字节 I/O 大小(最小/最佳):512 字节 / 512 字节 磁盘标签类型:gpt Disk identifier: 34A36361-B1EB-4F8B-A376-6D8DF0A504EF # Start End Size Type Name 1 2048 10487807 5G Linux swap 命令(输入 m 获取帮助):w # 设置成功保存 The partition table has been altered! Calling ioctl() to re-read partition table. 正在同步磁盘。
- 格式化分区。使用mkswap命令将/dev/sdb1格式化为swap分区
[root@localhost ~]# mkswap /dev/sdb1 正在设置交换空间版本 1,大小 = 5242876 KiB 无标签,UUID=50b44173-45c6-45bb-9272-35ac0f70dd3c
- 启用swap分区,使用swapon命令将/dev/sda3加入到系统的交换空间中(可以使用swapoff关闭交换空间)
[root@localhost ~]# free -h total used free shared buff/cache available Mem: 7.6G 430M 7.0G 11M 207M 7.0G Swap: 7.9G 0B 7.9G [root@localhost ~]# swapon /dev/sdb1 # 开启交换空间 /dev/sdb1 [root@localhost ~]# free -h total used free shared buff/cache available Mem: 7.6G 435M 7.0G 11M 207M 7.0G Swap: 12G 0B 12G root@localhost ~]# free -h total used free shared buff/cache available Mem: 7.6G 435M 7.0G 11M 207M 7.0G Swap: 12G 0B 12G
猜你喜欢
网友评论
- 搜索
- 最新文章
- 热门文章