Java运维面试题

来源:互联网 发布:mac 双系统分区格式 编辑:程序博客网 时间:2024/06/07 02:02
面试题是it运维工程师求职者敲开职场大门的关键一砖。下面是由答.案.网 ZqNf.Com小编整理而成的it运维工程师面试题,谢谢你的阅读。

  it运维工程师面试题(一)

  1、 磁盘raid级别有几种,分别是哪几种?你了解或者使用过哪几种,请写出它们的大概
  描述和区别。(10分)
  raid级别有以下几种:nraid,jbod,raid0,raid1,raid0+1,raid3,raid5等。目前经常使用的是raid0,raid1,raid3,raid5和raid(0+1)。它们的区别大致如下: raid 0 存取速度最快 但没有容错
  raid 1 完全容错但成本比较高,磁盘利用率为50%
  raid 3 写入性能最好 但没有多任务功能
  raid 5 具备多任务及容错功能写入时有overhead
  raid 0+1 速度快、完全容错但成本高
  2、 tcp滑动窗口协议,窗口过大或过小有什么影响,举例(10分)
  滑动窗口:是两台主机间传送数据时的缓冲区。每台tcp/ip主机支持两个滑动窗口:一个用于接收数据,另一个用于发送数据。窗口尺寸表示计算机可能缓冲的数据量大小。
  滑动窗口的大小对网络性能有很大的影响。如果滑动窗口过小,则需要在网络上频繁的传输确认信息,占用了大量的网络带宽;如果滑动窗口过大,对于利用率较高,容易产生丢包现象的网络,则需要多次发送重复的数据,也同样耗费了网络带宽。
  3、 windows下如何查看占用端口8080的进程(写出命令)(10分)
  netstat -aon|findstr "8080"
  4、介绍一下acl和nat?nat有几种方式?(10分)
  acl:1、访问控制列表(acl)是应用在路由器接口的指令列表(规则),用来告诉路由器哪些数据包可以接收转发,哪些数据包需要拒绝;2、acl的工作原理 :读取第三层及第四层包头中的信息,根据预先定义好的规则对包进行过滤;3、使用acl实现网络控制:实现访问控制列表的核心技术是包过滤;4、acl的两种基本类型(标准访问控制列表;扩展访问控制列表)
  nat:改变ip包头使目的地址,源地址或两个地址在包头中被不同地址替换。
  静态nat、动态nat、pat
  5、假如让你来设计一个网络,需求是让北京和上海分部的网络以内网的形式访问到深圳总部的网络,你会怎么做?你怎样来设计或考虑一个网络的数据安全?(10分)
  6、分别写出rom、ram、i/o、pid是什么,做什么用?
  rom是只读内存,是一种只能读出事先所存数据的固态半导体存储器。其特性是一旦储存资料就无法再将之改变或删除
  ram是随机存储器,存储单元的内容可按需随意取出或存入,且存取的速度与存储单元的位置无关的存储器。这种存储器在断电时将丢失其存储内容,故主要用于存储短时间使用的程序
  i/o (input/output):输入输出端口,服务器设备吞吐能力的评价标准之一
  pid就是各进程的身份标识,程序一运行系统就会自动分配给进程一个独一无二的pid。进程中止后pid被系统回收,可能会被继续分配给新运行的程序

  it运维工程师面试题(二)

  7、avctive directory 的物理结构包括( cd )。(选择二项)(10分)
  a.域
  b.组织单位
  c.站点
  d.域控制器
  8、100base-tx网络采用的物理拓扑结构为 ( ) (10分)
  a、总线型 b、星型
  c、环型 d、混合型
  key: b
  9、高层互连是指传输层及其以上各层协议不同的网络之间的互连。实现高层互连的设备是 ( )(10分)
  a、中继器 b、网桥 c、 路由器 d、网关 key: d
  10、在下列任务中,那些是网络操作系统的基本任务? ( )(10分)
  1.屏蔽本地资源与网络资源之间的差异
  2.为用户提供基本的网络服务功能
  3.管理网络系统的共享资源
  4.提供网络系统的安全服务
  a、1和2 b、1和3 c、1、2、3 d、全部 key: d
  11、热备份路由协议(hsrp)(附加题:手工写出简单配置过程,命令或者文字描述操作步骤)(20分)
  实验拓扑:
  实验目的:通过配置hsrp达到网络负载均衡和冗余的效果。
  结果测试:在down掉r2的s0/0前后,从pc发送的数据包走不同的路。
  实验步骤:1.配置r1,r2,r3,保证全网通。使用rip协议。
  2.配置交换机,将f0/2 f0/3 f0/4 f0/5 配上全双工
  3.模拟pc1,pc2.
  4.配置hsrp
  具体步骤:
  1. 路由的配置:以r1为例。
  r1(config)#int s0/0
  r1(config-if)#ip add 1.1.1.2 255.0.0.0
  r1(config-if)#ino shutdown
  r1(config-if)#iint s0/1
  r1(config-if)#iip add 2.2.2..2 255.0.0.0
  r1(config-if)#ino shutdown
  r1(config-if)#iint locp0
  r1(config-if)#iip add 3.3.3.1 255.0.0.0
  r1(config-if)#irouter rip
  r1(config-router)#network 1.0.0.0
  r1(config-router)#network 2.0.0.0
  r1(config-router)#network 3.0.0.0
  2.switch的配置情况
  sw(config)#int f0/2
  sw(config-if)duplex full (全双工)
  其他接口同上
  3.pc部分,以r4(pc1)为例。
  pc1(config)#no ip routing (去路由功能)
  pc1(config)#ip defult-gateway 192.168.1.1 (指网关, pc2指向1.254) pc1(config)#int e0/0
  pc1(config-if)#ip add 192.168.1.4 255.255.255.0
  pc1(config-if)#no shutsown
  pc1(config-if)#duplex full
  pc配置完毕。

  (全双工)

