大家好,又见面了,我是你们的朋友全栈君。
1、RPM 包管理工具介绍
1)RedHat 软件包管理工具(RedHat Package Manager,RPM)
2)RPM 软件包工具常用于软件包的安装、查询、更新升级、校验、卸载以及生成.rpm 格式 的软件包等操作。
3)RPM 软件包工具只能管理后缀是.rpm 的软件包。
软件包的命名格式: 软件名称-版本号(包括主版本号和次版本号).软件运行的硬件平台.rpm
例:telnet-server-0.17-59.el7.x86_64.rpm。
2、RPM 工具的使用
RPM 主要有5种基本功能:查询、安装、升级、刷新、卸载。 命令格式:rpm [选项] [文件]
(1)查询
软件包的查询功能主要由-q选项完成,为了实现特殊的查询功能要配合其它的选项使用。
【举例 1】查询系统中已经安装的所有 RPM 软件包。
#rpm -qa
【举例 2】在已经安装的软件包中查询包含 lib 关键字的软件包的名称。
#rpm -qa | grep lib
【举例 3】查询 openssh-server 软件包是否已经安装。
#rpm -q openssh-server
【举例 4】查询 openssh-server 和 telnet-server 两个软件是否已经安装。
#rpm -q openssh-server telnet-server
【举例 5】查询已安装的 openssh-server 软件包的信息。
# rpm -qi openssh-server
【举例 6】查询 openssh-server 软件包中有哪些文件,以及这些文件安装在系统的位置。
#rpm -ql openssh-server
【举例 7】查询/var/empty/sshd 目录是安装哪一个软件包而创建的
#rpm -qf /var/empty/sshd
(2)安装:rpm -ivh 软件包名称
【举例 1】安装 telnet-server-0.17-59.el7.x86_64.rpm 软件包
#rpm -ivh telnet-server-0.17-59.el7.x86_64.rpm
(3)升级是先将低版本的软件包卸载,再安装高版本的软件包。
【举例 1】升级 telnet 软件为 telnet-server-0.17-59.el7.x86_64.rpm 软件包。
#rpm -Uvh telnet-server-0.17-59.el7.x86_64.rpm
(4)刷新
如果选项指定软件包的版本更高,会升级安装。如果未安装该软件包,刷新选 项不会安装软件包。
【举例 1】刷新 telnet-server-0.17-59.el7.x86_64.rpm 软件包
#rpm -Fvh telnet-server-0.17-59.el7.x86_64.rpm
(5)卸载
【举例 1】将 telnet-server 软件从系统中卸载。
#rpm -e telnet-server
(6)常见问题分析:
1)在执行#rpm -qa 命令时,如果输出信息过多,不易查找指定信息。
解决办法:使用 rpm -qa | grep
2)在查询软件包信息或文件时,想保存执行结果。
解决办法:使用输出重定向
3)“软件名称”和“软件包名称”。
解决办法:安装软件时使用软件包名称,查询与卸载时使用软件名称
4)软件包依赖问题
解决办法:可以使用 –nodeps 选项忽略,但安装时建议不用
5)RPM 数据库损坏 解决办法:rpm 数据库存放在/var/lib/rpm 目录下,使用 rpm -rebuilddb 修复
6)软件安装的时间问题
解决办法:安装软件时如果系统提示“warning:clock skew detected”
使用 date -s “2019-5-9” 14:00 修改系统时间
使用 hwclick -w 将更新时间写入 CMOS
3、使用 RPM 管理 telnet-server 软件包
使用rpm安装telnet软件,并实现通过telnet远程登录到系统。
1)查看是否安装有telnet
[root@localhost ~]# rpm -qa |grep telnet
2) 挂载光盘
[root@localhost ~]#mkdir /mnt/cdrom
[root@localhost ~]# mount /dev/sr0 /mnt/cdrom
[root@localhost ~]# cd /mnt/cdrom
[root@localhost cdrom]# ls
3) 安装telnet:进入到Packages文件夹
[root@localhost cdrom]# cd Packages
[root@localhost Packages]# ls telnet-*.rpm
telnet-0.17-64.el7.x86_64.rpm telnet-server-0.17-64.el7.x86_64.rpm
[root@localhost Packages]# ls xinetd-*.rpm
xinetd-2.3.15-13.el7.x86_64.rpm
[root@localhost Packages]# rpm -ivh telnet-server-0.17-64.el7.x86_64.rpm xinetd-2.3.15-13.el7.x86_64.rpm //需要安装2个完整的软件名
[root@localhost Packages]# rpm -q telnet-server xinetd //查看2个软件是否安装好
4) 重启服务
[root@localhost Packages]# systemctl status telnet.socket xinetd.service //查看服务状态
[root@localhost Packages]# systemctl start telnet.socket xinetd.service //启动服务
5) 开启端口
[root@localhost Packages]# systemctl status firewalld.service //查看防火墙状态
[root@localhost Packages]# firewall-cmd –zone=public–add-port=23/tcp –permanent //开启telnet服务端口
[root@localhost Packages]# systemctl restart firewalld.service
6) 虚拟机联网,查询ens33网卡
[root@localhost Packages]# ifup ens33
[root@localhost Packages]# ifconfig ens33
7) 客户机开启telnet;远程登录(默认不允许 root 用户 telnet 登录)
开始–运行–cmd telnet 192.168.10.128
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/142016.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...