不要迷上linux 安装yum源 安装epel源

获取yum源

查看yum
cat /etc/yum.conf

查看yum安装包位置,centos7一般情况都在这个位置
ll /var/cache/yum/x86_64/7/

进入yum配置文件目录

  • cd /etc/yum.repos.d/

备份配置文件(重新命名 mv 原文件名 新文件名 )

  • mv CentOS-Base.repo CentOS-Base.repo.backup

下载网易163的yum源配置

可选到阿里开源镜像站点下载系统对应版本的repo文件,并重命名

清除系统yum缓存并生成新的yum缓存

  • yum clean all && yum makecache

查看yum安装包:

  • rpm -qa|grep yum
yum-metadata-parser-1.1.4-10.el7.x86_64
yum-3.4.3-154.el7.centos.noarch
yum-utils-1.1.31-50.el7.noarch
yum-plugin-fastestmirror-1.1.31-42.el7.noarch

有的话卸载

rpm(redhat package manager), rpm包,由“-”、“.”构成,包名、版本信息、版本号、运行平台,--nodeps(不验证相互关联性)

  • rpm -e 软件名.rpm --nodeps #单个卸载
  • rpm -qa|grep yum|xargs rpm -e --nodeps #批量卸载

进入centos镜像网站找到自己对应系统需要的yum包

查看系统平台信息:

  • cat /etc/redhat-release
CentOS Linux release 7.7.1908 (Core)

查看系统的位数:

  • file /bin/ls

下载yum包推荐网易163镜像网站

注意:旧的包和预下载的包,名字有不同,主要是版本和操作系统位数的不同,要按URL/路径一步步检索,如第一个包只搜索
centos,第二个包搜索7.7.1908

Linux批量安装rpm包(单个下载,注意)

mv /root/原来的位/*rpm ./root              #迁移
rpm -ivh --force --nodeps `软件名.rpm`     #单删
rpm -ivh --force --nodeps yum-*rpm         #多删

安装epel源

EPEL 是yum的一个软件源,里面包含了许多基本源里没有的软件了,但在我们在使用epel时是需要安装它才可以了,EPEL,即Extra Packages for Enterprise Linux的简称,是为企业级Linux提供的一组高质量的额外软件包,包括但不限于Red Hat Enterprise Linux (RHEL), CentOS and Scientific Linux (SL), Oracle Enterprise Linux (OEL),使用docker之前安装EPEL源

切换到/etc/yum.repos.d/目录下

  • cd /etc/yum.repos.d

下载好的有两个epel的.repo文件:

epel.repo
epel-testing.repo

备份

mv /etc/yum.repos.d/epel.repo /etc/yum.repos.d/epel.repo.backup
mv /etc/yum.repos.d/epel-testing.repo /etc/yum.repos.d/epel-testing.repo.backup

下载新repo 到/etc/yum.repos.d/,并重命名保存

再次清除系统yum缓存,并重新生成新的yum缓存

  • yum clean all && yum makecache fast

若上面两条命令有报错,一般为配置文件更改不完全,可根据错误信息查找配置文件中更改错误

查看系统可用的yum源和所有的yum源,安装源

  • yum repolist enabled
  • yum repolist all

更新所有

  • yum update

linux 管道符号 | && || 等等特殊符号笔记

重导向就是使命令改变它所认定的标准输出

  • >可将结果输出到文件中,该文件原有内容会被删除,
  • >>则将结果附加到文件中,原文件内容不会被删除。
  • <可以改变标准输入。如:
    • cat data1.txt>>data2.txt(将data1.txt文件的内容加在data2.txt文件的后面)
  • 管道|可将命令的结果输出给另一个命令作为输入之用:
    • man mtools|grep str (在mtools的帮助中搜索包含“str”的句子)
    • man mtools|less(把输出用管道导入到一个叫做 less 的工具。less 是一个分页工具,它允许你一页一页地查看信息。)

连接符号:;

  • 当有几个命令连续执行时,我们可以把它们放在一行内,中间用;分开。
    • mkdir myfile; cp /tmp/myfile.txt myfile

后台执行:&

当要把命令放在后台执行时,在命令的后面加上&

Linux shell的 && 和 ||

shell 在执行某个命令的时候,会返回一个返回值,该返回值保存在 shell 变量 $? 中。当 $? == 0 时,表示执行成功;当 $? == 1 时,表示执行失败。

有时候,下一条命令依赖前一条命令是否执行成功。shell 提供了 && 和 || 命令执行控制的功能,shell 将根据 && 或 || 前面命令的返回值来控制其后面命令是否执行。

  • &&(命令执行控制)
    command1 && command2 [&& command3 ...]

    • && 连接命令,实现逻辑与的功能。
    • 只有在 && 左边的命令返回(命令返回值 $? == 0),&& 右边的命令才会被执行。
    • 只要有一个命令返回假(命令返回值 $? == 1),后面的命令就不会被执行。
  • ||(命令执行控制)

    • 命令之间使用 || 连接,实现逻辑或的功能。
    • 只有在 || 左边的命令返回(命令返回值 $? == 1),|| 右边的命令才会被执行。这和 c 语言中的逻辑或语法功能相同,即实现短路逻辑或操作。
    • 只要有一个命令返回真(命令返回值 $? == 0),后面的命令就不会被执行。
示例 2 
@ubuntu:~$ rm ~/Desktop/1.txt || echo "fail" 
 
在示例 2 中,如果 ~/Desktop 目录下不存在文件 1.txt,将输出提示信息。 
 
示例 3 
@ubuntu:~$ rm ~/Desktop/1.txt && echo "success" || echo "fail" 
 
在示例 3 中,如果 ~/Desktop 目录下存在文件 1.txt,将输出 success 提示信息;否则输出 fail 提示信息。 

() (命令组合)

语法格式:(command1;command2[;command3...])

  • 同一行命令用 (;) 分隔。等同于多个独立的命令单独执行的效果。
  • () 表示在当前 shell 中将多个命令作为一个整体执行。需要注意的是,使用 () 的命令在执行前面都不会切换当前工作目录,也就是说命令组合都是在当前工作目录下被执行的,尽管命令中有切换目录的命令。
  • 命令组合常和命令执行控制结合起来使用。
示例 4 
@ubuntu:~$ rm ~/Desktop/1.txt || (cd ~/Desktop/;ls -a;echo "fail") 
 
在示例 4 中,如果目录 ~/Desktop 下不存在文件 1.txt,则执行命令组合。

原文地址:https://www.cnblogs.com/justblue/p/13021695.html