LinuxGod.net
Linux大神网——精选每一篇高品质的技术干货
  1. 首页
  2. 开源快讯
  3. 正文

完后,目录可以自动生成,如何生成可参考右边的帮助

2022年11月23日 246点热度

提示:文章写完后,目录可以自动生成linux修改文件名,如何生成可参考右边的帮助文档

文章目录

前言

提示:以下是本篇文章正文内容,下面案例可供参考

一 、应用程序和系统命令的关系 1、系统命令

文件位置 :一般在/bin和/sbin目录中,或为Shell内部命令

主要用途:完成对新系统的基本管理工作,例如IP 配置工具

使用环境:一般只在字符操作界面中运行

运行格式:一般包括命令字、选项、参数

2、应用程序

文件位置 :一般在/usr/bin和/usr/sbin目录中

主要用途:完成相对独立的其他符咒任务,例如网页浏览器

使用环境:根据实际需要linux运行应用程序,有些程序可在图形界面中运行

运行格式:通畅没有固定的执行格式

二、典型应用程序的目录结构 文件类型保存目录

普通执行程序文件

/usr/bin

服务器执行程序文件和管理程序文件

/usr/sbin

应用程序配置文件

/etc

日志文件

/var/log

应用程序参考文档文件

/usr/share/doc

应用程序手册页文件

/usr/local/share/man

三、常见的软件包分装类型 文件类型保存目录

RPM软件包

扩展名为“.rpm”

DEB软件包

扩展名为“.deb”

源代码软件包

一般为“.tar.gz”、“tar.bz2”等格式安装包

绿色免安装的软件包

软件包的扩展名不一,以TarBall格式居多,在压缩包内提供已编译号的可执行程序文件,解开压缩包后的文件即可直接使用

1、rpm命令格式

rpm命令能够实现几乎所有对RPM软件包的管理功能

执行“man rpm”命令可以获得关于rpm命令的详细帮助信息

2、rpm命令功能

查询、验证RPM软件包的相关信息

安装、升级、卸载RPM软件包

维护RPM数据库信息等综合管理操作

1、rpm  -q 软件名                ★★#查询指定软件是否已安装

2、rpm -qi 软件名 #显示已安装的指定软件的详细信息 3、rpm -ql 软件名 #显示已安装的指定软件的文件列表 4、rpm -qc 软件名 ★★#列出已安装的指定软件的配置文件 5、rpm -qd 软件名 ★★#列出已安装的指定软件的软件包文档所在位置 6、rpm -qR 软件名 #列出已安装的指定软件的以来的软件包及文件 7、rpm qF 文件/目录 #查询已安装的指定软件属于哪个安装包 8、rpm -qa ★★#显示当前系统中以rpm方式安装的偶有软件列表 9、rpm -qf /user/bin/paswd #查看指定文件或目录是哪个软件包所安装的

3、查询未安装的RPM软件包文件中信息

rpm -qpi RPM包文件名         #查询指定软件包的详细信息
rpm -qpl RPM包文件名         #查询指定软件包的文件列表
rpm -qpc RPM包文件名         #查询指定软件包的配置文件
rpm -qpd RPM包文件名         #查询指定软件包的软件包文档的位置

4、安装、升级、卸载RPM软件包

格式:

rpm 【选项】 RPM包文件

rpm -ivh RPM 包文件

常用选项

-i 安装一个新的RPM安装包
-U 升级某个软件包,若未安装过,则进行安装
-F 升级某个软件包,如未安装过,则放弃安装
-h 在安装或升级软件包的过程中,以”#“号显示安装进度。
-v 显示软件安装过程中的详细信息。
–force 强制安装某个软件包,比如要安装版本更旧的软件包
-e 卸载指定名称的软件包
–nodeps 在安装或升级、卸载一个软件包时,不检查与其他软件包的依赖关系。

5、维护RPM数据库 1、重建RPM数据库

当RPM数据库发生损坏,可通过重建RPM数据库修复

rpm --rebuilddb 或者 rpm --initdb

2、导入验证公钥

在没有验证公钥之前,安装光盘中的一部分RPM软件包时会报错,需要向RPM数据库中导入位于光盘根目录下的公钥文件

mount /dev/sr0 /mnt/
rpm --import /mnt/RPM-GPG-KEY-CentOS-7

辅助选项

1.–nodeps就是安装时不会检查依赖关系,比如你这个rpm需要A,但是你没有装A,这样你的包就安装不了,用了–nodeps你就能装上了。

