环境准备

1.光盘文件放入挂载光驱设备

2.挂载光驱设备(临时挂载)

mount /dev/cdrom /mnt
ls /mnt
ls /mnt/Packags     软件包一般都会以.rpm结尾

RPM软件包管理

· 常见的软件封包类型

RPM的含义

·RPM Package Manager

  • 由红帽公司提出,RedHat,SUSE等系列采用
  • 建立集中数据库,记录软件包安装/卸载等变化信息,分析软件包依赖关系

·RPM包文件名特征

  • 软件名-版本信息.操作系统.硬件架构.rpm
  • firefox - 52.7.0-1 . el7 . centos.x86_64 . rpm
    注意 : 不要把64位的软件包装在32位操作系统上
    软件包安装也要进行版本匹配 (比如不要把6版本的软件包,安装在el7的系统上)

RPM包的一般安装位置(都是默认的,不需要安装者进行选择安装包路径)

查询软件信息

查询已安装的RP软件包的信息
- 格式:rpm -q[子选项] [软件名称]常用的子选项
- -a 列出已安装的所有软件包
- -i 查看指定软件的详情信息
- -l 查看指定软件的文件安装清单- -f 查询某个目录/文件是哪个RPM包带来的
- 格式:rpm -qf [文件路径]...(即使目标文件被删除,也可以查询)

查询已经安装的软件包

rpm -qa          当前系统中所有已经安装的软件包
rpm -q bash         查看bash软件是否安装
rpm -qi bash        查看bash软件信息
rpm ql bash         查看bash软件安装了哪些内容(安装清单)
rpm ql bash | lesswhich vim  查询命令对应的执行程序
# /usr/bin/vim
rpm -qf /usr/bin/vim    查询某个目录/文件是哪个BPM包带来的
# vim-enhanced-7.4.629-8.el7_9.x86_64
rpm -q vim-enhanced     查看软件vim-enhanced是否已安装
# vim-enhanced-7.4.629-8.el7_9.x86_64

查询未安装的软件包

rpm -q vsftpd    查询vdftpd软件是否安装(未安装)
ls /mnt/Packages/vsftpd-3.0.2-28.el7.x86_64.rpm
# /mnt/Packages/vsftpd-3.0.2-28.el7.x86_64.rpm
rpm -qpl /mnt/Packages/vsftpd-3.0.2-28.el7.x86_64.rpm   查询vdftpd软件包的安装清单
rpm -qpi /mnt/Packages/vsftpd-3.0.2-28.el7.x86_64.rpm   查询vdftpd软件包的信息

导入红帽的签名信息(了解)

我们在查询部分安装包信息的时候有可能会出现警告信息,原因是因为没有红帽的官方认证,
可以导入红帽官方认证消除警告,如果我们不消除警告信息,也不会影响我们的安装和使用。
rpm --import /mnt/RPM-GPG-KEY-CentOs-7
rpm -qpi /mnt/Packages/vsftpd-3.0.2-28.el7.x86_64.rpm   查询vdftpd软件包的信息

安装/卸载RPM软件

安装RPM软件
- 格式: rpm -i RPM包文件...卸载RPM软件
- 格式: rpm -e 软件名...辅助选项
- -v 显示细节信息
- -h 以#号显示安装进度
-  --force 强制安装,覆盖安装
-  --test 测试安装,不做真实安装动作
rpm -i /mnt/Packages/vsftpd-3.0.2-28.el7.x86_64.rpm      安装vsftpd软件包(无任何提示信息)
rpm -ivh /mnt/Packages/vsftpd-3.0.2-28.el7.x86_64.rpm   安装vsftpd软件包(显示安装信息和安装进度)
rpm -q vsftpd   查看vsftpd软件是否已经安装
rpm -e vsftpd   卸载vsftpd软件  --force 强制安装,覆盖安装
如果在操作系统中我们已经安装了一个软件,那么我们可以通过强制安装的方式覆盖安装原软件
rpm -ivh --force /mnt/Packages/vsftpd-3.0.2-28.el7.x86_64.rpm   强制安装--test 测试软件的兼容性(了解即可)
在实际安装之前,可以用测定安装的方法测试以下软件安装的兼容性等一系列问题(不是真实安装)
rpm -ivh --test /mnt/Packages/vsftpd-3.0.2-28.el7.x86_64.rpm    测试安装
案例:
如果我们不小心删除了linux系统的命令,那么有什么恢复的办法
which hostname      查看hostname执行文件
# /bin/hostname
rm -rf /user/bin/hostname   删除hostname执行文件
hostname
# -bash: /bin/hostname: No such file or directory(找不到执行文件)
rpm -qf /user/bin/hostname      查看执行文件/user/bin/hostname由哪个软件包产生(-qf查询是在数据库中查询的,数据库会记录安装的记录和卸载的记录等等)
# hostname-3.13-3.el7_7.1.x86_64
rpm -ivh --force /mnt/Packages/hostname-3.13-3.el7_7.1.x86_64.rpm       重新安装执行文件软件包

