导读 | 用户可以在任何 Linux 操作系统的安装过程中或者是其它必要的时候创建交换空间。如果你在安装 Linux 的时候忘记了创建或是你想要再增加交换分区的空间,你随时都可以再创建或增加。 |
有时候在你安装后摇升级 RAM 的时候需要增加一点交换分区的空间,比如你要将你的系统的 RAM 从 1GB 升级到 2GB 你,那么你就不得不将你的交换分区空间也升级一下(从 2GB 到 4GB),这是因为它使用的容量是物理 RAM 的双倍容量。(LCTT 译注:其实这里是个误区,交换分区不一定非得是双倍的物理内存容量,只是惯例如此。事实上,如果你的物理内存足够的话,你完全可以不用交换分区——在这里的情形下,或许你增加了物理内存,就没必要增加交换分区大小了。)
交换空间是当物理内存(RAM 随机存取存储器)的用量已满时,被保留用作虚拟内存的磁盘上的空间。 如果系统在 RAM 满载时需要更多的内存资源,内存中的非活动页面将被移动到交换空间,这样可以帮助系统运行应用程序更多的时间,但不应该把它当做 RAM 的扩展。
建议你创建一个专用的交换分区,但是如果你没有可用的分区,那么可以使用交换文件,或交换分区和交换文件的组合。 交换空间通常建议用户至少 4 GB,用户也可以根据自己的要求和环境创建交换空间。
我发现大部分 VM 和 云服务器都没有交换分区,所以在这种情况下,我们可以使用以下三种方法创建,扩展或增加交换空间。
如何检测当前交换分区大小通过 free & swapon 命令来检测当前的交换分区空间的大小。
$ free -h total used free shared buff/cache available Mem: 2.0G 1.3G 139M 45M 483M 426M Swap: 2.0G 655M 1.4G $ swapon --show NAME TYPE SIZE USED PRIO /dev/sda5 partition 2G 655.2M -1
上面的输出显示了当前的交换分区空间是 2GB 。
方法 1 : 通过 fallocate 命令创建交换文件fallocate 程序是立即创建预分配大小的文件的最佳方法。
下面这个命令会创建一个 1GB 大小 的 /swapfile。
$ sudo fallocate -l 1G /swapfile
检查一下创建的文件的大小是否正确。
$ ls -lh /swapfile -rw-r--r-- 1 root root 1.0G Jun 7 09:49 /swapfile
将该文件的权限设置为 600 这样只有 root 用户可以访问这个文件。
$ sudo chmod 600 /swapfile
通过运行以下的命令来将此文件转换为交换文件。
$ sudo mkswap /swapfile Setting up swapspace version 1, size = 1024 MiB (1073737728 bytes) no label, UUID=cda50e0e-41f3-49c7-af61-b8cb4a33a464
通过运行以下的命令来使交换文件生效。
$ sudo swapon /swapfile
将新创建的交换文件添加到 fstab 文件中,这样交换分区空间的修改即使在重启后也可以生效。
$ vi /etc/fstab /swapfile swap swap defaults 0 0
检查一下新创建的交换文件。
$ swapon --show NAME TYPE SIZE USED PRIO /dev/sda5 partition 2G 657.8M -1 /swapfile file 1024M 0B -2
现在我可以看到一个新的 1GB 的 /swapfile1 文件了。重启系统以使新的交换文件生效。
方法 2 : 通过 dd 命令来创建交换文件dd 命令是另一个实用程序,可以帮助我们立即创建预分配大小的文件。
以下 dd 命令将创建 1GB 的 /swapfile1。
$ sudo dd if=/dev/zero of=/swapfile1 bs=1G count=1 1+0 records in 1+0 records out 1073741824 bytes (1.1 GB, 1.0 GiB) copied, 16.6154 s, 64.6 MB/s
详解: if=/dev/zero 是输入文件,/dev/zero 是类 Unix 操作系统中的一个特殊文件,它提供从它读取的尽可能多的空字符(ASCII NUL,0x00)。
of=/swapfile1 设置输出文件。
bs=1G 一次性读写的大小为 1GB
count=1 仅复制一个输入块
检查一下创建的文件的大小是否正确。
$ ls -lh /swapfile1 -rw-r--r-- 1 root root 1.0G Jun 7 09:58 /swapfile1
将该文件的权限设置为 600 这样只有 root 用户可以访问这个文件。
$ sudo chmod 600 /swapfile1
通过运行以下的命令来将此文件转换为交换文件。
$ sudo mkswap /swapfile1 Setting up swapspace version 1, size = 1024 MiB (1073737728 bytes) no label, UUID=96def6d7-b2da-4954-aa72-aa32316ec993
通过运行以下的命令来使交换文件生效。
$ sudo swapon /swapfile1
将新创建的交换文件添加到 fstab 文件中,这样交换分区空间的修改即使在重启后也可以生效。
$ vi /etc/fstab /swapfile1 swap swap defaults 0 0
检查新创建的交换文件。
$ swapon --show NAME TYPE SIZE USED PRIO /dev/sda5 partition 2G 1.3G -1 /swapfile file 1024M 0B -2 /swapfile1 file 1024M 0B -3
现在我可以看到一个新的 1GB 的 /swapfile1 了。重启系统以使新的交换文件生效。
方法 3 : 通过硬盘分区来创建交换文件我们也推荐使用通过硬盘分区的方式来创建交换分区。
如果你已经在你的另一个硬盘上通过 fdisk 命令创建了一个新的分区,假设我们已经创建了一个叫做 /dev/sda4 的分区。
使用 mkswap 命令来将这个分区转换成交换分区。
$ sudo mkswap /dev/sda4
通过运行以下命令来使交换文件生效。
$ sudo swapon /dev/sda4
把新增的交换文件添加到 fstab 文件中,这样即使是重启了系统交换分区的修改也能生效。
$ vi /etc/fstab /dev/sda4 swap swap defaults 0 0
检查新创建的交换文件。
$ swapon --show NAME TYPE SIZE USED PRIO /dev/sda5 partition 2G 1.3G -1 /swapfile file 1024M 0B -2 /swapfile1 file 1024M 0B -3 /dev/sda4 partition 1G 0B -4
我可以看到新的交换分区 1GB 的 /dev/sda4。重启系统就可以使用新的交换分区了。
以上是简单操作:在Linux中使用交换分区的详细内容。更多信息请关注PHP中文网其他相关文章!

