rhcsa--命令收集笔记(更新中)

部署环境:虚拟机VMware workstation+红帽8.5

linux的操作界面称为Shell ,shell有以下分类

  • 图形界面        KDE,GNOME
  • 字符界面        bash shell ;csh shell zcsh shell tcsh shell ;sh shell

查看当前的shell类型

[root@xiaoyun ~]# echo $SHELL
/bin/bash

shell的提示符

普通用户  $       超级用户(root) #

[root@xiaoyun ~]  --[root用户@主机名 当前目录名]

[rhcsa@xiaoyun root]  --[当前登录用户名@主机名 当前目录名]

注:~ 是主目录的简写表示

shell通过两个环境变量来控制提示符格式,即PS1和PS2

PS1 可以修改提示符格式  默认值为[\u@\h \W]\$ --用户名@主机名 当前目录

默认:

[root@xiaoyun ~]# echo $PS1
[\u@\h \W]\$

PS2 一条命令多行连接显示的信息

默认:

[root@xiaoyun ~]# echo $PS2
>

修改PS2的提示符为next line

[root@xiaoyun ~]# PS2="next line:"


[root@xiaoyun ~]# echo $PS2
next line:

[root@xiaoyun ~]# echo hello\
next line:world
helloworld


[root@xiaoyun ~]# echo hello\
next line:word\
next line:happy
hellowordhappy

使用桌面终端访问命令行

  • 终端

方法一;从仪表板访问终端

方式二:Alt+F2,打开Enter a Conmmand,输入gnome-terminal

  •  虚拟终端:同一台终端虚拟出多个终端,他们互不影响,他们就是虚拟终端,默认有6个。通过ctrl+alt+f[1/2/3/4/5/6]来切换

       第一个虚拟终端(tty1)为图形界面

       第二到六个(tty2~tty6)为字符界面

一些相关命令(主命令 选项 参数(操作对象))

  1. 使用重启和关机命令

重启:reboot,shutdown -r now

关机:shutdown -h now,poweroff

    2.查看当前linux发行版信息

[root@xiaoyun ~]# cat /etc/redhat-release
Red Hat Enterprise Linux release 8.1 (Ootpa)

   3.查看内核版本

[root@xiaoyun ~]# uname -r
4.18.0-348.e18.x8664

主版本.子版本.bug修改次数-编译版本号.企业.架构

   4.查看ip

[root@xiaoyun ~]# ip a

常用的简单命令

注:【ctrl+c】中断正在执行的命令

       【ctrl+l】清屏

  • su- 用户名    切换用户
  • 暂时修改主机名   hostname或者hostnamectl

                                   永久修改 set-hostname

  • 查看当前目录 pwd
  • 切换目录 cd+路径 

                      直接回到当前用户主目录 cd ~

                      回到当前目录的上一级目录 cd ..

                      回到当前目录 cd .

                      回到之前的目录 cd -

  • 修改密码 passwd
  • 删除密码 passwd -d 用户名

注:普通用户密码设置有限制(需要长于8个字符)

暴力破解root密码

重启系统(第一行为红帽的内核版本,第二行为救援模式)

在quite后面输入rd.break

 按ctl+x

 这里的sysroot是以只读的形式挂载的,所以要改为可读可写的方式来挂载

 修改密码(进入/sysroot子系统来修改密码)

创建一个文件,并退出

再次输入exit退出,等待百分比

关于文件类型和目录结构

  • ls 查看当前目录文件

            ls -a 把隐藏文件显示出来

            ls -l  显示长文件

            ll-h 文件显示大小单位

            ll -d 显示指定目录本身信息

            ll -i  显示文件索引节点号(一个索引节点代表一个文件)

文件类型

  • - 普通文件   (.txt)
  • d 目录文件
  • l link,链接文件(软连接-快捷方式)
  • c 字符设备文件
  • b 块设备文件
  • p 管道文件

-rw-------. 1 root  root   1657 Mar 18  2022 anaconda-ks.cfg
权限标识符,硬链接次数,文件的所属用户,文件的所属组,文件大小,修改时间,文件名

inode  文件存储硬盘中,所分配的编号

要想了解inode,还必须从文件存储说起。

硬盘上最小的存储单位是“扇区”(sector),大小为512字节,约等于0.5kb(1kB = 1000B(字节, Byte))。

但是操作系统在读取数据的时候,以扇区为单位读取的话,效率低。

所以出现了“块”(block),块由多个扇区组成,4kb的块大约是8个扇区,以“块”为单位,一次连续读取多个扇区,提高了效率。

“块”是硬盘上最小的存取单位。

文件数据存储在扇区,那么文件的元信息(文件创建者,文件大小,创建日期等)存储在哪呢?

inode区用来存储文件的元信息。(inode中文名索引节点)

我们用stat的来查看文件的元信息

[root@xiaoyun ~]# stat file
  File: file
  Size: 0         	Blocks: 0          IO Block: 4096   regular empty file
Device: fd00h/64768d	Inode: 17397483    Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Context: unconfined_u:object_r:admin_home_t:s0
Access: 2022-10-29 14:51:23.334549191 +0800
Modify: 2022-10-23 14:04:18.180457560 +0800
Change: 2022-10-23 14:04:18.180457560 +0800
 Birth: -

对inode区和block区的理解

硬盘初始化,系统将硬盘存储分为两大区域,一个是inode区,一个是block区。

对于iNode区很好理解,其实他是一个数组,数组下表对应着iNode编号,每个元素都是一个结构体,这个数组中存在着block指针,从inode指向block区的对应文件。

而block区就是存放文件的数据,inode的指针指向block所对应的数据,这样一来,两个之间的联系自然形成了。

