心累,大脑也有点累了,路还长,继续学习啊,等机会来了要有能力把握!

                            Linux面试(四)

101 linux系统调优 

答:(1)硬件:大内存、固态硬盘或者RAID阵列、CPU核数、服务器产商

(2)某个服务的编译安装,启用或禁用的一些选项

(3)服务的配置文件,参数的设置恰到何处

(4)一些工具,比如memcached、keepalived以及一些负载均衡手段

(5)系统的内核参数调优

(6)禁用开机不必要的服务

 

102 “apache tomcat mysql 他们的 瓶颈 是什么 ” (这题估计要问)

答:apache:(1)网络带宽,随着并发量的增大,能分配的有效带宽减小,造成丢包(2)内存不够用,(3)CPU,涉及到进程管理

tomact:猜测是CPU

mysql:(1)磁盘IO率,因为要频繁存取磁盘中的数据(2)效率低下的mysql代码


103 apache tomcat mysql 调优方法 (又复习了一遍,还是忘了) 

答:apache:(1)在httpd.conf 设置HostnameLookups off

(2)修改 httpd.conf 中的 SendBufferSize 为最大的页面文件的大小。加大内核的 TCP/IP 写缓冲大小。

(3)动态页面转静态页面

(4)使用CDN内容分发网络,提高站点访问效率

(5)扩充硬件,使用nginx+apache的负载均衡方式

tomcat:不知。。

mysql:禁用效率低下的sql语句、使用索引优化、使用memcached减少数据库的压力、通过nosql缓存、修改配置文件my.cnf参数如缓存大小、超时时间、并发连接数


104 iptables 禁止所有网络流量,只开放对外的 iptables 只允许 内部 ssh 105 

答: iptables -t filter -I INPUT -p tcp --dport 22 -j ACCEPT;iptables -t filter -P INPUT -j DROP ; 


105  “/ /boot /proc  叙述一下他们 ” 

答:/ :根目录,所有目录的父目录,安装操作系统时必须有根分区

/boot :是启动分区,存放操作系统比如vmlinuz和grub启动配置文件信息

/proc :proc目录是一个伪文件系统,它只存在内存当中,而不占用外存空间;存放系统信息,如内存、CPU,以及一些内核参数


106 “给你一个 rpm包 让你用什么命令 查询 你是否 安装rpm 怎么删除 rpm ”  

答:rpm -qa |grep ,rpm -e 删除,rpm -ivh 安装

107 “gz.zip 源码安装包 给你指定路径 怎么安装 源码包 怎么删除源码包 ”

答:unzip -d 路径名 gz.zip      #如果是tar.gz用tar -zxvf -C 路径名,如果只是.gz用gunzip -c 路径名    

./configure&&make &&make install,删除源码包:进入安装该软件的源代码目录,make uninstall或者说找到/usr/local下,用rm -rf 删除


108 更改用户ftpuser的密码,给予该用户系统的读权限 

答:passwd ftpuser,chmod a+r ftpuser


109 iptable的作用 

答:作为把手linux安全大门的第一关,进行规则的设置从而实现访问控制。


110 你最精通的命令,哪个适合做运维工作?  

答:iptales命令,写出高质量的shell脚本能够做好自动化运维工作


111 你认为干好游戏运维工程师平时需要做什么?

答:熟知游戏架构,监控服务的存活状态,配合开发人员上线服务


112 linux查看已登录用户信息 

答:w或者who


113 linux网络配置文件是什么 

答:/etc/sysconfig/network-scripts/ifcfg-eth0


114 linux查看磁盘分区 

答:fdisk -l 和df -h结合使用,后者dumpe2fs /dev/sda1


115 apache配置文件位置 

答:rpm包安装:/etc/httpd/conf/httpd.conf  源码包安装:/usr/local/apache2/conf/httpd.conf


116 linux查看连接IP的命令 

答:ifconfig


