当前位置: 首页 > news >正文

Linux基础复习(三)

前言

接Linux基础复习二

一、常用命令及其解释

Tab补全

在上一篇文章配置了IP然后通过远程SSH连接软件控制主机,在配置过程中会发现有些命令过于长,那么,Tab键补全就可以很好的帮助我们去快速的敲出命令,同时如果有些命令有遗忘,使用Tab补全也可以帮助我们提高正确率。
在Linux系统中,图形化安装会自动安装相应软件包,而在最小化安装时则会默认不安装,那么我们就需要自己去安装包,而在CentOS系统中,我们需要安装软件是通过YUM来安装的,而想要使用YUM安装则需要搭建YUM仓库

YUM仓库的搭建

在CentOS系统中想要搭建YUM需要两个重要东西,一个是YUM仓库的repo文件,在/etc/yum.repos.d/下,一个则是软件仓库的位置,而软件仓库又分为本地仓库和远程仓库,但是软件仓库都必须有软件包和软件清单。软件包是指RPM包,将多个RPM包放在一起就是一个软件仓库,软件清单是记录软件仓库所有软件包信息和位置的清单,通过清单才能快速找到需要安装的软件包和查看软件包信息。

本地yum仓库的搭建

本地yum仓库有多种软件来源,例如通过镜像文件内置的仓库或者使用外置USB或驱动硬盘挂载仓库。
1、挂载镜像仓库
打开虚拟机详细,选择CDROM,点击虚拟磁盘的浏览
在这里插入图片描述2、选择对应镜像,点击选择卷
在这里插入图片描述
3、确认已经加载,点击应用
在这里插入图片描述4、创建一个文件夹或者使用/mnt来挂载镜像,这里直接使用/mnt

挂载镜像也有多种方式

(1)首先就是临时挂载,临时挂载就是重启后会自动失效的方式
临时挂载直接使用mount /硬件地址 /挂载目录
eg: mount /dev/cdrom /mnt
(2)其次就是开机自挂载,开机自挂载会在开机启动时根据文件配置自动去寻找挂载硬件和目录然后挂载,这样就相当与永久挂载。
开机自挂载需要编写/etc/fstab文件 按照
/设备名 /挂载目录 文件系统类型 挂载选项 dump备份设置 文件系统检查顺序
来编写自挂载文件
在这里插入图片描述使用mount -a 来检验文件编写格式是否有错,需要注意的是如果编写有误,重启系统会失败,需要去恢复模式修改配置。
使用df -h 查看是否挂载上,也可以使用mount | grep /挂载路径来查询详细信息
在这里插入图片描述
(3)使用udv
udev的主要目的是对外设检测和热插拔采取行动,这里不做过多赘述
(4)使用systemd挂载单元
systemd是Linux系统的初始化系统,也可以用于自动挂载。
需要编写一个systemd单元文件,然后设置一个开机自启,同上一个一样,不过多赘述。
(5)使用autofs
autofs是一个自动挂载的守护进程,它可以根据需要自动挂载和卸载文件系统。autofs通常用于按需挂载网络文件系统或远程目录。同上上一个一样,不过多赘述。

编写repo文件

查看挂载目录/mnt
在这里插入图片描述
其中的AppStream和BaseOS是软件仓库
编写/etc/yum.repos.d/local.repo文件,注意repo文件必须以.repo结尾,否则无法识别,同时yum.repos.d目录下的所有repo文件必须可以使用,否则无法正常使用yum
删除原有网络yum的repo文件
在这里插入图片描述
编写local.repo文件
在这里插入图片描述
这里[app]和[base]是仓库的标识符,是不能重复的
name是对于软件仓库的描述,我这里直接用标识代替
baseurl是仓库的地址,本地搭建为本地的文件路径
gpgcheck是是否检查证书,如果需要则为1,不需要为0
enabled为是否启用yum仓库,为1启动,为0不启动

使用yum repoinfo查看仓库信息,如果没有报错且显示各仓库信息,则为搭建成功,可以下载软件测试。
在这里插入图片描述## 下载Tab补全需要的软件bash-completion
在这里插入图片描述
编辑bash设置文件bashrc,bashrc分为本地和全局两个文件,本地文件~/.bashrc只对当前用户生效,而全局/etc/bashrc则对所有用户生效
在这里插入图片描述
配置后输入source /etc/bashrc 或source ~/.bashrc来生效配置
在这里插入图片描述
可以看出已经生效,也可以不编写直接重启,一样的效果

YUM和RPM相关

RPM

RPM是Red Hat Package Manager的缩写,是Linux系统中用于安装、升级、卸载和查询软件包的工具。但是rpm无法解决安装软件依赖问题,当一个软件需要依赖其他软件时,使用rpm无法安装成功。
相关命令有:
安装软件包 rpm -ivh package_file.rpm 其中,-i 表示安装,-v 表示显示详细过程,-h 表示显示安装进度。
升级软件包 rpm -Uvh package_file.rpm
卸载软件包 rpm -e package_name 其中,-e 表示卸载。
查询已安装的软件包 rpm -qa 其中 -q表示查询,-a表示所有已安装的
查询特定软件包是否已安装 rpm -q package_name
查询软件包信息 rpm -qi package_name 其中 -i 表示信息
验证软件包 rpm -V package_name 验证已安装的软件包是否完整。
由于RPM的缺陷,所以现在rpm多用于查询软件包是否安装和安装信息等,安装卸载软件不使用rpm命令

