RPM包管理

RPM 全称 RedHat Package Manager ,即 红帽软件包管理器
在RPM公布之前,要想在Linux系统中安装软件只能采取源码包的方式安装。早期在Linux系统中安装程序是一件非常困难、耗费耐心的事情,而且大多数的服务程序仅仅提供源代码,需要安装人员自行编译代码并解决许多的软件依赖关系,因此要安装好一个服务程序,不仅需要具备丰富知识、高超的技能,还要有良好的耐心。而且在安装、升级、卸载服务程序时还要考虑到其他程序、库的依赖关系,所以在进行校验、安装、卸载、查询、升级等管理软件操作时难度都非常大。

RPM机制则为解决这些问题而设计的。RPM有点像Windows系统中的控制面板,会建立统一的数据库文件,详细记录软件信息并能够自动分析依赖关系。目前RPM的优势已经被公众所认可,使用范围也已不局限在红帽系统中了。下表中是一些常用的RPM软件包命令。

描述 命令及参数
安装软件 rpm -ivh filename.rpm
升级软件 rpm -Uvh filename.rpm
卸载软件 rpm -e filename.rpm
查询软件描述信息 rpm -qpi filename.rpm
列出软件文件信息 rpm -qpl filename.rpm
查询文件属于哪个RPM rpm -qf filename

Yum软件仓库

Yum软件仓库便是为了进一步降低软件安装难度和复杂度而设计的技术。Yum软件仓库可以根据用户的要求分析出所需软件包及其相关的依赖关系,然后自动从服务器下载软件包并安装到系统。Yum软件仓库的技术拓扑如图。


Yum软件仓库中的RPM软件包可以是由红帽官方发布的,也可以是第三方发布的,当然也可以是自己编写的。下表所示为一些常见的Yum命令。

命令 作用
yum repolist all 列出所有仓库
yum list all 列出仓库中所有软件包
yum info 软件包名称 查看软件包信息
yum install 软件包名称 安装软件包
yum reinstall 软件包名称 重新安装软件包
yum update 软件包名称 升级软件包
yum remove 软件包名称 移除软件包
yum clean all 清除所有仓库缓存
yum check-update 检查可更新的软件包
yum grouplist 查看系统中已经安装的软件包组
yum groupinstall 软件包组 安装指定的软件包组
yum groupremove 软件包组 移除指定的软件包组
yum groupinfo 软件包组 查询指定的软件包组信息

Systemd初始化进程

Linux操作系统的开机过程是这样的,即从BIOS开始,然后进入Boot Loader,再加载系统内核,然后内核进行初始化,最后启动初始化进程。初始化进程作为Linux系统的第一个进程,它需要完成Linux系统中相关的初始化工作,为用户提供合适的工作环境。红帽RHEL 7系统已经替换掉了熟悉的初始化进程服务System V init,正式采用全新的systemd初始化进程服务。systemd用目标(target)代替了System V init中运行级别的概念,下表为两者之间的对比。

System V init运行级别 Systemd目标名称 作用
0 runlevel0.target, poweroff.target 关机
1 runlevel1.target, rescue.target 单用户模式
2 runlevel2.target, multi-user.target 等同于级别3
3 runlevel3.target, multi-user.target 多用户的文本界面
4 runlevel4.target, multi-user.target 等同于级别3
5 runlevel5.target, graphical.target 多用户的图形界面
6 runlevel6.target, reboot.target 重启
emergency emergency.target 紧急Shell

如果想要将系统默认的运行目标修改为“多用户,无图形”模式,可直接用ln命令把多用户模式目标文件连接到/etc/systemd/system/目录:

[root@localhost ~]# ln -sf /lib/systemd/system/multi-user.target /etc/systemd/system/default.target

下表所示为RHEL 6系统中System V init命令与RHEL 7系统中systemctl命令管理服务的对比。

System V init命令 systemctl命令 作用
service foo start systemctl start foo.service 启动服务
service foo restart systemctl restart foo.service 重启服务
service foo stop systemctl stop foo.service 停止服务
service foo reload systemctl reload foo.service 重新加载配置文件(不终止服务)
service foo status systemctl status foo.service 查看服务状态
chkconfig foo on systemctl enable foo.service 开机自动启动
chkconfig foo off systemctl disable foo.service 开机不自动启动
chkconfig foo systemctl is-enabled foo.service 查看特定服务是否为开机自启动

重置root用户密码

进行此操作前需确定该系统是否为RHEL 7系统
[root@linuxprobe ~]# cat /etc/redhat-release
Red Hat Enterprise Linux Server release 7.0 (Maipo)

第1步:重启Linux系统主机并出现引导界面时,按下键盘上的e键进入内核编辑界面。


第2步:在linux16参数这行的最后面追加“rd.break”参数,然后按下Ctrl + X组合键来运行修改过的内核程序。


第3步:等待内核程序加载完成,进入到系统的紧急求援模式。


第4步:依次输入以下命令,等待系统重启操作完毕,然后就可以使用设置的新密码来登录Linux系统了。

mount -o remount,rw /sysroot
chroot /sysroot
passwd
touch /.autorelabel
exit
reboot



素材来源: https://www.linuxprobe.com/chapter-01.html

