当前位置: 首页 > news >正文

如何创建交换空间

在 Linux 系统中,交换空间(Swap Space)扮演着至关重要的角色,它相当于系统的 “备用内存”。当物理内存(RAM)不足以满足程序运行需求时,系统会将部分暂时不用的数据转移到交换空间中,从而保证系统的稳定运行。本文将详细介绍交换空间的概念,并分步骤讲解如何在 Linux 系统中创建和管理交换空间。

一、交换空间基础:概念与作用

1. 什么是交换空间?

交换空间是 Linux 系统中专门用于临时存储数据的磁盘空间,它可以是一个独立的分区(Swap Partition),也可以是一个普通文件(Swap File)。与物理内存相比,交换空间的读写速度较慢,但它能有效缓解物理内存不足的问题。

二、创建交换空间前的准备工作

在创建交换空间前,需要完成以下准备工作,确保操作的安全性和准确性。

1. 检查当前系统交换空间状态

首先,通过命令查看系统是否已存在交换空间,以及交换空间的大小和类型。

# 查看交换空间详细信息(推荐)
swapon --show# 或查看简洁的交换空间统计
free -h
  • swapon --show 会显示交换空间的路径(如/dev/sda5/swapfile)、类型(partitionfile)和大小。
  • free -h 中的Swap列会显示总交换空间、已使用和可用空间(单位为 GB 或 MB)。

2. 确定交换空间大小


3. 选择交换空间类型

三、创建交换分区

1. 检查磁盘分区状态

首先通过fdisklsblk命令查看磁盘分区情况,确认是否有未分配空间:

# 查看磁盘分区详细信息(推荐,需安装lsblk:sudo apt install util-linux 或 sudo yum install util-linux)
lsblk# 或使用fdisk(传统命令)
sudo fdisk -l

例如,若磁盘/dev/sda有未分配空间(标记为free),则可直接在未分配空间上创建交换分区;若没有未分配空间,需先缩小现有分区(如/dev/sda5)腾出空间。

2. 创建交换分区

使用fdisk命令对磁盘进行分区操作,示例:在/dev/sda磁盘上创建 8GB 的交换分区:

# 进入fdisk分区工具(指定目标磁盘,如/dev/sda)
sudo fdisk /dev/sda

进入fdisk交互模式后,按以下步骤操作:

  1. 输入n(新建分区),选择分区类型(p为 primary 主分区,e为 extended 扩展分区,根据磁盘分区表类型选择,MBR 磁盘最多 4 个主分区,GPT 磁盘无限制)。
  2. 输入分区编号(如5,根据现有分区编号顺延)。
  3. 输入起始扇区(默认即可,直接按回车)。
  4. 输入结束扇区(指定分区大小,如+8G表示分区大小为 8GB,按回车确认)。
  5. 输入t(修改分区类型),选择刚创建的分区编号(如5)。
  6. 输入13(Linux 交换分区的类型代码,fdisk会自动识别为Linux swap)。
  7. 输入w(保存分区表并退出)。

退出fdisk后,重启系统或重新加载磁盘分区表,让系统识别新分区:

# 重新加载磁盘分区表(无需重启,推荐)
sudo partprobe /dev/sda# 或重启系统(若partprobe无效)
sudo reboot

3. 格式化交换分区

使用mkswap命令将新创建的分区格式化为交换文件系统(示例中交换分区为/dev/sda5,需替换为实际分区路径):

sudo mkswap /dev/sda5

执行后会输出类似以下信息,表示格式化成功:

Setting up swapspace version 1, size = 8 GiB (8589934592 bytes)
no label, UUID=yyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy

4. 启用交换分区

使用swapon命令启用交换分区,让系统立即使用:

sudo swapon /dev/sda5

启用后,通过swapon --showfree -h验证:

swapon --show
# 输出示例:NAME      TYPE       SIZE USED PRIO
#          /dev/sda5  partition  8G   0B   -2

5. 设置开机自动挂载交换分区

