当前位置: 首页 > news >正文

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-pipyum -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.xztar -xf Python-3.x.xx.tar\#进入解压后的目录,编译并且安装cd Python-3.x.xx./configure prefix=/usr/local/python3make && 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/python2vim /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进程

相关文章:

centos7环境配置

Python ​ Centos7中自带的python2,如果要是用python3,就需要自己安装了,因为yum源中没有python3,需要下载包进行源码编译安装。 安装步骤 1、安装python3相关依赖包 yum -y install zlib-devel bzip2-devel openssl-devel nc…...

如何解锁华为手机PIN/图案/指纹/人脸锁?

您的手机存储主要数据,因此为您的设备设置安全代码让您高枕无忧。屏幕和生物识别锁可在手机丢失时保护您的手机,并使其在被盗时无法访问。每次您需要密码来解锁手机时,但如果您被锁在密码之外怎么办? 今天的话题将独家帮助华为用…...

物理层基本介绍

corset 0 告诉下行初始带宽是多少 initail DL BWP, 4g 是20M带宽,5G是FR1 如果5G是全带宽的话,手机很快就会没电了。 告诉手机带宽会分布在某一个带宽里面去,将手机的带宽调整就行。 DCI,告诉手机,未来的某一个时刻&a…...

数据库原理及应用期末复习汇总(附某高校期末真题试卷)

文章目录《数据库原理及应用》试题1一、选择题(共35分)二、填空(每空1分,共20分)三、T-SQL综合题(共35分)四、综合应用题(共10分)《数据库原理及应用》试题2一、选择题(共35分)二、填空&#xf…...

mummerplot gnuplot 安装(nucmer)

可用ref:https://blog.sciencenet.cn/home.php?modspace&uid2970729&doblog&id1174911 下载稳定老版本gnuplot v4.6.2 mkdir gnuplot && cd gnuplot wget https://sourceforge.net/projects/gnuplot/files/gnuplot/4.6.2/gnuplot-4.6.2.tar…...

怎样做校园外卖配送系统创业?打造一体化服务校园平台如何进行?

在大学校园里,兼职赚钱、勤工俭学、自主创业是一种普遍现象。如今,大学校园在大力支持在校生自主创业。比如用校园外卖配送系统创业,不仅可以丰富校园生活,接触人和事,还可以积累经验。 怎样做校园外卖配送系统平台&am…...

MySQL(三):切分,主从复制,读写分离

文章目录一、切分水平切分垂直切分水平切分策略二、主从复制三、读写分离一、切分 水平切分 水平切分又称为sharding,它是将同一个表中的记录拆分到多个结构相同的表中。当一个表的数据不断增多的时候,sharding是必然的选择,它可以将数据分布到集群的不…...

王道考研——计算机网络(第一章 计算机网络体系结构)