22222222222222222222222222222222222222222222222222222222222222222222222222222

一、有文件file1

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

awk ‘{if($0~/^$/)print NR}’ file
or
grep -n ^$ file |awk ‘BEGIN{FS=”:”}{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

-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

number of view: 516

Related posts:

3333333333333333333333333333333333333333333333333333333333333333333333333333333

1)Linux启动大致过程?
*BIOS自检
*运行系统内核并检测硬件从硬盘启动并运行系统的第一个进程init(LILO和GRUB模式)
*init读取系统引导配置文件/etc/inittab,并根据运行级别配置服务/etc/rc.d/rc.local
Linux系统缺省的运行级别
0为停机,机器关闭
1为单用户模式,就像Win下的安全模式
2为多用户模式,但是没有NFS支持
3为完全的多用户模式,是标准的运行级别
4保留
5图形界面的模式
6为重启,运行init6机器就会重启
2)apache有几种工作模式,分别简述两种工作模式及其优缺点?
apache主要有两种工作模式:prefork(apache的默认安装模式)和worker(可以在编译的时候添加--with-mpm=worker选项)
prefork的特点是:(预派生)
1.这种模式可以不必在请求到来时再产生新的进程,从而减小了系统开销
2.可以防止意外的内存泄漏
3.在服务器负载下降的时候会自动减少子进程数
worker的特点是:支持混合的多线程多进程的多路处理模块
如果对于一个高流量的HTTP服务器,worker MPM是一个比较好的选择,因为worker MPM占用的内存要比prefork要小。
3)LVS三种模式的工作过程?
NAT (Network Address Translation)模式。LB收到用户请求包后,LB将请求包中虚拟服务器的IP地址转换为某个选定RS的IP地址,转发给RS;RS将应答包发给 LB,LB将应答包中RS的IP转为虚拟服务器的IP地址,回送给用户。
IP隧道 (IP Tunneling)模式。LB收到用户请求包后,根据IP隧道协议封装该包,然后传给某个选定的RS;RS解出请求信息,直接将应答内容传给用户。此时要求RS和LB都要支持IP隧道协议。
DR(Direct Routing)模式。LB收到请求包后,将请求包中目标MAC地址转换为某个选定RS的MAC地址后将包转发出去,RS收到请求包后 ,可直接将应答内容传给用户。此时要求LB和所有RS都必须在一个物理段内,且LB与RS群共享一个虚拟IP。
4)oracle数据库备份的方法?
我同学是做DBA的,改天问问他,然后在告诉大家。
5)简述/etc/fstab里面个字段的含义?
因为mount挂载在重启服务器后会失效,所以需要将分区信息写到/etc/fstab文件中让它永久挂载:
磁盘分区                挂载目录       文件格式     
/dev/sdb1              /mnt/david       ext3          defaults 0 0
6)Apache设置虚拟目录的字段?
NameVirtualHost 192.168.1.2             //设置域名虚拟主机使用的IP地址
<VirtualHost 192.168.1.2:80>           //建立在地址上的虚拟主机区域
ServerName www.sfzhang.com            //虚拟主页说使用的域名
DocumentRoot /data/vhosts/sfzhang    //建立虚拟主机所使用的文档根目录
</VirtualHost>
7)列出linux常见打包工具并写相应解压缩参数(至少三种)?
包类型       压缩实例                          解压实例                 压缩比率
tar 包       tar -cvf icewarp.tar icewarp      tar -xvf icewarp.tar     只打包不压缩
tar.gz 包    tar -czvf icewarp.tar.gz icewarp  tar -zxvf icewarp.tar.gz 中高
tar.bz2 包   tar -cjvf icewarp.tar.bz2 icewarp tar -jxvf icewarp.tar.bz2 高

