由于树莓派3的默认内存只有1G,而应用程序运行过程中,存在大量的IO读写,以及网络转换,内存交换等。这样,也有很多buffer、cache资源占用等,很快就会接近1GB,最终导致可使用内存就几KB,程序稍微运行一段时间,部分就会自动crush掉;存在如下这样的问题:

(1)接收大量图片,服务占用内存较高(pandion占用310MB,osprey占用396MB)加上buffer和cache占用资源之和,接近900MB,盒子本身内存资源不足,可用内存只剩下25~27MB;这样性能比较差,传图慢,会导致挤压;

  

(2)SD卡存储空间小,可见盒子可用内存持续保持在26MB左右,本身swap分区只有100MB;

  

修改之后,检查看起来性能相对稍微强一点。下面简要记录一下swap扩展分区:

一.Linux下察看swap分区大小的命令
  top
  或者fdisk -l
  或者free -m
  SWAP分区一般大小为物理内存的2倍,但最大不超过2G;

二.swap增加方法

  增加SWAP空间的方法有两个:增加另外一个SWAP分区,或通过创建一个SWAP文件来实现。

  一)增加一个SWAP分区:
  1)创建一个SWAP分区: fdisk -l /dev/cciss/c0d0 (m---p ---n --t (将分区格式转换成 82)--w)(如/dev/cciss/c0d0p6)
  2)格式化分区:mkswap -c v1 /dev/cciss/c0d06;
  3)修改/etc/fstab文件,增加
  /dev/cciss/c0d0p6 swap swap default 0 0
  4)激活swap分区:swapon -a /dev/cciss/c0d0p6;
  5) 查看swap 分区:swapon -s 或 free 或 cat /proc/swaps

  二)增加一个SWAP文件;
  1)dd if=/dev/zero of=/tmp/tmp.swap bs=1M count =100;( 建立一个100M的文件);
  2)mkswap /tmp/tmp.swap; (标识为SWAP文件)
  3)swapon /tmp/tmp.swap;(激活SWAP文件)
  4)修改/etc/fstab文件,增加以下内容:
  /tmp/tmp.swap swap swap default 0 0
  5)swapon -s 或free 或cat /proc/swaps 查看。

  三)删除SWAP分区:
  1) swapoff /dev/cciss/c0d0p6;
  2) 修改/etc/fstab文件。

参考实践脚本:

dd if=/dev/zero of=/tmp/tmp.swap bs=1M count=;
mkswap /tmp/tmp.swap;

swapon /tmp/tmp.swap;

# sudo vi /etc/fstab
# /tmp/tmp.swap swap swap default 0 sudo cp /etc/fstab /etc/fstab.bak sudo sed -i '5i /tmp/tmp.swap swap swap default 0 0' /etc/fstab
 

验证可用。

参考:

dd if=/dev/zero of=/mnt/swap bs=1M count=
mkswap /mnt/swap
chmod /mnt/swap
swapon /mnt/swap
vi /etc/fstab

a

