Thanks to visit codestin.com
Credit goes to github.com

Skip to content

lycying/linux-sysadmin-interview-questions

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 

Repository files navigation

[⬆]一般问题

  • 你昨天/或者本周学习了什么新知识?
  • 谈一下你最擅长的开发环境(OS, Editor, Browsers, Tools etc.)
  • 谈一下你最近完成的一个linux项目
  • 谈一下你在工作中犯过的最大错误,以及你后续的改进,得到了什么经验
  • 我们为什么要选择你?
  • DNS的功能是什么?
  • 什么是HTTP?
  • 什么是HTTP代理?都有哪些类型?它是怎么工作的?
  • 简单描述一下HTTPS是怎么工作的
  • SMTP是什么?简单描述一下一个邮件是怎么通过SMTP送达的
  • RAID是什么? RAID0, RAID1, RAID5, RAID10 呢?
  • 什么是level0备份?什么是增量备份?
  • 简单描述下Linux系统的目录结构

[⬆] 基本的Linux问题

  • 超级管理员的用户的UID和名称是什么
  • 在一个目录中怎么查看所有文件,包括隐藏文件
  • 如何删除一个文件夹和里面的所有内容
  • 怎么查看内存信息
  • 怎么在一个目录中递归的查找包含“bj xxx"的文件
  • 通过SSH怎么登录一台远程主机,怎么配置免密登录
  • 怎么查看你正在用到的所有环境变量
  • 找不到ifconfig命令怎么办
  • 按下TAB-TAB会发生什么情况
  • 怎么查看硬盘容量的使用情况
  • 用什么命令能够检测DNS的情况
  • 用什么命令修改文件所属组和文件权限
  • chmod +x * 什么意思
  • 权限为0750的文件表示什么
  • 权限为0750的目录表示什么
  • 怎么加入一个没有登录权限的系统用户
  • 怎么将某用户加入/取消加入某个组
  • alias命令能够做什么
  • 怎么设置一个linux用户的邮箱地址
  • CTRL-c表明什么?CTRL-d呢
  • /etc/services 文件是干什么用的
  • 怎么重定向STDOUT和STDERR (> /dev/null 2>&1)
  • UNIX和Linux有什么不同
  • Telnet和SSH有什么不同
  • 说明一下load averages的含义
  • 都有什么命令能够看到load,怎么保持到文件
  • 什么是Linux的内核模块
  • 如何进入"single user mode"模式去排查问题
  • 你如何去排查一个普通的404问题

[⬆] 中级的Linux问题

  • 下面的命令都是干什么用的,请说明
 tee
 awk
 tr
 cut
 tac
 curl
 wget
 watch
 head
 tail
  • 一个命令行后的 & 是做什么用的,有什么问题?
  • "packet filter"是什么?它是怎么工作的?
  • 什么是 Virtual Memory?
  • SWAP是什么,如何禁用?
  • A record, NS record, PTR record, CNAME record, MX record都表示什么意思?
  • 水平分割(Split-Horizon) DNS是什么意思?
  • linux中的粘滞位(sticky bit)是什么意思?
  • 不可变位对一个文件是什么影响?chattr命令是做什么的?
  • 软链和硬链有什么区别?当你删除它们的源时,会发生什么?
  • inode是什么?里面存放的是什么内容?
  • 如何在下次操作系统重启时强制开启文件系统检测?
  • SNMP是干什么的?
  • linux的"runlevel"是什么,如何查看当前的级别?
  • SSH端口转发是什么?如何做?
  • 怎么手动添加一个用户到系统中(不可以使用useradd等命令)?
  • Linux系统设备(device)的major和minor number指的是什么?
  • mknod了解么?什么时候用过?
  • 当系统提示"filesystem is full" ,是什么原因引起的?
  • 什么时候当你删除一个文件,但是"df"命令发现空间并没有释放?
  • ps命令是如何工作的?
  • 简短说明一下进程的状态意义(如S、R、D)
  • 怎么查看是什么进程在监听某个端口?
  • 僵尸进程是怎么产生的?
  • 如果你运行了一个命令,你看到执行结果输出在终端,现在你想同时把执行结果保存到文件里,该如何去做?
  • echo "1" > /proc/sys/net/ipv4/ip_forward 是什么意思
  • 简单描述下你如何给 sayhiai.com 安装一个https证书
  • 你能使用同一个IP配置多个虚拟HTTPS主机么
  • 什么是通配符证书?
  • 你都知道哪些linux文件类型,如何查看?
  • linux进程和线程有什么区别?
  • exec和fork命令有什么区别?
  • nohup是什么命令?
  • 下面连个命令的区别是什么?
myvar=hello
export myvar=hello
  • ntp是什么?你配置了几个ntp服务器?
  • 加入你要升级1000台服务器的内核,你将如何做?
  • 怎么去限制某个进程的内存使用?
  • 除了bash你还用过哪些shell,有什么特点?
  • 从一台机器拷贝所有文件到另一台机器?包括软硬链接、设备等
  • 怎么去判断apache是否已经安装?怎么列出系统中已经安装的软件包?

