1)Linux启动大致过程?*BIOS自检*运行系统内核并检测硬件从硬盘启动并运行系统的第一个进程init(LILO和GRUB模式)*init读取系统引导配置文件/etc/inittab,并根据运行级别配置服务/etc/rc.d/rc.localLinux系统缺省的运行级别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服务器,workerMPM是一个比较好的选择,因为workerMPM占用的内存要比prefork要小。3)LVS三种模式的工作过程?NAT(NetworkAddressTranslation)模式。LB收到用户请求包后,LB将请求包中虚拟服务器的IP地址转换为某个选定RS的IP地址,转发给RS;RS将应答包发给LB,LB将应答包中RS的IP转为虚拟服务器的IP地址,回送给用户。IP隧道(IPTunneling)模式。LB收到用户请求包后,根据IP隧道协议封装该包,然后传给某个选定的RS;RS解出请求信息,直接将应答内容传给用户。此时要求RS和LB都要支持IP隧道协议。DR(DirectRouting)模式。LB收到请求包后,将请求包中目标MAC地址转换为某个选定RS的MAC地址后将包转发出去,RS收到请求包后,可直接将应答内容传给用户。此时要求LB和所有RS都必须在一个物理段内,且LB与RS群共享一个虚拟IP。4)oracle数据库备份的方法?我同学是做DBA的,改天问问他,然后在告诉大家。5)简述/etc/fstab里面个字段的含义?因为mount挂载在重启服务器后会失效,所以需要将分区信息写到/etc/fstab文件中让它永久挂载:磁盘分区挂载目录文件格式/dev/sdb1/mnt/davidext3defaults006)Apache设置虚拟目录的字段?NameVirtualHost192.168.1.2//设置域名虚拟主机使用的IP地址VirtualHost192.168.1.2:80//建立在地址上的虚拟主机区域ServerName虚拟主页说使用的域名DocumentRoot/data/vhosts/sfzhang//建立虚拟主机所使用的文档根目录/VirtualHost7)列出linux常见打包工具并写相应解压缩参数(至少三种)?包类型压缩实例解压实例压缩比率tar包tar-cvficewarp.taricewarptar-xvficewarp.tar只打包不压缩tar.gz包tar-czvficewarp.tar.gzicewarptar-zxvficewarp.tar.gz中高tar.bz2包tar-cjvficewarp.tar.bz2icewarptar-jxvficewarp.tar.bz2高8)一个EXT3的文件分区,当用touch新建文件时报错,错误信息是磁盘已满,但是使用df-H查看分区信息时只使用了50%,请分析具体原因?答:两种情况,一种是磁盘配额问题,另外一种就是EXT3文件系统的设计不适合很多小文件跟大文件的一种文件格式,出现很多小文件时,容易导致inode耗尽了。9)请使用Linux系统命令统计出establish状态的连接数有多少?netstat-an|grep80|grepESTABLISHED|wc-l10)mysql数据库的备份还原是怎么做的?答:平时采用两种方法来做:1)利用mysql自带的使用工具mysqldump和mysql来备份还原数据库2)利用第三方的mysql管理工具比如:mysqladmin3)停止mysqld服务拷贝数据文件11)简述运维工程师的职责?负责公司运营平台的正常工作;加强平台的自动化管理;随便写写,写好听的就行.....12)Linux系统是由那些部分组成?Linux系统内核,shell,文件系统和应用程序四部分组成。13)用一条命令查看目前系统已启动服务所监听的端口?[root@nagios~]#netstat-antl|grepLISTEN14)使用lsof命令查看占用80端口的进程?[root@nagios~]#lsof`whichhttpd`或者lsof-i:80也可以15)统计出一台webserver上的各个状态(ESTABLISHED/SYN_SENT/SYN_RECV等)的个数?[root@nagios~]#netstat-antl|grepESTABLISHED|wc-l[root@nagios~]#netstat-antl|grepSYN_SENT|wc-l[root@nagios~]#netstat-antl|grepSYN_RECV|wc-l上面的命令可以用一条命令来统计出来TCP各种状态连接总数:[root@nagios~]#netstat-n|grep^tcp|awk'{print$NF}'|sort-r|uniq-c16)查找/usr/local/apache/logs目录最后修改时间大于30天的文件,并删除?find/usr/local/apache/logs-typef-mtime+30-execrm-f{}\;17)添加一条到192.168.3.0/24的路由,网关为192.168.1.254?routeadd-net192.168.3.0netmask255.255.255.0gw192.168.1.25418)利用sed命令将test.txt中所有的回车替换成空格?sed-is/\r//gtest.txt19)在每周6的凌晨3:15执行/home/shell/collect.pl,并将标准输出和标准错误输出到/dev/null设备,请写出crontab中的语句?153**6/home/shell/collect.pl/dev/null2&120)源码编译安装apache,要求为:安装目录为/usr/local/apache,需有压缩模块,rewrite,worker模式;并说明在apache的workerMPM中,为什么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.logs22)匹配文本中的key,并打印出该行及下面的5行?grep-A5keyfilename23)dmesg命令中看到ip_conntrack:tablefull,droppingpacket.,如何解决?加大ip_conntrack_max的值;降低ip_conntrack_timeout的时间;24)查询file1里面空行的所在行号?grep-n^$file125)查询file1以abc结尾的行?grepabc$file126)打印出file1文件第1到第三行?sed-n'1,3p'file1用head-3file1也可以27)如何将本地80端口的请求转发到8080端口,当前主机IP为192.168.2.1?iptables-tnat-APREROUTING-dLOCALIP-ptcp-mtcp--dport80-jDNAT--to-destination192.168.2.1:8080iptables-tnat-APOSTROUTING-d192.168.2.1-ptcp-mtcp--dport8080-jSNAT--to-sourceLOCALIP:8028)crontab在11月份内,每天的早上6点到12点中,每隔2小时执行一次/usr/bin/httpd.sh怎么实现?*6-12/2*11*bash/usr/bin/httpd.sh29)编写个shell脚本将/usr/local/test目录下大于100K的文件转移到/tmp目录?find/usr/local/test-typef-size+100Kexecmv{}/tmp\;30)有三台Linux主机,A,B和C,A上有私钥,B和C上都有公钥,如何做到用私钥从A登录到B后,可以直接不输密码即可再登录到C?并写出具体命令行。大致思路在A上面ssh-keygen-tdsa直接回车生成密钥,然后把公钥分别用ssh-copy-id拷贝到B和C上面。ssh-copy-id-iid_dsa.pub-p端口号root@B的ip地址,然后在A上面就可以用ssh-p端口号root@IP不要密码直接登录服务器B和C。