1.0认识计算机网络 在下载电影(不会出现乱序问题)和微信收发消息(比如表情包乱序了)所使用的协议是不同的 1.1-1概念和功能 (1)计算机网络的概念 (2)计算机网络的功能 (…...

ElementUI中为什么使用this.$refs.form.validate验证成功却直接跳过

ElementUI中为什么使用this.$refs.form.validate验证成功却直接跳过 问题背景 在写一个Vue练手项目时,我使用rulse对表单中用户输入的数据进行校验,但莫名奇妙就发现:当我点击提交表单时,表单中的数据都验证成功了,但是…...

全期望值定理与全方差定理

全期望值定理(law of total expectation)比较熟悉,竟然还有个全方差定理(law of total variance),关于条件期望与条件方差的,总结一下。 1. 全期望值定理 随机变量 XXX 关于另外一个随机变量 …...

股票的最大利润 AcWing (JAVA)

假设把某股票的价格按照时间先后顺序存储在数组中,请问买卖 一次 该股票可能获得的利润是多少? 例如一只股票在某些时间节点的价格为 [9,11,8,5,7,12,16,14]。 如果我们能在价格为 5 的时候买入并在价格为 16 时卖出,则能收获最大的利润 11。…...

Go 语言函数调用参数传递规则

1. 调试环境Go 版本:1.19.3Gdb 版本:12.1CPU 架构:amd64Linux 发行版:Ubuntu 22.04Linux 内核版本:5.15.0-482. 函数调用参数传递规则版本变化在 Go 中函数间进行调用时,主调(caller&#xff09…...

二分查找【零神基础精讲】

来源0x3f:https://space.bilibili.com/206214 文章目录二分查找[34. 在排序数组中查找元素的第一个和最后一个位置](https://leetcode.cn/problems/find-first-and-last-position-of-element-in-sorted-array/)[162. 寻找峰值](https://leetcode.cn/problems/find-p…...

「计算机组成原理」数据的表示和运算(上)

文章目录一、进位计数制1.1 其他进制转十进制1.2 十进制转其他进制1.3 二进制、八进制和十六进制1.3 真值和机器数二、BCD码2.1 8421码2.2 余3码2.3 2421码三、整数的表示和运算3.1 无符号整数3.1.1 无符号整数的表示3.1.2 无符号整数的运算3.2 有符号整数3.2.1 有符号整数的表…...

分层,均质,稀薄燃烧

均质燃烧: 只能使用火花点燃。 即为普通燃烧方式,燃料和空气混合形成一定浓度的可燃混合气(厂家自配),整个燃烧室内混合气的空燃比是相同的,经火花塞点燃燃烧。这种燃烧方式使燃料和空气充分混合,燃料完全燃烧,从而获得大的输出功率。为使混合…...

mybatis-plus小课堂:多表查询【案例篇】(apply 拼接 in SQL,来查询从表某个范围内的数据)

文章目录 引言I 多表查询1.1 多表查询:在mapper.xml 写语句和拼接查询条件1.2 多表关联:Java代码中书写语句和拼接查询条件1.3 案例:左外连接II mybatis-Plus 之 apply 拼接 in SQL2.1 apply源码实现2.2 apply 拼接 in SQLIII 常见问题3.1 Cause: comColumn xxx in where cl…...

HashMap原理详解

一、hashmap简介 hashmap是Java当中一种数据结构,是一个用于存储Key-Value键值对的集合,每一个键值对也叫作Entry。 二、JDK7的HashMap1、JDK7时HashMap的数据结构 1、在JDK7之前,hashmap底层采用数组链表的数据结构来存储数据 2、插入数据采…...

推荐3款远程办公软件

一款好用的远程办公软件能够大大的提高我们的办公效率,在这篇文章中,我们将为您推荐几款常见又好用的远程办公软件,以帮助您能更加高效的远程办公。电脑远程办公软件有很多,本文主要从团队沟通软件、视频会议软件、远程控制软件等…...

计算机中有符号数的表示

文章目录二进制数制十进制二进制位模式基本数据类型无符号数的编码有符号数的编码原码(Sign-Magnitude)反码(Ones Complement)补码(Twos Complement)概念导读编码格式按权展开补码加法扩展一个数字的位表示…...

MySQL(一)服务器连接 库的基本操作

目录 一、连接服务器 二、简单使用 三、校验规则 条件筛选 where 进行order排序 三、查看数据库 使用 show databases;(注意分号和最后一个s) 显示创建数据库的详情信息:使用show create database test2; 四、修改数据库 五…...

Java 语言特性(面试系列2)

一、SQL 基础 1. 复杂查询 (1)连接查询(JOIN) 内连接(INNER JOIN):返回两表匹配的记录。 SELECT e.name, d.dept_name FROM employees e INNER JOIN departments d ON e.dept_id d.dept_id; 左…...

ES6从入门到精通:前言

ES6简介 ES6(ECMAScript 2015)是JavaScript语言的重大更新,引入了许多新特性,包括语法糖、新数据类型、模块化支持等,显著提升了开发效率和代码可维护性。 核心知识点概览 变量声明 let 和 const 取代 var&#xf…...

高频面试之3Zookeeper

高频面试之3Zookeeper 文章目录 高频面试之3Zookeeper3.1 常用命令3.2 选举机制3.3 Zookeeper符合法则中哪两个?3.4 Zookeeper脑裂3.5 Zookeeper用来干嘛了 3.1 常用命令 ls、get、create、delete、deleteall3.2 选举机制 半数机制(过半机制&#xff0…...

【机器视觉】单目测距——运动结构恢复

ps:图是随便找的,为了凑个封面 前言 在前面对光流法进行进一步改进,希望将2D光流推广至3D场景流时,发现2D转3D过程中存在尺度歧义问题,需要补全摄像头拍摄图像中缺失的深度信息,否则解空间不收敛&#xf…...

MODBUS TCP转CANopen 技术赋能高效协同作业

在现代工业自动化领域,MODBUS TCP和CANopen两种通讯协议因其稳定性和高效性被广泛应用于各种设备和系统中。而随着科技的不断进步,这两种通讯协议也正在被逐步融合,形成了一种新型的通讯方式——开疆智能MODBUS TCP转CANopen网关KJ-TCPC-CANP…...

【配置 YOLOX 用于按目录分类的图片数据集】

现在的图标点选越来越多,如何一步解决,采用 YOLOX 目标检测模式则可以轻松解决 要在 YOLOX 中使用按目录分类的图片数据集(每个目录代表一个类别,目录下是该类别的所有图片),你需要进行以下配置步骤&#x…...

Maven 概述、安装、配置、仓库、私服详解

目录 1、Maven 概述 1.1 Maven 的定义 1.2 Maven 解决的问题 1.3 Maven 的核心特性与优势 2、Maven 安装 2.1 下载 Maven 2.2 安装配置 Maven 2.3 测试安装 2.4 修改 Maven 本地仓库的默认路径 3、Maven 配置 3.1 配置本地仓库 3.2 配置 JDK 3.3 IDEA 配置本地 Ma…...

Mac下Android Studio扫描根目录卡死问题记录

环境信息 操作系统: macOS 15.5 (Apple M2芯片)Android Studio版本: Meerkat Feature Drop | 2024.3.2 Patch 1 (Build #AI-243.26053.27.2432.13536105, 2025年5月22日构建) 问题现象 在项目开发过程中,提示一个依赖外部头文件的cpp源文件需要同步,点…...

rnn判断string中第一次出现a的下标

# coding:utf8 import torch import torch.nn as nn import numpy as np import random import json""" 基于pytorch的网络编写 实现一个RNN网络完成多分类任务 判断字符 a 第一次出现在字符串中的位置 """class TorchModel(nn.Module):def __in…...

Python 包管理器 uv 介绍

Python 包管理器 uv 全面介绍 uv 是由 Astral(热门工具 Ruff 的开发者)推出的下一代高性能 Python 包管理器和构建工具,用 Rust 编写。它旨在解决传统工具(如 pip、virtualenv、pip-tools)的性能瓶颈,同时…...