购买的 1GB 内存的 Linux 小机器,在编译安装 PHP 的时候内存捉急,只好开启 swap 交换分区来增大内存。

[root@VM_139_38_centos php-7.2.12]# cat /proc/swaps
Filename Type Size Used Priority
[root@VM_139_38_centos php-7.2.12]# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/vda1 51474024 5077996 44089952 11% /
devtmpfs 498688 0 498688 0% /dev
tmpfs 508188 24 508164 1% /dev/shm
tmpfs 508188 428 507760 1% /run
tmpfs 508188 0 508188 0% /sys/fs/cgroup
tmpfs 101640 0 101640 0% /run/user/0
[root@VM_139_38_centos php-7.2.12]# dd if=/dev/vda1 of=/root/swapfile bs=1M count=1024
1024+0 records in
1024+0 records out
1073741824 bytes (1.1 GB) copied, 20.5062 s, 52.4 MB/s
[root@VM_139_38_centos php-7.2.12]# mkswap /root/swapfile
mkswap: /root/swapfile: warning: wiping old ext3 signature.
Setting up swapspace version 1, size = 1048572 KiB
no label, UUID=30d4dfc3-5511-438a-a314-15ba10930800
[root@VM_139_38_centos php-7.2.12]# swapon /root/swapfile
swapon: /root/swapfile: insecure permissions 0644, 0600 suggested.
[root@VM_139_38_centos php-7.2.12]# chmod 0600 /root/swapfile
[root@VM_139_38_centos php-7.2.12]# swapon /root/swapfile
swapon: /root/swapfile: swapon failed: Device or resource busy
[root@VM_139_38_centos php-7.2.12]# swapon -s
Filename Type Size Used Priority
/root/swapfile file 1048572 0 -1
[root@VM_139_38_centos shell]# swapon -s
Filename Type Size Used Priority
/root/swapfile file 1048572 515912 -1

有两种方式创建 swap 分区:

  • 用磁盘分区,需要先通过 fdisk 命令创建分区
  • 用文件系统,通过 dd 命令创建文件

用磁盘分区做 swap 分区

注意:重新分区会导致数据丢失。

  1. 重新分区前,需要停止所有的 swap 分区:
# swapoff -a
  1. 对磁盘进行分区,在 fdisk 中用 t 命令将新添的分区设置为 swap 分区()Linux 中 swap 类型对应的分区 id 为 82),最后用 w 命令将操作写入硬盘:
# fdisk /dev/sdb
  1. 格式化 swap 分区(swap 分区名称要看你自己的机器):
# mkswap /dev/sdb2
  1. 启动 swap 分区
# swapon /dev/sdb2
  1. 设置系统启动时自动启用这个交换分区,编辑 /etc/fstab,加入下面一行
/dev/sdb2 swap swap defaults 0 0

用文件做 swap 分区

  1. 用 dd 命令创建要作为 swap 分区的文件。count 表示块的数量,1024 块表示总共 1GB(bs*count):
# dd if=/dev/zero of=/root/swapfile bs=1M count=1024
  1. 用 mkswap 命令格式化 swap 分区文件:
# mkswap /root/swapfile
  1. 启用 swap 分区文件:
# swapon /root/swapfile
  1. 系统开机时自启用,在文件 /etc/fstab 中添加一行:
/root/swapfile swap swap defaults 0 0

