一、基础设置
1.所需软件
VmwareWorkStation Pro17
rhel-baseos-9.0-x86_64-dvd 镜像文件
Xshell 远程终端工具或(MobaXterm)
2.修改密码
#第一步重启系统,然后按键盘的下键将白色条放到第二行上输入e
#第二步在linux开头那一行尾部添加rd.break,然后使用ctrl+x继续后面
#第三步输入输入mount查看设备挂载信息(主要看/sysroot目录挂载权限)
接着输入mount -o remount,rw /sysroot目录重新挂载已经挂载的设备,并以其他的权限挂载,这里我们需要rw权限
#第四步输入chroot /sysroot/ ,使用chroot命令改变系统的根目录的位置,将其改到/sysroot之后就可以进行密码修改
#第五步passwd root 输入两次密码
#第六步输入touch /.autorelabel
#第七步两次输入exit完成root密码重置
3.远程连接
远程连接xshell
ssh root@192.168.62.129
(如果输入密码的时候服务器一直拒绝,则需要在虚拟机中打开bash)
输入:vim /etc/ssh/sshd_config
进入后输入/Root 匹配后删掉这一行的#键,将后面的内容删掉改为yes
改完后:wq保存退出,输入 systemctl restart sshd
然后再去重新远程链接一下。
二、命令
1.前言
操作系统(Operating System,简称OS)是管理和控制计算机硬件与软件资源的计算机程序,是配置在计算机硬件上的第一层软件,任何其它软件都必须在操作系统的支持下才能运行。
Linux系统为什么好:
开源:把软件程序和源代码一起打包给用户
使用自由,复制自由,修改自由,创造衍生品自由、低风险、高品质
计算机的结构:
硬件:显示器、键盘、鼠标、
CPU:算数逻辑单元(程序的运算和逻辑判断)+控制单元(协调各周边组件和各单元之间的工作)
软件:操作系统,
运算器 控制器 输入、输出
操作系统主要是通过操作系统内核实现的。
系统调用把应用程序的请求传给内核,调用相应的内核函数完成所需的处理,将处理的结果返回给应用程序。
SHELL 壳
Bash(bourne-Again SHELL)
终端(终端设备,是计算机网络中处于网络最外围的设备,主要是用于用户信息的输入和处理结果的输出)
物理终端:键盘、鼠标、显示器。
虚拟终端:模拟终端(图形化界面)切换到重命令行的终端ctrl+alt+f3
伪终端
重命令行的终端切换到模拟终端 ctrl+alt+f2
命令格式
命令名称 [命令参数] 命令对象
命令名称:动词,要做的某件事
命令对象:一般要处理的文件、目录、用户
2.命令
reboot 重启 shutdown -r now 重启
shutdown -h now 关机 poweroff 关机
ip a ifconfig 查看IP地址
查看当前linux的发行版本:cat /etc/redhat-release
查看内核版本:uname -r
查看shell类型:cat /etc/shells chsh -l
查看当前的默认shell类型:echo $SHELL
[root@localhost ~] #
#:标识符,标识的是当前用户是root
$:标识符,标识的当前的用户是普通用户。
[root@localhost ~]
root:管理员,超级管理员,根用户
@:分隔符
localhost:本意标的是当前这台主机,也是这台主机的主机名。
~:当前用户的家目录。root用户的家目录:/root.
普通用户的家目录:/home/rhcsa
家目录:存放个人数据的地方
1、Ls(list directory contents):用于显示指定工作目录下的内容(文件及子目录)。
-l 以长格式的形式显示文件和目录的信息(权限、所有者、大小、创建时间)ls -l =ll
-a 显示所有文件及目录(.开头的隐藏文件)
-A 不列出.(当前目录)和..(父目录)
-h 在-l基础上去使用h,以人类可读的方式显示当前目录中文件和目录的大小。
如果指定,则列出指定目录的内容。
如果不指定,则列出当前目录的内容。
/根,文件系统的根。 一切皆文件。
路径:
绝对路径:以根开始的路径。/home/rhcsa
相对路径:不以根开始的路径。Rhcsa
2、su (switch user):用于变更其他使用者的身份。
如果从root切换到普通用户,则不需要输入密码。但是如果从普通用户去切换到root,则需要输入密码。
一般使用的时候需要加上-的选项去获取对应身份的环境变量和身份权限。
3、pwd(print work directory)显示工作目录
3、cd (change directory):切换当前工作目录
cd /root
cd - :切换到上一次切换的目录
cd ~:切换到当前用户的家目录
4、文件名
/bin 软链接(快捷方式),符号链接,binaries(二进制文件),可执行的应用程序。
/boot:存放的是启动程序后的核心文件(链接文件、镜像文件。)
/dev:存放的是linux的外部设备(光驱)。
/etc:存放的是系统管理所需要的配置文件。
/home:普通用户的家目录。
/root:root用户的家目录。
/lib:library(库),存放着系统最基本的动态连接共享库(32位),
/lib64:ibrary(库),存放着系统最基本的动态连接共享库(64位)
/media:挂载点目录,让用户去临时挂载别的文件系统。系统默认挂载点目录
/mnt:挂载点目录,手动去挂载点目录。
/opt:optional(可选),主机给额外安装软件所摆放的目录。
/sbin:超级用户的二进制文件的缩写,存放的是系统管理员所使用的系统管理程序。(超级管理员自己能用到的一些命令)
/srv:第三方服务,存放的是一些服务启动后需要提取的数据。
/tmp:temporary(临时):存放的是一些临时文件。
/usr:unix shared resource(共享资源),用户很多应用程序和文件都存放在该目录中。
/var:variable变量的缩写,存放的不断扩充的东西。(日志文件)
/run:是临时文件系统,存放的系统启动以来的信息(守护进程)
/sys
/proc :进程的缩写。程序(由源代码生成的可执行文件),进程(程序执行后形成了进程,它会占用内存资源。)
5、Block 块设备
bus 总线(地址、控制、数据)
固件
/sys 内核或者操作系统,
6、help命令
help 命令 help cd
--help
命令 --help
7、man手册
manual
man 命令
空格是下一页,b上一页,/单词,n上一个关键字,N下一个关键字。
区段1:用户指定,查看命令的帮助。
区段2:系统调用,
区段3:程序库的调用
区段4:设备、查看特殊文件的帮助。
区段5:文件格式
区段6:游戏,查看游戏的帮助
区段7:
区段8:系统指令,
区段9:内核内部的指令。
8、Info
Info 命令
9、Date 命令
date -s “年月日 时:分:秒“
date 月日时分年
clock
hwclock -r
hwclock --hctosys将硬件时间给到到系统时间
hwclock --systohc
10、rm命令
rm 要删除的对象(普通文件)
rm = rm -I 删除的话y,不删除的话n
忽略提示信息删除:\rm 要删除的对象
rm -rf 要删除的对象
要清空当前目录:rm -rf *
(*代表的匹配所有)
11、Cp命令
cp 选项 源文件 目标文件
12、touch命令
#1、touch用法1
#如果文件存在,则更新文件的时间,atime【查看文件的内容】,mtime【文件的内容更新】,ctime【文件的属性发生改变】
[root@rhcsa0406 ~]# touch /root/公共
#查看文件的具体的atime,mtime,ctime
[root@rhcsa0406 ~]# stat /root/公共
文件:/root/公共
大小:6 块:0 IO 块:4096 目录
设备:fd00h/64768d Inode:18441969 硬链接:2
权限:(0755/drwxr-xr-x) Uid:( 0/ root) Gid:( 0/ root)
环境:unconfined_u:object_r:admin_home_t:s0
最近访问:2023-09-20 09:15:59.316020207 -0400
最近更改:2023-09-20 09:15:59.316020207 -0400
最近改动:2023-09-20 09:15:59.316020207 -0400
创建时间:2023-09-19 12:10:15.786477337 -0400
#2、 touch用法2 创建普通文件
[root@rhcsa0406 ~]# touch /root/file1 /root/file2 /root/file{3..5}
13、编辑
#1、 将命令的执行的之后的标准输出写入到文件, >重定向:可以将命令执行后的标准输出重定
向到文件;>>:追加重定向:将命令执行后的标准输出追加到文件
标准输出:命令成功执行之后在屏幕上输出的内容
标准错误输出:命令执行失败之后在屏幕上输出的内容
[root@rhcsa0406 ~]# pwd > /root/filel
[root@rhcsa0406 ~]# cat /etc/redhat-release >> /root/file1
拓展:将命令执行之后的标准错误输出写入到文件,使用2>
[root@rhcsa0406 ~]# ll /root/file0 2> /root/file1
#2、 使用echo指定要输出的内容,再使用>,>>将内容重定向到文件
[root@rhcsa0406 ~]# echo hello world > /root/file1
# 输出变量HOME的值,HOME是系统定义好的变量
[root@rhcsa0406 ~]# echo $HOME
14、vim编辑器
1、所有的linux操作系统都会安装vi编译器
2、当你在使用一些程序对系统做设置的时候就是改变系统的一些文件,此时会调用vi打开该文件
3、vim可以通过颜色显示代码的语法正确性
4、一些服务的配置文件也会有颜色显示
[root@rhcsa0406 ~]# vim /root/file1
命令模式:
光标的跳转:gg【行首】,G【行尾】,数字+ 【可以跳转到任意一行】,^$,【将光标跳转到光标所在行的第一个字符和最后一个字符】,数字+w 跳转前第w个单词 数字+b 跳转到后第b个单词
复制:yy,3yy
粘贴:p,P
删除:dd,2dd,dgg,dG
撤销:u
插入模式:i,a
i 在光标前插入内容
I 在光标所在行的第一个非空字符前插入内容
a 在光标后插入内容
A 在光标所在行的行尾插入内容
s 删除光标所在字符并进入插入模式
S 删除光标所在行并进入插入模式
o 光标所在行的下一行插入内容
O 光标所在行的上一行插入内容
末行模式:
:w 保存内容 :w /dir/file 另存
:q 退出
:wq 保存退出
:q! 强制退出不保存
:wq! 强制保存退出
:r /dir/file1 将/dir/file1 文件内容下入到当前文件光标所在的下一行
/keywords 查找关键字,可以使用n,N在找到的字符之间跳转
:%s/old/new/g %表示整个文档,old表示被替换的内容,new表示新的内容,g表示替换每一行的每一个old为new
:1,5s/old/new/g
拓展:1、可视化模式 ,ctrl+v
通过移动上下左右键选择块内容,y表示复制,p表示粘贴
在所有行行首加入#字符,先按ctrl+v,接着选中每一行的第一个字符,然后按I,接着写入#,最后按esc
2、同一个窗口编辑多个文件
:sp /dir/file
使用ctrl+w再按一下W可以再几个文件中跳转光标