先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7
深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新Linux运维全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上运维知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
如果你需要这些资料,可以添加V获取:vip1024b (备注运维)
正文
- 如下,就不会出现中文乱码了
===========================================================================
Linux系统会内置vi文本编辑器
Vim 具有程序编辑的能力,可以看做是Vi的增强版本,可以主动的以字体颜色辨别语法的正确性,方便程序设计。代码补完、编译及错误跳转等方便变成的功能特别丰富。
- 正常模式
- 以vim打开一个档案就直接进入一般模式了(这是默认的模式)。在这个模式中,你可以使用[上下左右]按键来移动光标,你可以使用[删除字符]和[删除整行]来处理档案内容,也可以使用[复制、粘贴]来处理文件数据。
- 插入模式
- 按下 i、I、o、O、a、A、r、R等任何一个字母之后才会进入编辑模式,一般来说按 i 即可
- 命令行模式
-
在这个模式当中,可以提供你相关指令,完成读取、存盘、替换、离开vim、显示行号等的动作则是在此模式中达成的。
-
先按ESC,再输入冒号
:
进入此模式
2.2.1、案例
我们在XShell中使用Vim开发一个 Hello.java 程序并保存。
- 使用XShell 连接上我们的Linux系统,输入如下命令回车
vim Hello.java 使用vim工具创建Hello.java文件
- 进入到正常模式
- 输入小写 i,进入插入模式
- 书写代码,写完代码按
ESC
,然后输入:
,再输入wq
,wq
代表写入并退出
ls
查看列表
vi和vim快捷键
2.3.1、拷贝
- 拷贝当前行
yy
,粘贴p
- 输入
5yy
,表示拷贝当前行向下的 5 行
- 效果如下
2.3.2、删除
- 删除当前行
dd
- 删除当前行向下的 5行:
5yy
2.3.3、查找
- 在文件中查找某个单词 [
命令行下/关键字,回车查找,输入 n 就是查找下一个
]
- 输入
/hello
,回车,表示在文件中查找hello
这个单词
2.3.4、设置行号
-
设置文件的行号 [命令行下
:set nu
] -
取消文件的行号 [命令行下
:set nonu
]
2.3.5、定位
编辑 /etc/profile
文件,在一般模式下使用快捷键到该文档的最末行[G]和最首行[gg]
- 进入 etc 下面的 profile 文件
- 进入文件即是一般模式,此时输入
G
,即可定位至文件末行
- 输入
gg
进入文件首行
- 将光标移动到 20 行,在一般模式下输入
20
,再输入shift+g
2.3.6、撤销
- 在一个文件中输入
QXL
,撤销这个动作。在一般模式下输入u
- 先按
ESC
由插入模式回到一般模式,然后按u
撤销刚才的输入
| shutdown -h now | 立即进行关机 |
| — | — |
| shutdown -h 1 | “hello,1分钟后会关机” |
| shutdown -r now | 现在重启计算机 |
| halt | 关机 |
| reboott | 重启 |
| sync | 把内存的数据同步到磁盘 |
注意:
-
不管是重启还是关机,首先要运行
sync
命令,把内存中的数据写到磁盘中 -
目前的 shutdown/reboot/halt 等命令已经在关机前进行了 sync,但是还是建议手动运行
sync
- 登录时候尽量少用root账号登录,因为它是系统管理员,最大的权限,避免操作失误,可以利用普通用户登录,登录后再使用
su - 用户名
命令来切换成系统管理员身份
- 在提示符下输入
logout
即可注销用户
使用细节:
- logout 注销指令在图形级别下无效(也就是在Linux右键打开终端的窗口中输入无效)
Linux 系统是一个多用户多任务的操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。
2.6.1、添加用户
基本语法:
useradd 用户名
- 我们使用 root 用户进入 home 文件夹,查看当前的用户列表
- 添加一个用户 milan,默认该用户的家目录在
/home/milan
细节说明:
当创建用户成功后,会自动的创建和用户同名的家目录。
也可以通过 useradd -d 指定目录 指定用户名
,给新创建的用户指定家目录。
2.6.2、指定/修改密码
基本用法:
passwd 用户名
- 给 milan 指定密码
2.6.3、删除用户
基本语法:
userdel 用户名
-
删除用户milan,但是要保留家目录
userdel milan
-
删除用户以及用户主目录
userdel -r milan
(这个操作一定要谨慎)
2.6.4、查询用户
基本语法:
id 用户名
请查询root信息: id root
2.6.5、切换用户
基本语法:
su - 用户名
切换到milan用户:su - milan
说明:
-
从权限高的用户切换到权限低的用户,不需要输入密码,反之需要
-
当需要返回到原来用户时,使用
exit/logout
指令
2.6.6、查看当前登录用户
基本语法:
whoami/who am I
2.6.7、用户组
类似于角色,系统可以对有共性的多个用户进行统一的管理
1、新增组
指令:groupadd 组名
2、删除组
指令:groupdel 组名
3、增加用户时直接加上组
指令:useradd -g 用户组 用户名
4、修改用户的组
基本语法:usermod -g 用户组 用户名
5、用户和组相关文件
-
/etc/passwd
文件:用户(user)的配置文件,记录用户的各种信息 -
每行的含义:用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell
-
/etc/shadow
文件:口令的配置文件 -
每行的含义:登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志
-
/etc/group
文件:组的配置文件,记录Linux包含的组的信息 -
每行含义:组名:口令:组标识号:组内用户列表
========================================================================
运行级别:
| 运行级别 | 说明 |
| — | — |
| 0 | 关机 |
| 1 | 单用户 |
| 2 | 多用户状态没有网络服务 |
| 3 | 多用户状态有网络服务 |
| 4 | 系统未使用保留给用户 |
| 5 | 图形界面 |
| 6 | 系统重启 |
常用的运行级别是3和5,也可以指定默认运行级别。
命令:
init[0123456]
通过 init 来切换不同的运行级别,比如由5图形界面切换到3无图形界面
面试题:如何找回root密码
- 首先,启动系统,进入开机界面,在界面中按
e
进入编辑界面。
- 进入编辑界面,使用键盘上下键把光标向下移动,找到以 “Linux16” 开头内容所在的行数,在行的最后面输入:
init=/bin/sh
- 输入完成后,直接按快捷键
Ctrl+X
进入单用户模式
- 接着在光标闪烁的位置输入:
mount -o remount,rw /
(注意各个单词间有空格),完成后回车,如下图
- 在新的一行最后面输入
passwd
,完成后回车。输入密码,再次确认密码即可(密码长度最好8位以上,但不是必须的),密码修改成功后,会显示 passwd… 的样式,说明密码修改成功[我这里设置为1234567890]
-
接着,在光标闪烁的位置(最后一行中)输入:
touch /.autorelabel
(touch与 / 后面有一个空格),完成后按回车键 -
继续在光标闪烁的位置中,输入:
exec /sbin/init
(exec与 / 后面有一个空格 ),完成后回车。等待系统自动修改密码(这个过程时间有点长,耐心等待),完成后系统会自动重启,新的密码就生效了。 -
这样进入系统,我们就又可以将密码改为自己熟悉的密码
3.3.1、man获得帮助信息
-
man 获得帮助信息
-
基本语法:
man[帮助或配置文件]
(功能描述:获得帮助信息) -
例如查看
ls
命令的帮助信息:man ls
在Linux下我们的隐藏文件是以
.
开头的
3.3.2、help指令
基本语法:
help 命令
功能描述:获得shell内置命令的帮助信息
help cd 等
3.4.1、pwd指令
基本语法:
pwd
功能描述:显示当前工作目录的绝对路径
3.4.2、ls指令
基本语法:
ls [选项] [目录或是文件]
常用选项:
-
ls -a
:显示当前目录所有的文件和目录,包括隐藏的 -
ls -l
:以列表的方式显示信息
3.4.3、cd指令
基本语法:cd [参数]
(功能描述:切换到指定目录)
-
cd ~
或者cd :
回到自己的家目录 -
cd ..
回到当前目录的上一级目录
3.4.4、mkdir指令
mkdir指令用于创建目录
基本语法:mkdir [选项] 要创建的目录
常用选项:-p
创建多级目录
- 例如我们创建一个目录:
/home/dog
- 例如我们创建多级目录:
/home/animal/tiger
3.4.5、rmdir指令
rmdir指令删除空目录
基本语法:rmdir [选项] 要删除的空目录
使用细节:rmdir 删除的是空目录,如果目录下有内容时无法删除。如果需要删除非空目录,需要使用 rm -rf 要删除的目录
(这个操作请超级谨慎)
- 删除目录 /home/dog
3.4.6、touch指令
touch指令创建空文件
基本语法:touch 文件名称
3.4.7、cp指令
cp指令拷贝文件到指定目录
基本语法:cp [选项] source dest
-
source 代表你要拷贝的是哪个文件
-
dest 代表把文件拷贝到哪个地方去
常用选项:-r
递归复制整个文件夹(其实就是Windows系统的复制文件夹)
- 将 /home/hello.txt 拷贝到 /home/bbb 目录下
强制覆盖不提示:
\cp [选项] source dest
3.4.8、rm指令
rm指令移除文件或目录
基本语法:rm [选项] 要删除的文件或目录
常用选项:
-
-r
递归删除整个文件夹 -
-f
强制删除不提示
- 将 /home/hello.txt 删除
rm /home/hello.txt
- 递归删除整个文件夹 /home/bbb
rm -rf /home/bbb [删除整个文件夹,不提示]
强制删除不提示的方法:带上
-f
参数即可
3.4.9、mv指令
mv 移动文件与目录或重命名
基本语法:
-
mv oldNameFile newNameFile
(功能描述:重命名) -
两个文件在同一个目录,oldNameFile 代表旧的文件名,newNameFile 代表新的文件名
-
mv /temp/movefile /targetFolder
(功能描述:移动文件) -
两个文件不在同一个目录,将/temp/movefile 文件移动到 /targetFolder 目录
- 将 /home/cat.txt 文件重新命名为 pig.txt
mv cat.txt pig.txt
- 将 /home/pig.txt 文件移动到 /root 目录下
mv /home/pig.txt /root
3.4.10、cat指令
cat查看文件内容
基本语法:cat [选项] 要查看的文件
常用选项:-n
:显示行号
- 查看
/etc/profile
文件内容,并显示行号
cat -n /etc/profile
细节:
- cat 只能浏览文件,而不能修改文件,为了浏览方便,一般会带上 管道命令
|more
cat -n/etc/profile | more
3.4.11、more指令
more指令是一个基于VI编辑器的文本过滤器,它以全屏幕的方式按页显示文本文件的内容。more指令中内置了若干快捷键(交互的指令),如下:
基本语法: more 要查看的文件
| 操作 | 功能说明 |
| — | — |
| 空格键space | 代表向下翻一页 |
| Enter | 代表向下翻一行 |
| q | 代表立刻离开more,不再显示该文件内容 |
| Ctrl+F | 向下滚动一屏 |
| Ctrl+B | 返回上一屏 |
| = | 输出当前行的行号 |
| :f | 输出文件名和当前行的行号 |
3.4.12、less指令
less指令用来分屏查看文件内容,它的内容与 more 指令类似,但是比 more 指令更加强大,支持各种显示终端。less指令在显示文件内容时,并不是一次将整个文件加载之后才显示,而是根据显示需要加载内容,对于显示大型文件具有较高的效率。
基本语法:less 要查看的文件
| 操作 | 功能说明 |
| — | — |
| 空格键space | 代表向下翻一页 |
| [pagedown] | 代表向下翻一行 |
| [pageup] | 代表向上翻一行 |
| /字串 | 向下搜寻[字串]的功能,n:向下查找,N:向上查找 |
| ?字串 | 向上搜寻[字串]的功能,n:向下查找,N:向上查找 |
| q | 离开less这个程序 |
- 采用 less 查看一个大文件 杂文.txt
-
pageup 键 和 pagedown 键分别代表向上 和 向下一行
-
/字串
寻找字串
按 n 键,向下查找,按 N 键,向上查找。
3.4.13、echo指令
echo输出内容到控制台
基本语法: echo [选项] [输出内容]
- 使用 echo 指令输出环境变量,比如输出
$PATH
、主机名$HOSTNAME
echo $PATH
echo $HOSTNAME
- 使用 echo 指令输出 heelo,world
echo “hello,world”
3.4.14、head指令
head用于显示文件的开头部分,默认情况下 head 指令显示文件的前10行内容。
基本语法:
-
head 文件
(功能描述:查看文件头10行内容) -
head -n 5 文件
(功能描述:查看文件头5行内容,5可以是任意行数)
- 查看 /etc/profile 的前5行代码
head -n 5 /etc/profile
3.4.15、tail指令
tail 用于输出文件中尾部的内容,默认情况下 tail 指令显示文件的前10行内容
基本语法:
-
tail 文件
(功能描述:查看文件尾10行内容) -
tail -n 5 文件
(功能描述:查看文件尾5行内容,5可以是任意行数) -
tail -f 文件
(功能描述:实时追踪该文档的所有更新)
- 查看/etc/profile 最后5行代码
tail -n 5 /etc/profile
- 实时监控 mydate.txt,看看文件是否有变化**(Ctrl+C来停止监控)**
tail -f /home/mydate.txt
3.4.16、>指令和>>指令
>
输出重定向
>>
追加
基本语法:
-
ls -l > 文件
(功能描述:列表的内容写入文件中(覆盖写)) -
ls -al>>文件
(功能描述:列表的内容追加到文件末尾) -
cat 文件1 > 文件2
(功能描述:将文件1的内容覆盖到文件2) -
echo "内容">>文件
(功能描述:将内容追加到文件)
- 将 /home 目录下的文件列表,写入到 /home/info.txt 中,覆盖写入
ls -l/home > /home/info.txt [如果info.txt没有,则会自动创建
3.4.17、ln指令
软链接也称为符号链接,类似于 windows 里的快捷方式,主要存放了链接其他文件的路径
基本语法:ln -s [原文件或目录][软链接名]
(功能描述:给原文件创建一个软链接)
- 在 /home 目录下创建一个软链接 myroot,链接到 /root 目录
ln -s/root /home/myroot
- 删除软链接 myroot
rm /home/myroot
当我们使用pwd指令查看目录时,仍然看到的是软链接所在目录
3.4.18、history指令
查看已经执行过历史命令,也可以执行历史指令
基本语法:history
(功能描述:查看已经执行过的历史命令)
- 显示所有历史命令
history
- 显示最近使用过的10个指令
history 10
最后的话
最近很多小伙伴找我要Linux学习资料,于是我翻箱倒柜,整理了一些优质资源,涵盖视频、电子书、PPT等共享给大家!
资料预览
给大家整理的视频资料:
给大家整理的电子书资料:
如果本文对你有帮助,欢迎点赞、收藏、转发给朋友,让我有持续创作的动力!
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注运维)
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
w_50,text_Q1NETiBA55Sf5ZG95piv5pyJ5YWJ55qE,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center)
3.4.16、>指令和>>指令
>
输出重定向
>>
追加
基本语法:
-
ls -l > 文件
(功能描述:列表的内容写入文件中(覆盖写)) -
ls -al>>文件
(功能描述:列表的内容追加到文件末尾) -
cat 文件1 > 文件2
(功能描述:将文件1的内容覆盖到文件2) -
echo "内容">>文件
(功能描述:将内容追加到文件)
- 将 /home 目录下的文件列表,写入到 /home/info.txt 中,覆盖写入
ls -l/home > /home/info.txt [如果info.txt没有,则会自动创建
3.4.17、ln指令
软链接也称为符号链接,类似于 windows 里的快捷方式,主要存放了链接其他文件的路径
基本语法:ln -s [原文件或目录][软链接名]
(功能描述:给原文件创建一个软链接)
- 在 /home 目录下创建一个软链接 myroot,链接到 /root 目录
ln -s/root /home/myroot
- 删除软链接 myroot
rm /home/myroot
当我们使用pwd指令查看目录时,仍然看到的是软链接所在目录
3.4.18、history指令
查看已经执行过历史命令,也可以执行历史指令
基本语法:history
(功能描述:查看已经执行过的历史命令)
- 显示所有历史命令
history
- 显示最近使用过的10个指令
history 10
最后的话
最近很多小伙伴找我要Linux学习资料,于是我翻箱倒柜,整理了一些优质资源,涵盖视频、电子书、PPT等共享给大家!
资料预览
给大家整理的视频资料:
[外链图片转存中…(img-Ub7MlFzj-1713255992423)]
给大家整理的电子书资料:
[外链图片转存中…(img-1YxVQZ1H-1713255992423)]
如果本文对你有帮助,欢迎点赞、收藏、转发给朋友,让我有持续创作的动力!
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注运维)
[外链图片转存中…(img-SK2NC45v-1713255992423)]
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!