centos devtoolset centos如何安装软件
Centos6.10解决yum源失效
在项目开发过程中,常常需要使用 CentOS 6.10和 devtoolset-6。然而, CentOS 6.10已于2020年11月30日停止维护,导致原有 CentOS系统自带的 Yum无法连接到旧版本的仓库,出现 YumRepo Error。此问题需要通过更新陈旧版本的仓库,使之指向可用的 vault来解决。
为了解决 Yum安装出现的错误,首先需要对 yum源进行修改。步骤如下:
1.备份系统旧源
2.编辑 CentOS-Base.repo
在该文件中,需要将所有配置项 mirrolist开头的源地址注释掉,然后拷贝所有配置项 baseurl开头的源地址行,并去除#号注释,同时将源地址修改为官方镜像源地址。文中以 centos6.10为例,将 baseurl中的$releaserver替换成 6.10。
修改后的 CentOS-Base.repo配置如下:
执行以下命令重建镜像源缓存,测试配置的镜像源是否生效:
yum主要常用命令如下:
完成上述操作后,接下来需要进行以下步骤以安装使用 SCL+devtoolset-6。
1.安装 SCL,安装完成后,会在/etc/yum.repos.d下生成 2个 repo源文件。
2.配置 SCL源。
在 CentOS-SCLo-scl.repo和 CentOS-SCLo-scl-rh.repo文件中,分别备份文件后,需要将 centos-sclo-sclo和 centos-sclo-rh项下的 mirrorlist注释掉,拷贝 baseurl行,去除#注释,并修改源地址为新的镜像源地址。
修改后的 CentOS-SCLo-scl.repo和 CentOS-SCLo-scl-rh.repo配置如下:
由于项目需求安装 devtoolset-6,因此需要将源地址中"centos/6"修改为"centos/6.9",以便指向 devtoolset-6安装包所在的 6.9目录,确保路径与 devtoolset版本需求相匹配。
5.清理重建 yum缓存
3.安装 scl工具
4.安装 devtoolset-6
通过以上步骤,可有效解决 CentOS6.10配置 yum源失效的问题,同时成功安装使用 SCL+devtoolset-6,满足项目开发需求。
CentOS安装Redis单实例
1、创建安装目录
为了方便管理我们一般统一软件的安装目录,这里选择安装的目录是:
/usr/local/soft
2、下载Redis
我们通过wget命令从Redis官网下载压缩包->\
当前最新版本下载地址->
cd/usr/local/softwget、解压tar-zxvfredis-6.2.4.tar.gz4、安装gcc依赖
Redis是C语言编写,编译需要GCC\Redis6.x.x版本支持了多线程,需要gcc的版本大于4.9,我们需要查看默认GCC版本,如果版本过低则需要升级
gcc-v
我的新安装的虚拟机CentOS显示->
证明我的没有安装gcc,安装gcc->
yuminstallgcc
再次查看安装后的版本,发现是4.8.5,这个是CentOS默认的版本,我们需要对gcc进行升级->
yum-yinstallcentos-release-sclyum-yinstalldevtoolset-9-gccdevtoolset-9-gcc-c++devtoolset-9-binutilssclenabledevtoolset-9bashecho"source/opt/rh/devtoolset-9/enable">>/etc/profile
查看升级后的版本->
5、编译安装cdredis-6.2.4/srcmakeinstall
编译过程如下:
看到如下结果输出则编译成功
或者在src目录下出现服务端和客户端的脚本
redis-sentinelredis-serverredis-cli6、修改配置文件
Redis的配置文件在解压目录下的redis.conf
6.1首先设置后台启动,防止窗口一关闭服务就挂掉
默认后台启动参数为no
#BydefaultRedisdoesnotrunasadaemon.Use'yes'ifyouneedit.#NotethatRediswillwriteapidfilein/var/run/redis.pidwhendaemonized.#WhenRedisissupervisedbyupstartorsystemd,thisparameterhasnoimpact.daemonizeno
修改成yes
#BydefaultRedisdoesnotrunasadaemon.Use'yes'ifyouneedit.#NotethatRediswillwriteapidfilein/var/run/redis.pidwhendaemonized.#WhenRedisissupervisedbyupstartorsystemd,thisparameterhasnoimpact.daemonizeyes6.2允许其他主机访问
根据Redis的文档配置注释,我们要运行其他主机访问有多种方式:
可以选择配置访问主机的IPaddress
bind-::相当于允许所有其它主机访问
bind0.0.0.0相当于允许所有其它主机访问
直接注释相当于允许所有其它主机访问
#bind192.168.1.10010.0.0.1#listensontwospecificIPv4addresses#bind127.0.0.1::1#listensonloopbackIPv4andIPv6#bind*-::*#likethedefault,allavailableinterfaces
我的处理方式,安装文档的注释来配置:
6.3配置访问密码
如果是要考虑安全性,一定要配置密码,找到requirepass配置处,新增如下配置(阿里云等云服务其外网访问一定要配置,作者被黑过,整台服务器重启都无法重启,损失惨重,但是穷,官方处理需要Money,建议这里一定要谨慎)
tar-zxvfredis-6.2.4.tar.gz07、启动Redis
使用redis-server来启动,启动的方式如下:
tar-zxvfredis-6.2.4.tar.gz1
或者这个也一样:
tar-zxvfredis-6.2.4.tar.gz2
查看端口是否启动成功:
tar-zxvfredis-6.2.4.tar.gz38、客户端
进入客户端的方式如下:
tar-zxvfredis-6.2.4.tar.gz49、停止Redis
停止Redis有两种方式:
方式一,在客户端中执行tar-zxvfredis-6.2.4.tar.gz5
tar-zxvfredis-6.2.4.tar.gz5
方式二,暴力kill-9
tar-zxvfredis-6.2.4.tar.gz610、配置别名
为了方便启动Redis和进入客户端,我们可以通过配置别名来实现
tar-zxvfredis-6.2.4.tar.gz7
添加如下配置:
注意''很重要
redis与rcli后面的=两边不能有空格
aliasredis='tar-zxvfredis-6.2.4.tar.gz1'aliasrcli='tar-zxvfredis-6.2.4.tar.gz4'
使配置生效:
tar-zxvfredis-6.2.4.tar.gz9
现在我们可以通过redis启动Redis服务,使用rcli进入Redis客户端:
centos升级gcc到8.3.1
升级CentOS 7中的gcc至8.3.1版本,只需执行以下步骤,无需手动下载源码编译。
1、首先安装centos-release-scl:
sudo yum install centos-release-scl
2、安装devtoolset,以安装8.3.1版本为例,确保正确输入对应的devtoolset版本号:
sudo yum install devtoolset-8-gcc*
3、激活devtoolset,允许在多个版本之间切换。激活命令仅对当前会话有效,重启后需重新激活:
scl enable devtoolset-8 bash
查看gcc版本:
gcc-v
显示版本信息,如:gcc version 8.3.1 20190311(Red Hat 8.3.1-3)(GCC)
激活命令和devtoolset目录下的enable文件用于切换版本。如需切换至devtoolset-8,执行:
source/opt/rh/devtoolset-8/enable
将新版本gcc软链接至/usr/bin/以简化切换:
mv/usr/bin/gcc/usr/bin/gcc-4.8.5 ln-s/opt/rh/devtoolset-8/root/bin/gcc/usr/bin/gcc mv/usr/bin/g++/usr/bin/g++-4.8.5 ln-s/opt/rh/devtoolset-8/root/bin/g++/usr/bin/g++ gcc--version g++--version