2.–force就是强制安装,比如你装过这个rpm的版本1,如果你想安装这个rpm的版本2,就需要用–force强制安装。

–force、–nodeps、-h、-v

四、配置本地yum源仓库

安装源代码软件包需要编译安装linux运行应用程序,需要安装支持c和c++程序语言的编译器,如gcc、gcc-c++、make 如果使用rpm方式安装,则需要先安装多个依赖包,这样会很繁琐,这里可以使用yum方式来进行一键安装。

先配置本地yum源仓库(最好保存目录是空的)

本地yum仓库的小结

1、yum是一个半自动化的下载、更新、安装的工具 2、yum下载、安装的时候,默认指向的位置是公共仓库,通过识别/etc/yum.repos.d 目录下的(Centos-*.repo yum)源文件(文件中指向了Centos的yum公共仓库位置) 有时候我们网络不佳或者无网环境,就需要将yum默认指向的位置改为本地yum仓库 如何配置本地yum仓库 必要的时候红帽linux系统下载,可以在机器空闲的时候,来更新自己的本地yum仓库中的 *.rpm包的版本

关键点

1、/etc/yum.repos.d 目录下有很多*.repo文件(将原本指向公共仓库的yum源文件,修改为指向本地的yum源文件) 2、考虑到缓存 需要先清空缓存,再加载我们自定义的本地yum仓库的配置yum clean all && yum makecache

细致化:

[root@zhb mnt]# mount /dev/cdrom /mnt/
mount: /dev/sr0 写保护,将以只读方式挂载
[root@zhb mnt]# cd /etc/yum.repos.d/
[root@zhb yum.repos.d]# ls
CentOS-Base.repo       CentOS-fasttrack.repo  CentOS-Vault.repo
CentOS-CR.repo         CentOS-Media.repo
CentOS-Debuginfo.repo  CentOS-Sources.repo
[root@zhb yum.repos.d]# mkdir bak
[root@zhb yum.repos.d]# ls
bak               CentOS-Debuginfo.repo  CentOS-Sources.repo
CentOS-Base.repo  CentOS-fasttrack.repo  CentOS-Vault.repo
CentOS-CR.repo    CentOS-Media.repo
[root@zhb yum.repos.d]# mv CentOS-* bak/
[root@zhb yum.repos.d]# ls
bak
[root@zhb yum.repos.d]# vim local.repo
[root@zhb yum.repos.d]# ls
bak  local.repo
[root@zhb yum.repos.d]# 
[root@zhb yum.repos.d]# 
[root@zhb yum.repos.d]# 
[root@zhb yum.repos.d]# 
[root@zhb yum.repos.d]# yum clean all
已加载插件:fastestmirror, langpacks
正在清理软件源: local
Cleaning up list of fastest mirrors
Other repos take up 1.1 G of disk space (use --verbose for details)
[root@zhb yum.repos.d]# 
[root@zhb yum.repos.d]# 
[root@zhb yum.repos.d]# 
[root@zhb yum.repos.d]# yum makecache
已加载插件:fastestmirror, langpacks
Determining fastest mirrors
local                                           | 3.6 kB     00:00     
(1/4): local/group_gz                             | 166 kB   00:00     
(2/4): local/filelists_db                         | 3.2 MB   00:00     
(3/4): local/primary_db                           | 3.1 MB   00:00     
(4/4): local/other_db                             | 1.3 MB   00:00     

元数据缓存已建立 [root@zhb yum.repos.d]# [root@zhb yum.repos.d]# [root@zhb yum.repos.d]# [root@zhb yum.repos.d]# [root@zhb yum.repos.d]# yum install -y mariadb 已加载插件:fastestmirror, langpacks Loading mirror speeds from cached hostfile 正在解决依赖关系 --> 正在检查事务 ---> 软件包 mariadb.x86_64.1.5.5.60-1.el7_5 将被 安装 --> 解决依赖关系完成 依赖关系解决 ======================================================================= Package 架构 版本 源 大小 ======================================================================= 正在安装: mariadb x86_64 1:5.5.60-1.el7_5 local 8.9 M 事务概要 ======================================================================= 安装 1 软件包 总下载量:8.9 M 安装大小:49 M Downloading packages: Running transaction check Running transaction test Transaction test succeeded Running transaction 正在安装 : 1:mariadb-5.5.60-1.el7_5.x86_64 1/1 验证中 : 1:mariadb-5.5.60-1.el7_5.x86_64 1/1 已安装: mariadb.x86_64 1:5.5.60-1.el7_5 完毕! [root@zhb yum.repos.d]# [root@zhb yum.repos.d]#

