• 快速上手Linux核心命令(十):Linux安装软件


    前言

    这期呢主要说一说Linux中包软件管理相关命令,这一期的命令虽然只有两个。但 软件包的安装和卸载都是我们平常最常用的,需要熟练掌握。

    rpm和yum 是CentOS 主要的包软件管理。

    两个命令各有用处,①yum需要互联网,yum会去网上的yum源获取所需的软件包

    ② rpm 操作相对复杂,需要我们做得更多

    rpm rpm包管理器

    1、简介

    rpm 命令包含了安装、卸载、升级、查询和验证5个基本功能

    2、语法格式

    rpm [参数选项]
    
    • 1

    3、参数选项

    参数参数说明
    -q查询软件包
    -p后面接“.rpm”为后缀的软件包
    -i①与-qp配合使用,表示显示软件包的概要信息 info
    ②安装软件包 install
    -l显示软件包种所有文件列表
    -R显示软件包依赖环境
    -v显示详细信息
    -h用“#” 显示安装进度条
    -a与-q参数搭配使用,用于查询所有的软件包
    -e卸载软件包
    -f查询文件或命令属于哪个软件包
    -U升级软件包

    4、 实践操作

    我们下载一个rpm包telnet-server-0.17-66.el7.x86_64.rpm作为后续实践操作文件

    [root@xiezhr test]# wget https://mirrors.aliyun.com/centos/7.9.2009/updates/x86_64/Packages/telnet-server-0.17-66.el7.x86_64.rpm
    --2022-08-02 22:47:29--  https://mirrors.aliyun.com/centos/7.9.2009/updates/x86_64/Packages/telnet-server-0.17-66.el7.x86_64.rpm
    Resolving mirrors.aliyun.com (mirrors.aliyun.com)... 101.226.26.240, 101.226.26.241, 101.226.26.242, ...
    Connecting to mirrors.aliyun.com (mirrors.aliyun.com)|101.226.26.240|:443... connected.
    HTTP request sent, awaiting response... 200 OK
    Length: 42148 (41K) [application/octet-stream]
    Saving to: ‘telnet-server-0.17-66.el7.x86_64.rpm’
    
    100%[========================================================================================================================================================================>] 42,148      --.-K/s   in 0.01s   
    
    2022-08-02 22:47:29 (3.70 MB/s) - ‘telnet-server-0.17-66.el7.x86_64.rpm’ saved [42148/42148]
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    ① 查看rpm包信息

    [root@xiezhr test]# rpm -qpi telnet-server-0.17-66.el7.x86_64.rpm
    Name        : telnet-server
    Epoch       : 1
    Version     : 0.17
    Release     : 66.el7
    Architecture: x86_64
    Install Date: (not installed)
    Group       : System Environment/Daemons
    Size        : 56361
    License     : BSD
    Signature   : RSA/SHA256, Wed 18 Nov 2020 10:20:43 PM CST, Key ID 24c6a8a7f4a80eb5
    Source RPM  : telnet-0.17-66.el7.src.rpm
    Build Date  : Tue 17 Nov 2020 12:44:28 AM CST
    Build Host  : x86-01.bsys.centos.org
    Relocations : (not relocatable)
    Packager    : CentOS BuildSystem <http://bugs.centos.org>
    Vendor      : CentOS
    URL         : http://web.archive.org/web/20070819111735/www.hcs.harvard.edu/~dholland/computers/old-netkit.html
    Summary     : The server program for the Telnet remote login protocol
    Description :
    Telnet is a popular protocol for logging into remote systems over the
    Internet. The package includes a daemon that supports Telnet remote
    logins into the host machine. The daemon is disabled by default.
    You may enable the daemon by editing /etc/xinetd.d/telnet
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24

    ② 查看rpm包内容

    [root@xiezhr test]# rpm -qpl telnet-server-0.17-66.el7.x86_64.rpm
    /usr/lib/systemd/system/telnet.socket
    /usr/lib/systemd/system/telnet@.service
    /usr/sbin/in.telnetd
    /usr/share/man/man5/issue.net.5.gz
    /usr/share/man/man8/in.telnetd.8.gz
    /usr/share/man/man8/telnetd.8.gz
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    ③ 查看rpm包的依赖环境

    [root@xiezhr test]# rpm -qpR telnet-server-0.17-66.el7.x86_64.rpm 
    /bin/sh
    /bin/sh
    /bin/sh
    libc.so.6()(64bit)
    libc.so.6(GLIBC_2.14)(64bit)
    libc.so.6(GLIBC_2.15)(64bit)
    libc.so.6(GLIBC_2.16)(64bit)
    libc.so.6(GLIBC_2.2.5)(64bit)
    libc.so.6(GLIBC_2.3)(64bit)
    libc.so.6(GLIBC_2.3.4)(64bit)
    libc.so.6(GLIBC_2.4)(64bit)
    libc.so.6(GLIBC_2.8)(64bit)
    libutil.so.1()(64bit)
    libutil.so.1(GLIBC_2.2.5)(64bit)
    rpmlib(CompressedFileNames) <= 3.0.4-1
    rpmlib(FileDigests) <= 4.6.0-1
    rpmlib(PayloadFilesHavePrefix) <= 4.0-1
    rtld(GNU_HASH)
    systemd
    systemd
    systemd
    systemd
    rpmlib(PayloadIsXz) <= 5.2-1
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24

    ④ 安装rpm 包(参数h 以“#”显示进度条)

    [root@xiezhr test]# rpm -ivh telnet-server-0.17-66.el7.x86_64.rpm
    Preparing...                          ################################# [100%]
    Updating / installing...
       1:telnet-server-1:0.17-66.el7      ################################# [100%]
    
    • 1
    • 2
    • 3
    • 4

    ⑤ 查询是否安装指定的rpm包

    [root@xiezhr test]# rpm -qa telnet-server
    telnet-server-0.17-66.el7.x86_64
    
    • 1
    • 2

    ⑥ 卸载rpm 包

    # 卸载刚才安装的telnet-server 
    [root@xiezhr test]# rpm -e telnet-server 
    # 再次查看rpm包,已经没有了,说明卸载成功了
    [root@xiezhr test]# rpm -qa telnet-server
    
    • 1
    • 2
    • 3
    • 4

    yum 自动化RPM包管理工具

    1、简介

    yum 命令主要用于自动安装升级rpm软件包,需要连接互联网

    2、语法格式

    yum [参数选项] [指令] [软件包]
    
    • 1

    3、常用参数

    参数参数说明
    -y确认操作
    -q不输出信息
    -v显示详细信息

    4、常用指令

    指令指令说明
    yum install softwarename安装softwarename包
    yum repolist列出启用的yum源
    yum repolist all列出所有yum,包括禁用的yum源
    yum remove softwarename卸载softwarename包
    yum list softwarename查看软件源中是否有此软件
    yum list all列出所有软件名称
    yum list installd列出已经安装的软件名称
    yum list available列出可以用yum安装的软件名称
    yum clean all清空yum缓存
    yum search softwarename根据软件信息搜索软件名字
    yum whatprovides filename在yum源中查找包含filename文件的软件包
    yum update更新软件
    yum history查看系统软件改变历史
    yum reinstall softwarename重新安装
    yum info softwarename查看软件信息
    yum groups list查看软件组信息
    yum groups info softwaregroup查看软件组内包含的软件
    yum groups install softwaregroup安装组件

    5、实践操作

    ① 安装httpd

    [root@xiezhr ~]# yum install httpd
    Loaded plugins: fastestmirror, langpacks
    Loading mirror speeds from cached hostfile
    epel                         | 4.7 kB  00:00:00     
    extras                       | 2.9 kB  00:00:00     
    nodesource                   | 2.5 kB  00:00:00     
    os                           | 3.6 kB  00:00:00     
    updates                      | 2.9 kB  00:00:00     
    (1/4): epel/7/x86_64/group_gz          |  97 kB  00:00:00     
    (2/4): epel/7/x86_64/updateinfo        | 1.1 MB  00:00:00     
    (3/4): epel/7/x86_64/primary_db        | 7.0 MB  00:00:01     
    (4/4): updates/7/x86_64/primary_db  
    ...
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    ② 查看yum源中是否是否有此软件

    [root@xiezhr ~]# yum list telnet-server
    Loaded plugins: fastestmirror, langpacks
    Loading mirror speeds from cached hostfile
    Available Packages
    telnet-server.x86_64                   1:0.17-66.el7                    updates
    
    • 1
    • 2
    • 3
    • 4
    • 5

    ③ 清空yum 缓存

    [root@xiezhr ~]# yum    clean all
    Loaded plugins: fastestmirror, langpacks
    Cleaning repos: epel extras nodesource os updates
    
    • 1
    • 2
    • 3

    这期内容就到这,下期根据思维导图就到Linux用户相关命令的使用了。

    涉及到的命令有: useradd、usermod、userdel、groupadd、groupdel、su、passwd等等

    敬请期待哦(●’◡’●)

    专栏目录:快速上手Linux核心命令专栏目录

    上一篇:快速上手Linux核心命令(九):文件备份与压缩
    下一篇:快速上手Linux核心命令(十一):Linux用户相关命令

  • 相关阅读:
    HTTP请求方法
    使用Nginx进行负载均衡
    RNN框架
    Openmp和MPI并行程序设计的区别
    王道书 P150 T12(打印x的所有祖先) + 拓展(打印从根节点到某个节点的路径、求根节点到某个节点的路径长度、求根节点的最大路径长度)
    端口占用,无法通过netstat找到进程,占用的端口又不能修改,该怎么办?
    数据密集型应用存储与检索设计
    阿里云易立:以云原生之力,实现大模型时代基础设施能力跃升 | KubeCon 主论坛分享
    网络变压器工厂:了解POE POE+ 网络变压器(网络隔离滤波器)
    项目开发与设计流程
  • 原文地址:https://blog.csdn.net/rong0913/article/details/126811181