没有合适的资源?快使用搜索试试~ 我知道了~
Linux运维面试题.docx
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 109 浏览量
2022-10-30
23:23:37
上传
评论
收藏 148KB DOCX 举报
温馨提示
试读
18页
!
资源推荐
资源详情
资源评论
linux 运维工程师面试题总结
一、有文件 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
Iptables -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
挂载 windows 的共享目录?
mount.cifs //IP/SHARE linux 的目录 --verbose -o user=username <--这个用户是
windows 下的用户--verbose 这个参数可以不加,它是显示过程的
例如 mount.cifs //10.1.1.246/gongxiang /mnt --verbose -o user=gao
或者是 mount -t cifs
umount /mnt 或 umount.cifs /mnt -l <--取消挂载
图形界面:smb://IP
A B 网络是通的,最少列出五种传输文件的服务
nfs ,ftp,scp ,rsync,samba,http://
1.假设 Apache 产生的日志文件名为 access_log,在 apache 正在运行时,执行命令 mv
access_log access_log.bak,执行完后,请问新的 apache 的日志会打印到哪里,为什么?
新的日志会打印在 access_log.bak 中,因为 apache 启动时会找到 access_log 文件,
随时准备向文件中加入日志信息,
虽然此时文件被改名,但是由于服务正在运行,因为它的inode 节点的位置没有变,程序
打开的 fd 仍然会指向原来那个 inode,
不会因为文件名的改变而改变。apache 会继续向已改名的文件中追加日志,但是若重启
apache 服务,系统会检查 access_log
文件是否存在,若不存在则创建。
2.在 Shell 环境下,如何查看远程 Linux 系统运行了多少时间?
2、监控主机执行: ssh user@被监控主机 ip "uptime"
这样得到了被监控主机的 uptime
3.处理以下文件内容,将域名取出并进行计数排序,如处理:
http://www.baidu.com/index.html
http://www.baidu.com/1.html
http://post.baidu.com/index.html
http://mp3.baidu.com/index.html
http://www.baidu.com/3.html
http://post.baidu.com/2.html
得到如下结果:
域名的出现的次数 域名
3 www.baidu.com
2 post.baidu.com
1 mp3.baidu.com
可以使用 bash/perl/php/c 任意一种
3、[root@localhost shell]# cat file | sed -e ' s/http:\/\///' -e ' s/\/.*//' | sort |
uniq -c | sort -rn
3 www.baidu.com
2 post.baidu.com
1 mp3.baidu.com
[root@codfei4 shell]# awk -F/ '{print $3}' file |sort -r|uniq -c|awk '{print
$1"\t",$2}'
3 www.baidu.com
2 post.baidu.com
1 mp3.baidu.com
4.如果得到随机的字串,长度和字串中出现的字符表可定义,并将字串倒序显示,如
把 0123456789 作为基准的字串字符表,产生一个 6 位的字串 642031,打印出的字串为
130246,可使用 bash/perl/php/c 任意一种.
4、[root@localhost ~]# awk -v count=6 'BEGIN
{srand();str="0123456789";len=length(str);for(i=count;i>0;i--)
marry[i]=substr(str,int(rand()*len),1);for(i=count;i>0;i--)
printf("%c",marry[i]);printf("\n");for
(i=0;i<=count;i++) printf("%c",marry[i]);printf("\n")}'
838705
507838
剩余17页未读,继续阅读
资源评论
不吃鸳鸯锅
- 粉丝: 8299
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功