原因:前两天服务器的硬盘出故障,报错:scsi 0:0:2:0: rejecting I/O to dead device,报这个错误的时候重启过一次,撑了一个月时间,现在直接导致整个文件系统崩溃。很明显是硬盘出问题了(一直在线用了4年多,而且I/O操作也非常频繁),原来有3块sas硬盘,其中两块500G的作了Raid1,另一块1T是备份并作了LVM,现在很难确定是哪一块有问题,估计寿命也都差不多了,打算直接都换掉算了。

准备:现在备了一块256G固态硬盘用于装centos和一块1T的sas硬盘用作存储数据,并让机房帮忙安装了最小版的centos7,内核: 3.10.0-229.el7.x86_64。

一、网络设置及服务

原来的网络有两块网卡,一个接外网,一个接内网,直接执行ifconfig竟然提示无此命令,原来centos7最小版默认就不用这个了,可以用ip addr 和 ip link代替。而且ifcfg的名字也改为emN这种形式了,直接编辑/etc/sysconfig/network-scripts/ifcfg-em2配置内网ip,配好后执行service network restart,然后ping一下看能否连通其它内网机器。

可以在/lib/systemd/system/目录下创建一些扩展名为.service的服务配置文件,如:nginx.service.

二、安全设置

三、磁盘设置

  • 利用LVM增加硬盘及扩容,参考:http://www.centoscn.com/CentOS/config/2015/0315/4891.html;另外,也可以借助系统存储管理器管理LVM卷,参考:http://os.51cto.com/art/201409/450584.htm。

