Linux维护工程师面试题

本文详细总结了Linux维护工程师面试中常见的问题,包括Linux命令操作、网络配置、系统监控、数据库备份、shell脚本编写以及系统调优等多个方面。例如,通过awk、grep、sed等命令进行文件操作,使用iptables进行端口转发,理解RAID工作原理,掌握Oracle数据库备份方法,监控系统状态如CPU、内存和磁盘使用情况,以及如何利用shell脚本实现文件系统的自动化管理和监控。此外,还涉及到了如何处理高并发场景下的服务器性能优化和故障排查,以及Linux系统和网络服务的日常维护知识。
摘要由CSDN通过智能技术生成

Linux维护工程师面试题总结一下

 

一、有文件file1

 1、查询file1 里面空行的所在行号

 awk ‘{if($0~/^$/)print NR}’ file

 or

 grep -n ^$ file |awk ‘BEGIN{FS=”:”}{print $1}’

或者用grep -n ^$ /usr/local/httpd/conf/httpd.conf | awk -F: '{print $1}' 即可

 2、查询file1 以abc 结尾的行

 grep abc$ file1

 3、打印出file1 文件第1 到第3 行

 sed -n ’1,3p’ file1

 head -3 file1

 二、如何将本地80 端口的请求转发到8080 端口,当前主机IP 为192.168.2.1

 Iptables -A PREROUTING -d 124.42.60.109 -p tcp -m tcp –dport 80 -j DNAT

 –to-destination 10.0.0.18:9000

 三、crontab

 在11 月份内,每天的早上6 点到12 点中,每隔2 小时执行一次/usr/bin/httpd.sh 怎么

 实现

 0 6-12/2 * 11 * /usr/bin/httpd.sh

 四、编写个shell 脚本将/usr/local/test 目录下大于100K 的文件转移到/tmp 目录下

 #!/bin/bash

 for file in `ls /root`

 do

 if [ -f $file ]; then

 if [ `ls -l $file|awk '{print $5}'` -gt 10000 ]; then

 mv $file /tmp/

 fi

 fi

 done

 五、简述raid0 raid1 raid5 三种工作模式的工作原理及特点。

 RAID 0:连续以位或字节为单位分割数据,并行读/写于多个磁盘上,因此具有很高的数据

 传输率,但它没有数据冗余,因此并不能算是真正的RAID 结构。RAID 0 只是单纯地提高

 性能,并没有为数据的可靠性提供保证,而且其中的一个磁盘失效将影响到所有数据。因此,

 RAID 0 不能应用于数据安全性要求高的场合。

 RAID 1:它是通过磁盘数据镜像实现数据冗余,在成对的独立磁盘上产生互为备份的数据。

 当原始数据繁忙时,可直接从镜像拷贝中读取数据,因此RAID 1 可以提高读取性能。RAID

 1 是磁盘阵列中单位成本最高的,但提供了很高的数据安全性和可用性。当一个磁盘失效时,

 系统可以自动切换到镜像磁盘上读写 ,而不需要重组失效的数据。简单来说就是:镜象结

 构,类似于备份模式,一个数据被复制到两块硬盘上。

 RAID10:高可靠性与高效磁盘结构

 一个带区结构加一个镜象结构,因为两种结构各有优缺点,因此可以相互补充。

 主要用于容量不大,但要求速度和差错控制的数据库中。

 RAID5:分布式奇偶校验的独立磁盘结构,它的奇偶校验码存在于所有磁盘上,任何一个

 硬盘损坏,都可以根据其它硬盘上的校验位来重建损坏的数据。支持一块盘掉线后仍然正常

 运行。

 六、oracle 数据库备份方式

 物理备份:开启网络监听,备份数据库文件。

 RMAN 备份:通过表空间文件在RMAN 模式对ORACLE 数据备份。

 七、如何查看占用端口8080 的进程

 lsof -i:8080

 八、请写出apache2.X 版本的两种工作模式,以及各自工作原理。如何查看apache 当前

 所支持的模块,并且查看是工作在哪种模式下?

 答案:

 prefork(多进程,每个进程产生子进程)和worker(多进程,每个进程生成多个线程)

 prefork 的工作原理是,控制进程在最初建立“StartServers”个子进程后,为了满足

 MinSpareServers 设置的需要创建一个进程,等待一秒钟,继续创建两个,再等待一秒钟,

 继续创建四个……如此按指数级增加创建的进程数,最多达到每秒32 个,直到满足

 MinSpareServers 设置的值为止。这就是预派生(prefork)的由来。这种模式可以不必

 在请求到来时再产生新的进程,从而减小了系统开销以增加性能。

 worker 是2.0 版中全新的支持多线程和多进程混合模型的MPM。由于使用线程来处

 理,所以可以处理相对海量的请求,而系统资源的开销要小于基于进程的服务器。但是,

 worker 也使用了多进程,每个进程又生成多个线程,以获得基于进程服务器的稳定性。这

 种MPM 的工作方式将是Apache 2.0 的发展趋势。

 可以通过命令httpd -l 可以查看apache 当前的模块,如果带有worker.c 就是工作在

 worker 模式下,如果有prefork.c 就是工作在prefork.c 的模式下。

 九、你使用过监控软件吗?说说其特点

 使用nagios 对服务器进行监控,其特点可实时实现手机短信、电子邮件、MSN、飞信报警。

 使用cacti 对流量进行监控。

 十、你对现在运维工程师的理解和以及对其工作的认识

 运维工程师在公司当中责任重大,需要保证时刻为公司及客户提供最高、最快、最稳定、最

 安全的服务。运维工程师的一个小小的失误,很有可能会对公司及客户造成重大损失,因此

 运维工程师的工作需要严谨及富有创新精神。

 十一、linux 下常用的DNS服务软件是什么,举出几种常用的DNS记录,如果域名abc.com

 配置好了一台邮件服务器,IP 地址为202.106.0.20,我该如何做相关的解析?是否了解

 bind 的智能解析,如果了解请简述一下其原理

 答案:

 1)常用的DNS 软件是bind

 2)A 记录 地址记录

 MX 记录 邮件交换记录

 CNAME 记录 别名域记录

 3)修改abc.com 域名的配置文件,增加以下记录

 IN MX 10 mail.abc.com.

 mail IN A 202.106.0.20

 4)bind 根据请求解析客户端的IP 地址,做出不同的解析,其原理是在配置文件中,设定了

 view,在每个view 都有客户端的IP 地址段,bind 服务器根据请求解析客户端的IP 地址,

 匹配不同的view,再根据该view 的配置,到相应的配置文件进行查询,将结果返回给请求

 的客户端。

 十二、通过apache 访问日志access.log 统计IP 和每个地址访问的次数,按访问量列出

 前10 名。

 日志格式样例如下

 192.168.1.247 – - [02/Jul/2010:23:44:59 +0800] “GET / HTTP/1.1″ 200 19

 答案:

 cat access_log | awk ‘{print $1}’ | uniq -c|sort -rn|head -10

 //这个别的方法也能统计,但有些命令是必要的 awk , sort,uniq ,主要看是否这些命令都

 使用了。

 十三、如何用mysql 命令进行备份和恢复?以test 库为例,创建一个备份,并再用此备份

 进行恢复。

 mysqldump -u root -p test > test.sql

 mysql -u root -p test < test.sql

 //主要考对方msqldump > test.sql 和 mysql < test.sql

 十四、你认为在系统调优方面都包括哪些工作,以linux 为例,请简明阐述,并举一些参数

 为例。

 答案:

 系统调优包括内核参数优化和应用优化2 个方面,对方只要从这两方面来说,就可以了,

 尽量能有些经验的阐述。

 有个文件如下:

 http://a.domain.com/1.html

 http://b.domain.com/1.html

 http://c.domain.com/1.html

 http://a.domain.com/2.html

 http://b.domain.com/2.html

 http://a.domain.com/3.html

 要求:得到主机名(和域名),并统计哪个网址出现的次数,并排序。可以shell 或C。

 得到的结果应该是:

 3 a.domain.com

 2 b.domain.com

 1 c.domain.com

 [root@mail ~]# awk ‘BEGIN{FS=”/”}{arr[$3]++}END{for(i in arr) print

 arr[i],i}’ list| sort -r 答案

 3 a.domain.com

 2 b.domain.com

 1 c.domain.com

 挂载windows 的共享目录?

 mount.cifs //IP/SHARE linux 的目录 --verbose -o user=username <--这个用户是

 windows 下的用户--verbose 这个参数可以不加,它是显示过程的

 例如mount.cifs //10.1.1.246/gongxiang /mnt --verbose -o user=gao

 或者是mount -t cifs

 umount /mnt 或umount.cifs /mnt -l <--取消挂载

 图形界面:smb://IP

 A B 网络是通的,最少列出五种传输文件的服务

 nfs ,ftp,scp ,rsync,samba,http://

 1.假设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 系统运行了多少时间?

 2、监控主机执行: ssh user@被监控主机ip "uptime"

 这样得到了被监控主机的uptime

 3.处理以下文件内容,将域名取出并进行计数排序,如处理:

 http://www.baidu.com/index.html

 http://www.baidu.com/1.html

 http://post.baidu.com/index.html

 http://mp3.baidu.com/index.html

 http://www.baidu.com/3.html

 http://post.baidu.com/2.html

 得到如下结果:

 域名的出现的次数 域名

 3 www.baidu.com

 2 post.baidu.com

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

StruggleYouth

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值