当前位置:文档之家› linux运维面试题中级

linux运维面试题中级

linux面试题1.解释top命令和vmstat命令top 动态 vmstat静态2.请写出iptables语句iptables [-t 表名] -命令 -匹配 -j 动作/目标1)本地80端口的请求转发到8080端口,当前主机IP为192.168.2.1iptables -t nat -A PREROUTING -d 192.168.2.1 -p tcp -dport 80 -j DNAT -to 192.168.2.1:80802)允许本机对外连接80端口(本机能连外界服务器为80)iptables -A OUTPUT -p tcp –dport 80 -j ACCEPT3)开放本机的3306端口iptables -A INPUT -p tcp --dport 3306 -j ACCEPT4)禁止外界ping本服务器iptables -A INPUT -p icmp -j DROP5)防止SYN攻击(轻量级预防)iptables -A FORWARD -p tcp --syn -m limit --limit 1/s -j ACCEPTiptables -A FORWARD -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/s -j ACCEPT3.mysql高可用方案有哪些?mysql备份方案有哪些?有什么优缺点?4.写出apache 2.x的两种工作模式,以及各自的工作原理。

如何查看apache当前支持的模块。

并查看在哪种模式下工作。

prefork和worker#apachectl -l5.linux基础问题1)linux怎么查看用户登陆日志who/var/log/wtmpcat /var/log/secure2)linux中utmp,wtmp,lastlog,messages各文件的作用有关当前登录用户的信息记录在文件utmp中;======who命令登录进入和退出纪录在文件wtmp中;========w命令最后一次登录文件可以用lastlog命令察看;messages======从syslog中记录信息3)列举你熟悉的服务器性能查看命令查看磁盘 df -h查看内存大小 free vmstat查看cpu cat /proc/cpuinfo只看cpu数量grep "model name" /proc/cpuinfo | wc -l查看系统内存 cat /proc/meminfo查看每个进程的情况 cat /proc/5346/status 5347是pid查看负载 w查看系统整体状态 top4)linux服务器间怎么实现无密码登陆。

列举操作步骤有机器A[192.168.1.1],B[192.168.1.2]。

现想A通过ssh免密码登录到B第一步,在A机下生成公钥/私钥对ssh-keygen直接三次回车,它将在~/下生成.ssh目录,.ssh下有id_rsa和id_rsa.pub第二步,把A机下的id_rsa.pub复制到B机下完成后还需要将id_rsa.pub内容追加到B机的.ssh/authorized_keys文件里scp ~/.ssh/id_rsa.pub root@192.168.1.2:~/id_rsa.pub第三步、B机把从A机复制的id_rsa.pub添加到.ssh/authorzied_keys文件里cat id_rsa.pub >> .ssh/authorized_keyschmod 600 .ssh/authorized_keysauthorized_keys的权限必须是600。

第四步、验证A机无密码登录B机。

ssh root@192.168.1.26.软件类问题1)keepalived和heartbeat的优缺点,适用哪些场合Keepalived使用的vrrp协议方式,虚拟路由冗余协议 (Virtual Router Redundancy Protocol,简称VRRP);Heartbeat是基于主机或网络的服务的高可用方式;keepalived的目的是模拟路由器的双机heartbeat的目的是用户service的双机lvs的高可用建议用keepavlived业务的高可用用heartbeat2)LVS haproxy nginx各优缺点,适用哪些场合3)apache nginx lighttpd 各优缺点,使用哪些场合4)squid vamish各优缺点,适用哪些场合5)memcache dredis各优缺点,适用哪些场合6)介绍下LVS负载模式和调度算法,nginx负载均衡模式有哪几种算法VS/NAT VS/TUN VS/DR轮叫调度,加权轮叫,最少连接,加权最少连接,基于局部性的最少连接,带复制的基于局部性最少连接,目标地址散列,源地址散列nginx算法:加权轮询(weighted round robin)ip hashfair通用hash、一致性hash7.设计一个PV为2千万的网站架构8.网络知识部分1)简述OSI参考模型的七个层次2)简述tcp协议的三次握手过程TCP(Transmission Control Protocol) 传输控制协议TCP是主机对主机层的传输控制协议,提供可靠的连接服务,采用三次握手确认建立一个连接:位码即tcp标志位,有6种标示:SYN(synchronous建立联机) ACK(acknowledgement 确认) PSH(push传送)FIN(finish结束) RST(reset重置) URG(urgent紧急)Sequence number(顺序号码) Acknowledge number(确认号码)第一次握手:主机A发送位码为syn=1,随机产生seq number=1234567的数据包到服务器,主机B由SYN=1知道,A 要求建立联机;第二次握手:主机B收到请求后要确认联机信息,向A发送ack number=(主机A的seq+1),syn=1,ack=1,随机产生seq=7654321的包第三次握手:主机A收到后检查ack number是否正确,即第一次发送的seq number+1,以及位码ack是否为1,若正确,主机A会再发送ack number=(主机B的seq+1),ack=1,主机B收到后确认seq值与ack=1则连接建立成功。

完成三次握手,主机A与主机B开始传送数据。

