【树莓派】为树莓派配置或扩展swap分区
由于树莓派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分区的更多相关文章
- 为linux扩展swap分区
1.查看当前swap分区使用情况 [root@localhost ~]# swapon -s Filename Type Size Used Priority /dev/sda2 ...
- 扩展swap分区
swap分区在系统的物理内存不够用时,把硬盘的一部分空间释放出来,以供当前运行的程序使用.(临时使用,如果swap分区都不够了还是直接加内存吧) (1).步骤 mkswap /devices(可以是分 ...
- 目录方式扩展swap分区大小
1.查看swap大小:free -m (-k|m|g) --以k|m|g为单位用去尾法显示大小 [root@lbg tmp]# free -m total used ...
- Linux扩展swap分区
一.将sda磁盘进行分区: 先查看sda磁盘已经使用了多少主分区,如下图所示,主分区已使用3个,所以应选择扩展分区: 二.再将扩展分区进行分区: 三.分区完成后执行partprobe使系统重新识别分区 ...
- swap分区的扩展
Linux中Swap(即:交换分区),类似于Windows的虚拟内存,就是当内存不足的时候,把一部分硬盘空间虚拟成内存使用,从而解决内存容量不足的情况.swap分区在非高内存的服务器上必不可少,但是s ...
- 管理员技术(六): 硬盘分区及格式化、 新建一个逻辑卷、调整现有磁盘的分区、扩展逻辑卷的大小、添加一个swap分区
一.硬盘分区及格式化 问题: 本例要求熟悉硬盘分区结构,使用fdisk分区工具在磁盘 /dev/vdb 上按以下要求建立分区: 1> 采用默认的 msdos 分区模式 2> ...
- CentOS7 下 swap 分区的创建、删除及相关配置
一般我们在购买云服务器(例如:阿里云ECS.腾讯云服务器)的时候,选择 CentOS 7 系统之后,登录系统,发现 swap 大小为 0(即没有分配). 如果我们想在该 服务器上安装 Oracle 数 ...
- 如何扩展/删除swap分区
背景: 由于安装Oracle 的时候,swap太小只划分了4G,后期发现交换分区太小,不满足使用,于是进行了swap分区的扩容过程: swap分区的扩展很简单,但是需要root用户权限 ...
- CentOS7下swap分区创建(添加),删除以及相关配置
在添加swap分区之前我们可以了解下当前系统swap是否存在以及使用情况,可用: 1. free –h 或 swapon –s 了解硬盘使用情况(一般/dev/vda1为挂载硬盘): 1. df –h ...
随机推荐
- iOS 组件化
iOS 组件化介绍 随着应用需求逐步迭代,应用的代码体积将会越来越大,为了更好的管理应用工程,我们开始借助CocoaPods版本管理工具对原有应用工程进行拆分.但是仅仅完成代码拆分还不足以解决业务之间 ...
- a里面不能嵌套a
1. <a href=""> <a href=""></a></a> 会被浏览器解析为 2. <a hre ...
- placeholder的字体样式改变,滚动条的颜色改变,ios日期兼容
placeholder:::-webkit-input-placeholder { color: rgba(153, 153, 153, 0.541);font-size:12px;}:-moz-pl ...
- sql server 重命名列(字段)
调用系统存储过程sp_rename,直接看代码: EXEC sp_rename 'myTable.oldName','newName','COLUMN' 如果重命名表,则: EXEC sp_re ...
- python executemany的使用
使用executemany对数据进行批量插入的话,要注意一下事项: #coding:utf8 conn = MySQLdb.connect(host = "localhost", ...
- dd命令的使用简介
dd命令: convert and copy a file 用法: dd if=/PATH/FROM/SRC of=/PATH/TO/DEST bs=#: block size, 复制单元大小 ...
- es6基础系列一:let和const
let 声明变量,可以说是具有作用域的var,用于声明变量,主要规则如下: 1 let声明的变量拥有块级作用域 { let i = 1; console.log(i); // 1 } console. ...
- linux环境下安装jdk(本文示例是jdk1.6.0_export JAVA_HOME=/usr/java/jdk1.6.0_45 export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar45)
第一步:创建一个文件夹安装jdk(虽说地址一般自定义,但是为了方便查找请按照笔者建议目录 ):/usr/java 将jdk-6u45-linux-x64.bin文件放到 /usr/java 文件夹 ...
- Ranklib源码剖析--LambdaMart
Ranklib是一套优秀的Learning to Rank领域的开源实现,其中有实现了MART,RankNet,RankBoost,LambdaMart,Random Forest等模型.其中由微软发 ...
- jQuery的工作原理
jQuery是为了改变javascript的编码方式而设计的. jQuery本身并不是UI组件库或其他的一般AJAX类库. 那么它是如何实现它的声明的呢? 先看一段简短的使用流程: (1).查找(创建 ...