117 查看文件夹内容的命令 

答:ls

 

118 查看文件内容光标可以上下翻页的命令 

答:less


119 443端口是什么服务 

答:https,安全的http传输


120 脚本问题;按时间排序?30天以上的文件删除? 

答:首先用ll查看关于时间的字段处于第几个字段,然后ll |sort -k 【数字】  30天文件删除:find / -mtime +30 -a -type f -exec rm -rf {} \;


121 raid原理? 

答:RAID称为独立磁盘冗余阵列,将多个物理磁盘抽象整合逻辑磁盘组。但是每个raid级别原理都不同,比较常见的raid 0/raid 1/raid 5,

raid 0:将数据全部分散在各个磁盘中,最少需要2个磁盘,没有冗余性,利用率为100%

raid 1: 镜像功能,最少需要2块磁盘,两个磁盘具有相同的数据,良好的容错能力,读性能优异,但是成本太高,利用率只有50%

raid 5:具有奇偶校验的功能,最少需要3块磁盘,其中2块磁盘存放数据,1块磁盘存放校验码,当其中一块磁盘的数据丢失

  能使用校验码进行反推出来原有磁盘内容,所以具有良好的容错性能,利用率为2/3。

  

122 lvs如何查看运行情况 

答:Vip的存活检查。一般情况下,启用了lvs环境后,是可以用ping的方式检查vip的。nagios等监控软件也能反映出


123 用的什么连接工具? 

答:SecureCRT/xshell,还有Putty


124 apache的虚拟化? (面试官可能会问虚拟主机咋个配,一时很难回答,必须熟记)

答:vi /etc/httpd/conf.d/vhost.conf,基于域名的虚拟主机

 NameVirtualHost *:80

 

ServerName www.test1.com

DocumentRoot /www/test1/

Options Indexes FollowSymLinks

AllowOverride None

Order allow,deny

Allow from all

   

  

125 apache的配置文件在哪  

答:说过了


126 不让root用户登录?配置文件 

答:(1)vi /etc/ssh/sshd_config 里面有一个配置选项 PermitRootLogin no

(2)usermmod -L root

(3)vi /etc/passwd ,把登录shell改为/sbin/nologin


127 myisam和innodb的区别  

答:都是数据存储引擎(1)myisam不支持事务,innodb支持事务

(2)前者支持表锁,后者支持行锁

(3)inoodb支持外键,myisam不支持外键

(4)myisam支持全文索引,innodb不支持全文索引

(5)缓存问题、存储成本、备份方式不同

(6)myisam查询效率高,而Innodb更新效率高


128 日志删除后会出现什么情况 

答:(1)如果是说移走文件,那么在不进行服务重启或重置的情况下,那么还会在那个文件上记录日志,不管它移动到哪

(2)如果是rm -rf 了日志文件,在不进行服务重启或重置的情况下,那么不会产生的新的日志文件,也就是说没有日志了

另外,可以使用kill -USR1 【nginx的PID】


129 lvs用在哪个地方 

答:负载均衡,在所有服务的最前端,负责请求的调度


130 软连接和硬连接的区别 

答:软连接:也称为符号链接,它可以对文件以及目录进行链接,相当于快捷方式,因为有些命令行过长,所以使用链接方便敲命令,源目文件它的I节点号是不同的。文件类型是l,命令:ln -s 原文件  链接文件

硬链接:只能对文件进行链接,相当于拷贝,源目文件的I节点号相同。文件类型是- 命令:ln 源文件  链接文件


131 i节点和block都存放什么内容 

答:i节点是一种多级索引的数据结构,它的基本思想是给文件赋予存放一张具有文件属性(例如创建时间、修改时间、文件大小、存取权限)的小表,指向了磁盘块的地址,当用户访问文件时,内核首先查找文件目录项的文件名,通过文件名找到对应的I节点,从而找到文件所在物理位置,实现从逻辑结构到物理结构的转换,最后把内容呈现给用户。

