中级课程RHCE

embedded/2024/10/17 23:31:00/

RHCE

  • 一、复习RHCSA
    • 1.1 系统安装
      • 1.1.1 安装虚拟机
      • 1.1.2 第一个快照
      • 1.1.3 第二个快照
      • vi编辑器
      • 1.1.4 看网关网卡
    • 1.2 文件管理
    • 1.3 目录管理
    • 1.4 用户管理
    • 1.5 权限管理
    • 1.6 存储管理
      • 1.6.1 标准分区管理实验:
      • 1.6.2 逻辑卷管理实验:
      • 1.6.3 交换空间管理实验
    • 1.7 软件管理
    • 1.8 服务进程
    • 1.9 网络管理
  • 二、

一、复习RHCSA

系统安装文件管理文件创建touch vim nano echo 重定向>文件查看cat tac more less head tail修改vim nano echo >>>> 追加、覆盖移动mv a b复制cp a b删除rm -r:递归删除,-f:强制
目录管理目录创建 mkdir目录删除 rmdir rm -d:删除空目录 rm -f:强制删除 rm -r:递归删除
用户管理用户管理用户添加 useradd adduser删除 userdel -r 递归修改 usermod USERNAME查看	id USERNAME用户组管理添加 groupadd删除 groupdel修改 groupmod查看 grep GROUPNAME /etc/group
涉及到的文件/etc/passwd 存储系统中所有用户的基本信息/etc/shadow 保存用户密码/etc/group 储存用户组信息/etc/gshadow 保存组的密码信息/etc/skel 用户家目录下的相关隐藏文件/etc/default/useradd 创建用户的相关信息/etc/login.defs/var/spool/mail权限管理标准权限管理文件		目录r	可以读取		列出目录w	可以修改		创建删除目录中的文件x	可执行		可切换chmod(修改权限)	u	g	o	a+	-	=扩展权限文件访问控制列表setfaclgetfacl特殊权限suid	实现目标可执行程序在运行之后形成的进程的所有者为可执行程序的所有者,而不是发起者sgid	实现目录中创建的文件默认所属组为目标所属组sticky	实现目录中的文件只有创建者可以删除权限掩码umask002212341:特殊权限的权限掩码234:标准权限的权限掩码文件属性i	achattrlsattr文件所有者和所属组chownchgrp
存储管理标准的存储管理主分区	1-4扩展分区逻辑分区	5....硬盘sata	sda sda1 sda2 sdb sdc硬盘nvme	nvme0n1 nvme0n1p1 nvme0n1p2 nvme0n2光盘sr0逻辑卷管理	交换空间管理自动挂载
软件管理服务进程
网络管理

1.1 系统安装

1.1.1 安装虚拟机

创建一个虚拟机,密码:redhat
在这里插入图片描述

1.1.2 第一个快照

关机命令:

systemctl poweroff

1.1.3 第二个快照

vi编辑器

在 windows 中我们有记事本,word 等可视化的文本编辑工具可以使用,但在 Linux 中给我们内置的就只有 vi 编辑器,它的作用就类似于 windows 中的记事本。

使用 vim 来进行文件的编辑(包括创建、修改)。

在Vim编辑器中设置了三种模式:命令模式末行模式编辑模式

命令模式:
这是 vim 进入后的默认模式。在这个模式下,可以执行如下的命令:

  • 光标跳转:
    1. 通过上下左右键来进行移动
    2. gg 用于回到文件开头(连续按两次 g 键)
    3. G 用于回到文件的结尾(shift + g)
    4. 将当前光标所在位置移动到行首和行尾按^(行首)和$(行尾)
    5. 按单词进行向后移动,按 w,如果希望按单词几前则按 b
  • 复制:
    1. yy表示复制,nyy表示复制 n 行(从光标所以位置向后计算)
    2. p表示粘贴所复制的内容
  • 删除:
    1. u表示撤销当前的操作
    2. dd表示删除光标所在行,ndd表示删除从光标所在行向后计算 n 行,dG 表示从当前光标删除后最后,dgg表示从当前光标删除到最前

编辑模式:

