虚拟机安装Centos系统这里就不多说了
查看Linux版本
cat /etc/redhat-release
查看系统配置
cat /proc/cupinfo
查看内存大小
free -m
查看磁盘大小
df -h
安装python3.7
-
1.首先,你要知道系统现在的python的位置在哪儿:
[root@root ~]# whereis python
python: /usr/bin/python2.7 /usr/bin/python /usr/lib/python2.7 /usr/lib64/python2.7 /etc/python /usr/include/python2.7 /usr/share/man/man1/python.1.gz
可以知道我们的
python
在/usr/bin
目录中
[root@root ~]# cd /usr/bin/
[root@root bin]# ll python*
lrwxrwxrwx. 1 root root 7 2月 7 09:30 python -> python2
lrwxrwxrwx. 1 root root 9 2月 7 09:30 python2 -> python2.7
-rwxr-xr-x. 1 root root 7136 8月 4 2017 python2.7
可以看到,
python
指向的是python2
,python2
指向的是python2.7
,因此我们可以装个python3
,然后将python指向python3
,然后python2
指向python2.7
,那么两个版本的python
就能共存了。
-
2.因为我们要安装python3,所以要先安装相关包,用于下载编译python3:
yum install gdbm-devel expat-devel zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc make
运行了以上命令以后,就安装了编译python3所用到的相关依赖
-
3.默认的,centos7也没有安装pip,不知道是不是因为我安装软件的时候选择的是最小安装的模式。
#运行这个命令添加epel扩展源
yum -y install epel-release
#安装pip
yum install python-pip
-
4.用pip装wget
pip install wget
-
5.用wget下载python3的源码包
wget https://www.python.org/ftp/python/3.6.4/Python-3.6.4.tar.xz
-
6.编译python3源码包
#解压
xz -d Python-3.6.4.tar.xz
tar -xf Python-3.6.4.tar
#进入解压后的目录,依次执行下面命令进行手动编译
cd Python-3.6.4
./configure prefix=/usr/local/python3
make && make install
# 如果出现can't decompress data; zlib not available这个错误,则需要安装相关库
#安装依赖zlib、zlib-devel
yum install zlib zlib
yum install zlib zlib-devel
#安装时报错 ModuleNotFoundError: No module named '_ctypes'的解决办法
#然后从config开始重新安装
yum install libffi-devel
#pip3 install时报错 “pip is configured with locations that require TLS/SSL, however the ssl module in Python is not available.”
先安装 openssl-dev ,然后重新编译安装,只是在编译的过程中加入
--enable-optimizations
如果最后没提示出错,就代表正确安装了,在
/usr/local/
目录下就会有python3
目录
-
7.添加软链接
#将原来的链接备份
mv /usr/bin/python /usr/bin/python.bak
#添加python3的软链接
ln -s /usr/local/python3/bin/python3.6 /usr/bin/python
#测试是否安装成功了
python -V
-
8.更改yum配置,因为其要用到python2才能执行,否则会导致yum不能正常使用
cd /usr/bin/
ls yum*
将这些文件中的#! /usr/bin/python修改为#! /usr/bin/python2
vi /usr/libexec/urlgrabber-ext-down
把#! /usr/bin/python 修改为#! /usr/bin/python2
启动python2:
启动python3:
到此python3安装完成
安装mysql数据库
- 这里直接安装mariadb ,这是mysql的一个分支,效果一样
yum -y install mariadb-server
- 启动mariadb
systemctl start mariadb.service
- 设置开机启动
systemctl enable mariadb.service
- 修改mysql root 密码
mysqladmin -uroot password "密码"
- 进入mariadb
mysql -uroot -p"密码"
- 查看数据库信息
\s
- 字符集不对,将字符集改为utf8
vi /etc/my.cnf
改为:
character-set-server=utf8
- 重启mariadb服务器
systemctl restart mariadb.service
到此数据库安装完成
安装Nginx
-
安装所需环境
yum -y install gcc gcc-c++ openssl-devel pcre-devel httpd-tools zlib-devel
-
下载Nginx
wget -c https://nginx.org/download/nginx-1.12.0.tar.gz
或者官网直接下载:https://nginx.org/en/download.html
-
解压
依然是直接命令:
tar -zxvf nginx-1.12.0.tar.gz
cd nginx-1.12.0
-
配置
其实在nginx-1.12.0
版本中你就不需要去配置相关东西,默认就可以了。当然,如果你要自己配置目录也是可以的。
- 使用默认配置
./configure --prefix=/usr/local/nginx
-
编译安装
make && make install
-
查找安装路径:
whereis nginx
-
启动、停止nginx
cd /usr/local/nginx/sbin/
./nginx
./nginx -s stop
./nginx -s quit
./nginx -s reload
启动时报80端口被占用:
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
解决办法:安装net-tool 包:
yum install net-tools
./nginx -s quit
:此方式停止步骤是待nginx进程处理任务完毕进行停止。
./nginx -s stop
:此方式相当于先查出nginx进程id再使用kill命令强制杀掉进程。
-
查询nginx进程:
netstat -anptu | grep nginx
或者
ps aux|grep nginx
-
重启 nginx
1.先停止再启动(推荐):
对 nginx
进行重启相当于先停止再启动,即先执行停止命令再执行启动命令。如下:
./nginx -s quit
./nginx
2.重新加载配置文件:
当 nginx
的配置文件 nginx.conf
修改后,要想让配置生效需要重启nginx
,使用-s reload
不用先停止 nginx
再启动 nginx
即可将配置信息在 nginx
中生效,如下:
./nginx -s reload
启动成功后,在浏览器可以看到这样的页面:
如果在虚拟机中的Centos启动了Nginx后,在本机的浏览器无法打开虚拟机对应IP的页面需要在Centos中设置防火墙:
/sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT
-
开机自启动
即在rc.local
增加启动代码就可以了。
vi /etc/rc.local
增加一行 /usr/local/nginx/sbin/nginx
设置执行权限:
chmod 755 rc.local
到这里,nginx就安装完毕了,启动、停止、重启操作也都完成了,当然,你也可以添加为系统服务,我这里就不在演示了。
网友评论