• linux下设置swap文件


    Linux下Swap分区设置

    1 查看swap 空间大小(总计):
         # free -m          默认单位为k, -m 单位为M
                     total       used       free     shared    buffers     cached
      Mem:           377        180        197          0         19        110
      -/+ buffers/cache:         50        327
      Swap:          572          0        572

    2 查看swap 空间(file(s)/partition(s)):

          包括 文件 和 分区 的详细信息

      # swapon -s
      等价于
      # cat /proc/swaps


    3 添加交换空间
      两种选择:添加一个交换分区或添加一个交换文件。推荐你添加一个交换分区;不过,若你没有多少空闲空间可用,则添加交换文件。

        3.1 添加一个交换分区
      步骤如下:
          a 使用fdisk来创建交换分区(假设 /dev/sdb2 是创建的交换分区)
          b 使用 mkswap 命令来设置交换分区:
       # mkswap /dev/sdb2
          c 启用交换分区:
       # swapon /dev/sdb2
          d 写入/etc/fstab,以便在引导时启用:
          /dev/sdb2 swap swap defaults 0 0

        3.2 添加一个交换文件
      a 创建大小为512M的交换文件:
       # dd if=/dev/zero of=/swapfile1 bs=1024k count=512
      b 使用 mkswap 命令来设置交换文件:
       # mkswap /swapfile1
      c 启用交换分区:
       # swapon /swapfile1
      d 写入/etc/fstab,以便在引导时启用:
       /swapfile1 swap swap defaults 0 0

      新添了交换分区并启用它之后,请查看 cat /proc/swaps 或 free 命令的输出来确保交换分区已被启用了。

    4 删除交换空间:
      a 禁用交换分区:
       # swapoff /dev/sdb2
      b 从 /etc/fstab 中删除项目;
      c 使用fdisk或yast工具删除分区。

      删除交换文件步骤同上。


    --------------------------------------------------------------------------------

      # free -m
                     total       used       free     shared    buffers     cached
      Mem:           377        180        197          0         19        110
      -/+ buffers/cache:         50        327
      Swap:          572          0        572

    Mem 行显示了从系统角度看来内存使用的情况, total是系统可用的内存大小, 数量上等于系统物理内存减去内核保留的内存.
    buffers和cached是系统用做缓冲的内存. buffers与某个块设备关联, 包含了文件系统元数据, 并且跟踪了块的变化. cache只包含了文件本身.

    -/+ buffers/cache 行则从用户角度显示内存信息, 可用内存从数量上等于mem行used列值减去buffers和cached内存的大小.

    因为buffers和cached是操作系统为加快系统运行而设置的, 当用户需要时, 可以只接为用户使用.

    top 显示系统运行时的各进程动态、实时的状态(cpu、内存)

    top 中有3个列 VIRT RES SHR, 标示了进程使用的内存情况.
    VIRT 标识这个进程可以使用的内存总大小, 包括这个进程真实使用的内存, 映射过的文件, 和别的进程共享的内存等.
    RES 标识这个这个进程真实占用内存的大小.
    SHR 标识可以和别的进程共享的内存和库大小.

    vmstat 显示内存的使用情况

    这些命令都是从/proc/meminfo中读取内存信息.

    关于/proc/meminfo中各行的含意, 在内核源代码的Documentation/filesystems/proc.txt文件中有叙述

    系统的真实内存大小可以用 dmesg | grep [mM][eE][mM]看到

    /proc/pid/status显示一个进程的详细状态
    # cat /proc/5346/status
    Name: bash
    State: S (sleeping)
    SleepAVG: 98%
    Tgid: 5346
    Pid: 5346
    PPid: 5343
    TracerPid: 0
    Uid: 1000 1000 1000 1000
    Gid: 104 104 104 104
    FDSize: 256
    Groups: 6 24 29 44 104 113 1000 1001
    VmPeak: 6528 kB
    VmSize: 6528 kB
    VmLck: 0 kB
    VmHWM: 1976 kB
    VmRSS: 1976 kB
    VmData: 752 kB
    VmStk: 84 kB
    VmExe: 644 kB
    VmLib: 1788 kB
    VmPTE: 16 kB
    Threads: 1
    SigQ: 0/4294967295
    SigPnd: 0000000000000000
    ShdPnd: 0000000000000000
    SigBlk: 0000000000000000
    SigIgn: 0000000000384004
    SigCgt: 000000004b813efb
    CapInh: 0000000000000000
    CapPrm: 0000000000000000
    CapEff: 0000000000000000

    VmSize即为该进程内存总大小, 和top输出中的VIRT一致.


    本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/onlymilan/archive/2009/12/04/4941189.aspx

  • 相关阅读:
    【LeetCode】Set Matrix Zeroes 解题报告
    CodeForces 14 E
    Linux守护进程的编程实现
    用fildder 查看loveuv 刷流量时通信的数据
    .NET MVC学习笔记(一)
    微价值:专訪《甜心爱消除》个人开发人员Lee,日入千元!
    JSP动作--JSP有三种凝视方式
    【Hibernate步步为营】--映射合集汇总
    阿里好的开源项目有哪些(善用工具)
    色彩搭配原理与技巧?
  • 原文地址:https://www.cnblogs.com/linbixing828/p/2972662.html
Copyright © 2020-2023  润新知