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

119 阅读4分钟

前言

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

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

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

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

rpm rpm包管理器

1、简介

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

2、语法格式

rpm [参数选项]

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]

① 查看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

② 查看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

③ 查看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

④ 安装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%]

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

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

⑥ 卸载rpm 包

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

yum 自动化RPM包管理工具

1、简介

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

2、语法格式

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

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  
...

② 查看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

③ 清空yum 缓存

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

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

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

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

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

上一篇:快速上手Linux核心命令(九):文件备份与压缩

下一篇:快速上手Linux核心命令(十一):Linux用户相关命令