8)一个EXT3的文件分区,当用touch新建文件时报错,错误信息是磁盘已满,但是使用df -H查看分区信息时只使用了50%,请分析具体原因?
答:两种情况,一种是磁盘配额问题,另外一种就是EXT3文件系统的设计不适合很多小文件跟大文件的一种文件格式,出现很多小文件时,容易导致inode耗尽了。
9)请使用Linux系统命令统计出establish状态的连接数有多少?
netstat -an |grep 80 |grep ESTABLISHED |wc -l
10)mysql数据库的备份还原是怎么做的?
答:平时采用两种方法来做:1)利用mysql自带的使用工具mysqldump和mysql来备份还原数据库 2)利用第三方的mysql管理工具比如:mysqladmin 3)停止mysqld服务拷贝数据文件
11)简述运维工程师的职责?
负责公司运营平台的正常工作;加强平台的自动化管理;随便写写,写好听的就行.....
12)Linux系统是由那些部分组成?
Linux系统内核,shell,文件系统和应用程序四部分组成。
13)用一条命令查看目前系统已启动服务所监听的端口?
[root@nagios ~]# netstat -antl |grep "LISTEN"  
14)使用lsof命令查看占用80端口的进程?
[root@nagios ~]# lsof `which httpd`   或者lsof -i:80也可以
15)统计出一台web server上的各个状态(ESTABLISHED/SYN_SENT/SYN_RECV等)的个数?
[root@nagios ~]# netstat -antl |grep "ESTABLISHED" |wc -l
[root@nagios ~]# netstat -antl |grep "SYN_SENT" |wc -l
[root@nagios ~]# netstat -antl |grep "SYN_RECV" |wc -l
上面的命令可以用一条命令来统计出来TCP各种状态连接总数:
[root@nagios ~]# netstat -n |grep ^tcp |awk '{print $NF}' |sort -r |uniq -c  

[root@nagios ~]# netstat -n |awk '/^tcp/{++S[$NF]}END{for (i in S ) print i,S[i]}'   
16)查找/usr/local/apache/logs目录最后修改时间大于30天的文件,并删除?
find  /usr/local/apache/logs -type f -mtime +30 -exec rm -f {}  \;
17)添加一条到192.168.3.0/24的路由,网关为192.168.1.254?
route add  -net 192.168.3.0 netmask 255.255.255.0 gw 192.168.1.254
18)利用sed命令将test.txt中所有的回车替换成空格?
sed -i s/\r/ /g test.txt 
19)在每周6的凌晨3:15执行/home/shell/collect.pl,并将标准输出和标准错误输出到/dev/null设备,请写出crontab中的语句?
15 3 * * 6 /home/shell/collect.pl  > /dev/null  2>&1   
20)源码编译安装apache,要求为:安装目录为/usr/local/apache,需有压缩模块,rewrite,worker模式;并说明在apache的worker MPM中,为什么ServerLimit要放到配置段最前面?
./configure --prefix=/usr/local/apache --enable-so--with-rewrite --with-mpm-worker
不放在最前面,client会忽略掉的
21)请写出精确匹配IPv4规范的正则表达式?
grep "[0-9]\{3\}\.[0-9]\{3\}\.[0-9]\{3\}.[0-9]\{3\}"  access.logs
22)匹配文本中的key,并打印出该行及下面的5行?
grep -A5 key filename
23)dmesg命令中看到ip_conntrack: table full, dropping packet.,如何解决?
加大ip_conntrack_max 的值;
降低ip_conntrack_timeout的时间;
24)查询file1里面空行的所在行号?
grep -n "^$" file1
25)查询file1以abc结尾的行?
grep "abc$" file1
26)打印出file1文件第1到第三行?
sed -n '1,3p' file1 用head -3 file1也可以
27)如何将本地80端口的请求转发到8080端口,当前主机IP为192.168.2.1?
iptables -t nat -A PREROUTING -d LOCALIP -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.2.1:8080
iptables -t nat -A POSTROUTING -d 192.168.2.1 -p tcp -m tcp --dport 8080 -j SNAT --to-source LOCALIP:80
28)crontab  在11月份内,每天的早上6点到12点中,每隔2小时执行一次/usr/bin/httpd.sh 怎么实现 ?
* 6-12/2 * 11 *  bash /usr/bin/httpd.sh
29)编写个shell脚本将/usr/local/test 目录下大于100K的文件转移到/tmp目录?
find /usr/local/test -type f -size +100k -exec mv {} /tmp \;
30)有三台Linux主机,A,B和C,A上有私钥,B和C上都有公钥,如何做到用私钥从A登录到B后,可以直接不输密码即可再登录到C?并写出具体命令行。
大致思路在A上面ssh-keygen -t dsa 直接回车生成密钥,然后把公钥分别用ssh-copy-id拷贝到B和C上面。ssh-copy-id -i id_dsa.pub "-p端口号 root@B的ip地址",然后在A上面就可以用ssh -p端口号 root@IP不要密码直接登录服务器B和C。


原创粉丝点击