简述RedHat 7 Linux系统相关推荐

  1. 如何在Redhat 7 Linux系统上停止/启动和禁用/启用防火墙

    转载来源:https://linuxconfig.org/how-to-stop-start-and-disable-enable-firewall-on-redhat-7-linux-system ...

  2. RedHat / Centos   Linux 系统运维与管理实践技巧荟萃,持续更新

    RedHat / Centos   Linux  系统运维与管理实践技巧荟萃 磁盘分区相关  Linux  fdisk 磁盘分区工具以及安装 GRUB 实战: 准备工作,前置知识 演示环境基于 cen ...

  3. 五种方法查看Ubuntu/Redhat等Linux系统版本号等系统信息

    最近碰到一个问题,在Linux终端下怎么查看当前操作系统是什么,版本是什么.不同的Linux发行版不完全一样,查了一些资料现在总结如下.有以下命令可以查看: 第一种方法: # lsb_release ...

  4. 查看linux系统redhat版本号,转:五种方法查看Ubuntu/Redhat等Linux系统版本号等系统信息...

    最近碰到一个问题,在Linux终端下怎么查看当前操作系统是什么,版本是什么.不同的Linux发行版不完全一样,查了一些资料现在总结如下.有以下命令可以查看: 第一种方法: # lsb_release ...

  5. redhat下linux系统执行for循环语句批量创建用户并设置密码(初学)

    批量创建用户操作 1 创建文本保存批量用户的用户名,一行写一个用户名 [root@linuxprobe ~]# vim users.txt    a b c d e g 2 写shell脚本 #!/b ...

  6. Linux系统运维常见面试题汇总

    一.填空题 1. 在Linux 系统 中,以文件方式访问设备 .2. Linux 内核引导时,从文件/etc/fstab中读取要加载的文件系统 .3. Linux 文件系统中每个文件用indoe节点来 ...

  7. 【转载,整理】Linux模拟试题及答案(全)+经典Linux系统工程师面试题(附答案)

    转自:http://www.ha97.com/871.html   http://www.ha97.com/870.html 2010-6 11 经典Linux系统工程师面试题(附答案) 发表于: L ...

  8. 高级Linux系统 课程课后习题

    第一章 Q1 简述Linux系统的应用领域 Linux服务器:嵌入式Linux系统:软件开发平台:桌面应用 Q2 简述Linux系统的特点 开放性.多用户.多任务.良好的用户界面.设备独立性.丰富的网 ...

  9. 自制简单的linux 系统

    转自:http://51log.blog.51cto.com/6076767/1265485 如果您想根据自己的需要 自制linux系统.那首先呢 要了解linux系统都有什么组成: Linux系统一 ...

  10. 名企linux系统工程师面试题总结

    在 Linux 系统中,以 文件 方式访问设备 . Linux 内核引导时,从文件 /etc/fstab 中读取要加载的文件系统. Linux 文件系统中每个文件用 索引节点来标识. Linux 文件 ...

最新文章

  1. 《Android程序设计》一第一部分 工具和基础
  2. java 更新ui_你怎么解决Android开发中更新UI报错的异常吗-百度经验
  3. springboot 自定义类配置
  4. matlab 多文件编程,是否有可能在MATLAB中为每个文件定义多个函数,并从该文件外部访问它们?...
  5. python文件夹目录_Python 操作文件、文件夹、目录大全
  6. IOC操作Bean管理XML方式(创建对象和set注入属性)
  7. Z-BlogPHP海盗导航主题模板zblog5_nav
  8. js designMode contentEditable 编辑在线网页
  9. 使用Redux在React Navigation App中管理状态
  10. oracle9可以访问8,使用Oracle9i全索引扫描快速访问数据
  11. 音乐播放器 EasyMusic (一)
  12. linux创建云主机内存不足,云主机DC2 Linux系统CPU与内存占用率高导致无法登录
  13. 如何检验java环境变量是否配好_如何验证Java环境变量配置成功
  14. BitSet源码解析,位运算玩的真六
  15. 基于libVLC的视频播放器之五:抽帧
  16. VS2017离线安装失败解决无法重新安装问题 catalog问题
  17. booth乘法器原理
  18. 李航《统计学习方法》第2版 第1章课后习题答案
  19. IDEA2021配置Maven
  20. C#屏幕录制图像处理:(包含鼠标图像录制)

热门文章

  1. linux怎么入侵别人电脑关机,Linux关机执行脚本命令应该怎么做?
  2. 层次分析法软件操作步骤(yaahp)
  3. python vba sql_Excel、VBA与Mysql交互
  4. 清理autodesk产品注册表_AUTODESK 卸载工具,完美彻底卸载清除干净autodesk各种软件残留注册表和文件...
  5. Kali Linux零基础入门到精通
  6. java如何开发安卓软件_Java 程序员如何快速入门 Android 开发?
  7. mysql的驱动jar包_各版本MySQL数据库驱动程序jar包大全(java连接mysql驱动jar包)
  8. 周志华-机器学习.pdf 学习心得 附整理材料
  9. JXSL报错CannotOpenWorkbookException和Cannot load XLS transformer解决方案
  10. Delphi7下安装ICS组件