第十四章 Linux面试题
-
日志t.log(访问量), 将各个ip地址截取,并统计出现次数,并按从大到小排序(腾
讯)
http://192. 168200.10/index1.html
http://192. 168.200. 10/index2.html
http:/192. 168 200.20/index1 html
http://192. 168 200.30/index1 html
http://192. 168.200. 40/index 1.html
http://192. 168.200.30/order. html
http://192. 168.200. 10/order html
答案: catt.txt| cut-d’/'-f3 | sort | uniq -C I sort -nr -
统计连接到服务器的各个ip情况,并按连接数从大到小排序(腾讯)
netstat -an| grep ESTABLISHED | awk-F “” ‘{print$5}’ | cut-d":"-f1 | sort | uniq -c | sort -nr
-
问题:如忘记了mysql5.7数据库的ROOT用户的密码,如何找回? (滴滴)
-
写出指令:统计ip访问情况,要求分析nginx
访问日志((acce.log), 找出访问页面数量在前2位的ip(美团)
cat accss.Ilog| awk -F " " ‘{print $1}’| sort | uniq-c | sort -nr | head -2 -
使用tcpdump监听本机,将来自ip 192.168.200.1, tcp端口为22的数据,保存输出到
tcpdump.log,用做将来数据分析(美团) >>
tcpdump-i ens33 host 192. 168.200.1 and port22 >> /home/tcpdump.log
6. 常用的Nginx模块,用来做什么(头条)
rewrite模块,实现重写功能
access
模块:来源控制
ssl模块:安全加密
ngx_ http_ gzip_ module:网络传输压缩模块
ngx_ http proxy_ module模块实现代理
ngx_ http upstream_ module 模块实现定义后端服务器列表
ngx_ cache purge 实现缓存清除功能
7.如果你是系统管理员,在进行Linux系统权限划分时,应考虑哪些因素? (腾讯)
1)首先阐述Linux权限的主要对象
2)根据自己实际经验谈考虑因素
注意权限分离,比如:工作中,Linux系统权限和数据库权限不要在同一个部门
权限最小原则(即:在满足使用的情况下最少优先)
减少使用root用户,尽量用普通用户+sudo提权进行日常操作。
重要的系统文件,比如/etc/passwd, /etc/shadow etc/fstab, /etc/sudoers 等,日常建议使用chattr(change attribute)锁定,
需要操作时再打开。[演示比如:锁定/etc/passwd 让任何用户都不能随意useradd,除非解除锁定]
使用SUID, SGID, Sticky设置特殊权限。
可以利用工具,比如chkrootkitrootkit hunter检测rootkit脚本(rootkit 是入侵者使用工具,在不察觉的建立了入侵系
统途径) [演示使用 wget ft://p/. pangeia com. br/pub/seg/pachkootkittar.gz ]
利用工具Tripwire检测文件系统完整性
-
权限操作思考题
1)用户tom对目录/home/test 有执行x和读r写w权限,/home/esthello.java 是只读文件,问tom对hellojava文件
能读吗(ok)?能修改吗(no)?能删除吗?(ok)
2)用户 tom对目录/home/test 只有读写权限,/home/test/hello.java是只读文件,问tom对hello java文件能读吗(no)?能
修改吗(no)?能删除吗(no)?
3)用户tom对目录/home/test 只有执行权限x, /home/test/hello.java 是只读文件,问tom对hello.java文件能读吗(ok)?
能修改吗(no)?能删除吗(no)?
4)用户tom对目录/home/test只有执行和写权限,home/test/hellojava 是只读文件,问tom对hello.java 文件能读吗
(ok)?能修改吗(no)?能删除吗(ok)? -
说明Centos7启动流程,并说明和CentOS6相同和不同的地方(腾讯)
-
问题:列举Linux 高级命令,至少6个(百度)
netstat //网络状态监控top //系统运行状态lsblk //查看硬盘分区find
ps-aux/查看运行进程chkconfig//查看服务启动状态systemctl//管理系统服务器 -
问题: Linux 查看内存、io读写、磁盘存储、端口占用、进程查看命令是什么?(瓜子)
top, iotop, df -Ih , netstat -tunlp , ps -aux | grep关心的进程 -
使用Linux命令计算t2.txt第二列的和并输出(美团)
张三40
李四50
王五60
cat t2.txt| awk-F " "‘{sum+= =$2} END {print sum }’ -
Shell脚本里如何检查一个文件是否存在?并给出提示(百度)
if[-f文件名] then echo
“存在”else echo“不存在” fi
14用shell 写一个脚本,对文本t3.txt 中无序的一列数字排序,并将总和输出(百度)
9
8
7
6
5
4
3
10
sort -nr t3.txt| awk ‘{sum+=$0; print $0} END {print "和="sum}
15. 请用指令写出查找当前文件夹(/home)下所有的文本文件内容中包含有字符
“cat’
的文件名称(金山)
grep -r “cat” /home |cut-d "-f 1
-
请写出统计/home目录下所有文件个数和所有文件总行数的指令(在金山面试题扩展)
find /home/test -name “* . "| wc -l
find /home/test -name " . *”
|xargs wC -1 -
列出你了解的web服务器负载架构(滴滴)
Nginx
Haproxy
Keepalived
LVS -
每天晚上10点30分,打包站点目录/var/spool/mail 备份到/home 目录下(每次备份
按时间生成不同的备份包比如按照年月日时分秒) (滴滴)
1 9如何优化Linux系统,说出 你的方法
对Linux的架构的优化,和原则分析
2)对linux系统本身的优化-规则
(1)不用root.,使用sudo提示权限
(2)定时的自动更新服务时间,使用nptdatenpt1.aliyun.com,让croud定时更新
(3)配置yum源,指向国内镜像(清华,163)
(4)配置合理的防火墙策略,打开必要的端口,关闭不必要的端口
(5)打开最大文件数(调整文件的描述的数量) vim /etc/profile ulimit -SHn 65535
(6)配置合理的监控策略
(7)配置合理的系统重要文件的备份策略
(8)对安装的软件进行优化,比如nginx ,apache
(9)内核参数进行优化/etc/sysctl.conf
(10)锁定一些 重要的系统文件chattr /etc/passwd /ect/shadow /etc/inittab
(11)禁用不必要的服务setup , ntsysv