Linux系统中的软件管理

1.Linux中软件包的类型

(1)DEB                            //UBlinux DEBlinux

(2)RPM //redhat centOS fadora

(3)bz2 | gz | xz

<1> 需要源码安装,需要编译

<2> 绿色软件,直接可用

注:在rhel8中只能使用绿色软件,源码编译软件和rpm软件

2.软件包的名称结构

软件包的名称格式如下:

linuxqq_2.0.0-b2-1082_x86_64.rpm

其中,linuxqq表示软件名称,2.0.0表示软件版本,b2-1082表示软件的授权协议版本,x86_64表示软件的架构,rpm表示软件类型的后缀标识

3.rpm命令

作用:对软件包进行管理

指令:

rpm -ivh linuxqq_2.0.0-b2-1082_x86_64.rpm                                       //安装linuxqq


rpm -e linuxqq                                                                                      //卸载linuxqq

   

rpm -q linuxqq                                                                                      //查询linuxqq的安装状态


rpm -ql linuxqq                                                                                     //查询linuxqq的安装文件列表

  

rpm -qa                                                                                               //查询所有安装软件

rpm -qf /mnt/                                                                                       //查询/mnt目录的所属软件包


rpm -qc linuxqq                                                                                   //查询linuxqq的配置文件


rpm -qd linuxqq                                                                                   //查询linuxqq的说明文件


rpm -qp wps-office-11.1.0.9505-1.x86_64.rpm                                   //查询wps安装包 


rpm -qlp wps-office-11.1.0.9505-1.x86_64.rpm                                  //查询wps安装后的软件安装文件列表


rpm -qp wps-office-11.1.0.9505-1.x86_64.rpm --info                        //查询wps安装的软件信息


rpm -ivh wps-office-11.1.0.9505-1.x86_64.rpm --force                      //强制安装wps


rpm -ivh wps-office-11.1.0.9505-1.x86_64.rpm --nodeps                  //忽略依赖性安装wps

 

 
rpm -qp FluffyMcAwesome-A-6.4.0-11.r19335.x86_64.rpm --scripts    //查询Fluffy软件在安装或卸载过程中的运行脚本

 
rpm -Kv linuxqq_2.0.0-b2-1082_x86_64.rpm                                      //检测软件md5校验码

 
rpm -V linuxqq_2.0.0-b2-1082_x86_64.rpm                                       //检测已安装软件linuxqq在系统中的文件被修改信息 

4.本地软件仓库的搭建 

软件仓库的作用:能使用户在系统中对软件进行统一管理,且rpm命令是不能解决依赖关系导致的软件无法安装问题,如果需要在软件安装过程中自动解决依赖关系,则需要搭建本地软件仓库

搭建方法:

(1)挂载镜像

执行以下命令

mkdir /westos
mount /iso/rhel-8.2-x86_64-dvd.iso /westos/                  //挂载镜像到/westos目录
ls /westos/                              运行结果如下:


ls /westos/AppStream/           运行结果如下:

 

 
ls /westos/BaseOS/                运行结果如下:

(2)编写软件仓库文件

执行以下命令
cd /etc/yum.repos.d/
ls
rm -fr *
vim westos.repo

在vim中所编辑的软件仓库文件内容如下:
[AppStream]
name=westos AppStream
baseurl=file:///westos/AppStream
gpgcheck=1                                                   // =0表示在安装过程中不进行检查 =1表示进行检查
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
enabled=1                                                     // 其默认值为1

[BaseOS]
name=westos BaseOS
baseurl=file:///westos/BaseOS
gpgcheck=0

编辑结果如下图所示:

然后使用 :wq退出保存文件

(3)检验软件仓库是否搭建成功

执行以下命令
cd /software
ls
rpm -ivh wps-office-11.1.0.9505-1.x86_64.rpm                

运行结果如下:

发现其安装过程中有依赖性,会报错,无法安装

执行该命令    dnf install wps-office-11.1.0.9505-1.x86_64.rpm 

运行结果如下:

发现成功安装该软件,表明本地软件仓库搭建成功

5.网络软件仓库的搭建

(1)查询本地网络ip地址及配置实验环境

ifconfig                                                     //查询本机ip地址

运行结果如下:

得出本机ip地址为192.168.2.66,然后运行以下命令

dnf install httpd -y                                     //安装httpd软件
systemctl enable --now httpd                   //打开httpd


systemctl disable --now firewalld             //关闭防火墙

 

 
mkdir /var/www/html/westos                  //只有该目录下的文件系统才识别

(2)挂载镜像
umount /westos                                       //去除/westos的挂载
mount /iso/rhel-8.2-x86_64-dvd.iso /var/www/html/westos/          //挂载

(3)修改软件仓库文件内容
vim /etc/yum.repos.d/westos.repo

vim修改后的内容如下
[AppStream]
name=westos AppStream
baseurl=http://192.168.2.66/westos/AppStream
gpgcheck=0

