为了做好运维面试路上的助攻手,特整理了上百道 【运维技术栈面试题集锦】 ,让你面试不慌心不跳,高薪offer怀里抱!
这次整理的面试题,小到shell、MySQL,大到K8s等云原生技术栈,不仅适合运维新人入行面试需要,还适用于想提升进阶跳槽加薪的运维朋友。
本份面试集锦涵盖了
- 174 道运维工程师面试题
- 128道k8s面试题
- 108道shell脚本面试题
- 200道Linux面试题
- 51道docker面试题
- 35道Jenkis面试题
- 78道MongoDB面试题
- 17道ansible面试题
- 60道dubbo面试题
- 53道kafka面试
- 18道mysql面试题
- 40道nginx面试题
- 77道redis面试题
- 28道zookeeper
总计 1000+ 道面试题, 内容 又全含金量又高
- 174道运维工程师面试题
1、什么是运维?
2、在工作中,运维人员经常需要跟运营人员打交道,请问运营人员是做什么工作的?
3、现在给你三百台服务器,你怎么对他们进行管理?
4、简述raid0 raid1raid5二种工作模式的工作原理及特点
5、LVS、Nginx、HAproxy有什么区别?工作中你怎么选择?
6、Squid、Varinsh和Nginx有什么区别,工作中你怎么选择?
7、Tomcat和Resin有什么区别,工作中你怎么选择?
8、什么是中间件?什么是jdk?
9、讲述一下Tomcat8005、8009、8080三个端口的含义?
10、什么叫CDN?
11、什么叫网站灰度发布?
12、简述DNS进行域名解析的过程?
13、RabbitMQ是什么东西?
14、讲一下Keepalived的工作原理?
15、讲述一下LVS三种模式的工作过程?
16、mysql的innodb如何定位锁问题,mysql如何减少主从复制延迟?
17、如何重置mysql root密码?
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
并不是说这些只是针对初学者的Linux技巧。即使有经验的Linux用户也有可能没有发现这些,尽管你这些年来一直在使用Linux。
很酷的Linux终端技巧,帮助您节省时间和提高生产力
您很可能已经知道这些Linux命令中的一些或全部。无论哪种情况,都欢迎您在评论部分中分享您喜欢的技巧。
其中一些技巧还取决于shell的配置方式。现在让我们开始!
1、使用tab键进行自动完成
我将从一些看得见但又非常重要的事情开始:tab补全。
当您开始在Linux终端中键入内容时,您可以按Tab键,它会建议所有可能的选项,这些选项以您到目前为止所键入的字符串开头。
例如,如果您要复制名为linuxidc.txt的文件,则只需键入“ cp l ”,然后按tab键查看可能的选项。
使用Tab键进行自动完成
您也可以在完成命令时使用Tab键。
2、切换回上一个工作目录
假设您以长目录路径结尾,然后转到完全不同的路径中的另一个目录。然后您意识到必须返回到先前所在的目录。在这种情况下,您要做的就是键入以下命令:
cd -
这会将您带回到上一个工作目录。您无需输入长目录路径,也无需复制粘贴。
在目录之间轻松切换
如果如下所示:
[linuxidc@localhost ~/www.linuxidc.com]$cd -
bash: cd: OLDPWD 未设定
是因为 cd 命令设置了 OLDPWD 环境变量值。除非你至少执行了一次 cd 命令,否则 OLDPWD 环境变量不会包含任何值
cd - 和 cd $OLDWPD 命令的执行结果并非在所有环境下都相同。
3、返回主目录
这太明显了。您可以使用以下命令从Linux命令行中的任何位置移至主目录:
cd ~
但是,您也可以仅使用cd返回主目录:
cd
大多数现代Linux发行版均已为此命令预配置了shell。在这里至少可以节省两次击键。
快速返回主目录
4、列出目录的内容
您一定在想在列出目录内容的命令中还有了什么技巧。每个人都知道在这种情况下使用ls -l。
就是这样。大多数人使用ls -l来列出目录的内容,而同样的事情也可以用下面的命令来完成:
ll
同样,这也取决于Linux发行版和shell配置,但是您很可能能够在大多数Linux发行版中使用它。
使用ll而不是ls -l
5、在一个命令中运行多个命令
假设您必须一个接一个地运行几个命令。您是否在等待第一个命令完成运行,然后执行下一个命令?
那么,您可以使用“;”分隔符。这样,您可以在一行中运行许多命令。无需等待先前的命令完成后再执行其他任务。
command_1; command_2; command_3
6、仅在上一个命令成功的情况下,才能在一个命令中运行多个命令
在上一个命令中,您了解了如何在一个命令中运行多个命令以节省时间。但很多时候你必须确保命令不会失败才能执行下一条命令,那怎么半?
比如您要构建代码,然后在构建成功的情况下才接着运行make。
在这种情况下,可以使用&&分隔符。&&确保下一条命令仅在上一条命令成功执行时运行。
command_1 && command_2
此命令的一个很好的例子是当您使用sudo apt update && sudo apt upgrade升级系统时。
7、轻松搜索您使用过的命令
想象一下一种情况,您在几分钟/几小时前使用了很长的命令,而您不得不再次使用它。问题是您不再记得确切的命令了。
反向搜索是您的救星。您可以使用搜索词在历史记录中搜索命令。
只需使用ctrl + r键即可启动反向搜索并键入命令的某些部分。它将查询历史记录,并向您显示与搜索词匹配的命令。
ctrl + r 搜索词
默认情况下,它将仅显示一个结果。要查看更多与您的搜索字词匹配的结果,您将不得不反复使用ctrl + r。要退出反向搜索,只需使用Ctrl + C。
在命令历史记录中进行反向搜索
请注意,在某些Bash Shell中,还可以在搜索词中使用Page Up和Down键,它将自动完成命令。
8、解除Linux终端意外冻结的Ctrl + S
在很多类Unix 的系统上,Ctrl-S 都有特殊的含义:它会“冻结”终端(它曾经被用来暂停快速滚动)。因为“保存”一般也是用这个快捷键,所以经常会有人不假思索地按下这个快捷键,结果大多数人都会被搞糊涂(我也经常犯这个错误)。解冻终端是用Ctrl-Q,所以如果你忽然发觉终端看起来被冻结了,试一下Ctrl-Q,看能不能释放它。
9、移至行首或行尾
假设您正在键入一个长命令,并且在途中您意识到必须在开始时进行一些更改。您将使用几次向左键击移动到行的开头。并且类似地进行到该行的末尾。
当然,您可以在此处使用Home和End键,但是也可以使用Ctrl + A转到行的开头,并使用Ctrl + E转到结尾。
动图演示如下
移至该行的开头或结尾
我发现它比使用Home和End键更方便,尤其是在笔记本电脑上。
10、实时读取日志文件
在需要在应用程序运行时分析日志的情况下,可以将tail命令与-F选项一起使用。
tail -F linuxidc_log
等同于–follow=name --retry,根据文件名进行追踪,并保持重试,即该文件被删除或改名后,如果再次创建相同的文件名,会继续追踪。
11、读取压缩日志而不解压缩
服务器日志通常被gzip压缩以节省磁盘空间。这给分析日志的开发人员或系统管理员带来了一个问题。您可能必须将其scp到本地,然后提取它来访问文件,因为有时您没有提取日志的写权限。
值得庆幸的是,在这种情况下,z命令可以帮助您。z命令提供了用于处理日志文件(例如less,cat,grep等)的常规命令的替代方法。
这样您就可以使用zless,zcat,zgrep等命令查看压缩包的内容,甚至不必显式提取压缩文件。
[linuxidc@localhost ~/www.linuxidc.com]$zcat linuxidc_log.zip | more
不解压缩读取压缩文件
12、使用 less读取文件
要查看文件的内容,cat不是最佳选择,特别是如果文件很大。cat命令将在屏幕上显示整个文件。
您可以使用Vi,Vim或其他基于终端的文本编辑器,但是如果您只想读取文件,则 less 命令是更好的选择。
less -N linuxidc.txt
//按下v键来编辑文件
//退出编辑器后,你可以继续用less浏览了
您可以在更少的范围内搜索字词,按页移动,高亮与行号等。
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
退出编辑器后,你可以继续用less浏览了
您可以在更少的范围内搜索字词,按页移动,高亮与行号等。
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!