百度 Linux 运维工程师面试真题
百度 Linux 运维工程师面试真题
百度面了好久了,两个月了,估计都快成馊面了,一跟面条在走边边一不小心掉进了大海,于是
就有了汤面_经历非技术总结就两句话,幸运的是在朋友的帮助下顺利通过笔试,还认识了
一帮 super 牛 B 的人,不幸的是最终还是由于主观客观擦肩而过~~
我投的是 linux 运维,那个时候 sed,awk 根本不会(不会这两个就知道我脚本水平),就知道一
些 basic command! samba,dns,svn 也是半解,telnet,vnc 还好点.再次鄙视下自己.还好暑
假狂补了补.废话了那么多,进正题吧~~,估计没人愿意听我在这里家常!
上面的各种服务,blog 里都有_,下面的题目汇总了我自己的和一些朋友的_
1.基础常见内容
a.apache 虚拟主机设定
这个我以前的日志已写了,这里就不 say 了~~~其实也 easy 现在觉得
b.假设 Apache 产生的日志文件名为 access_log,在 apache 正在运行时,执行命令 mv
access_log access_log.bak,执行完后,请问新的 apache 的日志会打印到哪里?
新的日志会在 access_log.bak 中,因为 apache 启动时会找 access_log 文件,随时准备向
文件中加入日志信息,虽然此时文件被改名,但是由于服务正在运行,因为它的 inode 节点的
位置没有变,程序打开的 fd 仍然会指向原来那个 inode
不会因为文件名的改变而改变.apache 会继续向已改名的文件中追加日志,但是若重启
apache 服务,系统会检查 access_log 文件是否存在,若不存在则创建.
2.在 Shell 环境下,如何查看远程 Linux 系统运行了多少时间?
uptime | awk '{print $3}'
3.处理以下文件内容,将域名取出并进行计数排序,
如处理: http://www.baidu.com/more/
http://www.baidu.com/guding/more.html
http://www.baidu.com/events/20060105/photomore.html
http://www.sina.com.cn/head/www20021123am.shtml
http://www.sina.com.cn/head/www20041223am.shtml
得到如下结果:
域名的出现的次数 域名
3 www.baidu.com
2 www.sina.com.cn
1 hi.baidu.co 百度总喜欢这种题目,我上篇日志的 site inurl 也是,这个是统计域名的,还有一
个说是统计文件名的,就是后面的 index 没有的就直接为空,这个用 shell 怎么实现还在思考
中,想出来了再写
cat file | sed -e ' s/http:////' -e ' s//.*//' | uniq -c | sort -rn
awk -F/ '{print $3}' file |uniq -c | sort -r |awk '{print $1"\t",$2}'
4.如果得到随机的字串,长度和字串中出现的字符表可定义,并将字串倒序显示,
如把 0123456789 作为基准的字串字符表,产生一个 6 位的字串 642031,打印出的字串为
130246,可使用 bash/perl/php/c 任意一种.
awk -v count=6 ‘BEGIN
{srand();str=”0123456789″;len=length(str);for(i=count;i>0;i–)
marry[i]=substr(str,int(rand()*len),1);for(i=count;i>0;i–)
printf(“%c”,marry[i]);printf(“\n”);for(i=0;i<=count;i++)
printf(“%c”,marry[i]);printf(“\n”)}’
5.如何查看当前 Linux 系统的状态,如 CPU 使用,内存使用,负载情况等.
当时问到这个的时候我超级自信,可是你知道/proc 目录下的那些数字目录代表什么吗??教
训阿!!!(ps:不懂的自己 google_)个人的小教训
Linux 系统中/proc 是个伪文件目录,不占用系统空间,及时的反应出内存现在使用的进程情
况.其中许多文件都保存系统运行状态和相关信息对于/proc 中文件可使用文件查看命令浏
览其内容,文件中包含系统特定信息:
cpuinfo 主机 CPU 信息
filesystems 文件系统信息
meninfo 主机内存信息
version Linux 内存版本信息
diskstatus 磁盘负载情况
另外 top 命令可以动态的显示当前系统进程用户的使用情况,而且是动态的显示出来,尤其
是在该命令显示出来的对上方对系统的情况进行汇总.
free 命令呢可以查看真实使用的内存 一般用 free -m
使用 ps aux 可以查看详细的每个进程的使用状况
dmesg 也是常用来查看系统性能的命令
告诉我那些是进程后又问如何查看一个进程所使用的文件句柄?
/proc/进程号/fd/的个数就行了
6.查看 apache 进程数
个人在 ubuntu 下测试成功的是
ps aux | grep “apache2” | grep -v “apache2” | wc -l
个别的 command,与 OS 有关!!!
下面的是别人滴_
##########################
1、/proc/sys 子目录的作用
该子目录的作用是报告各种不同的内核参数,并让您能交互地更改其中的某些。与 /proc
中所有其他文件不同,该目录中的某些文件可以写入,不过这仅针对 root,这个 google 下
多的是 oh no,please baidu,baidu 更懂中文~~
2、将一个文本的奇数行和偶数行合并,第 2 行和第 3 行合并
a.将所有奇数行和偶数行合并,就是去奇数行的换行符了哦
sed ‘$!N;s/\n/ /g’ test
b.就是去第二行的了哦
sed -n -e 2p -e 3p test | sed ‘$!N;s/\n/ /g’ test
3、read 命令 2 秒后自动退出
read -t 2
4.下面的这两个我没有 DIY 过,没环境阿,就自己一台笔记本
自动 ftp 上传
#!/bin/sh
ftp -n<<END_FTP
open 192.168.1.4
user codfei duibuqi //用户名 codfei 密码 duibuqi
binary
prompt off //关闭提示
mput test //上传 test
close
bye
END_FTP
自动 ssh 登陆 从 A 到 B 然后再到 c
#!/usr/bin/expect -f
set timeout 30
spawn ssh codfei@B
expect “password:”
send “pppppp\r”
expect “]*”
send “ssh codfei@C\r”
expect “password:”
send “pppppp\r”
interact
7、sed awk grep 哪个最好
我答的是 哪个掌握的精通,都很好,但是还是问我哪个最好,我只能说 awk 了,对于行操
作和列操作都可以操作的很好。
8、grep -E -P 是什么意思
我说的是-E, –extended-regexp 采用规则表示式去解释样式。 -P perl 的
9、还问了我对运维这个工作的理解,和应该具备的素质。
…………
【特别说明】
面试真题属于应试者记忆问题的再现,会与真实面试情况存在差别,建议你参考
多家企业的 Linux 运维面试题目,增加通过率。
百度 Linux 运维工程师面试真题的更多相关文章
- 大厂0距离:网易 Linux 运维工程师面试真题,内含答案
作为 Linux 运维工程师,进入大公司是开启职业新起点的关键,今天马哥 linux 运维及云计算智囊团的小伙伴特别分享了其在网易面试 Linux 运维及云计算工程师的题目和经历,希望对广大 Linu ...
- 美团Linux运维工程师面试真题
1.LINUX系统软件安装和卸载的常见方法 答: A.rpm包卸载:rpm -e XXX.rpm (如果想忽略依赖,可加上–nodeps) B.yum remove xxx.rpm 这种方法非常 ...
- Linux运维工程师面试-部分题库
一.Linux操作系统知识 1.常见的Linux发行版本都有什么?你最擅长哪一个?它的官网网站是什么?说明你擅长哪一块? 2.Linux开机启动流程详细步骤是什么?系统安装完,忘记密码如何破解? ...
- Linux运维工程师面试
一.Linux操作系统知识 1.常见的Linux发行版本都有什么?你最擅长哪一个?它的官网网站是什么?说明你擅长哪一块? 2.Linux开机启动流程详细步骤是什么?系统安装完,忘记密码如何破解? ...
- Linux 运维工程师面试问答录(推荐阅读)
一个执着于技术的公众号 本文整理了一些比较常见的 Linux 相关的面试题目,该问答录主要分为基础知识篇和服务器篇.内容主要涉及 Linux 基本原理.常用命令操作.服务器应用等部分的内容. Linu ...
- linux运维工程师面试题收集
面试必考 mysql5和mysql6 有什么区别 mysql-server-5.5:默认引擎改为Innodb,提高了性能和扩展性,提高实用性(中继日志自动恢复) mysql-server-5.6:In ...
- 从苦逼到牛逼,详解Linux运维工程师的打怪升级之路
做运维也快四年多了,就像游戏打怪升级,升级后知识体系和运维体系也相对变化挺大,学习了很多新的知识点. 运维工程师是从一个呆逼进化为苦逼再成长为牛逼的过程,前提在于你要能忍能干能拼,还要具有敏锐的嗅觉感 ...
- linux运维工程师成长过程
原文地址:https://blog.csdn.net/kwame211/article/details/78059331 初级篇 linux运维人员常用工具拓扑详见: 1rsync工具 很多地方经常会 ...
- 详解Linux运维工程师
运维工程师是从一个呆逼进化为苦逼再成长为牛逼的过程,前提在于你要能忍能干能拼,还要具有敏锐的嗅觉感知前方潮流变化.如:今年大数据,人工智能比较火……(相对表示就是 Python 比较火) 之前写过运维 ...
- 做linux运维工程师,必须要掌握以下几个工具
linux系统如果是学习可以选用redhat或centos,特别是centos在企业中用得最多,当然还会有其它版本的,但学习者还是以这2个版本学习就行,因为这两个版本都是兄弟,没区别的,有空可以再研究 ...
随机推荐
- 一文搞懂 Vue3 defineModel 双向绑定:告别繁琐代码!
前言 随着vue3.4版本的发布,defineModel也正式转正了.它可以简化父子组件之间的双向绑定,是目前官方推荐的双向绑定实现方式. vue3.4以前如何实现双向绑定 大家应该都知道v-mode ...
- ESP8266的AT指令模块程序
最新代码可点击下载:ESP8266 模块代码 和以下代码实现方式不一致,更加自由可控 本段代码只是测试了esp8266作为服务器端使用,没有测试作为客户端使用. 没有超长延时等待或死循环等待AT指令反 ...
- 单片机 IAP 功能进阶开发篇之BOOT升级(一)
引言 目的 主要介绍单片机 IAP 开发的设计思路,如何不使用下载烧录器的方式对单片机的程序进行升级,升级区域包括 bootloader 和用户程序的升级,升级方式有 UASRT 通信.CAN 通信和 ...
- Flutter聊天室|dart+flutter仿微信App界面|flutter聊天实例
一.项目概述 flutter-chatroom是采用基于flutter+dart+chewie+image_picker+photo_view等技术跨端开发仿微信app界面聊天室项目.实现了消息发送/ ...
- 【译】介绍 MSTest Runner – CLI、Visual Studio 等
原文 | Amaury Levé, Marco Rossignoli, Jakub Jareš 翻译 | 郑子铭 我们很高兴推出 MSTest runner,这是一个用于 MSTest 测试的新型轻量 ...
- 《ASP.ENT Core 与 RESTful API 开发实战》(第3章)-- 读书笔记(中)
第 3 章 ASP.NET Core 核心特性 3.3 依赖注入 通常情况下,应用程序由多个组件构成,而组件与组件之间往往存在依赖关系 当我们需要获取数据时,通常的做法是实例化依赖的类,然后调用类里面 ...
- Java-统计程序运行的时长(计算两个时间相差的毫秒数、秒数)
最近在做Hbase的查询性能验证,需要统计查询的执行时长,所以需要统计开始时间和结束时间的时间差. 下面是使用SimpleDateFormat和Date计算时间差(相差毫秒数)的程序示例,仅供参考. ...
- OGG-Postgres实时同步到MySQL
(一)数据库信息 名称 源端数据库 目标端数据库 数据库类型 Postgresql 12.4 MySQL 5.7 IP地址 20.2.127.23 20.2.127.24 端口 5432 3306 数 ...
- NC20185 [JSOI2010]缓存交换
题目链接 题目 题目描述 在计算机中,CPU只能和高速缓存Cache直接交换数据.当所需的内存单元不在Cache中时,则需要从主存里把数据调入Cache.此时,如果Cache容量已满,则必须先从中删除 ...
- docker 常用命令 快捷命令
一.查询节点 docker ps -a 二.docker重启停止 systemctl restart docker systemctl stop docker docker restart * 三.一 ...