[BaseOS]
name=westos BaseOS
baseurl=http://192.168.2.66/westos/BaseOS
gpgcheck=0

修改结果如下图所示:

(4)检验网络软件仓库的搭建

在Firefox浏览器的导航栏输入192.168.2.66/westos,若出现下图所示界面,证明网络软件仓库搭建成功

注:以上流程所搭建的网络软件仓库是非永久性,在重启系统后,镜像未挂载,便无法使用该网络软件仓库,若要使网络软件仓库具有永久性,则应执行以下操作

(5)网络软件仓库的永久搭建

执行以下命令

vim /etc/rc.d/rc.local                           //开机自启动命令

在文档最后加mount /iso/rhel-8.2-x86_64-dvd.iso /var/www/html/westos/                 //目的是让挂载命令开机自启动

编辑结果如下:

然后再执行以下命令

 chmod +x /etc/rc.d/rc.local                       //增加目录的可执行权限

进行以上操作后,重启系统,在Firefox浏览器的导航栏输入192.168.2.66/westos,运行结果如下图所示:

由上图可知,永久性网络软件仓库搭建完成

6.dnf软件管理命令

dnf repolist                                                   //列出仓库信息

运行以下命令

cd /var/cache/dnf/
ls

结果如下:


dnf clean all                                                 //清除系统中已经加载的仓库缓存信息(存放在/var/cache/dnf/下)
ls

运行结果如下:

与上图相比少了缓存信息,执行以下命令 
dnf list httpd                                               //列出httpd,恢复缓存信息
ls

运行结果如下:

发现缓存信息已恢复,执行以下命令
dnf list all                                                   //列出所有软件


dnf list installed                                          //列出已安装软件


dnf list available                                         //列出未安装软件


dnf install firefox -y                                    //安装firefox    -y 不显示y&n

 
dnf reinstall firefox -y                                 //重新安装(软件未卸载)

 
dnf remove firefox  -y                                 //卸载软件
dnf search firefox                                      //搜索firefox
 

 
dnf search "Web browser"                          //搜索“Web browser”
 

 
dnf history                                               //dnf命令操作历史

 
dnf history info 3                                     //查看第三条历史操作的详情

 
dnf group list                                           //列出软件组

 
dnf group list "Development Tools"    

 
dnf group info "Development Tools"         //查看软件组信息

 
dnf group install "Development Tools"      //安装软件组

 
dnf group list --hidden                               //列出隐藏软件组

执行以下命令
dnf group install "Java Platform" --downloadonly --destdir=/mnt -y     //安装并下载软件包到指定目录
ls /mnt/

运行结果如下:

 7.ansible的共享性软件仓库的搭建

(1)下载epel源及搭建实验环境
yum install -y https://mirrors.aliyun.com/epel/epel-release-latest-8.noarch.rpm              //阿里云下载epel源

sed -i 's|^#baseurl=https://download.example/pub|baseurl=https://mirrors.aliyun.com|' /etc/yum.repos.d/epel
sed -i 's|^metalink|#metalink|' /etc/yum.repos.d/epel                  

注:以上两条命令的作用是将epel的配置地址更换为阿里云的镜像站地址
dnf install httpd -y                               //安装httpd
dnf install createrepo -y                      //安装createrepo

(2)下载sshpass并整合到ansible目录下

http://www.rpmfind.net/linux/rpm2html/search.php?query=sshpass(x86-64)​​​​​​ 下载sshpass软件包

执行以下命令
wget http://www.rpmfind.net/linux/centos/8-stream/AppStream/x86_64/os/Packages/sshpass-1.09-4.el8.x86_64.rpm          //下载sshpass
rpm -ivh sshpass-1.09-4.el8.x86_64.rpm              //安装sshpass
mkdir /var/www/html/ansible                             //建立ansible目录
dnf install ansible --downloadonly --destdir=/var/www/html/ansible -y           //本地安装ansible软件

运行结果如下所示:

执行以下命令
cp  sshpass-1.09-4.el8.x86_64.rpm /var/www/html/ansible                         //复制sshpass安装包到ansible目录下
createrepo -v /var/www/html/ansible                 //读取ansible目录内容

运行结果如下图所示:

(3)检验ansible共享性软件仓库的搭建

执行以下命令
cd /mnt
rpm -e epel-release-8-15.el8.noarch            //卸载
rm -fr /etc/yum.repos.d/epel*                   //删除残余文件
dnf search ansible                       //无法找到ansible软件

运行结果如下:

发现无法找到ansible软件,然后运行以下命令
vim /etc/yum.repos.d/westos.repo 

使用vim编辑文件内容
[ansible]
name=westos ansible
baseurl=http://192.168.2.66/ansible
gpgcheck=0

结果如下:

然后运行  dnf install ansible -y  命令,ansible成功安装,说明ansible的共享性软件仓库搭建成功

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值