为了做好运维面试路上的助攻手,特整理了上百道 【运维技术栈面试题集锦】 ,让你面试不慌心不跳,高薪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行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
行;
第二组为“加入此群组之帐号的权限”;
第三组为“非本人且没有加入本群组之其他帐号的权限”。
r的权限4
w的权限2
x的权限1
如:rwxr-xr-- 754
绝对路径:路径起始是‘/’,因为Linux中所有的目录都挂在“/”目录下。
相对路径:相对于当前目录的路径
cd:变换目录
pwd:显示目前的目录
mkdir:创建一个新的目录
rmdir:删除一个空的目录
cp:复制目录
mv:移动目录
rm:删除目录
coding@DESKTOP-5MQ0I0D:~$ cd /tmp/
coding@DESKTOP-5MQ0I0D:/tmp$ ls
20190304test001.txt all.tar.xz bashrc test2 testing
coding@DESKTOP-5MQ0I0D:/tmp$ pwd
/tmp
coding@DESKTOP-5MQ0I0D:/tmp$ mkdir test
coding@DESKTOP-5MQ0I0D:/tmp$ ls
20190304test001.txt all.tar.xz bashrc test test2 testing
coding@DESKTOP-5MQ0I0D:/tmp$ rmdir test
coding@DESKTOP-5MQ0I0D:/tmp$ ls
20190304test001.txt all.tar.xz bashrc test2 testing
coding@DESKTOP-5MQ0I0D:/tmp$ cp test2 .
cp: -r not specified; omitting directory ‘test2’
coding@DESKTOP-5MQ0I0D:/tmp$ cp /etc/services .
coding@DESKTOP-5MQ0I0D:/tmp$ ls
20190304test001.txt all.tar.xz bashrc services test2 testing
coding@DESKTOP-5MQ0I0D:/tmp$ mv 20190304test001.txt test2
coding@DESKTOP-5MQ0I0D:/tmp$ ls
all.tar.xz bashrc services test2 testing
coding@DESKTOP-5MQ0I0D:/tmp$ ls test2
20190304test001.txt
coding@DESKTOP-5MQ0I0D:/tmp$ rm test2
rm: cannot remove ‘test2’: Is a directory
coding@DESKTOP-5MQ0I0D:/tmp$ rm test2/20190304test001.txt
coding@DESKTOP-5MQ0I0D:/tmp$ ls test2
coding@DESKTOP-5MQ0I0D:/tmp$ rmdir test2
coding@DESKTOP-5MQ0I0D:/tmp$ ls
all.tar.xz bashrc services testing
coding@DESKTOP-5MQ0I0D:/tmp$
SUID(SetUID) :将user的x权限变成s 如:-rwsr-xr-x
SGID(SetGID):将group的x权限变成s 如:-rwxr-sr-x
whatis 指令 : 表示这指令是做什么的
which 指令 :指令所在的目录
whereis 指令:指令的位置
coding@DESKTOP-5MQ0I0D:/tmp$ whatis ls
ls (1) - list directory contents
coding@DESKTOP-5MQ0I0D:/tmp$ which ls
/bin/ls
coding@DESKTOP-5MQ0I0D:/tmp$ whereis ls
ls: /bin/ls /usr/share/man/man1/ls.1.gz
coding@DESKTOP-5MQ0I0D:/tmp$
文件系统通常会将这两部
份的数据分别存放在不同的区块,权限与属性放置到 inode 中,至于实际数据则放置到 data block 区块中。
Hard Link:
通过文件系统的 inode 链接来产生新文件名,而不是产生新文件!这种称为实体链接
Symbolic Link
Symbolic link 就是在创建一个独立的文件,而这个文件会让
数据的读取指向他 link 的那个文件的文件名!由于只是利用文件来做为指向的动作, 所以,当来源文件被删除之后,symbolic link
的文件会“开不了”, 会一直说“无法打开某文件!”
Hard Link 和Symbolic Link的区别:Hard Link是对源文件的inode取了一个新的名称,通过源文件或链接文件都可以访问到inode存储的内容,也就是说源文件和链接文件对应的inode是一样的。所以即使删掉了源文件,通过链接文件还是可以访问的。而Symbolic Link 会产生一个新的文件记录下源文件的位置,访问链接文件,实际上是通过读取里面的信息从而找到源文件进行访问。也就是说源文件和链接文件的iNode是不一样的,并且当文件删除后,再次访问链接文件会报错找不到源文件的。
coding@DESKTOP-5MQ0I0D:/tmp$ ln testing/20190304test001.txt .
coding@DESKTOP-5MQ0I0D:/tmp$ ls -li . testing/
.:
total 24
36873221949214360 -rw-rw-rw- 2 coding coding 83 Mar 5 13:46 20190304test001.txt
25332747903961015 -rw-rw-rw- 1 coding coding 304 Mar 5 14:07 all.tar.xz
10696049115236520 -rw-r–r-- 1 coding coding 3771 Feb 28 19:47 bashrc
55732045388840168 -rw-r–r-- 1 coding coding 19183 Mar 5 15:38 services
27021597764376606 drwxr–r-- 1 coding coding 512 Mar 5 16:12 testing
testing/:
total 0
36873221949214360 -rw-rw-rw- 2 coding coding 83 Mar 5 13:46 20190304test001.txt
coding@DESKTOP-5MQ0I0D:/tmp$
coding@DESKTOP-5MQ0I0D:/tmp$ ln -s testing/20190304test001.txt 20190304tets002.txt
coding@DESKTOP-5MQ0I0D:/tmp$ ls -li
total 24
36873221949214360 -rw-rw-rw- 2 coding coding 83 Mar 5 13:46 20190304test001.txt
23362423067085188 lrwxrwxrwx 1 coding coding 27 Mar 5 16:17 20190304tets002.txt -> testing/20190304test001.txt
25332747903961015 -rw-rw-rw- 1 coding coding 304 Mar 5 14:07 all.tar.xz
10696049115236520 -rw-r–r-- 1 coding coding 3771 Feb 28 19:47 bashrc
55732045388840168 -rw-r–r-- 1 coding coding 19183 Mar 5 15:38 services
27021597764376606 drwxr–r-- 1 coding coding 512 Mar 5 16:12 testing
coding@DESKTOP-5MQ0I0D:/tmp$
文件压缩
gzip
bzip2
xz
三者的语法基本都差不多,gzip 效率最差,但是速度最快
xz效率最高,但是耗时最长。
选项与参数:
-c :将压缩的数据输出到屏幕上,可通过数据流重导向来处理;
-d :解压缩的参数;
-t :可以用来检验一个压缩文件的一致性~看看文件有无错误;
-v :可以显示出原文件/压缩文件的压缩比等信息;
-# :# 为数字的意思,代表压缩等级,-1 最快,但是压缩比最差、-9 最慢,但是压缩比最好!默认是 -6
打包指令 tar
选项与参数:
-c :创建打包文件,可搭配 -v 来察看过程中被打包的文件名(filename)
-t :察看打包文件的内容含有哪些文件名,重点在察看“文件名”就是了;
-x :解打包或解压缩的功能,可以搭配 -C (大写) 在特定目录解开
特别留意的是, -c, -t, -x 不可同时出现在一串命令行中。
-z :通过 gzip 的支持进行压缩/解压缩:此时文件名最好为 *.tar.gz
-j :通过 bzip2 的支持进行压缩/解压缩:此时文件名最好为 *.tar.bz2
-J :通过 xz 的支持进行压缩/解压缩:此时文件名最好为 *.tar.xz 特别留意, -z, -j, -J 不可以同时出现在一串命令行中
-v :在压缩/解压缩的过程中,将正在处理的文件名显示出来!
-f filename:-f 后面要立刻接要被处理的文件名!建议 -f 单独写一个选项啰!(比较不会忘记)
-C 目录 :这个选项用在解压缩,若要在特定目录解压缩,可以使用这个选项。
其他后续练习会使用到的选项介绍:
-p(小写) :保留备份数据的原本权限与属性,常用于备份(-c)重要的配置文件
-P(大写) :保留绝对路径,亦即允许备份数据中含有根目录存在之意;
–exclude=FILE:在压缩的过程中,不要将 FILE 打包!
**其实最简单的使用 tar 就只要记忆下面的方式即可
.bz2结尾的
压 缩:tar -jcv -f filename.tar.bz2 要被压缩的文件或目录名称
查 询:tar -jtv -f filename.tar.bz2
解压缩:tar -jxv -f filename.tar.bz2 -C 欲解压缩的目录
.gz结尾的
压 缩:tar -zcv -f filename.tar.bz2 要被压缩的文件或目录名称
查 询:tar -ztv -f filename.tar.bz2
解压缩:tar -zxv -f filename.tar.bz2 -C 欲解压缩的目录
**
coding@DESKTOP-5MQ0I0D:/tmp$ bzip2 services
coding@DESKTOP-5MQ0I0D:/tmp$ ll
total 12
drwxrwxrwt 1 root root 512 Mar 5 16:26 ./
drwxr-xr-x 1 root root 512 Feb 27 14:33 …/
-rw-r–r-- 1 coding coding 3771 Feb 28 19:47 bashrc
-rw-r–r-- 1 coding coding 7108 Mar 5 15:38 services.bz2
drwxr–r-- 1 coding coding 512 Mar 5 16:12 testing/
coding@DESKTOP-5MQ0I0D:/tmp$ bzip2 -kd services.bz2
先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前在阿里
深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新Linux运维全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上运维知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
09137428)]
[外链图片转存中…(img-Ze4r3ZQK-1715209137429)]
[外链图片转存中…(img-hS5kStnr-1715209137429)]
[外链图片转存中…(img-bN3lGDZR-1715209137429)]
[外链图片转存中…(img-TsaErWbD-1715209137429)]
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上运维知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新