Linux运维第二关考试题
2019-03-30 本文已影响0人
五月_w
1.一个目录中有很多文件(ls -l 查看时好多屏),想用一条命令最快速度查看到最近更新的文 件。如何看?
ls -lrt
2.在配置 apache 服务时 执行了./configure --prefix=/application/apache2.2.17 来编译 apche, 在 make install 完成后,希望用户访问 apache 路径更简单,需要给/application/apache2.2.17 目录做一个软链接/application/apache,使得内部开发或管理人员通过/application/apache 就可 以访问到 apache 的安装目录/application/apache2.2.17 下的内容,请你给出实现的命令。
ln -s /application/apache2.2.17 /application/apache
3.已知 Nginx 服务的访问日志按天记录在服务器本地目录/app/logs 下,由于磁盘空间紧张, 现在要求只能保留最近 7 天的访问日志!请问如何解决? 请给解决办法或配置或处理命令。
第一种方法:* * * * * /usr/bin /find /app/logs -type f -mtime +7 | xargs rm -rf &>/dev/null
第二种方法:* * * * * /uer/bin /find /app/logs -type f -mtime +7 - exec rm -f {} \ ;>/dev/null 2>&1
4.调试系统服务时,希望能实时查看/var/log/messages 系统日志的更新,如何做?
tail -f /var/log/messages
5.打印轻量级 web 服务的配置文件 nginx.conf 内容的行号及内容,该如何做?
第一种办法:cat -n nginx.conf
第二种方法:awk '{print NF $0}' nginx.conf
第三种方法:grep -n " " nginx.conf
第四种方法:sed "=" nginx.conf
6.已知如下命令及结果:
[oldboy@test ~]$ echo "I am oldboy,my qq is 31333741">>oldboy.txt
[oldboy@test ~]$ cat oldboy.txt
I am oldboy,my qq is 31333741
现在需要从文件中过滤出“oldboy”和“31333741”字符串,请给出命令。
image.png
7.问题:请问在一个命令上加什么参数可以实现下面命令的内容在同一行输出echo "oldboy";echo "oldboy"
echo -n echo “oldboy",echo"oldboy"
8.如何快速查到 ifconfig 命令的全路径(假如你不知道其路径), 请给出命令。
第一种方法: which ifconfig
第二种方法:whereis ifconfig
9.查找/oldboy/目录下所有文件,并把文件中的 www.etiantian.org 字符串替换成 www.oldboyedu.com
find /oldboy -type f |xargs sed -n's#www.etiantian.org#www.oldboyedu.com
10.过滤出/etc/services 文件包含 3306 或 1521 两数据库端口的行的内容。
image.png
11.请将 ifconfig eth0 和 ip add 结果中的 eth0 网卡对应 ip 地址取出(不低于 2 种方法)。
image.png
image.png
12.如何赋予 oldboy.txt 文件如下权限、用户、用户组属性 -w--rw-rwx. 1 oldboy sa 24 Mar 13 11:46 oldboy.txt
第一种方法 chmod 267 oldboy.txt
chown oldboy.sa oldboy.txt
第二种方法 chmod u=w g=rw o=rwx oldboy.txt
chown oldboy:sa oldboy.txt
13.某系统管理员需每天做一定的重复工作,请按照下列要求,编写一个解决方案,请按步 骤写清楚每一步操作:
(1)在下午 4:50 删除/abc 目录下的全部子目录和全部文件。
50 16 * * * /usr/bin /rm -rf /abc/* >&/dev/null
脚本:
#liaowanlichuangjian
cd /abc && rm -rf ./*
50 16 * * * /bin/sh shanchu.sh &>/dev/null
(2)每逢星期一下午五点将/data 目录下的所有目录和文件归档并压缩为以当天日期命名的 tar.gz 结尾打包文件。
00 17 * * * /usr/bin /tar zcf ./ $(date +\%F).tar.gz /data/* >/dev/null 2&>1
脚本:
#laiowanlichuangjian
cd /data &&tar zcvf ./$(date +%F).tar.gz /data/*
00 17 * * * /bin/sh tar.sh >/dev/null 2>&1
14.如何取得/etc/hosts 文件的权限对应的数字内容,如-rw-r--r-- 为 644,要求使用命令取得 644 这样的数字(不低于 2 种方法)
image.png
15.Linux 下通过 mkdir 命令创建一个新目录/oldboy/ett,它的硬链接数是多少,为什么? 如果在/oldboy/ett 下面再创建一个目录 test。再问/oldboy/ett 的硬链接数是多少?为什么。
2个 目录本身是一个硬链接,以及.
3个 目录本身是一个硬链接,以及. 和..
16. 企业故障案例 1:(参考问题 9) 作为运维工程师,你在工作中遇到的一个实际问题,情况是:一个 lnmp 的服务器,站 点目录下所有的文件均被植入了如下内容:
<script language=javascript src=http://%4%66E%78%6F%72%67%2E%70%6F/x.js?google_ad=93x28_ad></script>(可用 A 代
替此行内容解答) 包括图片文件也被植入了,当用户网站打开时就会调用这个地址,显示一个广告,请问你如 何解决。
第一步 先备份
第二步 找到修改后的文件 grep ‘A’ *
第三步 批量删除 find / -type f |xargs sed ‘s#A##g’
第四步 找到修改文件来源 ,并优化调整
第五步 写总结,故障报告
17.请输出当前日期和时间、3 天前的日期、未来 10 天的日期。
date
date -d "-3day"
date -d "+10day"
18.写出 10 个以上 Linux 命令行中特殊字符及对应含义。
# 管理员的提示符 注释符
$ 普通用户的提示符 调用变量使用
| 将前面数据流交给后面处理
\ 转义字符 ,让字符还原本义
{} 生成序列
&& 前面正确后面输出
|| 前面错误后面输出
!取反,vim里是强制,调用最近字符开头的命令
; 分隔符
? 匹配单个字符,有且只有一个
* 匹配所有
[a-d] 匹配任意一个字符
[^a-d] 取反
. 当前目录
.. 上一级目录
~ 家目录
- 上一级目录
'' 单引号 引用字符,所见即所得
"" 双引号 引用字符 ,解析变量命令
``反引号 引用命令,解析命令,等价于$()
> 标准输出重定向
>> 追加输出重定向
< 标准输入重定向
<< 追加输入重定向
19. 请说出软链接和硬链接的区别。
从分类:链接分为软连接和硬链接
从概念:两个inode号相同的文件是硬链接文件,软连接相当于windows快捷方式,本身与源文件不同
从创建:默认不带参数情况下,ln 创建的是硬链接,ln -s 创建的是软连接
从应用:硬链接应用不多,用来对重要数据做快照防止误删,软连接对目录的创建应用多
从特点:对目录不能创建硬链接,但能创建软链接
软连接可以跨文件系统,硬链接不能跨啊文件系统
删除硬链接,对源文件和软连接没影响
删除软连接,对源文件和硬链接没影响
删除源文件,对硬链接没影响,软连接会失效
同时删除源文件和硬链接,文件才会被删除
20.描述 ls -lhi 输出中,每一列的意义。
33631870 -rw-r--r--. 1 root root 21 Oct 6 2020 oldboy.txt
第一列:inode 索引节点 相当于人的身份证,是文件在系统的唯一标识
第二列:文件类型,文件权限 , selinux标识符号
第三列:硬链接数
第四列:用户
第五列:用户组
第六列:文件大小
第七列-第九列:最后修改时间
第十列:文件名
21. 什么是 PATH 环境变量,它有什么作用?
PATH是命令的搜索路径
作用是 可以在其他子shell中定义命令的目标路径
22. 描述 Linux 下文件删除的原理
静态文件:没有进程或程序执行的文件
i_nlink为0,删除所有硬链接文件,包括自身,i_nlink是硬链接变量符号
动态文件:有进程或程序正在使用的文件
i_nlink为0,删除所有硬链接文件,包括自身,i_nlink是硬链接变量符号
i_count为0,i_count是指进程调用的数量(引用计数),即所有进程调用都要取消
23. 企业故障案例 2:往磁盘中写入数据出现 no space left on device 故障,请写出可能原因。
第一种原因:df -i inode满了,原因是定时任务执行有误,邮件产生了大量小邮件,把inode用完了,解决方法是:快速定位到大量小文件(find / -type f -size - 再三确认后删除
第二种原因:df -h block 满了,解决方法是层层定位到大文件(du -su/*),进行打包或者删除处理
24. 企业故障案例 3: Tomcat 服务器磁盘满了,临时删除对应日志文件但是发现空间未释 放,可能原因是?如何解决)。
有进程占用
解决方法是:ps -ef |grep delete 相应的服务进程,并将其重启可释放空间
25. 企业故障案例 4:定时任务的脚本手工可以执行,但是放到定时任务里无法执行,可能 原因是什么?
1定时任务写错了
2没有使用绝对路径执行命令