[⬆] 高级linux问题

  • tunnel是什么?怎么设置一个带密码的http代理
  • IDS和IPS有什么区别?
  • Linux标准是什么?
  • 什么是原子操作?
  • 你刚配置好的http服务器在系统重启后没有启动,你后续会做什么?
  • 这个文件里存的是什么 ~/.ssh/authorized_keys ?
  • I've added my public ssh key into authorized_keys but I'm still getting a password prompt, what can be wrong?
  • 你创建过软件包么?比如RPM、DEB等?
  • 这条命令是什么意思 :(){ :|:& };: ?
  • 怎么在SHELL脚本里捕捉Linux信号?
  • 你能捕捉SIGKILL信号么?
  • 当Linux启动OOM killer以后,它会选择哪个进程去杀死?
  • 详细描述一下Linux系统的启动,越详细越好,从你按动电源直到显示登录
  • chroot是什么用的
  • 当unmount一个目录时,提示正在使用,怎么找出那个进程正在使用这个目录?
  • LD_PRELOAD环境变量是干什么用的?
  • 你尝试启动一个二进制文件,但是什么都没发生,接下来你如何进行调试?
  • cgroups是什么?
  • 怎么增加或者减少某个进程的优先级?

[⬆] 专业Linux问题

  • A running process gets EAGAIN: Resource temporarily unavailable on reading a socket. 在不杀死进程的前提下,你怎么关闭这个 socket/file文件描述符?
  • swapiness参数怎么修改?有什么影响?
  • 怎么去改变TCP的缓冲区?你什么情况下去修改这些参数?
  • 什么是hugepage,什么时候会用到?你都做过哪些优化?
  • 什么是LUMA架构?对软件有什么影响?
  • LUKS是什么? 如何使用? (磁盘加密)
  • CPU亲和力是什么,如何配置?
  • 怎么分析I/O,怎么判断达到瓶颈?

[⬆] 网络问题

  • localhost是什么?如果ping localhost失败是什么情况?
  • 用什么命令看系统所有开启的端口?
  • 300.168.0.123是一个合法的ip地址么?
  • VLAN是什么?
  • ARP用来做什么?
  • TCP和UDP有什么区别?
  • 默认网关的作用是什么?
  • 怎么看linux的网络路由表
  • 怎么给某块网卡加IPv6地址?
  • SNAT是什么?有什么作用?
  • 怎么防范 DDoS 攻击?
  • 怎么查看或者dump网络包的内容?如何分析?
  • IPoAC (RFC 1149) 是什么?
  • 当你把端口bind到0上,会发生什么 0?
  • Linux支持的端口范围?能支持多少连接?

[⬆] MySQL 问题

  • 怎么创建一个用户?
  • 如何给某个用户某个库的读权限?
  • 左连接和又连接有什么区别?
  • InnoDB和MyISAM有什么区别?
  • 简单描述下如何做一个简单的MySQL主从集群
  • MySQL Cluster是什么?那个版本支持?
  • mysql_secure_installation是什么意思?
  • 怎么查看MySQL正在运行哪些job?
  • 怎么排查慢日志?
  • 你如何给MySQL做全量、增量备份?

[⬆] DevOps 问题

  • 你写脚本一般怎么写?有哪些工具或者流程?
  • git如何简单使用?
  • 动态链接和静态链接有什么区别?
  • "./configure && make && make install" 做了些啥?
  • puppet/chef/ansible用过么?
  • Nagios/Zabbix/Telegraf等做什么用的?
  • 接触过Influxdb、OpenTSDB这些时序数据库么?
  • CI/CD工具接触过什么?Jenkins?
  • 容器Containers和VM有什么区别?
  • 怎么创建一个postgres用户?
  • virtual IP什么意思?
  • python里有switch语句么?
  • 你怎么控制云端和本地环境的权限?
  • 你会给开发人员开放系统权限么?到什么程度?
  • 用过跳板机么?有哪些?
  • 为了增加开发和SRE的互动,你都引入过哪些工具?

[⬆] 有趣的问题

  • 有个傻蛋运行了下面的命令chmod 444 /bin/chmod,你该怎么去修复它
  • 我忘了我的ROOT密码,怎么找回来?
  • 我远程启动了一台机器,10分钟过去了还没给我响应,发生了什么情况?
  • 你被困在一个孤岛上,仅有机会选择5个命令,为了最大限对的掌控,你会选哪5个?
  • 你随机看到一台开着终端的机器,你首先想到的是想输入啥?
  • 你用SSH命令干过哪些创造性的事情?
  • 当reboot命令没有响应,你怎么重启机器?

[⬆] 实践

  • 解压 test.tar.gz 并输出内容.
  • 在test文件夹内递归删除所有 "*.pyc" 文件?
  • 替换所有 *txt 中的 "window" 为 "linux"
  • 检测IP X.X.X.X 的 443端口是否开放
  • 使用telnet或者nc获取某网页内容
  • 使用命令行发送一个邮件

[⬆] Other Great References:

About

Collection of Linux Sysadmin/DevOps interview questions

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published