将交换分区添加到/etc/fstab文件中,实现开机自动挂载:

# 查看交换分区的UUID(推荐使用UUID,避免分区路径变化导致挂载失败)
sudo blkid /dev/sda5
# 输出示例:/dev/sda5: UUID="yyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy" TYPE="swap"# 将交换分区信息添加到/etc/fstab
sudo echo "UUID=yyyyyyy-yyyy-yyyy-yyyy-yyyyyyyyyyyy swap swap defaults 0 0" >> /etc/fstab

重启系统后,通过swapon --show验证是否自动挂载成功。


文章转载自:

http://SJY86rzW.qnksk.cn
http://PlaYC2Ju.qnksk.cn
http://shrCoelc.qnksk.cn
http://yOimhVlZ.qnksk.cn
http://QqwPyP2u.qnksk.cn
http://kfMpuYSX.qnksk.cn
http://IzbNXeHj.qnksk.cn
http://wYBulx82.qnksk.cn
http://u2Te8mTG.qnksk.cn
http://LcOA7buV.qnksk.cn
http://al0N0mlJ.qnksk.cn
http://IfVtmVES.qnksk.cn
http://QzgK1C6j.qnksk.cn
http://cJzpQm1F.qnksk.cn
http://9mroe5yF.qnksk.cn
http://Hy6mfPfn.qnksk.cn
http://rNCcFMUh.qnksk.cn
http://TtuJQuMu.qnksk.cn
http://LM1MAwQ4.qnksk.cn
http://wIANVbZ6.qnksk.cn
http://lnShbceh.qnksk.cn
http://KBQJd4Iu.qnksk.cn
http://JZLfsVNT.qnksk.cn
http://pQ0eBGXq.qnksk.cn
http://bdrDPHWy.qnksk.cn
http://bmDKY4KD.qnksk.cn
http://XgER0ZUi.qnksk.cn
http://jdFos5zg.qnksk.cn
http://3mloirZB.qnksk.cn
http://7HlIjZJc.qnksk.cn
http://www.dtcms.com/a/366040.html

相关文章:

  • 【音视频】视频秒播优化实践
  • 无穿戴动捕如何深度结合AI数据分析,实现精准动作评估?
  • 代码随想录刷题Day48
  • Linux 字符设备驱动框架学习记录(三)
  • 数学建模-非线性规划(NLP)
  • STM32HAL 快速入门(十七):UART 硬件结构 —— 从寄存器到数据收发流程
  • DOM常见的操作有哪些?
  • Day34 UDP套接字编程 可靠文件传输与实时双向聊天系统
  • 信号调制与解调 matlab仿真
  • 异常处理机制与debug
  • 复写零(双指针)
  • 单片机day2
  • 配置时钟分频与倍频
  • 解构复杂财务逆向业务:如何优雅地生成与管理负数单?
  • Python基础(⑥属性装饰器)
  • 你只需输入一句话,MoneyPrinterTurbo直接给你输出一个视频
  • 普通人如何用 AI 提效?5 个低门槛工具 + 3 类场景案例,让 AI 成为日常助手
  • phpstorm 操作git 另外的操作在 我的收藏
  • c#编写的应用程序调用不在同一文件夹下的DLL
  • Java继承
  • c++ zint二维码、条形码开发库
  • c++多线程(1)------创建和管理线程td::thread
  • Python数据分析与处理(二):将数据写回.mat文件的不同方法【超详细】
  • AI+法律:用ERNIE-Bot解析合同条款,识别风险点
  • 进程管理和IPC
  • 常用假设检验方法及 Python 实现
  • 多层环境室内定位系统综述总结
  • 【JavaEE】(22) Spring 事务
  • 苏哒智能会议一体机:让会议管理进入智能时代
  • Java与Vue构建的企业设备资产管理系统,集成后台管理与移动端操作,覆盖设备全生命周期,支持采购、维护、报废等流程,提供完整源码,助力企业高效管控资产