尊敬的读者朋友,本文是《CentOS8服务器进阶》系列的第十五篇,往期文章主要分享了Linux的入门使用、密码破解和网络管理、文件管理等知识。本系列文章将帮助你由浅入深的理解Linux系统,更多内容分享请点击往期好文
01 本文主题
本文主要分享的是rpm包管理和光盘管理等知识,彻底根治【-bash: laof: command not found】这种命令找不到的问题。学完本文你可以获得以下问题的答案:
文/学者学者
实验环境
- Windows10电脑
- Vmware虚拟机
- cmder软件
- CentOS8服务器
02 什么是rpm包,有什么使用场景?
实际使用Linux的过程中,查看端口号对应的进程ID这个使用场景非常普遍,可以通过命令【lsof -i:端口号】命令查看进程ID,但是结果往往不尽人意,新安装的Linux系统大概率提示你命令找不到。
[root@test Packages]# laof -i:8086
-bash: laof: command not found
为什么会出现这种情况呢?细心观察的朋友应该知道,在Linux系统中很多命令是要安装软件才可以使用的,比如要使用lsof命令就需要安装相关的软件。这些软件不需要我们去下载,Linux 系统为我们提供了非常多的安装包,这些包就是我们今天的主角,rpm包。
RPM全称RedHat Package Manager,由RedHat公司最先设计出来,rpm包由已经编译好的软件程序经过rpm打包机制打包而成,目前已经发展为行业的公认标准。
03 如何挂载光盘?
安装rpm包就需要牵涉到光盘挂载问题。这里,两个问题需要说明:什么是光盘?挂载是什么操作?
大家都知道,安装Linux系统时候需要一个iso镜像文件,可以理解为光盘,我们需要的rpm包就在这个镜像文件里;但是直接去查看光盘文件是读取不到内容的,想看到光盘里面的 内容,需要我们使用Linux提供的命令将光盘里的内容读取出来放在一个特定目录,这就是所说的光盘挂载。
-
远程连接Linux服务器:打开远程连接工具:【cmder】,使用远程密钥登录Linux服务器,密钥登录详情
-
挂载光盘:【mount /dev/cdrom 指定目录】命令可以将光盘挂载到指定目录,【df -Th】命令可查看光盘类型以及光盘信息
[root@test ~]# mount /dev/cdrom /media //挂载光盘
mount: /media: WARNING: device write-protected, mounted read-only. //光盘是只读的
[root@test ~]# df -Th //查看光盘挂载情况
Filesystem Type Size Used Avail Use% Mounted on
devtmpfs devtmpfs 384M 0 384M 0% /dev
tmpfs tmpfs 400M 0 400M 0% /dev/shm
tmpfs tmpfs 400M 5.6M 394M 2% /run
tmpfs tmpfs 400M 0 400M 0% /sys/fs/cgroup
/dev/mapper/cl-root xfs 17G 2.4G 15G 14% /
/dev/sda1 ext4 976M 130M 780M 15% /boot
tmpfs tmpfs 80M 0 80M 0% /run/user/0
/dev/sr0 iso9660 6.7G 6.7G 0 100% /media //光盘在这,类型是iso9660国际标准的
- 卸载光盘:【umount 光盘挂载点】命令可将已经挂载的光盘卸载,如果提示【target is busy】则使用fuser命令查看哪个进程占用了光盘资源,关闭进程即可正常卸载
[root@test media]# umount /media
umount: /media: target is busy. //因为光盘挂载中,占用了进程
[root@test media]# fuser -mv /media /fuser命令查看哪个进程在使用挂载的资源
USER PID ACCESS COMMAND
/media: root kernel mount /media
root 1180 ..c.. bash
[root@test media]# fuser -kv /media //关闭进程
[root@test ~]# umount /media //再次卸载即可
- 开机自动挂载光盘:目前挂载的光盘在关机时会自动卸载,开机后由需要重新挂载,修改配置文件可以让Linux开机自动挂
[root@test ~]# vi /etc/fstab //编辑配置文件,在最后一行添加一下语句
//光盘源 //挂载的目的地 //光盘类型
/dev/cdrom /media iso9660 defaults 0 0
04 rpm包的安装、卸载和查看
- 安装rpm包:【rpm -ivh rpm包名称】命令可以安装对应的rpm包
[root@test Packages]# cd /media/BaseOS/Packages/;ls //切换到存放rpm包的目录下
[root@test Packages]# ls | grep lsof //查看和lsof相关 的包
lsof-4.91-2.el8.x86_64.rpm //检索到一个
[root@test Packages]# rpm -ivh lsof-4.91-2.el8.x86_64.rpm //安装
Verifying... ############ [100%]
Preparing... ############ [100%]
Updating / installing...
1:lsof-4.91-2.el8 ########### [100%]
- 查看已经安装的rpm包:【rpm -qa | grep rpm包名称】命令可以检索rpm包是否安装
[root@test Packages]# rpm -qa |grep lsof //检索是否安装rpm包
lsof-4.91-2.el8.x86_64 //检索到一个
- 卸载rpm包:【rpm -e xxx包】命令可以卸载rpm包
[root@test Packages]# rpm -e lsof-4.91 //卸载命令
[root@test Packages]# lsof -i:88
-bash: lsof: command not found //命令找不到,说明卸载成功
- 查看命令属于哪个包:在安装了rpm包的前提下,可以用【which】命令配合【rpm -qf 命令位置】查看可执行文件来自于哪个rpm包。如果没有安装rpm包,则可执行文件是找不到的。
[root@test Packages]# which lsof //定位可执行文件在哪
/usr/bin/lsof
[root@test Packages]# rpm -qf /usr/bin/lsof //查看该文件属于哪个包
lsof-4.91-2.el8.x86_64
05 总结
今天的博文主要分享了如何安装rpm包、如何挂载光盘、如何设置开机自动挂载以及每一个步骤的实际使用场景,可以总结如下:
-
为什么要挂载光盘:因为需要使用光盘里面的rpm包
-
如何挂载光盘: mount命令
-
如何卸载光盘 :umount
-
卸载光盘失败:fuser命令查看并关闭占用资源的进程再卸载光盘
-
rpm包安装:rpm -ivh xxx
-
rpm包查看:rpm -qa | grep xxx
-
rpm包卸载:rpm -e xxx
-
查看可执行文件归属于哪个包:which命令配合rpm -qf xxx命令
时光荏苒,岁月如梭,如今距离我开设《centos8服务器基础》 已然过去五个月,五个月里,每一篇文章都经过我精心的排版以及提炼。当然,我能坚持到今天,离不开各位读者的支持,在此,我真心的向各位读者致谢。
网友评论