block:存放的是真实数据。又分为超级块、引导块、数据块


132 postfix你们都做过什么 

答:电子邮件服务器:接收邮件、进入incoming队列、转发邮件。


133 你们的iptables一般都用的什么策略来保证服务器的安全?

答:根据实际情况设置访问控制


134 当你接手一台服务器的时候,你会怎么做? 

答:查看硬件信息,cat /proc/cpuinfo,free -m,vmstat ,demesg |grep cpu,cat redhat-release,file /bin/ls


135 你们的虚拟主机服务器里边一般能架多少个网站,带宽大概有多大 

答:测试带宽:iftop、netperf、用wget下载一个东西,但是不够准确


136 你除了看ps和文档之外,还要做哪些事情?

答:写脚本


137 你们公司几个运维,都主要做哪一块? 

答:略


138 用nagios和cacti监控什么呀 

答:Cacti主要用来监控流量,Nagios用来监控主机的存活状态、系统负载、磁盘IO量、网络流量、LVS的VIP、MySQL主从复制状态、swap进出量、CPU使用率、僵死进程的监控。


139 平时工作中常用什么命令 

答:top


140 raid0 raid1 raid5 原理与区别 

答:说烂了


141 apache与nginx的调优 

答:得好好研究


142 mysql调优 

答:(1)SQL代码

(2)固态硬盘或RAID阵列

(3)/etc/my.cnf


143 写出文件file1的空白行或者去掉空白行

答:grep "^$" file1 ,grep -v "^$" file1


144 找出端口用命令

答:netstat tlpnu 


145 如何把80的连接请求转为8080,如何把192.168.18.1的80端口映射到192.168.18.2的80端口 

答:iptables -t nat -A PREROUTING -p tcp --dport -j REDIRECT --to-port 8080

iptables -t nat -A PREROUTING -p tcp -d 192.168.18.1 --dport 80 -j REDIRECT --to-destination 192.168.18.2 


146 有一些文件,如何把文件的扩展名.txt改为.html 

答: rename 原字符串 新字符串 文件名

rename .txt .html *.txt


147 有一个apache日志文档,如何找出哪个路径访问次数最多,如何找出哪个IP访问最多?

答:awk -F ":" '{print $1}' access.log|sort |uniq -c |sort -nr |head -10


148 日志是怎么分析的,自己编过脚本分析么

答:用日志工具,或者


149 你亲自搭过哪些服务,并且实现了上线

答:略

 

150 lvs用的是什么服务器 

答:F5 BIG-IP


151 apache都进行了什么优化  

答:千兆带宽、内存升级、配置参数


152 你们的架构是什么样的?用了多少台服务器 

答:略


153 你们的网站可以承载多少并发 

答:用Awstats测并发


154 查询file1里面空行的所在行号

答:grep -n "^$" file1


155 查询file1以abc结尾的行  

答:grep -n "abc$" file1


156 打印出file1文件第一到第三行  

答:head -3 file1或者sed '1,3p' file1


157 查看linux系统当前单个共享内存段的最大值

答:cat /proc/sys/kernel/shmmax ##单位为字节


158 通过IP地址查看服务器端口  

答:nmap -p80  92.168.0.1 ##端口扫描工具


159 crontab中用什么命令定义某个程序执行的优先级别 

答:没有命令吧,根据程序的顺序执行


160 查看history具体时间

答:声明环境变量:修改/etc/profile,或者修改~/.bash_profile,添加export HISTTIMEFORMAT="%F %T `whoami` "  

 

161 查看linux邮件队列 

答:mailq 回车


162 linux加载的库文件  

答:比方说libc.so, libz.so, libpthread.so等等,这些系统库会被放在/lib和/usr/lib目录下面


163 ext3文件系统如何让恢复rm命令删除的文件 

