Linux系统管理体系-软件包管理

1、linux常见的安装软件方式

Linux下面的软件包格式为:rpm格式(红帽系列系统,Cent0S,麒麟系统)或deb格式(Debian,Ubuntu)

安装方式举例说明应用场景
yum/apt 方式点外卖,缺啥少啥,外卖解决通过网络下载软件包,替我们安装,如果有依赖自动下载依赖并安装。 自动.大部分场景,没有网络可以自建yum软件仓库,内网使用。
rpm/dpkg方式半成品,缺啥少啥,自己解决手动下载rpm包,手动安装rpm包,缺少依赖需要自己解决没有网络,误删除软件包,依赖较少。
编译安装方式自己做,缺啥少啥,自己解可以自定义安装,比较漫长,缺少依赖自己解决软件进行自定义,增加功能
二进制安装方式点外卖+自取,缺啥少啥,自已解决(绿色软件免安装)类似于绿色软件,解压既用,可能需要准备环境,并非每个软件都有,一般是服务,数据库,k8s,promethues监控。如果有可以选用,优先选择yum,没有那就选择二进制方式

2、rpm安装方式

rpm命令选项及含义
增加-安装-ivh xxx.rpm
查看-检查-qa 查看软件包是否安装(query all)
-ql 查看软件包内容
-qf 文件或命令绝对路径 文件或命令所归属的软件包
修改-升级-Uvh 升级软件包(如果软件包不存在,相当于ivh安装)
删除-e 删除软件包
1)增加-安装rpm包
#下载软件包
wget --no-check-certificate -P /server/tools/ https://*.com/.../*.rpm
​
wget下载指定内容,默认下载到当前目录
-P 下载到指定目录,目录不存在会创建
--no-check-certificate 下载地址https,加上这个选项
2)查询-检查安装
#书写方法 利用管道+grep进行过滤 推荐
rpm -qa |grep zabbix
​
#不使用管道 直接写软件包的名字,全名不能出错
rpm -qa zabbix-agent2
​
#检查软件包的内容(已经安装)
rpm -ql 软件名
rpm -ql zabbix-agent2
​
# 查询某个命令或文件属于哪个软件包
[root@yunwei ~]# rpm -qf "$(pwd)"
filesystem-3.2-25.el7.x86_64

软件包不等同于命令。

一般情况下一个软件包中有1个命令,tree,telnet软件包。

更多情况中1个软件包下面可能有多个命令lrzsz(rz,sz)

3)修改-升级

rpm -Uvh /server/tools/新软件.rpm
4)删除

删除对应的软件包(rpm安装或yum安装),其他方式(编译二进制)无法删除。

yum,rpm安装软件,删除软件的时候,建议通过rpm命令删除,非必须不推荐删除软件

rpm -e 软件包

3、yum安装方式

yum是软件包管理器,替我们下载rpm包,替我们安装

推荐安装 命令补全增强工具

yum install -y bash-completion bash-completion-extras
1)yum安装软件全流程
  • yum命令:下载与安装软件包,配置文件/etc/yum.conf
  • yum仓库/源:存放软件包地方,配置目录/etc/yum.repos.d/*.repo repository

在这里插入图片描述

2)yum源配置

使用虚拟机(私有云),物理服务器需要配置yum源

如果使用公有云,则一般都是配置好的

[base]
name=CentOS-$releasever - Base - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
yum源配置文件详解
[base]yum源名字
name=说明信息
baseurl=yum源地址,打开后要看到repodata目录,这是yum配置的核心
enabled=1是否开启是个yum源
gpgcheck=1开启软件包检查,未来自建仓库可以关闭
gpgkey用于检查的秘钥,如果关闭检查gpgkey省略

在这里插入图片描述

那么我们应该如何配置yum源呢?我们以阿里云为例

链接指引

#1、备份
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
#2、下载yum源
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
#3、下载增强yum源(企业增强包) https://developer.aliyun.com/mirror/epel
wget -O /etc/yum.repos.d/epel.repo https://mirrors.aliyun.com/repo/epel-7.repo
#4、刷新缓存
yum makecache
3)yum命令配置文件

未来在正式环境中几乎很少修改。未来也就是我们想把yum安装过的rpm包进行保存。

适用于把常用的rpm包安装后,留下缓存,这样就形成了一个自己的yum源。

修改/etc/yum.conf配置,找出keepcache行=0改为=1即可

keepcache

=0关闭缓存,软件下载安装后自动删除rpm包。

=1开启缓存,软件下载安装后保留rpm包。(自建yum源)

[root@yunwei ~]# vim /etc/yum.conf 
[main]
cachedir=/var/cache/yum/$basearch/$releasever
keepcache=0
debuglevel=2
logfile=/var/log/yum.log
exactarch=1
obsoletes=1
gpgcheck=1
plugins=1
installonly_limit=5
bugtracker_url=http://bugs.centos.org/set_project.php?project_id=23&ref=http://bugs.centos.org/bug_report_page.php?category=yum
distroverpkg=centos-release

测试重新安装即可

yum reinstall -y sl
4)yum命令详解
yum命令格式和说明
yum insatll -y 软件
yum provides 内容
yum search all 内容
yum repolist 查看源地址
删除yum remove 删除软件包和依赖
yum clean all 清除缓存
yum update/upgrade
选项-y 遇到yes/no的时候选择yes
a)增-安装软件
必会:yum install -y tree
-y表示提示是否安装,是否确认的时候默认选择yes
熟悉:重新安装软件包
yum reinstall -y tree
b)查-检查软件/搜索软件
必会:根据软件包内容
yum provides 命令或文件 找出这个命令或文件属于的软件包
#rpm -qf进阶版本,软件要已经安装
备用搜索命令
yum search all ifconfig 
结果会很多。一个一个测试。

查看yum源信息

yum repolist

显示yum仓库中所有软件

yum list
c)删

尽量不要使用yum命令删除软件,删除的时候可能会把依赖删除掉

删除软件包yum remove

不推荐使用,remove会删除依赖,如果要删除推荐使用rpm -e

删除/情况本地缓存.

yum clean all 自建yum仓库需要使用,使用公有云一般不需要使用

d)改-升级

yum insatll 的时候安装或升级

专用更新的命令

yum update 或 yum upgrade,软件或命令有BUG或漏洞,需要更新下.

tree   vim wget  bash-completion  bash-completion-extras  lrzsz  net-tools sysstat  iotop iftop htop unzip nc nma
  • 22
    点赞
  • 35
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值