精华内容
下载资源
问答
  • Linux交换分区 swap分区

    千次阅读 2019-07-15 15:53:50
    SWAP就是LINUX下的虚拟内存分区,它的作用是在物理内存使用完之后,将磁盘空间(也就是SWAP分区)虚拟成内存来使用.它和Windows系统的交换文件作用类似,但是它是一段连续的磁盘空间,并且对用户不可见。 需要注意的...

    一、基础知识

          SWAP就是LINUX下的虚拟内存分区,它的作用是在物理内存使用完之后,将磁盘空间(也就是SWAP分区)虚拟成内存来使用.它和Windows系统的交换文件作用类似,但是它是一段连续的磁盘空间,并且对用户不可见。

         需要注意的是,虽然这个SWAP分区能够作为"虚拟"的内存,但它的速度比物理内存可是慢多了,因此如果需要更快的速度的话,并不能寄厚望于SWAP,最好的办法仍然是加大物理内存.SWAP分区只是临时的解决办法.

    linux下得分区推荐一个交换分区,一个根分区,其中交换分区如上所说作为redhat或者其它虚机所划分的内存不够时候来使用!

         交换分区(swap)的合理值一般在内存的2 倍左右,可以适当加大。实际上具体还是以实际应用为准,swap为内存的2倍也不过是一种以讹传讹的说法。如果交换分区的使用都超过4GB以上了,可想而知服务器的性能应该差很多了。

         Linux下可以创建两种类型的交换空间,一种是swap分区,一种是swap文件。前者适合有空闲的分区可以使用,后者适合于没有空的硬盘分区,硬盘的空间都已经分配完毕。

    二、创建交换分区

       1.环境准备

        准备一台虚拟机,并添加一块虚拟磁盘.vdb是我添加的虚拟磁盘

    [root@server0 ~]# lsblk
    NAME   MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
    vda    253:0    0  10G  0 disk 
    └─vda1 253:1    0  10G  0 part /
    vdb    253:16   0  10G  0 disk 
     

      2.划分分区

        在vdb下划分一块分区,大小位512M,作为交换分区

    [root@server0 ~]# fdisk /dev/vdb

    [root@server0 ~]# lsblk
    NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
    vda    253:0    0   10G  0 disk 
    └─vda1 253:1    0   10G  0 part /
    vdb    253:16   0   10G  0 disk 
    └─vdb1 253:17   0  512M  0 part 
     

       3.格式化交换分区

      [root@server0 ~]# mkswap /dev/vdb1   #格式化交换分区

      [root@server0 ~]# blkid /dev/vdb1
    /dev/vdb1: UUID="8ba9c6d1-afe1-47a7-bcca-557087c0c881" TYPE="swap"     #确认格式化结果

     

    4.配置交换分区的开机启用

     [root@server0 ~]# vim /etc/fstab 

     /dev/vdb1 swap swap defautls 0 0   #在/etc/fstab 配置挂载信息 挂载点比较特殊 为swap

     5.确认挂载配置可用

      [root@server0 ~]# swapon -a    #启用新交换分区

      [root@server0 ~]# swapon -s    #查看挂载信息

      文件名                类型        大小    已用    权限
    /dev/vdb1           partition    524284    0    -1

     [root@server0 ~]# free                     #查看内存信息
                 total       used       free     shared    buffers     cached
    Mem:        836720     746600      90120      17108        356     255424
    -/+ buffers/cache:     490820     345900
    Swap:       524284          0     524284

      6.基本命令

    swapon [分区名或文件名]    #将指定分区或文件作为swap使用,也可以-a开启全部swap

    swapoff [分区名或文件名]    #同上,有开就有关。

    swapon -s     #查看目前使用的swap

     7.根据实际内存调整分区大小

    4G以内的物理内存,SWAP 设置为内存的2倍。
    4-8G的物理内存,SWAP 等于内存大小。
    8-64G 的物理内存,SWAP 设置为8G。

    64-256G物理内存,SWAP 设置为16G。

     8.修改交换分区的方法

      思路:将之前的交换分区关闭,重新调整分区大小,或者新建一个主分区作为交换分区

      [root@server0 ~]# fdisk /dev/vdb

      [root@server0 ~]# lsblk
    NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
    vda    253:0    0   10G  0 disk 
    └─vda1 253:1    0   10G  0 part /
    vdb    253:16   0   10G  0 disk 
    ├─vdb1 253:17   0  512M  0 part 
    └─vdb2 253:18   0    1G  0 part  

     [root@server0 ~]# vim /etc/fstab 

     /dev/vdb2 swap swap defautls 0 0    #开机自启

    [root@server0 ~]# mkswap /dev/vdb2   #格式化

    [root@server0 ~]#swapon -a   #开启所有

    [root@server0 ~]# swapon /dev/vdb2
    [root@server0 ~]# swapon -s
    文件名                类型        大小    已用    权限
    /dev/vdb2       partition    1048572    0    -

     

     

    How to add Swap File

    Follow these steps to add 1GB of swap to your server. If you want to add 2GB instead of 1 GB, replace 1G with 2G.

    1. 创建交换分区,存放到根下,使用的是挂载根的那部分磁盘

      sudo fallocate -l 1G /swapfile

      如果以上命令执行失败,使用下面这一条,dd命令可以指明使用哪块磁盘分区来做交换分区,bs=1024代表1024个块,count=1048576bytes=1m,也就是1024m=1G,如果要分大点做乘数即可

    2. sudo dd if=/dev/zero of=/swapfile bs=1024 count=1048576
    3. 仅允许root用户做写操作

      sudo chmod 600 /swapfile
    4. 使用mkswap命令声明swapfile为一个swap文件

      sudo mkswap /swapfile
    5. 允许使用该交换分区

      sudo swapon /swapfile

      可以设置开机自动挂载:

      /etc/fstab

      /swapfile swap swap defaults 0 0
      Copy
    6. To verify that the swap is active, use either the swapon or the free command as shown below:

      sudo swapon --show
      NAME      TYPE  SIZE   USED PRIO
      /swapfile file 1024M 507.4M   -1
      sudo free -h
                    total        used        free      shared  buff/cache   available
      Mem:           488M        158M         83M        2.3M        246M        217M
      Swap:          1.0G        506M        517M

    How to adjust the swappiness value

    Swappiness is a Linux kernel property that defines how often the system will use the swap space. Swappiness can have a value between 0 and 100. A low value will make the kernel to try to avoid swapping whenever possible, while a higher value will make the kernel to use the swap space more aggressively.

    The default swappiness value is 60. You can check the current swappiness value by typing the following command:

     

    cat /proc/sys/vm/swappiness
    60
    

    While the swappiness value of 60 is OK for most Linux systems, for production servers, you may need to set a lower value.

    For example, to set the swappiness value to 10, you would run:

    sudo sysctl vm.swappiness=10

    To make this parameter persistent across reboots append the following line to the /etc/sysctl.conf file:

    /etc/sysctl.conf

    vm.swappiness=10
    

    The optimal swappiness value depends on your system workload and how the memory is being used. You should adjust this parameter in small increments to find an optimal value.

    如何删除交换分区

    If for any reason you want to deactivate and remove the swap file, follow these steps:

    1. 首先停止交换分区

      sudo swapoff -v /swapfile
    2. 删除/etc/fstab里的开机自启项

    3. 最后使用rm删除文件

      sudo rm /swapfile

    Conclusion

    You have learned how to create a swap file and activate and configure swap space on your Linux system.

    展开全文
  • 主要介绍了Linux7.7设置交换分区SWAP的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
  • 交换分区swap

    2014-12-04 21:32:17
    交换分区swap
  • 交换分区swap

    2018-12-07 20:25:28
    本文引自https://www.cnblogs.com/tommyli/p/3745173.html、https://baike.baidu.com/item/交换分区/5188359?...SWAP就是LINUX下的虚拟内存分区,它的作用是在物理内存使用完之后,将磁盘空间(也就是SWAP分...

    本文引自https://www.cnblogs.com/tommyli/p/3745173.html、https://baike.baidu.com/item/交换分区/5188359?fr=aladdin、https://www.cnblogs.com/igym/p/7744429.html

    SWAP就是LINUX下的虚拟内存分区,它的作用是在物理内存使用完之后,将磁盘空间(也就是SWAP分区)虚拟成内存来使用.它和Windows系统的交换文件作用类似,但是它是一段连续的磁盘空间,并且对用户不可见。
    交换分区(swap space)是一定磁盘空间(分区或文件),用于将部分内存中的数据换下来,以腾出内存空间用于其他需求。在一个系统中,物理内存的容量是有限的,当物理内存快使用完时,操作系统会使用交换分区(如果有的话)。当系统内存使用紧张时,操作系统根据一定的算法规则,将一部分最近没使用的内存页面保存到交换分区,从而为需要内存的程序留出足够的内存空间;在SWAP中的内存页面被访问到时,系统会将其重新载入到物理内存中去运行。
    swap in (换入):是指页面从交换分区转移到内存之中;
    swap out (换出):是指页面从从内存转移到交换分区中。
    (这里的in/out是站在内存的角度来说的,就好理解了。)
    在Windows、Unix、Linux系统中都有交换分区的概念。
    需要注意的是,虽然这个SWAP分区能够作为"虚拟"的内存,但它的速度比物理内存可是慢多了,因此如果需要更快的速度的话,并不能寄厚望于SWAP,最好的办法仍然是加大物理内存.SWAP分区只是临时的解决办法.
    linux下的分区推荐一个交换分区,一个根分区,其中交换分区如上所说作为redhat或者其它虚机所划分的内存不够时候来使用!
    交换分区(swap)的合理值一般在内存的2 倍左右,可以适当加大。实际上具体还是以实际应用为准,swap为内存的2倍也不过是一种以讹传讹的说法。如果交换分区的使用都超过4GB以上了,可想而知服务器的性能应该差很多了。
    Linux中的交换分区的大小分配推荐法则
    曾经,有人推荐使用物理内存1/2、1倍、2倍的容量作为SWAP分区的大小。随着计算机内容容量的增大,如果有16G内存的机器,分个16G的Swap空间,似乎感觉有点浪费磁盘空间,而且多数情况下用处也并不大。在Linux系统,我们可以参照Redhat公司为RHEL5、RHEL6推荐的SWAP空间的大小划分原则,在你没有其他特别需求时,可以作为很好的参考依据。

    内存小于4GB时,推荐不少于2GB的swap空间;

    内存4GB~16GB,推荐不少于4GB的swap空间;

    内存16GB~64GB,推荐不少于8GB的swap空间;

    内存64GB~256GB,推荐不少于16GB的swap空间。

    4GB of RAM requires a minimum of 2GB of swap space
    4GB to 16GB RAM requires a minimum of 4GB of swap space
    16GB to 64GB of RAM requires a minimum of 8GB of swap space
    64GB to 256GB of RAM requires a minimum of 16GB of swap space
    Linux中查看swap的命令
    可以用“cat /proc/swaps”、“swapon -s”、“free”等命令查看Swap分区的情况。
    Linux下可以创建两种类型的交换空间,一种是swap分区,一种是swap文件。前者适合有空闲的分区可以使用,后者适合于没有空的硬盘分区,硬盘的空间都已经分配完毕。

    例如:安装redhat的时候,你可以默认划分硬盘空间,交换区的大小事系统默认配置,当你安装完系统后需要安装一个oracle数据库,突然发出警告,交换空间不够。此刻该怎么办?
    1、查看交换分区的方式
    可以通过命令top,free命令查看当前的交换分区。也可以使用cat /proc/swaps查看交换分区
    2、如何通过swap文件扩充交换空间的大小
    例如:增加1G的交换空间
    2.1、dd if=/dev/zone of=/myswap bs=2k count=524288 //划分空间
    2.2、mkswap /myswap //格式成交换分区的格式
    2.3、swapon /myswap //使格式的swap生效
    设置后,可以通过上面的命令查看时否生效。当启动系统后需要自动加载交互分区,可以在/etc/fstab文件中增加:/myswap swap swap default 0 0
    3、如何通过swap分区的方式增加交换空间
    3.1、如果希望添加一个交换分区(这里假设希望把/dev/hdb5添加为交换分区),这个硬盘不能被正在使用(也就是分区不能被加载,交换空间没有被激活)。分区表在使用时不能被修改,因为内核可能无法正确识别分区表的变化。这样数据可能会写入到错误的分区,而导致数据被覆盖而丢失,因为内核维护的分区表跟硬盘上的分区表不一致造成的。
    解决这个问题最简单的办法是将系统引导进入急救(rescue)模式下进行操作。当提示扫描并加载文件系统时,选择跳过。如果硬盘上没有任何分区被使用,这样就可以卸载分区,使用swapoff命令来关闭该硬盘上所有的交换分区。
    3.2、使用parted创建交换分区
    以root身份运行: parted /dev/hdb
    在parted命令的提示符,输入print查看当前分区表,以及空闲空间。开始和结束值的单位是MB,然后计算有多少空闲空间,以及你希望划分多少空间给交换分区。
    在parted提示符后,输入mkpartfs part-tyep linux-swap start end,这里part-type是primary、extend或logical。start是分区开始点,end是分区结束点。
    输入exit退出parted
    3.3、现在已经创建了交换分区,使用mkswap命令设置交换分区:
    mkswap /dev/hdb2
    3.4、为了立刻激活swap分区,输入以下命令:
    swapon /dev/hdb2
    3.5、为了在启动时激活它,在/etc/fstab中添加如下内容:
    /dev/hdb2 swap swap defaults 0 0
    下次启动时,系统会自动激活该交换分区。
    3.6、添加了新分区,并激活它以后,可以通过cat /proc/swaps或者free来查看该交换分区是否已经工作。

    展开全文
  • ubuntu修改交换分区swap方法

    千次阅读 2019-12-11 15:27:35
    1. 切换为root用户 su ... 2. 查看当前swap分区信息 free -h root@cwm-OptiPlex-7060:/home/cwm/work/project/gm/tool/cp_envtools/pkg# free -h 总计 已用 空闲 共享 缓冲/缓存 可用 内存: ...

    1. 切换为root用户
    su
    输入密码

    2. 查看当前swap分区信息  
    free -h
    root@cwm-OptiPlex-7060:/home/cwm/work/project/gm/tool/cp_envtools/pkg# free -h
                  总计         已用        空闲      共享    缓冲/缓存    可用
    内存:         15G        4.3G        9.4G        937M        1.8G        9.9G
    交换:        2.0G        1.8G        231M

    获取swap对应的绝对路径
    swapon
    root@cwm-OptiPlex-7060:~$ swapon
    NAME      TYPE SIZE USED PRIO
    /swapfile file  2.0G 1.8G   -2

    3. 暂时关闭swap分区
    swapoff /swapfile

    4.  查看当前swap分区信息
    free -h
    root@cwm-OptiPlex-7060:/home/cwm/work/project/gm/tool/cp_envtools/pkg# free -h
                  总计         已用        空闲      共享    缓冲/缓存    可用
    内存:         15G        5.4G        7.6G        1.6G        2.5G        8.1G
    交换:          0B          0B          0B

    5.  设置交换分区大小为20GB
    dd if=/dev/zero of=/swapfile bs=1G count=20

    6.  格式化文件为交换分区
    mkswap -f /swapfile

    7.  查看分区大小
    ls -lh /swapfile

    8.  打开swap分区
    swapon /swapfile

    9.  查看当前swap分区信息
    free -h
    root@cwm-OptiPlex-7060:/home/cwm/work/project/gm/tool/cp_envtools/pkg# free -h
                  总计         已用        空闲      共享    缓冲/缓存    可用
    内存:         15G        5.4G        1.2G        1.6G        8.8G        8.1G
    交换:         19G          0B         19G

     

    展开全文
  • swap 分区通常被称为交换分区,这是一块特殊的硬盘空间,即当实际内存不够用的时候,操作系统会从内存中取出一部分暂时不用的数据,放在交换分区中,从而为当前运行的程序腾出足够的内存空间 使用 swap 交换分区,...

    我们在安装系统的时候已经建立了 swap 分区。swap 分区通常被称为交换分区,这是一块特殊的硬盘空间,即当实际内存不够用的时候,操作系统会从内存中取出一部分暂时不用的数据,放在交换分区中,从而为当前运行的程序腾出足够的内存空间

    使用 swap 交换分区,显著的优点是,通过操作系统的调度,应用程序实际可以使用的内存空间将远远超过系统的物理内存。由于硬盘空间的价格远比 RAM 要低,因此这种方式无疑是经济实惠的。当然,频繁地读写硬盘,会显著降低操作系统的运行速率,这也是使用 swap 交换分区最大的限制
    在这里插入图片描述
    使用free -m来用M字节显示的当前内存的使用
    在这里插入图片描述
    第一种方法是用硬盘某一分区扩充swap

    所以我们首先要有一个硬盘和一个分区。这里有一个虚拟硬盘 /dev/sdc,使用fdisk /dev/sdc
    在这里插入图片描述
    键入n,键入p,键入1,大小为全部,键入w,步骤和上一节一样的

    展开全文
  • 安装系统时,我们往往会在磁盘分区时,为交换分区单独分出一块儿位置,但当系统安装完成后,我们通过固定的文件位置在配置交换分区。 在配置交换分区前,请确定你放置交换分区的磁盘有足够的空间。 本篇文章将...
  • linux下swap分区作用

    万次阅读 2016-10-28 12:38:50
    嵌入式Linux中文站消息,Linux系统的Swap分区,即交换区,Swap空间的作用可简单描述为:当系统的物理内存不够用的时候,就需要将物理内存中的一部分空间释放出来,以供当前运行的程序使用。那些被释放的空间可能来自...
  • 交换分区(SWAP)的大小分配

    千次阅读 2019-10-02 12:01:37
    交换分区(swap space)是一定磁盘空间(分区或文件),用于将部分内存中的数据换下来,以腾出内存空间用于其他需求。在一个系统中,物理内存的容量是有限的,当物理内存快使用完时,操作系统会使用交换分区(如果有的...
  • linux系统配置交换分区swap

    千次阅读 2019-07-24 20:38:07
    交换机分区介绍: ...但由于交换分区毕竟是通过硬盘设备读写数据的,速度肯定要比物理内存慢,所以只有当真实的物理内存耗尽后才会调用交换分区的资源。 交换分区的划分建议: 在生产环境中,交换分区的大...
  • Linux--逻辑卷LVM 交换分区swap

    千次阅读 2020-03-03 12:26:37
    交换分区管理 Swap 简介 作用: ‘提升’ 内存的容量,防止OOM(Out Of Memory) swap大小 推荐 设置交换分区大小为内存的2倍 生产 大于 4GB 而小于 16GB 内存的系统,最小需要 4GB 交换空间; 大于 16GB ...
  • Linux 系统中的 Swap 分区,即交换分区,类似于 Windows 的虚拟内存,其作用可简单的描述为:当系统的物理内存不够用的时候,将暂时不用的数据存放到交换空间所在的硬盘上,从而可以腾出内存来让别的程序运行。...
  • 介绍linux添加和增大交换分区swap)的方法,提供大家参考
  • Linux交换分区(Swap)

    2018-11-18 15:18:43
    当我们系统上的物理内存或RAM已满时,我们最终会利用系统上的交换空间。在此过程中,内存的非...在本文中,我们将介绍几种检查Ubuntu系统上可用Swap交换空间的方法。本文中描述的命令和过程已在Ubuntu 18.04 LTS系...
  • 交换分区管理swap

    2020-12-05 20:45:04
    一、简介 二、查看当前的交换分区
  • Linux swap分区作用详解

    千次阅读 2020-04-21 19:53:44
    1、关于虚拟内存和物理内存 ...用作虚拟内存的磁盘空间被称为交换空间(又称 swap 空间)。 注意:Linux 的内存管理采取的是分页存取机制,为了保证物理内存能得到充分的利用,内核会在适当的时候将物理内存中不经常...
  • redhat Linux 创建交换分区swap

    千次阅读 2015-12-23 13:04:37
    #mkswap /dev/sda3 注:创建此分区为swap交换分区 #swapon /dev/sda3 注:加载交换分区 #swapoff /dev/sda3 注:关闭交换分区 #swapon /dev/sda3 注:加载交换分区 #swapon -s 查看交换分区 Filename Type ...
  • linux swap 内存交换分区 详细介绍

    千次阅读 2020-10-06 20:00:39
    真可谓一文在手,SWAP从此不再忧愁。敬请笑纳。 概述 本文讨论的swap基于Linux4.4内核代码。Linux内存管理是一套非常复杂的系统,而swap只是其中一个很小的处理逻辑。...5、swap分区的优先级(prior...
  • SWAP交换分区(虚拟内存)

    千次阅读 2018-05-18 17:22:52
    但由于交换分区毕竟是通过硬盘设备读写数据的,速度肯定要比物理内存慢,所以只有当真实的物理内存耗尽后才会调用交换分区的资源。   交换分区的创建过程与前文讲到的挂载并使用存储设备的过程非常相似。...
  • Linux 硬盘挂载及设置交换分区swap

    千次阅读 2017-09-29 21:48:18
    交换分区swap设为开机自动启用:  vi /etc/fstab 加入 /dev/sdb1 swap swap defaults 0 0 Linux 交换分区 swap设定规则 物理内存小于2G 设置swap为内存2倍 物理内存大于2G 设置swap为内存1.5倍 ...
  • SWAP分区是LINUX暂时存储数据的交换分区,它主要是把主内存上暂时不用得数据存起来,在需要的时候再调进内存内,一般来说它的大小是内存的两倍。本文介绍了重新划分Swap交换分区的方法。
  • swap 分区通常被称为交换分区,这是一块特殊的硬盘空间,即当实际内存不够用的时候,操作系统会从内存中取出一部分暂时不用的数据,放在交换分区中,从而为当前运行的程序腾出足够的内存空间。 也就是说,当内存不够...
  • swap交换分区

    2020-06-27 12:11:10
    SWAP交换分区是一种类似于Windows系统虚拟内存的功能,将一部分硬盘空间虚拟成内存来使用,从而解决内存容量不足的情况,因为SWAP毕竟是用硬盘资源虚拟的,所以速度上比真实物理内存要慢很多,一般只有当真实物理...
  • mkswap命令用于在一个文件或者设备上建立交换分区。在建立完之后要使用sawpon命令开始使用这个交换区。最后一个选择性参数指定了交换区的大小,但是这个参数是为了向后兼容设置的,没有使用的必要,一般都将整个文件...
  • 首先解释一下什么交换分区交换分区,英文的说法是swap,意思是“交换”、“实物交易”。它的功能就是在内存不够的情况下,操作系统先把内存中暂时不用的数据,存到硬盘的交换空间,腾出内存来让别的程序运行,和...
  • linux 创建/删除 swap交换分区

    千次阅读 2019-02-20 15:16:02
    linux 创建swap交换分区 swap 作为 linux 系统虚拟内存一样的存在,当系统的物理内存不够用的时候,就需要将物理内存中的一部分空间释放出来,以供当前运行的程序使用。那些被释放的空间可能来自一些很长时间没有...
  • Swap交换分区的两种创建方式

    千次阅读 2018-05-04 00:18:20
    Swap交换分区的两种创建方式 当系统的物理内存不够用的时候,系统会将长时间没有操作的进程占用的物理内存空间释放出来,以供当前运行的程序使用。而被释放的空间会被临时保存到交换(Swap)分区中,等到那些程序要...
  • SWAP就是LINUX下的虚拟内存分区,它的作用是在物理内存使用完之后,将磁盘空间(也就是SWAP分区)虚拟成内存来使用.它和Windows系统的交换文件作用类似,但是它是一段连续的磁盘空间,并且对用户不可见。 查看swap分区...
  • 关于Swap交换分区、调整关闭

    千次阅读 2020-11-26 21:44:19
    1.什么Swap交换分区 ①官方给出的文档: Linux内核为了提高读写效率与速度,会将文件在内存中进行缓存,这部分内存就是Cache Memory(缓存内存)。即使你的程序运行结束后,Cache Memory也不会自动释放。这就会导致...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 48,096
精华内容 19,238
关键字:

交换分区swap的作用是什么