软件依赖关系

· 解决依赖关系

  • 先安装/卸载要求的包
  • 如果RPM包齐全但比较多,可以用通配符*

· 忽略依赖关系

  • 可能会导致软件运行异常
  • 辅助选项 --nodeps

常见的依赖关系报错,如下图所示:

构建Yum软件仓库(重点!!!)

作用 : 自动解决依赖关系安装软件
服务 : 自动解决依赖关系安装软件

Yum软件就类似于手机的应用商城,只需要点击下载,会自动下载并安装软件

服务端(本机) :
1.众多的软件包(/mnt/Packages) 2.仓库数据文件(/mnt/repodata)
3. FTP 协议 或 HTTP协议
本地Yum仓库 : 服务端需要有光盘内容即可

客户端(本机) : 指定服务端位置
- 仓库配置 : /etc/yum.repos.d/*.repo
文件路径必须是/etc/yum.repos.d/,文件结尾必须是.repo结尾,/etc/yum.repos.d/工作原理,系统会自动查找目录下文件。
- 错误的文件会影响正确的文件
如果在工作中出现错误的yum文件,建议使用mv移走

ls /etc/yum.repos.d/
mkdir /etc/yum.repos.d/bak
mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/bak
# .repo结尾的文件都必须是连网才可以使用的,本机使用yum软件都必须先把.repo结尾的文件移动到其他目录下
# 如果不移动到其他目录下,那么.repo结尾的文件都是显示错误文件
ls /etc/yum.repos.d/bak

客户端文件配置内容

·.repo 基本配置项
- [源名称]  自定义名称,具有唯一性
- name : 本软件源的描述字串
- baseurl : 指定Yum服务端的URL地址  (file://固定格式,代表本地yum仓库的意思)
- enabled : 是否用此频道  (0不生效,1生效)
- gpgcheck : 是否验证待安装的RPM包   (检测红帽认证的签名:0不检测,1监测;检不监测都可以,不影响使用)
- gpgkey : 用于RPM软件包验证的密匙文件  (当gpgcheck:1时,需要写指定红帽签名的文件路径)
ls /mnt/RPM-GPG-KEY-CentOs-7   查看红帽认证签名的文件路径
# mnt/RPM-GPG-KEY-CentOs-7
vim /etc/yum.repos.d/mydvd.repo[nana2008]name=wanglalabaseurl=file:///mntenabled=1gpgcheck=1gpgkey=file:///mnt/RPM-GPG-KEY-CentOs-7yum repolist    # 列出仓库信息

总结 : 本地Yum仓库构建方法

  1. 服务端:显示光盘的内容,挂载光驱设备
  2. 客户端:书写客户端配置文件,指定服务端位置
  3. 执行流程: yum命令--->/etc/yum.repos.d/*.repo--->baseurl=file:///mnt

Yum软件的使用

安装软件

# mkdir /mnt                 创建/mnt目录
# mount /dev/cdrom /mnt     将光驱设备挂载到/mnt目录下yum install *(如果不加-y则需要输入确认下载的信息)yum -y install httpd        使用yum软件安装httpd包
rpm -q httpd                查看httpd包是否已经安装yum -y install bind-chroot    使用yum软件安装bind-chroot包
rpm -q bind-chroot          查看bind-chroot包是否已经安装yum -y install sssd         使用yum软件安装sssd包
rpm -q sssd                 查看sssd是否已经安装yum -y install gcc          使用yum软件安装gcc包
rpm -q gcc                  查看gcc是否已经安装yum -y install xorg-x11-apps 使用yum软件安装xorg-x11-apps包
rpm -q xorg-x11-apps        查看xorg-x11-apps包是否已经安装
rpm -ql xorg-x11-apps | less    查看目录下的文件安装清单

卸载软件
注意 : 我们在卸载软件的时候,不建议使用-y,很多软件与软件之间都存在依赖关系,
我们在卸载软件的时候,需要看清楚依赖关系再进行卸载,有些软件的依赖关系是跟数据库的软件有关联的。

yum remove * 卸载安装包yum remove xorg-x11-apps   卸载xorg-x11-apps包以及相关的依赖包
yum remove gcc              卸载gcc包以及相关的依赖包

查询软件

yum list ftp   查询仓库是否有ftp软件
# Availables Packages   没有安装
# Installed Packages    已经安装yum search ftp  包含ftp的软件就匹配(名字,功能含有ftp就算)yum provides */ftp  仓库中哪个软件包产生了该文件(类似于rpm -qf *)

