重做系统都快成日常了,看来还是需要整理一下。

准备工作

yum update -y
yum groupinstall -y "development tools"
# ss
yum install -y git

# mysql nginx
yum install -y cmake bison-devel  ncurses-devel pcre-devel vim

编译安装nginx

wget http://nginx.org/download/nginx-1.7.9.tar.gz

参考安装编译nginx

开机自启动

chkconfig nginx on --level 3 5

编译MYSQL

源码下载地址

MYSQL官方下载地址

创建用户

groupadd mysql
useradd -g mysql mysql -d /home/mysql -s /sbin/nologin

编译参数

可以参考 http://dev.mysql.com/doc/refman/5.6/en/source-configuration-options.html

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DSYSCONFDIR=/etc -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock -DMYSQL_TCP_PORT=3306 -DENABLED_LOCAL_INFILE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci
# 执行编译安装
make && make install

初始化

chmod +x scripts/mysql_install_db
scripts/mysql_install_db --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --user=mysql
cp support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
chkconfig --add mysqld
export PATH=$PATH:/usr/local/mysql/bin
echo "export PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile
service mysqld start
ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock
mysql_secure_installation

开机自启动

chkconfig mysqld on --level 3 5

编译PHP

PHP下载地址

http://php.net/downloads.php

或者

wget http://php.net/distributions/php-5.6.4.tar.gz

编译libmcrypt

源代码

或者

wget http://ncu.dl.sourceforge.net/project/mcrypt/Libmcrypt/2.5.8/libmcrypt-2.5.8.tar.gz

安装依赖包

yum install -y libc-client-devel openldap-devel postgresql-devel net-snmp-devel
ln -s /usr/lib64/libc-client.so /usr/lib/libc-client.so
cp -frp /usr/lib64/libldap* /usr/lib/

请参考编译PHP5.6

开机自启动

echo "/usr/local/php/sbin/php-fpm -c /usr/local/php/etc/php.ini -y /usr/local/php/etc/php-fpm.conf" >> /etc/rc.local

安装shadowsocks

参考 使用shadowsocks轻松搭建FQ环境

开机自启动

echo "su XXX /usr/local/bin/ss-server -c ~/config.json -f /tmp/ss.pid" >> /etc/rc.local

Nodejs

wget http://nodejs.org/dist/v0.10.36/node-v0.10.36.tar.gz
tar -zxf node-v0.10.36.tar.gz
cd node-v0.10.36
./configure
make && make install
echo 'export PATH="$PATH:/usr/local/lib/node_modules/"' >> /etc/profile

全局环境变量alias启动脚本

在Linux下修改全局环境变量alias启动脚本对应文件分别是

/etc/profile /etc/profile /etc/rc.local

/etc/profile:此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行.
并从/etc/profile.d目录的配置文件中搜集shell的设置.

/etc/bashrc:为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取.

~/.bash_profile:每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该
文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件.
此文件类似于/etc/profile,也是需要需要重启才会生效,/etc/profile对所有用户生效,~/.bash_profile只对当前用户生效.

~/.bashrc:该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该
该文件被读取.
此文件类似于/etc/bashrc,不需要重启生效,重新打开一个bash即可生效,/etc/bashrc对所有用户新打开的bash都生效,但~/.bashrc只对当前用户新打开的bash生效.

~/.bash_logout:当每次退出系统(退出bash shell)时,执行该文件.

linux基础配置

源优化

参考 Centos源设置

中文支持

时间同步

ntpdate time.windows.com > /var/log/ntpdate.log
ntpdate us.pool.ntp.org > /var/log/ntpdate.log

时区设置

cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

备份管理

Dropbox

mkdir -p ~/bin
wget -O ~/bin/dropbox.py "https://www.dropbox.com/download?dl=packages/dropbox.py"
chmod +x ~/bin/dropbox.py
~/bin/dropbox.py start -i
# 执行关联
.dropbox-dist/dropbox-lnx.x86_64-3.0.4/dropbox

~/bin/dropbox.py start

安全配置

如何使用搬瓦工(bandwagonhost)后台管理VPS&安全设置

VPS安全之SSH设置

VPS安全之防火墙设置

VPS安全设置

网络加速

使用net_speeder加速你的VPS

标签: mysql, PHP, centos, iptables, Linux, vps, shadowsocks, dropbox, nginx, git, yum, renew, attack, useradd

已有 2 条评论

  1. VPS重做系统都需要做什么,留个脚印,以后用的到的

    1. 欢迎参考补充!

添加新评论