前言

前几天买了一个 Sentris 家的 128M 的 VPS,年付2刀独立IP的 (还是很划算的),买来后一直扔在一边。

今天正好有个主题要测试,拿出来折腾一下。

由于内存小且超售严重,安装 AMH 和 LNMP 不太现实,于是想到了前几年 LEB 站长发布的 LowEndScript。

折腾开始

这里我用的是改版的 LowEndScript,用于低配置 (主要是低内存) 服务器的 Web 环境的搭建,基于 Nginx+MySQL+PHP。

官方 GitHub 上有详解:https://github.com/Xeoncross/lowendscript

适用于 Debian、Ubuntu 系统,有minimal版本最好,没有的话可以自己精简下

执行以下命令来精简:
apt-get update&&apt-get upgrade
apt-get -y purge apache2-* bind9-* xinetd samba-* nscd-* portmap sendmail-* sasl2-bin
apt-get -y purge lynx memtester unixodbc python-* odbcinst-* sudo tcpdump ttf-*
apt-get autoremove && apt-get clean

精简完成后,我们就能正式开始了。

这里以 Debian 6 为例:

(1)下载脚本,设置权限:

wget --no-check-certificate https://raw.github.com/Xeoncross/lowendscript/master/setup-debian.sh
chmod +x setup-debian.sh

(2)添加dotdeb源:(如果是 Ubuntu 系统则不用做此步)

./setup-debian.sh dotdeb

(3)更新系统:(新安装的系统最好更新下,不然容易出错)

apt-get update
apt-get upgrade
apt-get dist-upgrade

(4)精简并设置 Debian 系统:

./setup-debian.sh system

此命令会自动完成以下几个操作:

update_timezone

remove_unneeded

update_upgrade

install_dash

install_vim 安装vim编辑器

install_nano 安装nano编辑器

install_htop 比top好用的进程查看工具

install_mc

install_iotop I/O监视工具

install_iftop 网卡实时流量监测工具

install_syslogd 系统日志

apt_clean 清除软件包

(5)安装mysql:

./setup-debian.sh mysql

安装完成后,MySQL 的 root 密码被随机在了:/root/.my.cnf文件中。

(6)安装nginx:

./setup-debian.sh nginx

(7)安装PHP:

./setup-debian.sh php

(8)创建 vhost:

./setup-debian.sh site yourdomain.com

输入site 空格 yourdomain.com,不要写成其他的,否则可能会导致站点创建失败。

网站自动创建在"/var/www/"目录下

(9)创建mysql用户:

./setup-debian.sh mysqluser yourdomain.com

执行完毕后会在屏幕中显示创建好的mysql数据库、数据库用户名以及用户密码,用户密码是自动生成的;同时会在你网站目录中自动生成一个名为mysql.conf的备份文件,如果你忘记了用户名、密码,可以在mysql.conf中查看。

到这里,Debian 系统的 nginx+mysql+php 的环境就搭建好了。

脚本的其他一些功能:

###3 (1)安装wordpress:
./setup-debian.sh wordpress yourdomain.com

输入wordpress 空格 yourdomain.com,不要写成其他的。不过部署的wordpress好像是英文版。

(2)使用exim替代sendmail:

./setup-debian.sh exim4

(3)安装webmin管理面板:

./setup-debian.sh webmin

(4)安装vzfree:

./setup-debian.sh vzfree

只适用于基于openvz架构的VPS主机,用于报告正确的内存使用情况,可查看母机的内存

(5)磁盘和网络测试:

./setup-debian.sh test

(6)查看当前vps、服务器的操作系统信息、版本和体系结构:

./setup-debian.sh info

(7)生成SSH-key,参数可选:

./setup-debian.sh sshkey [optional argument_1]

(8)设置http代理:

./setup-debian.sh 3proxy 3128
./setup-debian.sh 3proxyauth username password

(9)sources.list文件更新(仅适用於Ubuntu系统,更新Ubuntu /etc/apt/sources.list):

./setup-debian.sh apt

(10)配置或重新配置MOTD

./setup-debian.sh motd

(11)安装ps_mem(ps_mem是一个python脚本,用来报告每个应用程序的内存使用情况):

./setup-debian.sh ps_mem

安装完成后需运行“~/ps_mem.py”执行。

其他一些Tips:

(1)修改 Nginx 进程数:

根据 CPU 内核数量修改以下文件中的 worker_processes:

nano /etc/nginx/nginx.conf

(2)修改 PHP-FPM 和 MySQL 进程数:

根据自己网站的访问量和内存大小修改以下文件中的 pm.max_children, pm.start_servers, pm.max_spare_servers:

nano /etc/php5/fpm/pool.d/www.conf

(3)修改 PHP 上传文件大小限制:

修改以下文件中的 post_max_size:

nano /etc/php5/fpm/php.ini

(4)重启 (reload/restart) Nginx PHP MySQL 服务:

service nginx reload
service php5-fpm reload
service mysqld reload