Linux - 创建交换分区 swap的更多相关文章

  1. linux创建交换分区

    一.SWAP 概述 当系统的物理内存不够用的时候,就需要将物理内存中的一部分空间释放出来,以供当前运行的程序使用.那些被释放的空间可能来自一些很长时间没有什么操作的程序,这些被释放的空间被临时保存到S ...

  2. Linux 创建交换分区扩展虚拟内存

    当计算机的物理内存不足时,可以利用磁盘空间扩张为物理内存,实现的方式则是创建交换分区. 命令:mkswap + 分区设备 (格式化交换分区)     mkswapon +分区设备 (启用交换分区)   ...

  3. Linux设置交换分区swap

    参考: http://www.vpser.net/opt/vps-add-swap.html https://www.zntec.cn/archives/vps-swap.html http://yz ...

  4. Linux 交换分区swap

    Linux 交换分区swap 一.创建和启用swap交换区 如果你的服务器的总是报告内存不足,并且时常因为内存不足而引发服务被强制kill的话,在不增加物理内存的情况下,启用swap交换区作为虚拟内存 ...

  5. 【Linux命令】磁盘分区,格式化,挂载命令,创建交换分区(fdisk,mkfs,mount,umount)

    友情链接 磁盘分区,格式化,挂载,创建交换分区:https://www.cnblogs.com/HeiDi-BoKe/p/11936998.html RAID工作级别:https://www.cnbl ...

  6. Linux环境创建交换分区

    最近在准备在移动端跑一下深度学习训练好的模型,在RK3399的板子上安装scipy时报错.网上查了一下,由于内存不足导致,做个交换分区就搞定了.那么如何做交换分区呢.话不多说,直接开撸. ------ ...

  7. Linux_交换分区SWAP

    一.交换分区SWAP 1️⃣:交换分区SWAP就是LINUX下的虚拟内存分区,它的作用是在物理内存使用完之后,将磁盘空间(也就是SWAP分区)虚拟成内存来使用. 2️⃣:交换分区一般指定虚拟内存的大小 ...

  8. LINUX 设置交换分区的大小

    创建交换分区目录 mkdir /data1/mnt/ 卸载当前交换分区 swapoff /data1/mnt/10GB.swap 设置交换分区为 5Gdd if=/dev/zero of=/data1 ...

  9. CentOS设置交换分区swap

    环境查看 查看未设置交换分区之前 free -h 新加一块磁盘用于交换分区/dev/sdc 格式化 mkswap /dev/sdc 设置为交换分区 swapon /dev/sdc 再次查看 设置为重启 ...

随机推荐

  1. css厂商前缀

    在vue中写css,不要加厂商前缀,vue-cli会在打包时自动生成

  2. 机器学习-KNN算法详解与实战

    最邻近规则分类(K-Nearest Neighbor)KNN算法 1.综述 1.1 Cover和Hart在1968年提出了最初的邻近算法 1.2 分类(classification)算法 1.3 输入 ...

  3. Ubuntu 增加新用户并赋予root权限及免密的方法

    添加用户 添加一个名为hylink的用户 adduser hylink 修改密码 passwd hylink Changing password for user hylink. New UNIX p ...

  4. Centos6.6安装apache2.4

    安装apr请参考:   http://www.cnblogs.com/yuzhaokai0523/p/4382974.html 1安装httpd-2.4.10.tar.gz wget http://w ...

  5. Educational Codeforces Round 32 Almost Identity Permutations CodeForces - 888D (组合数学)

    A permutation p of size n is an array such that every integer from 1 to n occurs exactly once in thi ...

  6. POJ-1459-Pwoer Network(最大流Dinic, 神仙输入)

    链接: https://vjudge.net/problem/POJ-1459 题意: A power network consists of nodes (power stations, consu ...

  7. MAN RPM

    RPM(8)   Red Hat Linux   RPM(8) NAME/名称       rpm - RPM Package Manager/RPM-RPM包管理器SYNOPSIS/简介  QUER ...

  8. 在 Postman 中报错:Self-signed SSL certificates are being blocked 的分析与解决

    http://www.shuijingwanwq.com/2019/02/18/3171/

  9. Navicat 出现的[Err] 1146 - Table 'performance_schema.session_status' doesn't exist已解决

    [Err] 1146 - Table 'performance_schema.session_status' doesn't exist已解决   刚刚接触MySQL,就往数据库添加数据,就遇到这个问 ...

  10. Jupyter配置Spark开发环境

    兄弟连大数据培训和大家一起探究Jupyter配置 Spark 开发环境 简介 为Jupyter配置Spark开发环境,可以安装全家桶–Spark Kernel或Toree,也可按需安装相关组件. 考虑 ...