四、支撑环境

  • 安装rabbitmq,参考:http://my.oschina.net/jackwanger/blog/207898, 但在使用过程中发现没办法直接通过yum install erlang安装erlang,所以还得通过源码装。如果configure时指定了prefix,安装后还得在/etc/profile export指定path。在安装rabbitmq时提示

    1. rabbitmq /bin/sh: zip: command not found

    表示少了zip

    1. yum install zip unzip
    1. cd rabbitmq-server-3.5.3
    2. make
    3. make install TARGET_DIR=/usr/local/rabbitmq SBIN_DIR=/usr/local/rabbitmq/sbin MAN_DIR=/usr/local/rabbitmq/man

    后台启动

    1. ./rabbitmq-server -detached

    rabbitmq安装后默认端口为5672,而且不需要特定的配置,如果想指定一些特殊配置,可以参考:http://www.rabbitmq.com/configure.html  

      

  • 安装cmake:

    1. wget http://www.cmake.org/files/v3.3/cmake-3.3.0-rc3.tar.gz
    2. tar zxf cmake-3.3.0-rc3.tar.gz
    3. cd cmake-3.3.0-rc3
    4. ./configure
    5. make
    6. make install

      

  • 安装mysql

    1. wget http://cdn.mysql.com/Downloads/MySQL-5.6/mysql-5.6.27.tar.gz
    2. tar zxf mysql-5.6.27.tar.gz
    3. groupadd mysql
    4. useradd -g mysql mysql -s /bin/false
    5. mkdir -p /data/mysql
    6. chown -R mysql:mysql /data/mysql
    7. mkdir -p /usr/local/mysql
    8. cd mysql-5.6.27
    9. cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/data/mysql -DSYSCONFDIR=/etc
    10. make
    11. make install
    12. cd /usr/local/mysql
    13. cp ./support-files/my-huge.cnf /etc/my.cnf
    14. vi /etc/my.cnf
    15. datadir = /data/mysql #添加MySQL数据库路径
    16. ./scripts/mysql_install_db --user=mysql
    17. cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld
    18. chmod 755 /etc/init.d/mysqld
    19. chkconfig mysqld on
    20. vi /etc/rc.d/init.d/mysqld
    21. basedir = /usr/local/mysql
    22. datadir = /data/mysql
    23. service mysqld start
    24. vi /etc/profile
    25. export PATH=$PATH:/usr/local/mysql/bin
    26. ln -s /usr/local/mysql/lib /usr/lib/mysql
    27. ln -s /usr/local/mysql/include/mysql /usr/include/mysql
    28. mysql_secure_installation

    如果mysql命令行登录时提示:段错误(Segmentation fault),则需要按下面步骤处理:http://www.cnblogs.com/jenqz/p/4892570.html

  • 安装pcre

    1. tar zxvf pcre-8.37.tar.gz
    2. cd pcre-8.37
    3. ./configure --prefix=/usr/local/pcre
    4. make
    5. make install

      

  • 安装openssl
    1. wget http://www.openssl.org/source/openssl-1.0.2d.tar.gz

      

  • 安装nginx    
    1. yum安装参考:http://www.linuxidc.com/Linux/2014-09/106192.htm2.

    1. yum -y install zlib-devel

      

  • 源码安装:

    1. wget http://nginx.org/download/nginx-1.9.5.tar.gz
    2. tar zxf nginx-1.9.5.tar.gz
    3. groupadd www
    4. useradd -g www www -s /bin/false
    5.  
    6. cd nginx-1.9.5
    7. ./configure --prefix=/usr/local/nginx --without-http_memcached_module --user=www --group=www --with-http_stub_status_module --with-openssl=/usr/ --with-pcre=/root/tools/pcre-8.36
    8. make
    9. make install

      

    3.设置为服务

    1. cat >> /usr/lib/systemd/system/nginx.service << NGINX_SERVICE
    2. > [Unit]
    3. > Description=The nginx HTTP and reverse proxy server
    4. > After=syslog.target network.target remote-fs.target nss-lookup.target
    5. >
    6. > [Service]
    7. > Type=forking
    8. > PIDFile=/run/nginx.pid
    9. > ExecStart=/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
    10. > ExecReload=/bin/kill -s HUP $MAINPID
    11. > ExecStop=/bin/kill -s QUIT $MAINPID
    12. > PrivateTmp=true
    13. >
    14. > [Install]
    15. > WantedBy=multi-user.target
    16. > NGINX_SERVICE
    17.  
    18. systemctl enable nginx
    19. systemctl start nginx.service
  • 安装php

  • 1.安装php相关支持库
    1. yum -y install libxml2 libxml2-devel libcurl-devel freetype freetype-devel libjpeg* libpng libpng-devel gd openssl openssl-devel libmcrypt

      

  • 2.安装php
    1. ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-mysql=/usr/local/mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-mysql-sock=/tmp/mysql.sock --with-pdo-mysql=/usr/local/mysql --with-gd --with-iconv --with-zlib --enable-xml --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --enable-mbregex --enable-fpm --enable-mbstring --enable-ftp --enable-gd-native-ttf --with-openssl --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --without-pear --with-gettext --enable-session --with-mcrypt --with-curl --with-jpeg-dir --with-freetype-dir
    2. make
    3. make install

     

  • 安装redis

    1. wget http://download.redis.io/releases/redis-3.0.2.tar.gz
    2. tar zxvf redis-3.0.2.tar.gz
    3. cd redis-3.0.2
      mkdir /usr/local/redis
    4. make PREFIX=/usr/local/redis install
  • 安装ttserver,同时装一下httpsqs

    1. wget http://fallabs.com/tokyocabinet/tokyocabinet-1.4.48.tar.gz
    2. tar zxf tokyocabinet-1.4.48.tar.gz
    3. cd tokyocabinet-1.4.48
    4. ./configure --prefix=/usr/local/tokyocabinet-1.4.48/
    5. make
    6. make install
    7.  
    8. wget http://fallabs.com/tokyotyrant/tokyotyrant-1.1.41.tar.gz
    9. tar zxf tokyotyrant-1.1.41.tar.gz
    10. cd tokyotyrant-1.1.41
    11. ./configure --prefix=/usr/local/tokyotyrant-1.1.41 --with-tc=/usr/local/tokyocabinet-1.4.48/
    12.  
    13. wget http://httpsqs.googlecode.com/files/httpsqs-1.7.tar.gz
    14. tar xzf httpsqs-1.7.tar.gz
    15. cd httpsqs-1.7
    16. vi Makefile #将tokyocabinet由1.4.47改为1.4.48
    17. make
    18. make install

    ttserver的php扩展

    1. wget http://pecl.php.net/get/tokyo_tyrant-0.7.0.tgz
    2. tar zxvf tokyo_tyrant-0.7.0.tgz
    3. cd tokyo_tyrant-0.7.0
    4. /usr/local/php/bin/phpize
    5. ./configure --with-php-config=/usr/local/php/bin/php-config --with-tokyo-tyrant=/usr/local/tokyotyrant-1.1.41 --with-tokyo-cabinet-dir=/usr/local/tokyocabinet-1.4.48
    6. make && make install
  • 安装sphinx

    1. wget http://www.sphinx-search.com/downloads/sphinx-for-chinese-2.2.1-dev-r4311.tar.gz
    2. tar zxf sphinx-for-chinese-2.2.1-dev-r4311.tar.gz
    3. cd sphinx-for-chinese-2.2.1-dev-r4311
    4. ./configure --prefix=/usr/local/sphinx --with-mysql
    5. make
    6. make install

    安装sphinx的php扩展

    1. cd sphinx-for-chinese-2.2.1-dev-r4311/api/libsphinxclient
    2. ./configure prefix=/usr/local/sphinxclient
    3. make && make install
    4.  
    5. wget http://pecl.php.net/get/sphinx-1.3.0.tgz
    6. tar zxf sphinx-1.3.0.tgz
    7. cd sphinx-1.3.0
    8. /usr/local/php/bin/phpize
    9. ./configure --with-php-config=/usr/local/php/bin/php-config --with-sphinx=/usr/local/sphinxclient/
    10. make
    11. make install

        

      

五、应用环境