编辑模式也叫插入模式,当我们在命令模式下按 aios 或者 AIOS 这几个键时,就会从命令模式转换为编辑模式。
i:表示在将前插入
a:表示在光标后插入
I:表示在非空行前插入
A:表示在非空行后插入
o:表示在光标所在行的下一行插入
O:表示在光标所在行的上一行插入
s:表示删除插入
S:表示删除行插入

末行模式:

  • 文档保存并退出 :wq shift+zz
  • 文件保存 :w
  • 退出 :q :q!
  • 另存为 :w 文件路径
  • 将指定的文件写入到该文件中 :r 文件路径
  • 执行关键字搜索 /输入要搜索的关键字 找到后按 n 向后查找,按 N 向前查找
  • 搜索替换 :%s/被替换的关键字/替换的内容/gi g表示全局替换,i表示不区分大小写
  • 只替换某一行 :3,12s/root/admin/g 表示替换3到 12 行所有 root 为 admin
  • 显示行号 :set nu
  • 关闭行号 :set nonu
  • 取消高亮 :noh

安装仓库:
在这里插入图片描述

cd /etc/yum.repos.d/
vim rpm.repo

在这里插入图片描述

[baseos]
name=baseos
baseurl=/mnt/BaseOS
gpgcheck=0
[appstream]
name=appstream
baseurl=/mnt/AppStream
gpgcheck=0

输入完命令,esc退出输入模式,进入命令模式输入:wq回车,保存退出

在这里插入图片描述

mount /dev/sr0 /mnt

安装一个软件测试是否安装仓库成功

dnf install httpd -y

成功后删除软件
在这里插入图片描述

[root@localhost yum.repos.d]# dnf remove  httpd -y

关机
在这里插入图片描述

init 0

1.1.4 看网关网卡

nmcli connection show ens160 | grep DNS
nmcli connection show ens160 | grep GATEWAY

在这里插入图片描述

1.2 文件管理

文件管理文件创建touch vim nano echo 重定向>文件查看cat tac more less head tail修改vim nano echo >>>> 追加、覆盖移动mv a b复制cp a b删除rm -r:递归删除,-f:强制

文件类型:

-f 普通文件,它是使用短横线(-)表示
-d 目录文件,它是使用(d)表示
-l 链接文件,它是使用(l)表示
-s 套接字文件,它是使用(s)表示
-b 块设备文件,它是使用(b)表示
-c 字符设备文件,它是使用(c)表示
-p 管道文件,它是使用(p)表示

1.3 目录管理

目录管理目录创建 mkdir目录删除 rmdir rm -d:删除空目录 rm -f:强制删除 rm -r:递归删除

1.4 用户管理

用户管理用户管理用户添加 useradd adduser删除 userdel -r 递归修改 usermod USERNAME查看	id USERNAME用户组管理添加 groupadd删除 groupdel修改 groupmod查看 grep GROUPNAME /etc/group
涉及到的文件/etc/passwd 存储系统中所有用户的基本信息/etc/shadow 保存用户密码/etc/group 储存用户组信息/etc/gshadow 保存组的密码信息/etc/skel 用户家目录下的相关隐藏文件/etc/default/useradd 创建用户的相关信息/etc/login.defs/var/spool/mail

1.5 权限管理

权限管理标准权限管理文件		目录r	可以读取		列出目录w	可以修改		创建删除目录中的文件x	可执行		可切换chmod(修改权限)	u	g	o	a+	-	=扩展权限文件访问控制列表setfaclgetfacl特殊权限suid	实现目标可执行程序在运行之后形成的进程的所有者为可执行程序的所有者,而不是发起者sgid	实现目录中创建的文件默认所属组为目标所属组sticky	实现目录中的文件只有创建者可以删除权限掩码umask002212341:特殊权限的权限掩码234:标准权限的权限掩码

chmod 命令是用于给文件或目录设置权限,如果是目录,我们需要使用 -R 选项,如果是文件这个选项可以不用指定。使用这个命令我们可以使用 rwx 或者数字来表示权限,还可以通过 u、g、o、a 来表示对那个部分设置权限。

1.6 存储管理

存储管理标准的存储管理主分区	1-4扩展分区逻辑分区	5....硬盘sata	sda sda1 sda2 sdb sdc硬盘nvme	nvme0n1 nvme0n1p1 nvme0n1p2 nvme0n2光盘sr0逻辑卷管理	交换空间管理自动挂载