测试

在断网环境下,是否能正常“安装”软件包 ifdown ens33

是否能“安装”成功 yum install -y httpd / yum install mariadb -y

以上完成本地yum仓库的配置

实验过程

[ZHB@zhb ~]$ ifdown ens33
用户不能控制这一设备。
[ZHB@zhb ~]$ su root
密码:
[root@zhb ZHB]# ifdown ens33
成功断开设备 'ens33'。
[root@zhb ZHB]# yum install -y httpd / yum install mariadb -y
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
软件包 filesystem-3.2-25.el7.x86_64 已安装并且是最新版本
软件包 yum-3.4.3-161.el7.centos.noarch 已安装并且是最新版本
没有可用软件包 install。
软件包 1:mariadb-5.5.60-1.el7_5.x86_64 已安装并且是最新版本
正在解决依赖关系
--> 正在检查事务
---> 软件包 httpd.x86_64.0.2.4.6-88.el7.centos 将被 安装
--> 正在处理依赖关系 httpd-tools = 2.4.6-88.el7.centos,它被软件包 httpd-2.4.6-88.el7.centos.x86_64 需要
--> 正在处理依赖关系 /etc/mime.types,它被软件包 httpd-2.4.6-88.el7.centos.x86_64 需要
--> 正在检查事务
---> 软件包 httpd-tools.x86_64.0.2.4.6-88.el7.centos 将被 安装
---> 软件包 mailcap.noarch.0.2.1.41-2.el7 将被 安装
--> 解决依赖关系完成
依赖关系解决
===========================================================================
 Package          架构        版本                        源          大小
===========================================================================
正在安装:
 httpd            x86_64      2.4.6-88.el7.centos         local      2.7 M
为依赖而安装:
 httpd-tools      x86_64      2.4.6-88.el7.centos         local       90 k
 mailcap          noarch      2.1.41-2.el7                local       31 k
事务概要
===========================================================================
安装  1 软件包 (+2 依赖软件包)
总下载量:2.8 M

安装大小:9.6 M Downloading packages: --------------------------------------------------------------------------- 总计 96 MB/s | 2.8 MB 00:00 Running transaction check Running transaction test Transaction test succeeded Running transaction 正在安装 : mailcap-2.1.41-2.el7.noarch 1/3 正在安装 : httpd-tools-2.4.6-88.el7.centos.x86_64 2/3 正在安装 : httpd-2.4.6-88.el7.centos.x86_64 3/3 验证中 : httpd-tools-2.4.6-88.el7.centos.x86_64 1/3 验证中 : mailcap-2.1.41-2.el7.noarch 2/3 验证中 : httpd-2.4.6-88.el7.centos.x86_64 3/3 已安装: httpd.x86_64 0:2.4.6-88.el7.centos 作为依赖被安装: httpd-tools.x86_64 0:2.4.6-88.el7.centos mailcap.noarch 0:2.1.41-2.el7 完毕! [root@zhb ZHB]#

完成本地yum仓库的配置

yum常用的操作命令

yum -y install 软件名     #安装、升级软件包,-y 选项表示自动确认安装依赖关系
yum -y remove 软件名      #卸载软件包,可自动解决其依赖关系
yum -y update 软件名      #升级软件包
yum list                  #查询软件包列表
yum list installed        #查询系统中已安装的软件包
yum list available        #查询仓库中尚未安装的软件包
yum list update           #查询可以升级版本的软件包
yum info 软件名           #查询软件包的描述信息
yum info httpd
yum search [all] 关键词   #根据某个关键词来查找相关的软件包
 
yum whatprovides 命令     #查询命令属于哪个软件包
yum install 包名 -y --downloadonly --downloaddir=/tmp/   #下载RPM包到指定目录
yum history 查看历史记录清单,后面可以加undo +ID数可以卸载器软件并解决依赖关系

本作品采用 知识共享署名 4.0 国际许可协议 进行许可
标签: rpm rpm卸载 yum yum卸载 文件目录
最后更新:2022年11月23日

Linux大神网

每日更新,欢迎收藏♥ 不积跬步无以至千里,加油,共勉。

点赞
< 上一篇
下一篇 >

Linux大神网

每日更新,欢迎收藏♥
不积跬步无以至千里,加油,共勉。