centos7配置笔记的更多相关文章

  1. 新装系统(CentOS7.4)环境初始化配置笔记

    新装系统(CentOS7.4)环境初始化配置笔记 一.概述 设备详情: Dell R730 服务器 (四个网卡,一根网线插在第2个网卡上) CentOS 7.4 x64 最小安装环境 二.网络环境配置 ...

  2. CentOS7 安装配置笔记

    CentOS7 安装配置笔记 1.通过镜像安装 CentOS7 ==============================* 使用 UltraISO 9.7 或者 rufus-3.5p 制作ISO的 ...

  3. CentOS6.5环境配置笔记

    CentOS6.5环境配置笔记 一.概述 服务器系统重装,配置应用运行环境 CentOS6.5 x64 二.修改密码 重新设置登录密码 $passwd 或 $passwd root 三.配置端口号及防 ...

  4. Centos7 配置网络步奏详解

    Centos7 配置网络步奏详解 编辑网卡配置文件 vi /etc/sysconfig/network-script/ifcfg-ens01 备注:这里的ens01不是所有系统都叫这个,有的可能叫其他 ...

  5. Bandwidthd+Postgresql数据库配置笔记

    Bandwidthd+Postgresql数据库配置笔记 本系列文章由ex_net(张建波)编写,转载请注明出处. http://blog.csdn.net/zjianbo/article/detai ...

  6. centos7配置开启无线网卡,重启防火墙

    centos7配置无线网卡: 在虚拟机为nat的网络连接下(就是默认的那个),centos7默认网卡未激活. 可以设置 文件 /etc/sysconfig/network-scripts/ifcfg- ...

  7. 软件安装配置笔记(三)——ArcGIS系列产品安装与配置(补档)(附数据库连接及数据导入)

    在前两篇安装配置笔记之后,就忘记把其他安装配置笔记迁移过来了,真是失误失误!趁现在其他文档需要赶紧补上. 目录: 一.ArcMap 二.ArcMap连接数据库并导入数据 三.Arcgis Pro 四. ...

  8. linux文件权限目录配置笔记

    ###linux 文件权限目录配置笔记 ---------- 多人多任务环境 linux 一般将文件可存取的身份分为三个类别:owner group others Permission deny ls ...

  9. Centos7配置JAVA_HOME

    Centos7配置JAVA_HOME http://blog.csdn.net/zzpzheng/article/details/73613838 在Centos7上,通过yum install ja ...

随机推荐

  1. typedef 和 define的区别

    类型取别名,还可以定义常量.变量.编译开关 都知道两个在某些情况下是相同的 但是define是在预编译时就会处理掉,进行简单的宏替换,不管正不正确都替换掉,末尾没有分号,有分号连分号也一起替换了. 而 ...

  2. Python爬虫学习笔记——防豆瓣反爬虫

    开始慢慢测试爬虫以后会发现IP老被封,原因应该就是单位时间里面访问次数过多,虽然最简单的方法就是降低访问频率,但是又不想降低访问频率怎么办呢?查了一下最简单的方法就是使用转轮代理IP,网上找了一些方法 ...

  3. ExtJS4.2.1自定义主题(theme)样式详解

    (基于Ext JS 4.2.1版本) UI组件 学习ExtJS就是学习组件的使用.ExtJS4对框架进行了重构,其中最重要的就是形成了一个结构及层次分明的组件体系,由这些组件形成了Ext的控件. Ex ...

  4. HTML中特殊字符和与之对应的ASCII代码

    ASCII代码是说明了在html中每个特殊字符的属性以及字符的简要说明.在使用html时,如何把ASCII代码添加到网页中.例如版权符号'©'在html中可以通过 "©"来显示. ...

  5. springMvc源码学习之:利用springMVC随时随地获取HttpServletRequest等对象

    一.准备工作: 在web.xml中添加 <listener> <listener-class> org.springframework.web.context.request. ...

  6. EXT2 文件系统

    转自:http://www.cnblogs.com/ggjucheng/archive/2012/08/22/2651641.html#ext2_filesystem 认识ext文件系统 硬盘组成与分 ...

  7. Textarea高度随内容自适应地增长,无滚动条

    <HTML> <HEAD> <meta http-equiv="Content-Type" content="text/html; char ...

  8. CSS3盒模型之box-sizing

    这些天在做一个手机端的页面,遇到了一些问题!首当其冲的就是盒子的溢出问题!大家都知道,手机的尺寸各异,各种型号的手机多得能闪瞎你们的眼睛,为了能 让这些设置更好的浏览我们的页面,我们已经不能固定页面的 ...

  9. 008. asp.net mvc3.0安装文件及其安装时发生错误的解决方案

    0. 安装步骤: vs2010 → vs2010sp1→ AspNetMVC3Setup.exe→ AspNetMVC3Setup_CHS.exe→ AspNetMVC3ToolsUpdateSetu ...

  10. shell流程控制语句

    linux shell有一套自己的流程控制语句,其中包括条件语句(if),循环语句(for,while,until),选择语句(case/select).下面我将通过例子介绍下,各个语句使用方法. 1 ...