文章目录
信息
Linux系统:CentOS 7
远程终端:MobaXterm(PS:这个真的超好用,免费版的功能就很强大,足够应付日常使用,百度搜索一下就行,用法很简单)
要配置的环境
Python 3.7(挑主流的)
Git(挑稳定版中最新的)
Nginx(挑稳定版中最新的)
SQLite
事先做的准备工作:
ps:确保你的Linux能够连接互联网
1.更新yum:yum update
yum源提示出现Another app is currently holding the yum lock; waiting for it to exit…
解决方法,点这里
2.安装gcc:yum -y install gcc gcc-c++ kernel-devel
一、配置SQLite
1.下载
传送门.
下载这个自动配置的版本,安装简便。
将安装包放到你的Linux系统中
2解压:
[root@bogon mainapp]# tar -zxvf sqlite-autoconf-3310100.tar.gz
3安装
进入解压后的文件
[root@bogon mainapp]# cd sqlite-autoconf-3310100/
./configure #安装配置文件
make #编译
make install #安装,默认的二进制文件安装位置在:/usr/local/lib,
#默认的头文件sqlite3.h sqlite3ext.h安装位置在:/usr/local/include
查看是否安装成功
ls -l /usr/local/lib/*sqlite*
ls -l /usr/local/include/*sqlite*
替换系统中旧的sqlite
[root@bogon superlists]# mv /usr/bin/sqlite3 /usr/bin/sqlite3_old
[root@bogon superlists]# ln -s /usr/local/bin/sqlite3 /usr/bin/sqlite3
[root@bogon superlists]# echo "/usr/local/lib" > /etc/ld.so.conf.d/sqlite3.conf
[root@bogon superlists]# ldconfig
关于ldconfig命令:https://blog.youkuaiyun.com/farmwang/article/details/72877810
二、配置Python环境
选择最新安装的SQLite,作为默认SQLite数据库。
需要预先安装的库。(ps:一定要装一遍,不然后期用python的时候会报ModuleNotFoundError: No module named 'XXXX’这样的错误)
sudo yum -y groupinstall "Development Tools"
sudo yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel
sudo yum -y install libffi-devel sqlite-devel readline-devel tk-devel gdbm-devel
sudo yum -y install db4-devel libpcap-devel xz-devel
参考资料:https://my.oschina.net/mengyoufengyu/blog/2250117
因为有的是和写一些用到SQLite的代码,总提示系统SQLite版本太低,你重新安装了SQLite却发现不知道怎么让Python去找它…so,干脆从源头解决问题。
1. 下载、解压
[root@bogon mainapp]# tar -zxvf Python-3.7.6.tgz
2.配置、编译、安装
[root@bogon Python-3.7.6]# LD_RUN_PATH=/usr/local/lib ./configure LDFLAGS="-L/usr/local/lib" CPPFLAGS="-I/usr/local/include" --prefix=/opt/python3.7
......
[root@bogon Python-3.7.6]# LD_RUN_PATH=/usr/local/lib make
LD_RUN_PATH=/usr/local/lib
LDFLAGS="-L/usr/local/lib"
CPPFLAGS="-I/usr/local/include"
是为了告诉Python到哪个目录中找SQLite,没有的话,编译出来的Python仍将使用系统自带的SQLite
参考资料1
参考资料2
–prefix=/opt/python3.7
这个参数的作用是指定python的安装路径
如果不需要配置最新SQLite可以使用这个
./configure --prefix=/opt/python3.7
make
make install
make
make install
出现了一个问题:can’t decompress data; zlib not available
原因:缺乏依赖包zlib
导致的问题:因为到这里安装终止,所以后面的pip3没有安装,会找不到pip3
解决方法:yum -y install zlib*
验证python指定的sqlite的版本
[root@bogon Python-3.7.6]# sqlite3 --version
3.31.1 2020-01-27 19:55:54 3bfa9cc97da10598521b342961df8f5f68c7388fa117345eeb516eaa837bb4d6
[root@bogon Python-3.7.6]# python3
Python 3.7.6 (default, May 11 2020, 18:03:25)
[GCC 4.8.5 20150623 (Red Hat 4.8.5-39)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import sqlite3
>>> sqlite3.sqlite_version
'3.31.1'
>>>
可以看到python指定的sqlite已经是最新版本
3.建立软链接
[root@bogon Python-3.7.6]# ln -s /opt/python3.7/bin/python3.7 /usr/bin/python3
[root@bogon Python-3.7.6]# python3 -V
Python 3.7.6
[root@bogon Python-3.7.6]# pip3 -V
pip 19.2.3 from /opt/python3.7/lib/python3.7/site-packages/pip (python 3.7)
[root@bogon Python-3.7.6]#
到这里Python就可以用了
三、配置Nginx
1.下载、安装、解压
[root@bogon mainapp]# tar -zxvf nginx-1.18.0.tar.gz
2.安装依赖
[root@bogon mainapp]# yum -y install pcre pcre-devel zlib openssl
3.编译、安装
./configure
make
make install
默认安装路径在/usr/local/nginx下
cd /usr/local/nginx/conf
找到nginx.conf文件,对nginx进行配置
4.启动nginx
[root@bogon sbin]# ./nginx
[root@bogon sbin]# ps -ef | grep nginx #查看是否启动成功
root 36185 1 0 22:06 ? 00:00:00 nginx: master process ./nginx
nobody 36186 36185 0 22:06 ? 00:00:00 nginx: worker process
root 37269 16221 0 22:09 pts/1 00:00:00 grep --color=auto nginx
5.重启防火墙、开放指定端口
[root@bogon sbin]# firewall-cmd --reload
success
[root@bogon sbin]# firewall-cmd --add-port=8090/tcp --permanent
success
[root@bogon sbin]# firewall-cmd --reload
success
6.重启nginx,浏览器访问
[root@bogon sbin]# ./nginx -s reload
成功是d=====( ̄▽ ̄*)b
参考资料:1CentOS7.X安装Nginx
四、配置virtualenv和VirtualenvWrapper
这个之前总结过,请走传送门
五、配置mysql
不知道为啥,每次换新环境,配置mysql总是困难重重
参考资料1:CentOS7 yum方式安装MySQL5.7
参考资料2:安装MySQL出现Job for mysqld.service failed because the control process exited with error code问题
参考资料3:ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
第一步
#下载、安装mysql官方的yum仓库
wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm
yum -y install mysql57-community-release-el7-10.noarch.rpm
#安装mysql服务
yum -y install mysql-community-server
第二步
启动mysql服务
service mysqld start
查看mysql进程状态
service mysqld status
这个是正确的结果:
这个是失败的
解决方法:
重新初始化mysql,注意将旧的/var/lib/mysql删除.否则会提示无法初始化mysql,在/var/lib/mysql
[root@bogon ~]# rm -rf /var/lib/mysql
[root@bogon ~]# service mysqld start
Redirecting to /bin/systemctl start mysqld.service
第三步
查看数据库初始密码grep "password" /var/log/mysqld.log
登录
mysql -u root -p
修改初始密码ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password';
发现当前密码策略等级太高,简单密码不能用
选一个复杂些的,包含字母、数字、符号,长度在8位以上
查看当前密码策略的要求
mysql> SHOW VARIABLES LIKE 'validate_password%';
+--------------------------------------+--------+
| Variable_name | Value |
+--------------------------------------+--------+
| validate_password_check_user_name | OFF |
| validate_password_dictionary_file | |
| validate_password_length | 8 |
| validate_password_mixed_case_count | 1 |
| validate_password_number_count | 1 |
| validate_password_policy | MEDIUM |
| validate_password_special_char_count | 1 |
+--------------------------------------+--------+
7 rows in set (0.00 sec)
更改密码策略等级为"低"
mysql> set global validate_password_policy=LOW;
Query OK, 0 rows affected (0.00 sec)
mysql> set global validate_password_length=6;
Query OK, 0 rows affected (0.00 sec)
mysql> SHOW VARIABLES LIKE 'validate_password%';
+--------------------------------------+-------+
| Variable_name | Value |
+--------------------------------------+-------+
| validate_password_check_user_name | OFF |
| validate_password_dictionary_file | |
| validate_password_length | 6 |
| validate_password_mixed_case_count | 1 |
| validate_password_number_count | 1 |
| validate_password_policy | LOW |
| validate_password_special_char_count | 1 |
+--------------------------------------+-------+
7 rows in set (0.00 sec)
这时就可以使用类似123456这样的简单密码
六、配置redis
windows平台的安装可参照这篇博客:https://blog.youkuaiyun.com/weixin_41996197/article/details/89427073
下载链接
1.下载、解压
[root@bogon mainapp]# tar -zxvf redis-6.0.1.tar.gz
2.编译、安装
redies 6.0.1版本需要的gcc版本较新,Centos 7 自带的gcc版本为gcc-4.8.5-39.el7.x86_64
因此需要先更新gcc,否则会出现在函数“XXX”中 server.c:5118:XXX: 错误:‘XXXX’没有名为‘XXX’的成员
升级到gcc 9.3:
yum -y install centos-release-scl
yum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils
scl enable devtoolset-9 bash
需要注意的是scl命令启用只是临时的,退出shell或重启就会恢复原系统gcc版本。
如果要长期使用gcc 9.3的话:
echo "source /opt/rh/devtoolset-9/enable" >>/etc/profile
这样退出shell重新打开就是新版的gcc了
以下其他版本同理,修改devtoolset版本号即可
原文连接:https://blog.youkuaiyun.com/zhengwei424/article/details/105901955/
因为新版本的redis自带jemalloc,因此在make编译时无需指定MALLOC=libc。
[root@bogon redis-6.0.1]# make
[root@bogon redis-6.0.1]# cd src
[root@bogon src]# make install
启动redis服务
[root@bogon src]# ./redis-server
七、配置Git
1.通过yum安装,添加用户、邮箱
[root@bogon NewsWeb]# yum -y install git
[root@bogon NewsWeb]# git config --global user.name "xxx"
[root@bogon NewsWeb]# git config --global user.email "xxx@xxx.com"
[root@bogon NewsWeb]# git config --list
user.name=xxx
user.email=xxx@xxx.com
[root@bogon NewsWeb]#
2.配置ssh
生成密匙
[root@bogon NewsWeb]# ssh-keygen -t rsa -C "xxx@xxx.com"
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:m2R7fN/rR0a8KaSJkmbz9lVXeLVDwpUpVXnRU18luV4 liulangdeerhu@qq.com
The key's randomart image is:
+---[RSA 2048]----+
| ..+*/|
| o+BB|
| o=*|
| ...E|
| S . +. ++|
| O * o .oo+|
| o B o ...o |
| + ... ..|
| . .. oo+|
+----[SHA256]-----+
[root@bogon NewsWeb]# cat /root/.ssh/id_rsa.pub
ssh-rsa xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
生成的密匙是成对儿出现的,将公匙中的内容添加到GitHub的设置中即可
3.使用
初始化本地仓库
[root@bogon NewsWeb]# git init
初始化空的 Git 版本库于 /project/NewsWeb/.git/
添加远程仓库
[root@bogon NewsWeb]# git remote add origin 远程仓库地址
从远程仓库clone代码到本地仓库
[root@bogon NewsWeb]# git clone 远程仓库地址
八、配置RVM
1.下载
https://github.com/rvm/rvm/archive/1.29.10.tar.gz
2.安装
[tu@localhost rvm-1.29.10]$ sudo ./install
使用:
查看库中软件版本
[tu@localhost rvm-1.29.10]$ source /etc/profile.d/rvm.sh
[tu@localhost rvm-1.29.10]$ rvm list known
# MRI Rubies
[ruby-]1.8.6[-p420]
[ruby-]1.8.7[-head] # security released on head
[ruby-]1.9.1[-p431]
[ruby-]1.9.2[-p330]
[ruby-]1.9.3[-p551]
[ruby-]2.0.0[-p648]
[ruby-]2.1[.10]
[ruby-]2.2[.10]
[ruby-]2.3[.8]
[ruby-]2.4[.9]
[ruby-]2.5[.7]
[ruby-]2.6[.5]
[ruby-]2.7[.0]
ruby-head
安装指定版本的ruby
[tu@localhost rvm-1.29.10]$ rvm install ruby 2.7.0
使用指定版本的ruby
[tu@localhost rvm-1.29.10]$ rvm use 2.7.0
Using /home/tu/.rvm/gems/ruby-2.7.0
[tu@localhost rvm-1.29.10]$ ruby --version
ruby 2.7.0p0 (2019-12-25 revision 647ee6f091) [x86_64-linux]
卸载ruby
rvm remove 2.7.0