1.6.1 标准分区管理实验:

查看磁盘信息: lsblk
分区格式化: mkfs
查看分区 id 号: blkid
分区挂载: mount
卸载:umount

在这里插入图片描述
分区挂载实例:

# 将 /dev/sda1 设备挂载到 /guazai1 目录
[root@bogon ~]# mount /dev/sda1 /guazai1

1.6.2 逻辑卷管理实验:

逻辑卷由以下几个部分组成:

  • 物理设备,一般指的是系统存储设备,如:/dev/sda1、/dev/sda2等
  • 物理卷(physical volume, PV),它是由多个分区或整个硬盘组成
  • 卷组(Volume Group),简称 VG,它可以看成单独的逻辑磁盘,一个卷组中至少包括一个 PV,
  • 在卷组创建好后,可以动态添加 PV 到卷组中。
  • 逻辑卷(Logical Volume),简称 LV,相当于物理分区,它是建立在卷组之上。
    在这里插入图片描述
[root@localhost ~]# ll /dev/sda*
brw-rw----. 1 root disk 8, 0 Oct 13 16:27 /dev/sda
brw-rw----. 1 root disk 8, 1 Oct 13 16:27 /dev/sda1
brw-rw----. 1 root disk 8, 2 Oct 13 16:27 /dev/sda2
[root@localhost ~]# ll /dev/nvme0n2
brw-rw----. 1 root disk 259, 3 Oct 13 16:05 /dev/nvme0n2
[root@localhost ~]# vgcreate vgtest /dev/sda /dev/nvme0n2Cannot use /dev/sda: device is partitionedCommand requires all devices to be found.
[root@localhost ~]# lvcreate -n lvtest -L 30G vgtestVolume group "vgtest" not foundCannot process volume group vgtest
[root@localhost ~]# lvsLV   VG   Attr       LSize  Pool Origin Data%  Meta%  Move Log Cpy%Sync Convertroot rhel -wi-ao---- 44.17g                                                    swap rhel -wi-ao----  4.82g                                                    
[root@localhost ~]# vgsVG   #PV #LV #SN Attr   VSize   VFreerhel   1   2   0 wz--n- <49.00g    0 
[root@localhost ~]# pvsPV             VG   Fmt  Attr PSize   PFree/dev/nvme0n1p2 rhel lvm2 a--  <49.00g    0 
[root@localhost ~]# mkfs.xfs /dev/mapper/vgtest-lvtest
Error accessing specified device /dev/mapper/vgtest-lvtest: No such file or directory
Usage: mkfs.xfs
/* blocksize */		[-b size=num]
/* config file */	[-c options=xxx]
/* metadata */		[-m crc=0|1,finobt=0|1,uuid=xxx,rmapbt=0|1,reflink=0|1,inobtcount=0|1,bigtime=0|1]
/* data subvol */	[-d agcount=n,agsize=n,file,name=xxx,size=num,(sunit=value,swidth=value|su=num,sw=num|noalign),sectsize=num
/* force overwrite */	[-f]
/* inode size */	[-i perblock=n|size=num,maxpct=n,attr=0|1|2,projid32bit=0|1,sparse=0|1,nrext64=0|1]
/* no discard */	[-K]
/* log subvol */	[-l agnum=n,internal,size=num,logdev=xxx,version=nsunit=value|su=num,sectsize=num,lazy-count=0|1]
/* label */		[-L label (maximum 12 characters)]
/* naming */		[-n size=num,version=2|ci,ftype=0|1]
/* no-op info only */	[-N]
/* prototype file */	[-p fname]
/* quiet */		[-q]
/* realtime subvol */	[-r extsize=num,size=num,rtdev=xxx]
/* sectorsize */	[-s size=num]
/* version */		[-V]devicename
<devicename> is required unless -d name=xxx is given.
<num> is xxx (bytes), xxxs (sectors), xxxb (fs blocks), xxxk (xxx KiB),xxxm (xxx MiB), xxxg (xxx GiB), xxxt (xxx TiB) or xxxp (xxx PiB).
<value> is xxx (512 byte blocks).
[root@localhost ~]# mkdir /lvm
[root@localhost ~]# mount /dev/mapper/vgtest-lvtest /lvm
mount: /lvm: special device /dev/mapper/vgtest-lvtest does not exist.
[root@localhost ~]# df -f /lvm

1.6.3 交换空间管理实验

在这里插入图片描述

[root@localhost ~]# umount /lvm
umount: /lvm: not mounted.
[root@localhost ~]# lvremove /dev/vgtest/lvtestVolume group "vgtest" not foundCannot process volume group vgtest
[root@localhost ~]# vgremove vgtestVolume group "vgtest" not foundCannot process volume group vgtest
[root@localhost ~]# pvremove /dev/sdaCannot use /dev/sda: device is not in devices file
[root@localhost ~]# pvremove /dev/nvme0n2Cannot use /dev/nvme0n2: device is not in devices file
[root@localhost ~]# vgcreate vgswap /dev/sda /dev/nvme0n2Cannot use /dev/sda: device is partitionedCommand requires all devices to be found.
[root@localhost ~]# vgsVG   #PV #LV #SN Attr   VSize   VFreerhel   1   2   0 wz--n- <49.00g    0 
[root@localhost ~]# lvreate -n lvswap -L 30G vgswap
bash: lvreate: command not found...
Failed to search for file: /mnt/BaseOS was not found
[root@localhost ~]# mkswap /dev/mapper/vgswap-lvswap
mkswap: cannot open /dev/mapper/vgswap-lvswap: No such file or directory
[root@localhost ~]# free -mtotal        used        free      shared  buff/cache   available
Mem:            9492        1509        7514          21         741        7982
Swap:           4939           0        4939
[root@localhost ~]# swapon -s
Filename				Type		Size		Used		Priority
/dev/dm-1                               partition	5058556		0		-2
[root@localhost ~]# swapon /dev/mapper/vgswap-lvswap
swapon: cannot open /dev/mapper/vgswap-lvswap: No such file or directory
[root@localhost ~]# swapon -s
Filename				Type		Size		Used		Priority
/dev/dm-1                               partition	5058556		0		-2
[root@localhost ~]# free -mtotal        used        free      shared  buff/cache   available
Mem:            9492        1510        7513          21         741        7981
Swap:           4939           0        4939
[root@localhost ~]# blkid
/dev/mapper/rhel-swap: UUID="ef4e9ee5-c40b-4cc7-a08e-f1e8e92f1d0b" TYPE="swap"
/dev/nvme0n1p1: UUID="3b867212-e739-4c55-9edb-07a4c6133743" TYPE="xfs" PARTUUID="73c546dd-01"
/dev/nvme0n1p2: UUID="MHxLRQ-Iyzk-5di3-AMT0-gYYU-kKbb-g8DeFQ" TYPE="LVM2_member" PARTUUID="73c546dd-02"
/dev/sr0: UUID="2023-10-25-09-17-25-00" LABEL="RHEL-9-3-0-BaseOS-x86_64" TYPE="iso9660" PTUUID="ece57f7f" PTTYPE="dos"
/dev/mapper/rhel-root: UUID="4274fde4-921f-4120-8d07-feb52d4e3503" TYPE="xfs"
/dev/sda2: PARTUUID="c130813b-02"
/dev/sda1: PARTUUID="c130813b-01"
[root@localhost ~]# vim etc/fstab
[root@localhost ~]# reboot
[root@localhost ~]# Connection closing...Socket close.Connection closed by foreign host.Disconnected from remote host(192.168.30.128:22) at 16:51:07.Type `help' to learn how to use Xshell prompt.
[C:\~]$ ssh root@192.168.30.128Connecting to 192.168.30.128:22...
Connection established.
To escape to local shell, press 'Ctrl+Alt+]'.Activate the web console with: systemctl enable --now cockpit.socketRegister this system with Red Hat Insights: insights-client --register
Create an account or view all your systems at https://red.ht/insights-dashboard
Last login: Sun Oct 13 16:06:09 2024 from 192.168.30.1
[root@localhost ~]# swapon -s
Filename				Type		Size		Used		Priority
/dev/dm-1                               partition	5058556		0		-2
[root@localhost ~]# free -mtotal        used        free      shared  buff/cache   available
Mem:            9492        1018        8223          15         513        8474
Swap:           4939           0        4939

1.7 软件管理

在 Linux 中安装软件分为以下三种方式:

  • 源码安装
  • rpm包安装
  • yum/dnf安装

vim redhat.repo

在这里插入代码片

vim bendi.repo

name=baseos
baseurl=/rpm/BaseOS
gpgcheck=0
[appstream]
name=appstream
baseurl=/rpm/AppStream
gpgcheck=o

在这里插入图片描述
vim wangluo.repo

[baseos]
name=baseos
baseurl=http://47.108.86.156/rhel9.0/x86_64/dvd/BaseOS/
gpgcheck=0
[appstream]
name=appstream
baseurl=http://47.108.86.156/rhel9.0/x86_64/dvd/AppStream
gpgcheck=0

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

mount /dev/sro/mnt	挂载 /mnt 软件
mkdir /rpm	创建目录
cp /mnt/Appstream//rpm/-r	复制镜像中的软件目录
cp /mnt/BaseOS//rpm/-r	复制镜像中的软件目录 -r:递归
cd /etc/yum.repos.d/	切换目录

1.8 服务进程

1.9 网络管理

二、


http://www.ppmy.cn/embedded/127007.html

相关文章

Vue前端框架的基础配置

登录界面添加背景图 通过在登录界面的vue文件中&#xff0c;设置div标签的background-image属性&#xff0c;加载背景图 <style scoped> .myvue{width:100%;height: 750px; //添加背景图的地址background-image: url(../assets/oa.jpeg);background-size: cover;backgr…

docker详解介绍+基础操作 (四)容器镜像

一.镜像结构和原理 Docker 镜像是 Docker 技术的核心组成部分之一&#xff0c;它用于封装应用程序及其依赖项&#xff0c;以便在任何支持 Docker 的环境中运行。了解 Docker 镜像的结构和原理对于有效使用 Docker 至关重要。以下是对 Docker 镜像结构和原理的详细介绍。 Dock…

【最新华为OD机试E卷-支持在线评测】找数字-找等值元素(100分)多语言题解-(Python/C/JavaScript/Java/Cpp)

🍭 大家好这里是春秋招笔试突围 ,一枚热爱算法的程序员 💻 ACM金牌🏅️团队 | 大厂实习经历 | 多年算法竞赛经历 ✨ 本系列打算持续跟新华为OD-E/D卷的多语言AC题解 🧩 大部分包含 Python / C / Javascript / Java / Cpp 多语言代码 👏 感谢大家的订阅➕ 和 喜欢�…

Datawhale组队学习|全球AI攻防挑战赛——赛道二:AI核身之金融场景凭证篡改检测

目录 前言Baseline代码解读 前言 Datawhale 2024.10 组队学习来了&#xff01;这次选择的是动手实践专区——CV方向——“全球AI攻防挑战赛—赛道二&#xff1a;AI核身之金融场景凭证篡改检测”。 Baseline代码解读 1、读取数据集 !apt update > /dev/null; apt install…

Python 入门教程(4)数据类型 | 4.8、字典

文章目录 一、字典1、字典的定义2、字典的特性3、字典的操作4、字典的常用方法5、总结 前言&#xff1a; 在Python编程中&#xff0c;字典&#xff08;dictionary&#xff09;是一种强大且灵活的数据结构&#xff0c;用于存储键值对&#xff08;key-value pairs&#xff09;。每…

GAN(Generative Adversarial Nets)

GAN(Generative Adversarial Nets) 引言 GAN由Ian J. Goodfellow等人提出&#xff0c;是Ian J. Goodfellow的代表作之一&#xff0c;他还出版了大家耳熟能详的花书&#xff08;Deep Learning深度学习&#xff09;&#xff0c;GAN主要的思想是同时训练两个模型&#xff0c;生成…

bat脚本banenr

飞出个未来班得 echo off echo .-. echo ( ) echo - echo J L echo ^| ^| echo J L echo ^| ^| echo J L echo …

多语言网站的设计的探索——安企CMS多语言功能的实现记录

对于一个内容管理系统&#xff08;CMS&#xff09;来说&#xff0c;网站需要为不同语言的用户提供本地化的体验&#xff0c;支持多语言已经成为必备功能之一。本文将通过安企CMS的多语言实现为例&#xff0c;深入探讨多语言网站的设计与实现策略。 需求背景 安企CMS自推出以来…