YUM

YUM是一个基于RPM的包管理器,它提供了更高级的功能,如自动解决软件包之间的依赖关系。
相关命令 :
1、安装软件包 yum -y install package_name 其中,-y表示强制安装,不会询问是否安装,该命令会从配置的软件仓库中自动下载并安装指定的软件包及其依赖项。
2、升级软件包 :
升级所有已安装的软件包(包括内核)yum update
只升级所有已安装的软件包,但不包括内核 yum upgrade
升级特定软件包 yum update package_name
3、卸载软件包 yum -y remove package_name
4、查询软件包:
查询已安装的软件包 yum list installed
查询软件包是否已安装 yum list installed | grep package_name
查询软件包信息 yum info package_name
5、搜索软件包 yum search keyword 搜索包含指定关键字的软件包。
6、清除缓存 :
清除所有缓存 yum clean all
清除已下载的软件包 yum clean packages
清除缓存的headers yum clean headers
7、下载软件包而不安装 yum install --downloadonly --downloaddir=/path/to/directory package_name 将指定的软件包下载到指定目录,但不进行安装。

除此之外,还有很多比如说本地安装,忽略依赖安装等就不赘述。

相关文章:

  • 云服务器Ubuntu18.04进行Nginx配置
  • 0722_驱动3 地址映射驱动点灯
  • VScode 自定义插件安装目录
  • 03。正式拿捏ArkTS语言第一天
  • 重生之“我打数据结构,真的假的?”--3.栈和队列
  • Opencv学习项目4——手部跟踪
  • 【机器学习】解开反向传播算法的奥秘
  • Red Hat 9.4 配置Yum镜像源
  • OAK相机支持的图像传感器有哪些?
  • 【区块链】如何发行自己的加密货币到以太坊测试网络,remixIDE发行自己的数字货币
  • 探究项目未能获得ASPICE 1、2级能力的原因及改进策略
  • 25.x86游戏实战-理解发包流程
  • 内存泄漏详解
  • 【JS】事件循环
  • useRoute和useRouter
  • Babel配置的不完全指南
  • codis proxy处理流程
  • Map集合、散列表、红黑树介绍
  • MySQL数据库运维之数据恢复
  • Travix是如何部署应用程序到Kubernetes上的
  • Vue小说阅读器(仿追书神器)
  • 大型网站性能监测、分析与优化常见问题QA
  • 构建工具 - 收藏集 - 掘金
  • 什么是Javascript函数节流?
  • 小程序上传图片到七牛云(支持多张上传,预览,删除)
  • 《TCP IP 详解卷1:协议》阅读笔记 - 第六章
  • 从如何停掉 Promise 链说起
  • ​LeetCode解法汇总2808. 使循环数组所有元素相等的最少秒数
  • !$boo在php中什么意思,php前戏
  • # 再次尝试 连接失败_无线WiFi无法连接到网络怎么办【解决方法】
  • #70结构体案例1(导师,学生,成绩)
  • #git 撤消对文件的更改
  • #知识分享#笔记#学习方法
  • #中国IT界的第一本漂流日记 传递IT正能量# 【分享得“IT漂友”勋章】
  • $Django python中使用redis, django中使用(封装了),redis开启事务(管道)
  • (Redis使用系列) Springboot 使用redis实现接口幂等性拦截 十一
  • (solr系列:一)使用tomcat部署solr服务
  • (力扣)1314.矩阵区域和
  • (论文阅读31/100)Stacked hourglass networks for human pose estimation
  • (四)七种元启发算法(DBO、LO、SWO、COA、LSO、KOA、GRO)求解无人机路径规划MATLAB
  • (转)程序员疫苗:代码注入
  • .ai域名是什么后缀?
  • .NET CF命令行调试器MDbg入门(四) Attaching to Processes
  • .NET Core 控制台程序读 appsettings.json 、注依赖、配日志、设 IOptions
  • .NET 快速重构概要1
  • .Net程序猿乐Android发展---(10)框架布局FrameLayout
  • .NET教程 - 字符串 编码 正则表达式(String Encoding Regular Express)
  • .net流程开发平台的一些难点(1)
  • .NET设计模式(11):组合模式(Composite Pattern)
  • .NET文档生成工具ADB使用图文教程
  • @AutoConfigurationPackage的使用
  • [ C++ ] STL---仿函数与priority_queue
  • [24年新算法]NRBO-XGBoost回归+交叉验证基于牛顿拉夫逊优化算法-XGBoost多变量回归预测
  • [C#]OpenCvSharp使用帧差法或者三帧差法检测移动物体
  • [c++] C++多态(虚函数和虚继承)