Bootstrap

centos7环境配置

Python

​ Centos7中自带的python2,如果要是用python3,就需要自己安装了,因为yum源中没有python3,需要下载包进行源码编译安装。

安装步骤
1、安装python3相关依赖包
yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make

执行这条命令即可,没有报错,表示安装成功

2、添加epel扩展源和安装python-pip
添加epel扩展源

yum -y install epel-release

安装python-pip

yum -y install python-pip
3、安装wget命令
yum -y install wget
4、导入python3源码包

使用wget下载python3源码包,也可以自行去官网下载源码包使用

wget [https://www.python.org/ftp/python/3]
5、解压源码包,并且编译安装
#解压,根据下载版本的不同更改后面的名称

xz -d Python-3.x.xx.tar.xz

tar -xf Python-3.x.xx.tar

\#进入解压后的目录,编译并且安装

cd Python-3.x.xx

./configure prefix=/usr/local/python3

make && make install

这个过程需要点时间,没有报错表示安装完成

安装的时候可能会报了一个错误,ModuleNotFoundError: No module named '_ctypes'

是因为Python3中有个内置模块叫ctypes,它是Python3的外部函数库模块,它提供兼容C语言的数据类型,并通过它调用Linux系统下的共享库(Shared library),此模块需要使用CentOS7系统中外部函数库(Foreign function library)的开发链接库(头文件和链接库)。
由于在CentOS7系统中没有安装外部函数库(libffi)的开发链接库软件包,所以在安装pip的时候就报了"ModuleNotFoundError: No module named ‘_ctypes’"的错误。

解决方法:

yum -y install libffi-devel

执行上面这条命令后重新make && make install,这次没有报错,安装成功。

6、建立软链接

为了能直接使用python3命令,建立软连接,把python3的bin添加到环境变量中使用ls命令为python3建立软链接到/usr/bin下面,我是直接使用python3,因为系统默认python命令是启动python2,如果想使用python命令来启动python3,下面会说明

\

#添加python3的软链接
ln -s /usr/local/python3/bin/python3.7 /usr/bin/python3

\#添加python3 pip的软连接,我这里直接命名为pip3和python2的区别
ln -s /usr/local/python3/bin/pip3 /usr/bin/pip3

添加python3路径d到环境bi变量
export PATH=$PATH:/usr/local/python3/bin

上面这条命令是临时添加,要想永久添加需要在配置文件中添加。
vim /etc/profile

在文件最后添加 export PATH=$PATH:/usr/local/python3/bin

重新加载配置文件
source /etc/profile

查看配置文件是否添加成功
echo $PATH

出现这个表示配置文件添加成功
/usr/local/python3/bin
优化展示

python命令原来指向python2,改成指向python3,让python2指向的是python2.7

#将原来的链接备份

mv /usr/bin/python /usr/bin/python.bak

因为系统默认python2 和 python都是指向python2.7,所以我们改变python命令的指向不会影响Python2的使用

\#添加python3的软链接

ln -s /usr/local/python3/bin/python3.6 /usr/bin/python

要知道执行到这里,python命令启动的是python3.7,python2命令才是启动python2.7

因为yum命令中使用了python2,所以需要改变一些配置,不然yum会无法使用

vim /usr/bin/yum

把#! /usr/bin/python修改为#! /usr/bin/python2

vim /usr/libexec/urlgrabber-ext-down

把#! /usr/bin/python 修改为#! /usr/bin/python2

MySQL

安装部署

1、Centos7默认安装 mariadb ,为防止和MySQL冲突,需要先卸载。
(1)查看mariadb的版本信息。

rpm -qa | grep mariadb

结果显示为(mariadb版本会有不同):mariadb-libs-5.5.65-2.el7.x86_64

(2)卸载(注意mariadb版本)。

sudo rpm -e mariadb-libs-5.5.65-2.el7.x86_64 --nodeps

2、下载MySQL安装包

(1)如果不存在 software 和 mysql 目录,就新建

mkdir -p /usr/software/mysql/

(2)切换到 /usr/software/mysql/

cd /usr/software/mysql/

(3)任选一种方式下载安装包

wget方式下载

wget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.40-1.el7.x86_64.rpm-bundle.tar

curl方式下载

curl -O https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.40-1.el7.x86_64.rpm-bundle.tar

3、解压安装包

tar -xvf mysql-5.7.40-1.el7.x86_64.rpm-bundle.tar

4、安装MySQL组件

依此安装5个MySQL软件组件,注意顺序千万不能乱!

rpm -ivh mysql-community-common-5.7.40-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.40-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-compat-5.7.40-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.40-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.40-1.el7.x86_64.rpm

5、查看mysql各组件安装情况

rpm -qa|grep mysql
MySQL数据库配置

MySQL刚安装是没有密码的,需要初始化一个临时密码,再去修改。

1、生成临时密码

sudo mysqld --initialize

2、查看临时密码

(1)方法1查看临时密码:

grep 'temporary password' /var/log/mysqld.log

(2)方法2查看临时密码:

tail /var/log/mysqld.log

3、更改 /var/lib/mysql 目录权限

sudo chown -R mysql:mysql /var/lib/mysql

4、启动 MySQL 并查看启动情况
(1)设置开机启动 MySQL:

systemctl enable mysqld

(2-1)启动 MySQL:

systemctl start mysqld

(2-2)停止 MySQL:

systemctl stop mysqld

(2-3)查看 MySQL 运行状态:

systemctl status mysqld

(3)查看启动情况:

ps -aux|grep mysql

5、试试连接 MySQL 并输入临时密码

mysql -uroot -p

6、修改root用户密码(例如 123456 等)

set password = password('123456');

Nginx

安装

1、将Nginx源码压缩包上传机器

2、解压文件 nginx-1.xx.x.tar.gz

1)检查是否存在 nginx(有的话需要卸载掉自带的

whereis nginx
rm -rf ...

2)找到压缩包并解压

tar -zxvf nginx-1.xx.x.tar.gz

3、配置Nginx

./configure			#先执行
make			    #执行完./configure之后,敲make回车
make install		#确认是否安装成功

4、启动Nginx

  • 一般是安装在Linux虚拟机上的/usr/local/nginx目录下,可以通过查找
whereis nginx			#查找nginx文件
cd /usr/local/nginx		#进入该文件

启动sbin/目录下的 nginx 文件

cd ./sbin		#进入sbin文件
./nginx			#启动nginx程序

5、拓展

常用命令

修改配置文件后,重新加载修改的文件,并在防火墙中开启自定义端口

:wq						# 保存并退出
./nginx -s reload		#在刚刚的./sbin目录下重新加载该文件
firewall-cmd --zone=public --add-port=81/tcp --permanent		# 开启防火墙端口81
systemctl restart firewalld.service		#重启防火墙
./nginx -s stop		#停止nginx
./nginx	-s quit		#安全退出
./nginx -s reload	#修改了文件之后重新加载该程序文件
ps aux|grep nginx	#查看nginx进程

服务自启动

  1. 编写服务脚本,如script.sh
 nohup command > output.log &
  1. 执行权限
chmod +x /etc/init.d/script
  1. 修改脚本文件参数
# chkconfig: 2345 10 90
# description: Start and Stop script_name
  1. 增加系统服务
chkconfig --add script_name
chkconfig --list script_name
  1. 测试
service script_namestart
;