答:debugfs   参考文档: http://wenku.baidu.com/link?url=vSK1xx0_XlGohu50pPv8La0X3_AAqySUELR1elBYV8d2crx2sa_T15zh8rmTbhmlSuEJWlGQHElnjP08hHQJY5mRXeRhYUveWAhBTG4sho7


164 查看硬件的版本信息,如网卡。 

答:dmesg |grep cpu ,dmesg |grep eth0或者dmesg |grep network 


165 DNS的3种类型  

答:主、辅助、缓存


166 写出用tcpdump 监控80端口并且主机IP 192.168.2.1的命令 

答:tcpdump tcp port 80 and host 192.168.2.1


167 apache目录访问身份验证的实施步骤(用htpasswd设置) 

答:vi /etc/httpd/conf/httpd.conf 

AllowOverride AuthConfig  //基于用户名密码访问网站

AuthType Basic

AuthName “Restricted Site"

AuthUserFile "/etc/httpd/conf/htpasswd"

Require valid-user  ##需要有效用户认证

#建立一个htpasswd文件,直接命令htpasswd -c -m /etc/httpd/conf/htpasswd hadoop


168 在11月,每天6时至12时,2个小时备份一次文件 

答:crontab -e ; 0 6-12/2 * 11 * /bin/cp file1 /backup/ 


169 移动/usr/local/tmp(具体是那个目录没记住)下大于100K的文件到/tmp下。 

答:find /usr/local/tmp -size +100k -a -type f -exec mv {} /tmp \;


170 raid O,1,5,10原理 

答:略,说了很多了


171 如何产生swap文件文件?

答:dd if=/dev/zero of=/tmp/test bs=1000k count=100,mkswap /tmp/test ;swapon /tmp/test

开机启用swap分区,vi /etc/fstab ; /tmp/test swap swap defaults 0 0 

##关于/etc/fstab的文档  http://www.cnblogs.com/qiyebao/p/4484047.html      显示当前的磁盘状态dumpe2fs /dev/sda*


172 查看占用了8080端口进程。  

答:lsof -i :8080

173 你使用过的监控软件?说说其特点 

答:(1)cacti监控流量,三个关键次:rrd-tool负责存储和更新数据,snmp负责提取数据,轮询是他的监控方式

优点:web界面,图形化展示,直观

缺点:报警不及时

(2)Nagios:主要用来监控服务,包括CPU的使用率,主机的存活状态、磁盘IO量,系统负载,网络拥塞情况,swap量,LVS的VIP、mysql主从复制状态

优点:报警迅速,支持邮件和短信报警

缺点:好像没

(3)zabbix是cacti和nagios的结合体,基于C/S模式的分布式的监控工具,基于B/S模式的web端展示和配置。

优点:开源、主要用来监控设备和系统软件,如linux、windows、freebsd、路由交换等网络设备,网络以及应用程序、数据库

缺点:网络带宽占用比例高,启用了非常多的进程。


174 对现在运维工程师的理解以及对其工作的认识

答:这玩意也是要考啊,素质题,说的越多越好=,参考我第二篇文章 


175 写出10个linux常用命令 

答:太多了


176 进程和线程区别 (重中之重啊!送分题)  

答:(1)相对于进程来说,线程是一个更切近执行体的概念

(2)进程是CPU分配的基本单位,线程是CPU调度的基本单位

(3)进程之间独占资源,而一个进程可以有多个线程,线程之间共享资源,如内存地址空间、进程代码段等

(4)正因为线程之间共享地址空间,所以线程通讯快,线程切换速度快,线程之间的同步和死锁情况得到缓解

(5)创建和撤销线程所需开销远远比进程小

(6)多线程技术适合在对称多处理机上运行,而多进程没有这个优点


177 完成批量tar.gz,写出shell脚本 

答:#!/bin/bash

for file in `ls ./`

do

tar -zxvf $file.tar.gz $file &>/dev/null

