day24 Linux软件包管理

第一章 CentOS软件包管理

1.CentOS软件包安装方式

分类 复杂程度 版本
rpm包 预编译安装,安装简单 软件版本偏低
源码包 手动编译安装,安装繁琐 软件版本随意
二进制包 解压即可用,安装简单 不能修改源码

2.RPM命令使用

命令格式:

rpm [选项][软件包名称]

安装软件时常用的选项:

-i       #安装rpm软件包
-v       #显示安装详细信息
-h       #显示安装进度
--froce  #强制重新安装
--nodeps #忽略依赖关系

查询软件时常用选项:

-q       #查看软件包是否安装
-qa      #查看系统中已经安装过的rpm包列表
-qi      #查看指定软件包的安装目录,文件列表等,比-qc详细
-qc      #查看指定软件包的配置文件
-ql      #查看指定软件包的安装目录,文件列表等,比-qc详细
-qf      #查看文件属于哪个rpm软件
-qip     #查看为安装的rpm包详细信息
-qlp     #查看安装的软件包会产生那些文件

升级软件时选项:

-u       #如果老版本不存在则安装新版本,存在则升级新版本

卸载软件时选项:

-e       #卸载软件
rpm -e $(rpm -qa|grep package)

RPM实验:

1.下载rpm包
wget -O nginx-1.18.0-2.e17.ngx.x86_64.rpm
https://nginx.org/packages/rhel/7/x86_64/RPMS/nginx-1.18.0-2.el7.ngx.x86_64.rpm  #O 是大写字母O

2.安装rpm包
rpm -ivh nginx-1.18.0-2.e17.ngx.x86_64.rpm

3.查询安装的软件的配置文件
rpm -qc nginx

[root@centos7-100 ~]# rpm -qc nginx
/etc/logrotate.d/nginx
/etc/nginx/conf.d/default.conf
/etc/nginx/fastcgi_params
/etc/nginx/koi-utf
/etc/nginx/koi-win
/etc/nginx/mime.types
/etc/nginx/nginx.conf
/etc/nginx/scgi_params
/etc/nginx/uwsgi_params
/etc/nginx/win-utf
/etc/sysconfig/nginx
/etc/sysconfig/nginx-debug

4.查询安装的软件的所有文件
rpm -ql nginx

5.卸载软件
rpm -e nginx



3.YUM命令使用

作用:

通过互联网的指定仓库里自动下载并安装rpm包,并且可以自动解决依赖关系。

yum源概念:

yum源:很多软件集合的在线仓库,也称为base基础源
epel源:也称为扩展源,拥有很多bash源没有的软件
第三方源:比如nginx,zabbix,Docker等第三方开源软件的官方仓库

默认yum源都放在/etc/yum.repos.d/目录下,以*.repo结尾

yum源地址:

http://mirrors.aliyun.com/repo
https://mirrors.tuna.tsinghua.edu.cn/
https://mirrors.tuna.tsinghua.edu.cn/help/centos/
https://mirrors.tuna.tsinghua.edu.cn/help/epel/
https://mirrors.tuna.tsinghua.edu.cn/help/ubuntu/

yum常用命令:

查询命令
yum list                           #列出所有软件
yum provides command               #列出包含这个命令的软件包名称
yum search package                 #搜索软件包

安装相关命令
yum install                        #安装软件
yum install -y                     #安装软件并自动应答yes

yum install http://xxxx.rpm       #从互联网在线安装rpm包  
安装nginx实例:yum installyum install https://nginx.org/packages/rhel/7/x86_64/RPMS/nginx-1.18.0-1.el7.ngx.x86_64.rpm

yum install --donwnloadonly        #只下载不安装 
下载nginx实例:yum install --downloadonly +软件名称 --downloaddir=指定rpm包存放路径

yum localinstall *.rpm             #本地安装rpm包
[root@centos7-100 opt]# rpm -q nginx
nginx-1.18.0-1.el7.ngx.x86_64
先卸载nginx:yum remove nginx
查看刚刚下载的nginx软件包(rpm后缀包)
[root@centos7-100 opt]# ls
nginx-1.20.1-2.el7.x86_64.rpm  nginx-filesystem-1.20.1-2.el7.noarch.rpm
yum localinstall /opt/nginx-1.20.1-2.el7.x86_64.rpm

yum reinstall                      #重装软件
yum reinstall nginx

更新命令
yum update                        #危险,更新系统所有软件

卸载命令 
yum remove                        #卸载软件包以及软件包的依赖,但保留配置文件

Linux升级命令有两个分别是yum upgrade和yum update, 这个两个命令是有区别的:
代码如下:
yum -y update

升级所有包同时也升级软件和系统内核

代码如下:
yum -y upgrade
只升级所有包,不升级软件和系统内核
实验分别测试 yum -y upgrade和yum -y update
————————————————
版权声明:本文为CSDN博主「归来少年Plus」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_41709748/article/details/81537561


yum clean all                     #清除yum缓存

yum命令练习:

配置国内yum基础源
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

配置国内yum拓展源
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

删除阿里源里的内网链接
sed -i '/aliyuncs/d' /etc/yum.repos.d/*.repo

配置第三方源

chrome进入打开网站https://nginx.org/en/linux_packages.html#RHEL-CentOS

cat >/etc/yum.repos.d/nginx.repo<<'EOF'      #'EOF'让系统不要瞎想,$等特殊符号当初普通字符
[nginx-stable]
name=nginx stable repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true

[nginx-mainline]
name=nginx mainline repo
baseurl=http://nginx.org/packages/mainline/centos/$releasever/$basearch/
gpgcheck=1
enabled=0
gpgkey=https://nginx.org/keys/nginx_signing.key
module_hotfixes=true
EOF

更新仓库缓存
yum makecache fast    #我们在更新yum源或者出现配置yum源之后,通常都会使用yum makecache 生成缓存
                      #yum makecache就是把服务器的包信息下载到本地电脑缓存起来
                      #配合yum -C search xxx使用
                      #不用上网检索就能查找软件信息
                      
搜索软件包
yum search nginx
yum list |grep nginx

仅下载不安装
yum install --downloadonly --downloaddir=/opt/  nginx

安装软件包
yum install nginx -y

卸载软件包
yum install nginx -y

拓展:启动nginx

如果安装完软件后想测试一下,可以使用以下命令启动nginx
iptables -F                 #关闭防火墙
systemctl start nginx       #启动nginx

源码包编译安装

源码包编译介绍:

原文地址:https://www.cnblogs.com/zhaocheng690/p/15477137.html