[笔试考试试题命令部分](总满分72分,每题4分)
1.一个目录中有很多文件(ls -l查看时好多屏),想用一条命令最快速度查看到最近更新的文件。如何看?
ls –lrt
参数-t是按时间排序,-r是倒序排列,最终结果就是最近更新的文件在最下边显示
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
直接使用ln是创建硬链接,而 ln -s 是创建软链接
3.已知Nginx服务的访问日志按天记录在服务器本地目录/app/logs下,由于磁盘空间紧张,现在要求只能保留最近7天的访问日志!请问如何解决?请给解决办法或配置或处理命令。
0000* * */usr/bin/find /app/logs -type f -mtime +7|xargs /usr/bin/rm–f &>/dev/null0000* * */usr/bin/find /app/logs -type f -mtime +7 -exec /usr/bin/rm–f {} \; &>/dev/null0000* * */usr/bin/rm -f $(/usr/bin/find/app/logs -type f -mtime +7) &>/dev/null
使用find命令找出/app/logs目录下的所有7天以前的文件并删除,注意-mtine参数的使用方法
4.调试系统服务时,希望能实时查看/var/log/messages系统日志的更新,如何做?
tail –f /var/log/messagestail –F /var/log/messagestailf /var/log/messages
1、tail -f是实时跟踪文件结尾信息,当文件改名或被删除,追踪停止
2、tail -F是根据文件名进行追踪,并保持重试,即该文件被删除或改名后,如果再次创建相同的文件名,会继续追踪
3、tailf是如果文件不增长,它不会去访问磁盘文件,所以tailf适合便携机上跟踪日志文件,因为它减少了磁盘访问,可以省电
5.打印轻量级web服务的配置文件nginx.conf内容的行号及内容,该如何做?
cat -n nignx.confgrep -n'.'nginx.confawk'{print NR,$0}'nginx.confsed'='nginx.confless –N nginx.conf
命令与文件内容相关,并且有参数可以显示行号的命令都可使用
6.已知如下命令及结果:
[oldboy@test ~]$ echo "I am oldboy,my qq is 1836288850">>oldboy.txt
[oldboy@test ~]$ cat oldboy.txt
I am oldboy,my qq is 1836288850
现在需要从文件中过滤出“oldboy”和“1836288850”字符串,请给出命令。
egrep –o'oldboy|1836288850'oldboy.txtsed –r's#am (.*),.*is (.*)#\1\2#g'oldboy.txtawk –F"[,]"'{print $3,$NF}'oldboy.txt
主要涉及的是三剑客的过滤功能
7.问题:请问在一个命令上加什么参数可以实现下面命令的内容在同一行输出。
echo "oldboy";echo "oldboy"
echo–n"oldboy";echo"oldboy"
考察的是echo的参数,-n表示的是不换行输出
8.如何快速查到ifconfig命令的全路径(假如你不知道其路径),请给出命令。
whichifconfigwhereis ifconfig
考察哪些命令可以查命令的全路径
9.查找/oldboy/目录下所有文件,并把文件中的www.etiantian.org字符串替换成www.oldboyedu.com
find /oldboy/ -typef|xargs sed's#www.etiantian.org#www.oldboyedu.com#g'find /oldboy/ -typef -execsed's#www.etiantian.org#www.oldboyedu.com#g'{} \;
主要是find的查找功能与sed的替换功能的使用
10.过滤出/etc/services 文件包含3306或1521两数据库端口的行的内容。
grep -E'3306|1521'/etc/servicesegrep'3306|1521'/etc/servicessed –nr'/3306|1521/p'/etc/servicesawk'/3306|1521/'/etc/services
主要涉及三剑客的过滤功能
11.请将ifconfigeth0和ip add结果中的eth0网卡对应ip地址取出(不低于2种方法)。
[root@oldboyedu ~]# ifconfig eth0 eth0:flags=4163 mtu1500inet10.0.0.201netmask255.255.255.0broadcast10.0.0.255inet6 fe80::9fdb:66ba:dc7f:3fe5 prefixlen64scopeid0x20
[root@oldboyedu ~]# ip add 2:eth0: mtu1500qdisc pfifo_fast state UP group default qlen1000link/ether00:0c:29:2a:ca:54brdff:ff:ff:ff:ff:ff inet10.0.0.201/24brd10.0.0.255scope global noprefixroute eth0
答:
ifconfig eth0|sed -rn's#.*t (.*) net.*#\1#gp'
ifconfig eth0|awk -F'[ :]+''NR==2{print $3}'
ip add|awk -F'[ /]+''NR==9{print $3}'
ip add|sed -nr'9s#.*net (.*)/.*#\1#gp'
三剑客的正则表达式以及扩展正则表达式的使用
12.如何赋予oldboy.txt文件如下权限、用户、用户组属性。
-w--rw-rwx. 1 oldboy sa 24 Mar 13 11:46 oldboy.txt
chmod 267 oldboy.txt 或 chmod u=w g=rw o=rwx oldboy.txt
chown oldboy.sa oldboy.txt 或chown oldboy:sa oldboy.txt
chmod与chown命令的使用
13.某系统管理员需每天做一定的重复工作,请按照下列要求,编写一个解决方案,请按步骤写清楚每一步操作:
(1)在下午4:50删除/abc目录下的全部子目录和全部文件。
(2)每逢星期一下午五点将/data目录下的所有目录和文件归档并压缩为以当天日期命名的tar.gz结尾打包文件。
(1)5016* * */bin/rm–rf /abc/* >/dev/null2>&1
或脚本执行:vim shanchu.sh
编辑脚本内容为:/bin/rm–rf /abc/*
编写定时任务内容为:5016* * */bin/shshanchu.sh >/dev/null2>&1
(2)0017* *1/bin/tar zcf ./$(date +\%F).tar.gz /data >/dev/null2>&1
或脚本执行:vim dabao.sh
编辑脚本内容为:/bin/tarzcf ./$(date +%F).tar.gz /data
命令行执行/bin/sh dabao.sh
编写定时任务内容为:0017* *1/bin/sh dabao.sh >/dev/null2>&1
14.如何取得/etc/hosts文件的权限对应的数字内容,如-rw-r--r--为644,要求使用命令取得644这样的数字(不低于2种方法)。
stat/etc/hosts -c %a
stat/etc/hosts|awk -F'[0/]''NR==4{print $2}'
stat/etc/hosts|sed -nr's#.*\(0(.*)/-.*#\1#gp'
考察stat的使用以及三剑客的过滤功能
15.Linux下通过mkdir命令创建一个新目录/oldboy/ett,它的硬链接数是多少,为什么?
如果在/oldboy/ett下面再创建一个目录test。再问/oldboy/ett的硬链接数是多少?为什么。
新目录/oldboy/ett的硬链接数是2,目录本身是一个硬链接,目录下的.也是一个硬链接
/oldboy/ett下再创建目录test后的硬链接数是3,目录本身是一个硬链接,目录下的.也是一个,test目录下的..也是一个
目录的硬链接如何计算
16.企业故障案例1:(参考问题9)
作为运维工程师,你在工作中遇到的一个实际问题,情况是:一个lnmp的服务器,站点目录下所有的文件均被植入了如下内容:
(可用A代替此行内容解答)
包括图片文件也被植入了,当用户网站打开时就会调用这个地址,显示一个广告,请问你如何解决。
第一步:对文件进行备份
第二步:使用命令find / -typef |xargs sed's#A##g'定位到文件内容后,将其替换掉,确认无误再加-i参数修改原文件
第三步:总结报告并查找故障原因,进行针对性防护
17.请输出当前日期和时间、3天前的日期、未来10天的日期。
date"+%F %T"date +%F -d"-3day"date +%F -d"10day"
date命令及参数的使用
18.写出10个以上Linux命令行中特殊字符及对应含义。
~ 当前用户的家目录
- 上一次所在目录
. 当前目录
.. 上一级目录
* 匹配所有字符
[abc] 匹配括号内任一字符
[^abc] 不匹配括号内任一字符
? 匹配单个字符
‘’ 所见即所得
“” 引用字符串,解析变量、命令
; 命令的分隔符
# 注释
$ 调用变量
\ 转义字符
&& 前边命令执行成功再执行后边
||前边命令执行失败再执行后边
! 取反
> 标准输出重定向
>> 标准输出追加重定向
< 标准输入重定向
<< 标准输入追加重定向
2> 标准错误输出重定向
2>> 标准错误输出追加重定向
[笔试考试试题理论部分] (总满分28分,每题4分)
请说出软链接和硬链接的区别。
硬链接不占用inode,软连接占用一个inode
硬链接不可以跨文件系统创建,软链接可以
删除源文件对硬链接无影响,但是软链接会失效
硬链接不可以给目录创建,软连接可以
2.描述ls -lhi输出中,每一列的意义。
33631870 -rw-r--r--. 1 root root 21 Oct 6 2020 oldboy.txt
第一列:inode索引节点
第二列:文件类型及权限,.为selinux标识
第三列:硬链接数
第四列:属主
第五列:属组
第六列:文件大小
第七八九列:文件最后一次修改时间
第十列:文件名(不属于文件属性)
什么是PATH环境变量,它有什么作用?
PATH是命令的搜索路径
PATH可以在其他子shell中定义命令的目录路径
描述Linux下文件删除的原理?
硬链接数(i_link)为0并且进程引用计数(i_count)为0
企业故障案例2:往磁盘中写入数据出现no space lefton device故障,请写出可能原因。
inode满:用df -i查看,原因是定时任务书写有误,导致邮件产生大量小文件,把inode占用完了
block满:用df -h查看,然后用du -sh 定位到大文件,并将其删除
企业故障案例3:Tomcat服务器磁盘满了,临时删除对应日志文件但是发现空间未释放,可能原因是?如何解决)。
该文件被进程占用,使用命令ps -ef|grepdelete找到相应的服务进程,并将其重启即可释放空间
企业故障案例4:定时任务的脚本手工可以执行,但是放到定时任务里无法执行,可能原因是什么?
原因一:环境变量问题,没有使用绝对路径执行定时任务
原因二:定时任务写错了