清空缓存

我们第一次运行yum软件的时候,会把/etc/yum.reposd/*.repo文件加载到内存,下次运行yum软件的时候直接在内存里面找光盘的位置。
如果我们修改了配置文件的信息,我们需要让yum文件立刻读取我们修改过的配置文件信息,那么我们这个时候就需要先清空缓存的文件信息,让yum软件从硬盘中重新读取我们已经修改过的yum文件信息。

yum clean all        清空缓存
yum repolist        查看yum客户端配置文件的信息

yum被锁定了解决办法

Another app is currently holding the yum lock; waiting for it to exit...
The other application is: yum
Memory :  27 M RSS (963 MB VSZ)
Started: Mon Mar 15 11:03:17 2021 - 07:25 ago
State  : Traced/Stopped, pid: 1639使用yum下载的时候,出现以上报错,说明yum被锁住了。
可以使用 rm -rf /var/run/yum.pid 强制杀死进程来解决

上传与下载

  • 从互联网上下载
wget 需要被下载的链接                            # 默认下载到当前目录
--no-check-cretificate                       取消验证ssl证书(当ssl链接不安全情况下使用)
wget https://repo.huaweicloud.com/python/3.7.1/python-3.7.1.exe             python软件下载到当前目录下
选项: -O  下载到指定路径
wget -O /opt/python.exe https://repo.huaweicloud.com/python/3.7.1/python-3.7.1.exe          将python软件下载到opt目录下取名为python.execurl 需要被访问的链接
-k                                           取消验证ssl证书(当ssl链接不安全情况下使用)
选项-o        下载到指定路径
curl -o /opt/python.exe https://repo.huaweicloud.com/python/3.7.1/python-3.7.1.exe  curl与wget的区别
wget    下载文件-O : 指定保存路径
curl    访问链接                                # 显示链接源代码,并且会将链接的源代码在写入一个文本文件中保存-o : 指定文件路径,从而达到下载文件的功能
  • 从服务器上进行上传、下载到本地
上传下载到主机和个人电脑
需要安装 : lrzsz
安装命令 : yum -y install lrzsz上传 rz -E 格式 : rz调出上传窗口,选择需要被上传的文件下载 sz a.txt格式 : zs服务器中的文件路径

命令补充

获取命令帮助

获取命令帮助
方式一:命令 --help
cat --help      方式二:man 命令
man cat             按q退出
man passwd          显示passwd命令帮助
man 5 passwd        数字5表示帮助类型,表示配置文件类型

历史命令

历史命令
history             显示历史命令列表
history -c          清空历史命令
history
cat /etc/redhat-release
ls /root
history
!cat                执行最近一次以cat开头的命令
!ls                 执行最近一次以ls开头的命令调整历史命令的数量
vim /etc/profile    HISTSIZE=1000  默认记录1000条

统计文件占用空间

du,统计文件的占用空间
- du [选项]... [目录或文件]...
- -s:只统计每个参数所占用的总空间大小
- -h:提供易读容量单位(k,M等)du sh /etc       统计etc目录的总大小

date查看/调整时间

- date,查看/调整系统日期时间
· date +%F、date+%R
· date +"%Y-%m-%d %H:%M:%S"          修改系统的时间
· date -s "yyyy-mm-dd HH:MM:SS"       修改系统的时间date +"2008-1-1    10:50:12"          修改系统的时间(方式一)
date -s "2021-3-15 8:30:50"           修改系统的时间(方式二)date +%Y 显示年
date +%m   显示月
date +%d   显示日date +%H    显示时
date +%M   显示分
date +%S   显示秒date +%F    显示年月日(以-隔开,2021-03-15)
date +%R   显示时分(09:30)- 同步互联网时间
yum install -y ntpdate              用yum包安装的ntpdate服务
ntpdate ntp.aliyun.com              同步互联网网络时间- 系统硬件时钟
hwclock -r                  查看服务器硬件主板的时间
# Fri 26 Mar 2021 04:35:18 PM CST  -0.882678 seconds- 系统软件时钟
date                        查看当前Centos-7的系统时间
Fri Mar 26 16:36:20 CST 2021- 将硬件时间同步到系统时间
hwclock -s                  将硬件时间同步到系统时间
# Fri 26 Mar 2021 04:35:18 PM CST  -0.882678 seconds- 查看时区状态
timedatectl status    查看时区状态
#       Local time: Fri 2021-03-26 16:38:50 CST
#   Universal time: Fri 2021-03-26 08:38:50 UTC
#         RTC time: Fri 2021-03-26 08:38:50
#        Time zone: Asia/Shanghai (CST, +0800)
#      NTP enabled: no
# NTP synchronized: no
#  RTC in local TZ: no
#      DST active: n/atimedatectl set-timezone Asia/Shanghai     设置时区

软连接与硬链接

建立软连接只能使用绝对路径制作连接(链接)文件(制作快捷方式)      软连接
格式:ln -s /路径/源数据 /路径/快捷方式的名称        # 软连接
ln -s /etc/sysconfig/network-scripts/ /ns   创建快捷方式/ns
#ln -s /etc/passwd /    如果根目录下不写名字,那么快捷方式名字就叫passwd
ls /
ls -l /ns   查看快捷方式的源数据信息touch /ns/haha.txt      在快捷方式/ns创建haha.txt文件
touch /ns/nana.txt      在快捷方式/ns创建nana.txt文件
touch /ns/dudu.txt      在快捷方式/ns创建dudu.txt文件
ls /etc/sysconfig/network-scripts/      查看源数据的目录,新增了haha.txt,nana.txt,dudu.txt三个文件软连接优势:可以针对目录与文件制作快捷方式,支持跨分区
软连接缺点:源数据消失,快捷方式失效硬链接
ln /路径/源数据  /路径/快捷方式的名称 硬链接硬链接优势:源数据消失,快捷方式任然有效
硬链接缺点:只能针对文件制作快捷方式,不支持跨分区软连接与硬链接的区别
rm -rf /opt/*
echo 123 > /opt/A.txt
ln -s /opt/A.txt /opt/B.txt     软连接B.txt
ln /opt/A.txt /opt/C.txt        硬链接C.txt
ls /opt                         查看/opt目录下的文件和目录
rm -rf /opt/A.txt               删除源链接A.txt
cat /opt/B.txt                  查看B.txt的文件内容,源链接被删除,B.txt直接无效
# cat: B.txt:No such file or directory
cat /opt/C.txt                  查看C.txt的文件内容,源链接被删除,C.txt直接仍然有效

zip归档工具,跨平台

zip与tar的差别,tar只能在Linux系统中应用,zip在Linux和Windows系统都可以应用

归档 + 压缩操作:zip [-r] 备份文件.zip 被归档的文档...
[-r]: 被归档数据有目录,必须加上此选项
zip -r /opt/abc.zip /etc/passwd /home   将/etc/passwd和/home压缩至/opt.abc.zip中
ls /opt/                查看/opt/目录内容释放归档 + 解压操作:unzip 备份文件.zip [-d 目标文件夹]
mkdir /nsd20
unzip /opt/abc.zip -d /nsd20        将/opt/abc.zip释放至/nsd20中
[-l]: 只查看解压内容,不进行解压
unzip -l /opt/abc.zip           查看压缩包/opt/abc.zip里面压缩的内容

RPM软件包管理 软件依赖关系 Yum软件的使用 上传与下载 时间设置 命令补充 zip归档工具相关推荐

  1. Linux实用操作:小技巧(快捷键)、软件安装、systemctl、软连接、日期时区、IP地址、主机名、网络传输、端口、进程管理、主机状态、环境变量、上传、下载、压缩和解压

    版本说明 当前版本号[20230415]. 版本 修改说明 20230415 初版 本课程的笔记已经更新完毕,各位可以通过点击黑马程序员2023年新版Linux零基础快速入门到精通>学习笔记总目 ...

  2. RPM(红帽软件包管理器)和Yum软件仓库

    1.红帽软件包管理器 RPM机制是为了解决在校效.安装.卸载.查询.升级等管理软件操作过难设计的. 常用RPM软件包命令: 1)安装软件命令格式:rpm -ivh filename.rpm 2)升级软 ...

  3. RPM(软件包管理器)和YUM 软件仓库

    一.RPM软件包的功能: 存储和数据压缩 文件安装 配置文件生成 系统服务注册 软件依赖检查和依赖输出 存储数据压缩 RPM具有软件包的基本功能--数据压缩存储,RPM 安装列表中的文件在按照某个指定 ...

  4. Linux学习之CentOS(二十三)--Linux软件管理之源代码以及RPM软件包管理

    在Linux系统下,对于软件包的管理有多种机制,有源代码方式.RPM软件包管理方式以及YUM软件管理方式,本篇随笔将详细讲解CentOS下源代码形式安装软件以及RPM软件包管理机制 一.源代码形式 首 ...

  5. 【错误记录】Ubuntu 安装软件报错 ( 下列软件包有未满足的依赖关系:E: 无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系。 )

    文章目录 一.报错信息 二.解决方案 一.报错信息 执行 sudo apt-get install git 命令 , 安装 git 软件 , 报如下错误 : root@octopus:~/ijkpla ...

  6. 大数据与云计算学习计划 (一) 云计算系统管理 6 Linux中RPM软件包管理操作 、 Yum软件包仓库操作(概念与实操)

    大数据与云计算学习计划 (一) 云计算系统管理 6 Linux中RPM软件包管理操作 . Yum软件包仓库操作(概念与实操) 一.RPM软件包管理 1.常见软件包类型 2.RPM包文件名特征 3.RP ...

  7. RPM软件包管理 、Yum软件包仓库

    一.环境准备 开启CentOS7虚拟机 1.将光盘光盘镜像文件,放到虚拟的光驱设备 2.建立一个目录,进行挂载 [root@localhost ~]# ls -l /dev/cdrom lrwxrwx ...

  8. Linux命令之 DNF -- 新一代的 RPM 软件包管理器

    文章目录 一.命令介绍 二.安装 DNF 三.DNF 命令 (一)主要命令 1. 安装.升级和删除软件包 2. 查询和检查软件包 3. 执行其它功能 (二)插件命令 四.选项参数 五.命令示例 (一) ...

  9. rmp (RPM软件包管理器)

    RPM软件包管理器 英文原义:RPM Package Manager(原Red Hat Package Manager,现在是一个递归缩写) 注解:一种用于互联网下载包的打包及安装工具,它包含在某些L ...

最新文章

  1. 使用cpanel后台的“时钟守护作业”功能完成空间的定时全备份
  2. jQuery+css模拟下拉框模糊搜索的实现
  3. android怎么实现标题搜索,Android Toolbar上SearchView的实现
  4. matlab仿真三相交流电路,三相交流调压电路的MATLAB仿真
  5. 类加载器ClassLoader
  6. Docker的镜像基本原理和概念
  7. Python输出当前代码信息:文件,行号,函数名
  8. 微服务:知识点梳理(SOA、服务拆分、服务治理、分布式事务)
  9. elasticsearch安装使用
  10. 在OpenWRT路由器上自动更新github等网站的hosts
  11. 人力资源面试必问的十大问题
  12. 76----平面二次曲线的分类: 消去二次交叉项
  13. 建议收藏,最全ChatGPT 中文调教指南:提供各个领域的角色提示词(prompts)及使用技巧,当然也有不正经指南
  14. Windows8内核模式下开发NDIS应用 NDIS Filter讲解
  15. Linux环境安装unzip
  16. 【vue练手01之点击选中】
  17. resources Builders 校验
  18. 数据库第四单元mooc题
  19. 回环地址--Loopback
  20. Netdiscover网络扫描工具

热门文章

  1. 【Flutter 问题系列第 19 篇】安装 apk 包时提示 Install canceled by user 的问题如何解决
  2. LoRa数字语音模块—全双工,多方通话,预留优先位
  3. 正则也很牛,把阿拉伯数字的金额转换为中文大写数字
  4. 文化常识(临川四梦、四大南戏、江南三大名楼)
  5. 0.目标检测基础知识
  6. 20221224英语学习
  7. 扇形计算公式是怎么得来的?
  8. 2019年12月总结
  9. 原生js简单实现五指棋
  10. Kernel pwn 入门 (3)