重做系统都快成日常了,看来还是需要整理一下。
准备工作
代码语言:javascript复制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
代码语言:javascript复制wget http://nginx.org/download/nginx-1.7.9.tar.gz
参考安装编译nginx
开机自启动
代码语言:javascript复制chkconfig nginx on --level 3 5
编译MYSQL
源码下载地址
MYSQL官方下载地址
创建用户
代码语言:javascript复制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
代码语言:javascript复制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
初始化
代码语言:javascript复制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
开机自启动
代码语言:javascript复制chkconfig mysqld on --level 3 5
编译PHP
PHP下载地址
http://php.net/downloads.php
或者
代码语言:javascript复制wget http://php.net/distributions/php-5.6.4.tar.gz
编译libmcrypt
源代码
或者
代码语言:javascript复制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
开机自启动
代码语言:javascript复制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环境
开机自启动
代码语言:javascript复制echo "su XXX /usr/local/bin/ss-server -c ~/config.json -f /tmp/ss.pid" >> /etc/rc.local
Nodejs
代码语言:javascript复制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源设置
中文支持
时间同步
代码语言:javascript复制ntpdate time.windows.com > /var/log/ntpdate.log
ntpdate us.pool.ntp.org > /var/log/ntpdate.log
时区设置
代码语言:javascript复制cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
备份管理
Dropbox
代码语言:javascript复制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