3)一个主机IP 202.110.14.137,掩码 255.255.255.224,要求计算这个主机所在网络的网络地址和广播地址/question/112562843.html网络地址:202.112.14.128广播地址:202.112.14.1599.信息安全部分1)IDC机房里发生ARP攻击,在服务器上抓包,通过分析数据包内容会看到什么现象?如何防止此类攻击1.不断弹出“本机的XXX段硬件地址与网络中的XXX段地址冲突”的对话框。

2.计算机不能正常上网,出现网络中断的症状。

·在客户端使用arp命令绑定网关的真实MAC地址命令·在交换机上做端口与MAC地址的静态绑定。

·在路由器上做IP地址与MAC地址的静态绑定·使用“ARP SERVER”按一定的时间间隔广播网段内所有主机的正确IP-MAC映射表。

2)IDC机房里一台服务器上运行游戏服务,现在连接不上,从安全角度分析原因3)如何保证充值,计费数据库的安全10.脚本部分1)从a.log文件中提取包含“warning”或者“fatal”,同时不包含“IGNOR”的行,然后提取“:”分割的第五个字段egrep 'WARNING|FATAL' a.log | egrep -v 'IGNOR' | awk -F ":" '{print $5}'2)添加新组为class01,然后添加输入这个组的30个用户,用户名的形式为std01到std30#!/bin/bashgroupadd class01for ((i=1;i<=30;i++))doif [$i -lt 10];thenusername="$std0"$ielseusername="$std"$ifiuseradd -G class01 $usernamedone3)在每个月的第一天备份并压缩/etc目录下的所有内容,存放在/root/backup目录下,文件名为yymmdd_etc,shell程序filebach存放在/usr/bin目录下#!/bin/bashfilename=`date +%y%m%d`_etc.tar.gz ###``符号cd /etctar -zcvf $filename *mv $filename /root/backup/#echo * * 1 * * root ./fileback.sh & >>/etc/crontab11.用shell编程,判断文件是不是字符设备文件,如果是,将其拷贝到/dev目录下#!/bin/bash#1.sh#判断一文件是不是字符或块设备文件,如果是将其拷贝到 /dev 目录下#file executable: chmod 755 1.shPATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/binexport PATHecho -e "The program will Judge a file is or not a character device file.\n\n"read -p "Input a filename : " filenameif [ -c "$filename" ]thenecho "$filename is a device file" && cp $filename /dev/ &elseecho "$filename is not a device file" && exit 1fi12.请用shell查询文件file1里面空格开始的所在行号grep -n "^ " file1 | awk -F ":" '{print $1}'13.用正则表达式匹配邮件地址和网站14.awk sed 问题1)在每一行后面增加一空行sed G2)在匹配式样“regex”的行之后插入一空行sed '/regex/G'3)计算行数(模拟“wc-1”)wc-14)在每一行开头处插入5个空格(使全文向右移动5个空格)sed 's/^/ /'5)将“foo”替换成“bar”,并只在航中未出现字串“baz”的情况下替换sed '/baz/!s/foo/bar/g'6)将每两行连接成一行(类似“paste”)sed '$!N;s/\n/ /'7)显示包含“AAA”“BBB”“CCC”的行(固定次序)sed '/AAA.*BBB.*CCC/!d'8)为数字字串增加都好分隔符号,将“1234567”改为“1,234,567”gsed ':a;s/\B[0-9]\{3\}\>/,&/;ta' # GNU sedsed -e :a -e 's/\(.*[0-9]\)\([0-9]\{3\}\)/\1,\2/;ta' # 其他sed9)值保留重复行中的第一行,其他行删除sed '$!N; /^\(.*\)\n\1$/!P; D'10)删除8的倍数行gsed '0~8d' # 只对GNU sed有效sed 'n;n;n;n;n;n;n;d;' # 其他sed15.linux如何在shell环境得知远程计算机的运行时间16.sed将文件test中第50行中的“haiwao”改为“haiwai”sed -ie '50s/haiwao/haiwai/g' test17.如何查看当前linux系统状态,如cpu,内存,负载,版本18.编写shell,解决以下两个问题1)将当前目录中大于50k的文件移动到/tmp目录下2)假设eth1的IP为192.168.10.20/255.255.255.0得到eth1的网络地址19.有文件file11)查询file1里面空行所在的行号2)打印file1的第2~5行3)查询file1以hai结尾的行20.在11月份内,每天早晨6点到12点中,每隔2小时执行一次/usr/bin/httpd.sh怎么实现21.如何将本地80端口的请求转发到8080端口,当前主机IP为192.168.2.122.dmesg命令中看到ip_conntrack:table full,dropping packet,如何解决23.在每周6凌晨3:15执行/home/shell/collect.pl,并将标准输出和标准错误输出到/dev/null设备,请写出crontab中的语句24.用一条命令查看目前系统已启动服务所监听的端口25.请适用linux系统命令统计出establish状态的连接数有多少26.一个EXT3的文件分区,当用touch新建文件时报错,错误信息是磁盘已满,但适用df-H查看分区信息时只使用了50%,请分析具体原因27.列出常见打包工具并写出相应解压缩参数28.解释Nginx,RIP,MEMCACHE,SYSTEMV,NC,MTR,NGINXMONGO,EC2,VPS29.简述RAIDO,1,5,0+1的含义。

相关主题