编译安装nginx

1、下载源码
wget http://nginx.org/download/nginx-1.12.0.tar.gz
2、解压
tar xvf nginx-1.12.0.tar.gz
3、配置
./configure –prefix=/usr/local/nginx –sbin-path=/usr/local/nginx/sbin/nginx –conf-path=/usr/local/nginx/conf/nginx.conf –error-log-path=/var/log/nginx/error.log –http-log-path=/var/log/nginx/access.log –pid-path=/var/run/nginx/nginx.pid –lock-path=/var/lock/nginx.lock –user=nginx –group=nginx –with-http_ssl_module –with-http_stub_status_module –with-http_gzip_static_module –http-client-body-temp-path=/var/tmp/nginx/client/ –http-proxy-temp-path=/var/tmp/nginx/proxy/ –http-fastcgi-temp-path=/var/tmp/nginx/fcgi/ –http-uwsgi-temp-path=/var/tmp/nginx/uwsgi –http-scgi-temp-path=/var/tmp/nginx/scgi –with-pcre
4、编译
make
5、安装
make install

增加交换分区

1、增加swap
dd if=/dev/zero of=/swapfile bs=1024 count=1048576

1048576+0 records in
1048576+0 records out
1073741824 bytes (1.1 GB) copied, 26.1332 s, 41.1 MB/s

2、创建swap文件
mkswap /swapfile

Setting up swapspace version 1, size = 1048572 KiB
no label, UUID=c6f50aa9-a282-43ef-83ca-1da69b1cb702

3、加载该文件
swapon /swapfile

swapon: /swapfile: insecure permissions 0644, 0600 suggested.

4、查看swap当前状态
cat /proc/swaps

Filename Type Size Used Priority
/swapfile file 1048572 0 -1

5、开机自动加载设置
vim /etc/fstab

/swapfile swap swap defaults 0 0

6、禁用
swapoff /swapfile

LINUX下手动添加swap分区

根据Redhat公司的建议,Linux系统swap分区最适合的大小是物理内存的1-2倍.不过Linux上有些软件对swap分区得需求较大,例如要顺利执行Oracle数据库软件,swap分区至少需要400MB或者物理内存2倍以上的空间.当然我们在安装Linux的时候,就能直接讲swap分区设置到足够的大小,但如果已经安装好Linux了,之后又想再安装类似Oracle的软件,却发现swap分区空间不够,该如何处理?

针对此种情况,有两种解决方法:一是创建新的swap分区;另一则是创建swap文件.

(这里暂时对创建swap文件做说明)

创建swap文件
如果你的硬盘空间已经全部分配给其他分区,也没有多余的预算新添购硬盘,我们可以利用swap文件的方式增加虚拟的swap空间,不过执行性能会较实际的swap分区差.

1.产生swap文件
要创建swap文件,执行dd命令,新增一个1G的swap文件:

# dd if=/dev/zero of=/tmp/myswap bs=32k count=32768
(bs=32k指定每个扇区占用32kb,读入了32768个区段,输出了32768个区段)

注意:bs参数的目的在于指定每次读取及输入多少个bytes;由于磁盘存取的最小单位为扇区,因此设置bs也等于设置每个扇区的大小;而count的目的则在指定可以使用多少个扇区.因此,可以使用的硬盘空间就等于bs*count.以上范例为例,可以使用的硬盘空间等于32*32768=1048576(KB),亦等于1G

执行上述命令后,会在/tmp目录中创建一个256MB的myswap文件

2.格式华swap文件
接下来执行mkswap命令,将myswap文件格式化成s文件系统,系统才能使用,切换到/tmp目录,并执行以下命令:

# mkswap /tmp/myswap (#将文件格式化为swap文件格式)
setting up swapspace version 1 , size = 1048576KB

3.启动swap分区

# swapon /tmp/myswap

要停止使用新创建的swap文件,只要执行 swapoff /tmp/myswap命令即可.

# free -m可以查看swap分区

4.开机时自动启动新添加的swap分区
如果每次开机后都要执行swapon命令启动swap分区或者文件,这太麻烦了.这时可以利用文字编辑器在/etc/fstab文件加一行,好让开机时自动启动swap分区及文件:

/dec/hdb5 swap swap defaults 0 0 (开机时启动此swap分区)
/tmp/myswap swap swap defaults 0 0 (开机时启动此swap文件)

5.最后讲述一下如何修改linux swap空间的swappiness,降低对硬盘的缓存

linux 会使用硬盘的一部分做为SWAP分区,用来进行进程调度–进程是正在运行的程序–把当前不用的进程调成‘等待(standby)‘,甚至‘睡眠(sleep)’,一旦要用,再调成‘活动(active)’,睡眠的进程就躺到SWAP分区睡大觉,把内存空出来让给‘活动’的进程。
  如果内存够大,应当告诉 linux 不必太多的使用 SWAP 分区, 可以通过修改 swappiness 的数值。swappiness=0的时候表示最大限度使用物理内存,然后才是 swap空间,swappiness=100的时候表示积极的使用swap分区,并且把内存上的数据及时的搬运到swap空间里面。
  在ubuntu 里面,默认设置swappiness这个值等于60。
  
  !!!! 如果内存较小,而进程调度频繁,硬盘的响动就会大了 !!!!
  
  现在一般1个G的内存可修改为10, 2个G的可改为5, 甚至是0。具体这样做:
  1.查看你的系统里面的swappiness
  $ cat /proc/sys/vm/swappiness
  不出意外的话,你应该看到是 60
  2.修改swappiness值为10
  $ sudo sysctl vm.swappiness=10
  但是这只是临时性的修改,在你重启系统后会恢复默认的60,为长治久安,还要更进一步:
  $ sudo gedit /etc/sysctl.conf
  在这个文档的最后加上这样一行:
  vm.swappiness=10
  然后保存,重启。ok,你的设置就生效了。

参考: http://blog.csdn.net/rufeng18/article/details/3202023

http://blog.sina.com.cn/s/blog_60aa9ccd0100h433.html