最新 热点 随机
最新 热点 随机
(Linux基础知识)Linux察看版本信息的信息三 从容迎接Windows时代:Ubuntu安装Win7虚拟机教程 教下大伙儿红旗linux系统镜像系统安装实例教程流程汇总 轻松压缩文件,linux命令必备! 红旗Linux推出新版本:界面设计媲美Windows Linux部署项目:构建高效稳定的运行环境 掌握Linux下载文件命令技巧,轻松高效获取所需资料 Linux系统查看系统运行状态的top命令的功能 轻松解决Linux内存溢出问题:9个实用方法 Linux常用的命令大全-系统管理进程与作业管理命令解释大全 linux内核api 深入探索Linux内核API,你真的了解吗? 教你在XShell软件中使用sz和rz命令下载和上传文件 RedHatEnterprise命令删除空文件夹命令教程操作环境介绍 轻松掌握Linux目录权限777提升技巧 LinuxTCP协议栈的内部机制和优化技术介绍 手动删除400多万个小文件,rm-删除执行不动 mysql执行sql脚本文件的方法:SQLServerjava能写游戏吗 解密Unix时间戳转换技巧,轻松读懂日期奥秘 在Linux中轻松删除单个文件、文件组或整个文件夹 掌握Linux编译C语言的命令,轻松使用编译器
Linux文件路径查询方法,轻松获取文件位置Linux移植6410:从零开始的挑战!linux php安装 快速掌握Linux下PHP安装,轻松入门流行技术linux patch 文件 解决LinuxPatch文件10大疑难杂症,轻松应对!Ubuntu系统更改IP地址的简易教程,跟随以下步骤即可搞定!高效搭建Linux Android开发环境,轻松提升开发体验轻松掌握:如何查询Linux内核版本?Linux安装Matlab指南,快速掌握安装步骤Ubuntu 16安装网卡驱动教程,轻松解决网络连接问题Linux启动时,不使用图形界面可能更有效率!移植Linux,手机变身“大杀器”!详解8大关键操作Linux更高效,掌握启动终端快捷键!纯Python库实现上面介绍的HTML转换为PDF的软件Fedora 13服务器配置指南:9个实用技巧全解析9种方法轻松获取Linux版本,快速掌握系统信息!博客韦东山freeRTOS系列教程:入门文档教程+进阶视频教程轻松掌握linux ldd命令的技巧,成为高效开发者与管理员Linux VPS安全检测,保障服务器稳定运行!Linux下高效开发必备:配置Tomcat和JDK分析Linux中的I2C驱动程序框架核心结构(i2c-bus结构)
Linux启动时添加自定义脚本、命令或服务怎么做? AMDCPU微码更新可能会执行每个线程的微码更新 开源软件安装源码包的方式安装软件 【干货】管理用户(user)的工具或命令! 我们还学会了检查系统的内核版本的Linux内核。 如何增加Linux中打开文件max的文件限制数量? linux多线程编程详解教程提供线程通过信号量实现通信代码 linux系统位数最简单的命令--linux 0005编程精粹-Microsoft编写优质无错程序秘诀(bjchenxu) 详解Linux安装JDK步骤,轻松配置开发环境 Linux内核页表管理中那些鲜为人知的作用是什么?(图) 虚拟主机技术极大怎么样?如何选择多个网站.Q. 揅笑晏当硬盘分区完成后,需要对分区进行格式化 计算编写应用程序意味着什么?的目标是这样的 du下所有的文件和文件夹(不含子目录),统计符号链接所指向的大小 手机上可以安装完整的Linux系统吗?/VNC 移动OS三分天下的是PalmPDA?PDA论坛 Debian修复软件包依赖关系利用网络帮助用户主动获取软件包工具 驱动开发:通过ReadFile与内核层通信详细介绍如何使用应用层 1.安装JDK安装目录要求安装和配置是否成功
标签聚合
命令模式 sudo linux脚本 命令 虚拟机 linux服务器 linux系统 文件目录 软件 电脑
书籍
课程
技术群
技术干货大合集↓
  • 2023年3月 / 89篇
  • 2023年2月 / 84篇
  • 2023年1月 / 161篇
  • 2022年12月 / 187篇
  • 2022年11月 / 76篇
友情链接:

Linux书籍 | Linux命令 | Linux系统 | RHCE红帽认证 | Linux软件 | Linux教程 | CentOS系统 | Linux内核 | Linux服务器 | Linux大神 | IT资源

COPYRIGHT © 2023 linuxgod.net ALL RIGHTS RESERVED.