Linux适用于服务器、开发环境和嵌入式系统。1.作为服务器操作系统,Linux稳定高效,常用于部署高并发应用。2.作为开发环境,Linux提供高效的命令行工具和包管理系统,提升开发效率。3.在嵌入式系统中,Linux轻量且可定制,适合资源有限的环境。

简介:通过基于Linux的道德黑客攻击数字边界 在我们越来越相互联系的世界中,网络安全至关重要。 道德黑客入侵和渗透测试对于主动识别和减轻脆弱性至关重要

Linux基础学习从零开始的方法包括:1.了解文件系统和命令行界面,2.掌握基本命令如ls、cd、mkdir,3.学习文件操作,如创建和编辑文件,4.探索高级用法如管道和grep命令,5.掌握调试技巧和性能优化,6.通过实践和探索不断提升技能。

Linux在服务器、嵌入式系统和桌面环境中的应用广泛。1)在服务器领域,Linux因其稳定性和安全性成为托管网站、数据库和应用的理想选择。2)在嵌入式系统中,Linux因其高度定制性和高效性而受欢迎。3)在桌面环境中,Linux提供了多种桌面环境,满足不同用户需求。

Linux的缺点包括用户体验、软件兼容性、硬件支持和学习曲线。1.用户体验不如Windows或macOS友好,依赖命令行界面。2.软件兼容性不如其他系统,缺乏许多商业软件的原生版本。3.硬件支持不如Windows全面,可能需要手动编译驱动程序。4.学习曲线较陡峭,掌握命令行操作需要时间和耐心。

Linuxisnothardtolearn,butthedifficultydependsonyourbackgroundandgoals.ForthosewithOSexperience,especiallycommand-linefamiliarity,Linuxisaneasytransition.Beginnersmayfaceasteeperlearningcurvebutcanmanagewithproperresources.Linux'sopen-sourcenature,bas

Linux的五个基本组件是:1.内核,管理硬件资源;2.系统库,提供函数和服务;3.Shell,用户与系统交互的接口;4.文件系统,存储和组织数据;5.应用程序,利用系统资源实现功能。

开启智能家居新篇章:基于Ubuntu的开源家庭自动化系统 智能家居技术彻底改变了我们与生活空间的互动方式,为日常生活带来了便利、安全和能源效率。从远程控制灯光和电器,到监控安全摄像头和自动化气候控制,智能家居技术变得越来越普及。 然而,许多商业智能家居系统存在局限性:高昂的成本、隐私问题以及有限的兼容性。幸运的是,开源软件解决方案结合Ubuntu的强大功能,提供了一种替代方案——允许用户创建可定制、经济高效且安全的智能家居生态系统。 本指南将探讨如何使用Ubuntu和开源工具设置家庭自动化系统。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

螳螂BT
Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

Dreamweaver Mac版
视觉化网页开发工具

ZendStudio 13.5.1 Mac
功能强大的PHP集成开发环境

MinGW - 适用于 Windows 的极简 GNU
这个项目正在迁移到osdn.net/projects/mingw的过程中,你可以继续在那里关注我们。MinGW:GNU编译器集合(GCC)的本地Windows移植版本,可自由分发的导入库和用于构建本地Windows应用程序的头文件;包括对MSVC运行时的扩展,以支持C99功能。MinGW的所有软件都可以在64位Windows平台上运行。

SublimeText3汉化版
中文版,非常好用