done


178 1到10数字相加,写出shell脚本  

答:#!/bin/bash

for i in `seq 1 10 `     ##seq -s + 1 10 |bc 统计直接1+2+..10=55

do 

sum=$(($sum+$i))

let i=i+1

done 

echo "1到10的和为:$sum"


179 利用2台 F5 ,8台服务器,设计一个架构,要求避免单点故障,写出各服务器功能和所使用的软件名称,并对每台服务器硬件选型  

答:略


180 一组lamp 架构某天突然发现负载很高写明检查故障的思路 

答:top命令,看哪个程序的CPU和内存利用率都很高,用iostat查看磁盘IO率的大小,可能是因为最近PV量太大,系统撑不住了,改下参数试试。也可以根据PID找到执行改程序的绝对路径。


181 原来公司用过的linux发行版本,自己还用过或知道那些 

答:乌班图


182 dns原理 

答:原理很简单,配置很复杂


183 cdn了解么 

答:略


184 问了apache如何隐藏版本 

答:隐藏版本?httpd -V 


185 用一种语言写出1-100的质数 

答:质数就是素数,肯定要用for循环,如果这个数能够被除1和自身的以外的整数,那么直接continue,否则echo 这是质数


186 如果apache正在运行中 ,删除access.log文件 会 有什么结果 

答:删除日志的话,而不去重启重置或者说发信号量kill -s USR1 的话,那么日志记录将不会存在,也不会产生新的日志文件;值得一题的是,如果只是把文件

移动到某个地方,而不去删除或者说改名,那么该日志还能记录相应的信息。


187 linux如何查看负载情况 内存 cpu 使用 硬盘 等 

答:负载:uptime 或者top  内存:free -m  CPU:cat /proc/cpuinfo,dmesg |grep cpu ,top   硬盘:df -h ,fisk -l


188 linux优化都怎么去做,哪些参数? 

答;略


189 一台裸机从安装到加固的过程(Linux系统),注意的重点用apache或Nginx,加上squid搭建图片服务器,并考虑图片服务器的扩展以及处理并发的问题

答:略  ##squid能搭建图片服务器是亮点。     


190 平时用shell脚本都干些什么工作 

答:(1)expect 登录到其他主机执行命令,一个小自动化工具

(2)nginx日志切割

(3)nagios监控服务

(4)LAMP一键安装

(5)批量、备份玩意


191 Nagios是自己搭建的么 

答:参照文档,一步一步实验


192 进程的查看与调度  

答:ps -aux 或者ps -ef 


193 常见shell有哪些?缺省的是哪个?

答:/bin/bash ,sh ,csh,ksh


194 Linux系统时间如何修改? 

答:(1)date -s 05/10/2009或者date -s 10:01:02

(2)使用ntpdate pool.ntp.org让他自动同步标准时间


195   Top具体显示哪些信息?  

答:当前时间,系统启动了多少时间,平均负载(1分钟 5分钟15分钟),进程的数量(停止、运行、僵死、睡眠),swap交换分区情况,内存使用比率,

CPU使用比例,虚拟内存集、物理内存集、用户使用比例、system使用比例、CPU等待磁盘IO的比例。


196 将server目录打包为server.tgz 并且排除log目录,如何实现? 

答: tar -zcvf server.gz /server --exclude=/server/log 

##tar zxvf test.tgz -C 指定目录  


197 在error.log中提取cyou,保持到/tmp/cyou.log,如何实现? 

答:grep "cyou" error.log >>/tmp/cyou.log


198   修改iptables配置文件后,如何使之生效? 

答:service iptables save,service iptables reload


199 如何查看iptables的NAT设置?  

答:iptable -t nat -L -n


200   Windows与linux之间的文本转换? 

答:由于在window文本中添加^M字段,需要用dos2unix windows.txt >linux.txt或者cat windows.txt |tr -d "\r" > linux.txt