系统在访问一个文件时,具体的步骤是这样的:

读取inode编号--》读取inode信息(block指针)--》根据指针找到block中的数据信息

bt命令查看硬盘所用情况统计

[root@xiaoyun ~]# df
Filesystem            1K-blocks     Used Available Use% Mounted on
devtmpfs                 907000        0    907000   0% /dev
tmpfs                    924748        0    924748   0% /dev/shm
tmpfs                    924748     9948    914800   2% /run
tmpfs                    924748        0    924748   0% /sys/fs/cgroup
/dev/mapper/rhel-root  15616000  5422096  10193904  35% /
/dev/nvme0n1p1           506528   172560    333968  35% /boot
tmpfs                    184948     1168    183780   1% /run/user/42
tmpfs                    184948     3484    181464   2% /run/user/1000
/dev/sr0               10717954 10717954         0 100% /run/media/rhcsa/RHEL-8-5-0-BaseOS-x86_64
tmpfs                    184948        4    184944   1% /run/user/0

硬链接

通常情况下,一个inode编号对应一个文件。但是在linux系统允许的情况下,存在一个inode编号对应多个文件,这就是硬链接。

多个文件名的inode编号相同,根据以上对inode区的理解,不难猜出,修改其中一个文件,其他的文件内容会受影响。

但是删除其中一个文件,其他文件却不受影响.

基础理解

概念:一个block指针指向多个block区

特点:对文件的备份,防止误删

创建对象:不可以对目录创建硬链接,并且只能在同一个文件系统中创建

创建一个硬链接

[root@xiaoyun ~]# ln file file23243.link
[root@xiaoyun ~]# ll 
total 108

-rw-r--r--. 3 root  root      0 Oct 23 14:04 file23243.link

软连接(快捷方式)

软连接和硬链接不同,软连接指向的是文件名,所以文件的inode链接数不变。

假设文件a是文件b的软连接,访问文件a,系统自动导入文件b,文件a的内容就是文件b的路径。

文件a依赖文件b,删除文件b,访问文件a会报错。

创建一个软连接

[root@xiaoyun ~]# ln -s file2 file435
[root@xiaoyun ~]# ll 
total 108
lrwxrwxrwx. 1 root  root      5 Oct 31 10:23 file435 -> file2

删除文件file2

[root@xiaoyun ~]# rm -f file2
[root@xiaoyun ~]# ll
total 108
lrwxrwxrwx. 1 root  root      5 Oct 31 10:23 file435 -> file2


[root@xiaoyun ~]# cat file435
cat: file435: No such file or directory

Linux系统的目录结构---一切皆文件

/根目录
/binbinary(二元的)  存放所有用户的可执行文件或命令
/boot存放系统启动时所需文件,建议不要修改,不然系统无法启动
/devdevice(设备) 存放设备文件
/etcetc(et cetera 等等) 用来存放系统的配置文件,其实放的都是零零碎碎的东西,是个文件遗留
/home普通用户的家目录
/liblibrary(库) 存放库文件
/lib64存放系统所用到的64位共享函数库
/medialinux 系统会自动识别一些设备,例如U盘、光驱等等,当识别后,Linux 会把识别的设备挂载到这个目录下。
/mnt系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载在 /mnt/ 上,然后进入该目录就可以查看光驱里的内容了。
/optoptional(可选) 

这是给主机额外安装软件所摆放的目录。比如你安装一个ORACLE数据库则就可以放到这个目录下。默认是空的。

/proc

Processes(进程)

/proc 是一种伪文件系统(也即虚拟文件系统),存储的是当前内核运行状态的一系列特殊文件,这个目录是一个虚拟的目录,它是系统内存的映射,我们可以通过直接访问这个目录来获取系统信息。

这个目录的内容不在硬盘上而是在内存里。

/root超级权限者的用户主目录
/run一个临时文件系统,存储系统启动以来的信息。当系统重启时,这个目录下的文件应该被删掉或清除。
/sbinSuperuser Binaries (超级用户的二进制文件)  存放管理员可使用的命令文件
/srvserver 服务 存放一些服务启动之后需要访问的数据目录
/sys本目录是将内核的一些信息映射文件,以供应用程序所用 系统文件
/tmptemporary(临时) 的缩写这个目录是用来存放一些临时文件的
/usr

 unix shared resources(共享资源) 的缩写,这是一个非常重要的目录,用户的很多应用程序和文件都放在这个目录下,类似于 windows 下的 program files 目录。

一般用户程序安装所在的目录,用于安装各种应用程序

/varvariable(变量) 的缩写,这个目录中存放着在不断扩充着的东西,我们习惯将那些经常被修改的目录放在这个目录下。包括各种日志文件。

setfacl(扩展权限)

setfacl可以分配更精确的文件权限,对特殊用户和组可以单一控制。例如某一个普通用户不能访问某文件。

acl针对单一用户或文件进行权限控制。

查看acl参数

[root@xiaoyun ~]# getfacl a 
# file: a
# owner: root
# group: zhangsan
user::rw-
group::rw-
other::r--

选项

-m 更改文件的访问控制列表

-x 删除一条

-b 彻底所有删除(包括-x遗留的mask)

给指定用户设置acl(lisi只有读的权限)

[root@xiaoyun ~]# setfacl -m  u:lisi:r a
[root@xiaoyun ~]# getfacl a
# file: a
# owner: root
# group: zhangsan
user::rw-
user:lisi:r--
group::rw-
mask::rw-
other::r--

mask是对acl设置的限制:acl的设置一定要在mask范围之内,如果超过范围,无效。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值