【树莓派】为树莓派配置或扩展swap分区的更多相关文章

  1. 为linux扩展swap分区

    1.查看当前swap分区使用情况 [root@localhost ~]# swapon -s Filename Type Size Used Priority /dev/sda2            ...

  2. 扩展swap分区

    swap分区在系统的物理内存不够用时,把硬盘的一部分空间释放出来,以供当前运行的程序使用.(临时使用,如果swap分区都不够了还是直接加内存吧) (1).步骤 mkswap /devices(可以是分 ...

  3. 目录方式扩展swap分区大小

    1.查看swap大小:free  -m  (-k|m|g) --以k|m|g为单位用去尾法显示大小  [root@lbg tmp]# free -m total        used        ...

  4. Linux扩展swap分区

    一.将sda磁盘进行分区: 先查看sda磁盘已经使用了多少主分区,如下图所示,主分区已使用3个,所以应选择扩展分区: 二.再将扩展分区进行分区: 三.分区完成后执行partprobe使系统重新识别分区 ...

  5. swap分区的扩展

    Linux中Swap(即:交换分区),类似于Windows的虚拟内存,就是当内存不足的时候,把一部分硬盘空间虚拟成内存使用,从而解决内存容量不足的情况.swap分区在非高内存的服务器上必不可少,但是s ...

  6. 管理员技术(六): 硬盘分区及格式化、 新建一个逻辑卷、调整现有磁盘的分区、扩展逻辑卷的大小、添加一个swap分区

    一.硬盘分区及格式化 问题: 本例要求熟悉硬盘分区结构,使用fdisk分区工具在磁盘 /dev/vdb 上按以下要求建立分区: 1> 采用默认的 msdos 分区模式        2> ...

  7. CentOS7 下 swap 分区的创建、删除及相关配置

    一般我们在购买云服务器(例如:阿里云ECS.腾讯云服务器)的时候,选择 CentOS 7 系统之后,登录系统,发现 swap 大小为 0(即没有分配). 如果我们想在该 服务器上安装 Oracle 数 ...

  8. 如何扩展/删除swap分区

    背景:         由于安装Oracle 的时候,swap太小只划分了4G,后期发现交换分区太小,不满足使用,于是进行了swap分区的扩容过程: swap分区的扩展很简单,但是需要root用户权限 ...

  9. CentOS7下swap分区创建(添加),删除以及相关配置

    在添加swap分区之前我们可以了解下当前系统swap是否存在以及使用情况,可用: 1. free –h 或 swapon –s 了解硬盘使用情况(一般/dev/vda1为挂载硬盘): 1. df –h ...

随机推荐

  1. vue学习笔记 样式 class style(五)

    使用v-bind数据绑定class和style,v-bind:class可以与传统的class属性共存,其中可以用{}设置多个class,根据条件判断的语法是class名:条件,带-的class名需要 ...

  2. strtol函数 将字符串转换为相应进制的整数

    转自http://hi.baidu.com/qwpsmile/blog/item/9bc44efa4f41018a9f514637.html +----------------+|      strt ...

  3. jQuery中jsonp函数实现

    由于浏览器中的同源策略,不同的域名,不同的协议,甚至不同的端口都无法请求数据.因此出现了浏览器跨域请求数据问题. Jsonp是解决跨域问题的一个非常流行的方法. JSONP(JSON with Pad ...

  4. 转:Java中finally和return的执行关系

    finally可以分两方面理解 1.执行时机问题.finally总会执行(除非是System.exit()),正常情况下在try后执行,抛异常时在catche后面执行 2.返回值问题.可以认为try( ...

  5. 机器学习:python中如何使用朴素贝叶斯算法

    这里再重复一下标题为什么是"使用"而不是"实现": 首先,专业人士提供的算法比我们自己写的算法无论是效率还是正确率上都要高. 其次,对于数学不好的人来说,为了实 ...

  6. python之pymysql模块学习(待完善...)

    pymysql介绍 pymysql是在python3.x版本中用于连接mysql服务器的一个库.python2中则使用mysqldb. 安装方法: pip install pymysql 使用实例: ...

  7. FitVids,一个轻视频插件,操作简单

    最近在找一个视频插件,偶尔看见一个口碑啥的都不错的插件,FitsVids. fitvids.js 是个轻量级,易于使用的 jQuery 插件,用来在网页上播放指定宽度的嵌入视频.Fitvides.js ...

  8. Java进阶之网络编程

    网络编程 网络编程对于很多的初学者来说,都是很向往的一种编程技能,但是很多的初学者却因为很长一段时间无法进入网络编程的大门而放弃了对于该部分技术的学习. 在 学习网络编程以前,很多初学者可能觉得网络编 ...

  9. JSAAS的Activiti会签开发扩展处理

    1.什么是会签? 在流程业务管理中,任务是通常都是由一个人去处理的,而多个人同时处理一个任务,这种任务我们称之为会签任务.这种业务需求很常见,如一个请款单,领导审批环节中,就需要多个部门领导签字.在流 ...

  10. 新人小达之wpf

    Wpf学习之路-- 第一次写微博,可能内容不够精细,但目的就是把问题讲明白,让看到文章的小伙伴们少走弯路. 由于公司的需要,需要学习.net的一门新技术-wpf. 要说wpf是什么框架?模式?架构?  ...