心累,大脑也有点累了,路还长,继续学习啊,等机会来了要有能力把握!
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