Linux培训
达内IT学院

400-996-5531

Linux运维人员面试时会遇到的企业版面试题汇总(二)


今天达内Linux培训小编将继续为大家分享关于Linux运维人员面试时会遇到的企业版面试题汇总的文章,在上篇文章中小编为大家介绍过,想成为一名优秀的Linux运维人员,首先第一步是要通过企业的面试,既然面试这么重要今天小编就继续为想要参加Linux运维面试的小伙伴们准备了这篇Linux运维面试题汇总(二),希望能够对想要找工作的你有所帮助。

Linux运维人员面试时会遇到的企业版面试题汇总(二)

1.请给出查看当前哪些用户在线的Linux命令

w #显示目前系统登录用户

who #显示目前已登录用户信息

last #列出目前与过去登入系统的用户相关信息

lastlog #检查某特定用户上次登录时间

whoami #打印与当前生效的用户ID关联的用户名

finger #用户信息查找程序

id #显示指定用户或当前用户的用户与组信息

2.请你描述下crontab的作用和语法,以及书写定时任务注意的要点

设置crontab后我们可以使得Linux主动执行的在固定的间隔时间,执行指定的系统指令或 shell script脚本。生产环境可以用来日志分析或生产备份等。

语法格式:

crontab [ -u user ] file ===》-u的意思就是指定用户

crontab [ -u user ] { -l 显示文件内容| -r全部删除crontab文件 | -e 编辑crontab文件| -i删除crontab文件前确认提示}

举例:

*/5 10,12 * 3-8 * * /usr/sbin/ntpdate 10.0.0.155 >/dev/null 2>&1

前五段是时间间隔的设定,单位分别是分钟、小时、日、月、周(尽量避免使用日月和周同时出现,以免造成系统误判)。

第一个时间段 分钟 范围0-59

第二个时间段 小时 范围0-23

第三个世间段 日 范围1-31

第四个时间段 月 范围1-12

第五个时间段 周 范围0-7

*星号代表任何时间都接受命令

,逗号,表示隔开。代表分隔的时间都适用此命令。

– 减号,两个时间段之间,代表在此时间段内执行定时任务。

/n斜线和n(数字)表示每隔n段时间执行一次。

注意要点分为:书写基本要领与书写注意事项

7个基本要领:

第一、为定时任务规则加必要的注释

第二、定时任务命令或程序最好写到脚本里执行

第三、定时任务执行的脚本要规范路径,如:/server/scripts

第四、执行shell脚本任务时前加/bin/sh

执行定时任务时,如果是执行脚本,尽量在脚本前面带上/bin/sh命名

第五、定时任务结尾加 >/dev/null 2>&1

第六、/dev/null为特殊的字符设备文件,表示黑洞设备或空设备。

第七、有关重定向的说明

>或1> 输出重定向:把前面输出的东西输入到后边的文件中,会删除文件原有内容。

>>或1>> 追加重定向:把前面输出的东西追加到后边的文件中,不会删除文件原有内容。

<或<0 输入重定向:输入重定向用于改变命令的输入,指定输入内容,后跟文件名。

<<或<<0 输入重定向:后跟字符串,用来表示“输入结束”,也可用ctrl+d来结束输入。

2> 错误重定向:把错误信息输入到后边的文件中,会删除文件原有内容。

2>> 错误追加重定向:把错误信息追加到后边的文件中,不会删除文件原有内容。

标准输入(stdin):代码为0,使用<或<<。

标准输出(stdout):代码为1,使用>或>>。正常的输出。

标准错误输出(sederr):代码为2,使用2>或2>>。

特殊:

2>&1就是把标准错误重定向到标准输出(>&)。

>/dev/null 2>&1 等价于 1>/dev/null 2>/dev/null

3.请列出Linux中你认为重要的文件夹及包含内容

① /目录下的文件夹里面分别是以下内容:

/usr 包含所有的命令和程序库、文档和其他文件及当前linux发行版的主要应用程序

/var 包含正在操作的文件,还有记录文件、加密文件、临时文件等

/home 除了root用户外的所有用户的配置文件,个性化文件和主目录,即家目录

/proc 虚拟目录,该目录实际上指向内存而不是硬盘

/bin 系统执行文件(二进制文件)普通用户可以使用

/sbin 系统执行文件(二进制文件)不能被普通用户使用,通常由root用户使用

/etc 操作系统的配置文件

/root root用户的家目录

/dev 系统设备文件,linux所有设备都是以文件的形式被处理,该目录不包含驱动程序

/lib 程序和核心模块共享库(仅限于/下的程序)

/boot 系统引导、启动文件,通常grub也在这里

/opt 可选应用程序目录

/tmp 临时文件,系统会自动清理

/lost+found 恢复文件(类似回收站)

/media 所有的磁盘(有时有光盘)将以文件夹的形式挂载,光盘镜像也可以挂载

/cd-rom 挂载光盘的地方

② /usr目录下的文件比较重要,其作用下面分类列出:

/usr/X11 X-windows桌面环境

/usr/doc linux系统的文档资料

/usr/share 独立于当前计算机的数据结构,如字典中的词

/usr/bin 类似/bin但是不参与启动,大部分命令都在这里

/usr/local 本地管理员安装的应用程序

/usr/local/bin 用户安装的应用程序(部分)

③ /proc目录的内容

/proc/cpuinfo 处理器的信息

/proc/devices 当前运行内核的所有设备清单

/proc/dma 当前正在使用中的DMA通道

/proc/filesystem 当前运行内核所配置的文件系统

/proc/interrupts 当前使用的中断和曾经有多少个中断

/proc/ioports 正在使用的I/O端口

4.给出正确的关机和重启服务器的命令

⑴shutdown

[-t] 指定在多长时间之后关闭系统

[-r] 重启系统

[-k] 并不真正关机,只是给每个登录用户发送警告信号

[-h] 关闭系统(halt)

⑵halt

halt是最简单的关机命令,其实际上是调用shutdown -h命令。halt执行时,杀死应用进程,文件系统写操作完成后就会停止内核。

halt命令的部分参数如下:

[-f] 没有调用shutdown而强制关机或重启

[-i] 关机或重新启动之前,关掉所有的网络接口

[-p] 关机时调用poweroff,此选项为缺省选项

⑶reboot

reboot工作过程与halt类似,作用是重新启动,而halt是关机。其参数与halt类似。

⑷init

init是所有进程的祖先,其进程号始终为1。init用于切换系统的运行级别,切换的工作是立即完成的。init 0命令用于立即将系统运行级别切换为0,即关机;init 6命令用于将系统运行级别切换为6,即重新启动。

5.请简述修改/etc/sudoers配置文件的注意事项

①别名的名称可以包含大写字母。数字、下划线。如果是字母必须要大写,(别名为一群拥有相同属性的集合)。

②一个别名下面可以有多个成员,成员间通过半角(,)逗号隔开。成员必须有效实际存在。

别名成员受别名类型 Host_Alias、User_Alias、Runas_Alias、Cmnd_Alias制约,定义什么类型的别名,就要有相什么类型的成员匹配。

③用户组前面必须加%号。命令别名下的成员必须是文件或目录的绝对路径。

④指定切换用户要用()括号括起来,如果省略,则默认root用户,如果括号里是ALL,则代表能切换到所有用户。

⑤命令路径要使用全路径。

⑥别名规则每行算一个规则,一行容不下时用\续行。另外超过一行,用反斜线换行。

⑦一般不建议先给all权限,后面排除。用什么权限,就给什么权限。(注意权限,语法)。

如果不需要密码直接运行命令的应该加NOPASSWD参数。

⑧禁止某类程序或命令执行,要在命令动作前面加上“!”号,并放在允许执行命令之后。

6.请描述如何实现linux系统集权分治的权限分级精细管理?

① 收集以及制定用户和权限的匹配信息,原则是给于最小权限,但是又能完成所承担的工作职责。

② 各个用户组设置对应权限,用什么给什么,精细到每一条指令上根据分组情况。

③ 创建规划权限分组的用户.添加相关用户组。并修改etc/sudoers配置文件。

④ 增加sudo的权限开放,确定相关用户加入如soduers权限列表,并详细设置所开放权限内容,并选择是否需要密码的相关执行权限开放。(注意ALL权限,以及密码修改权限设置)。

⑤ 不建议先给all权限,后面排除。建议使用白名单。

⑥实战调试测试相关权限是否正确配置完成。

⑦编写操作说明,及相关注意事项。

⑧调试完毕,邮件周知所有相关人员系统权限设置生效,并附带操作说明及相关注意事项。

7.请写出下面Linux SecureCRT命令行快捷键命令的功能?

Ctrl + a 光标到开头

Ctrl + c 中断当前程序

Ctrl + d 退出当前窗口或当前用户

Ctrl + e 光标到结尾

Ctrl + l 清屏 相当与clear

Ctrl + u 剪切、删除(光标以前的)内容

Ctrl + k 剪切、删除(光标以后的)内容

Ctrl + r 查找(最近用过的命令)

tab 所有路径以及补全命令

Ctrl+shift+c 命令行复制内容

Ctrl+shift+v 命令行粘贴内容

Ctrl + q 取消屏幕锁定

Ctrl + s 执行屏幕锁定

8.请描述服务器账户日志审计的5种解决方案。

⑴通过环境变量syslog对全部全部日志进行审计(信息量太大,不推荐)

⑵sudo配合syslog服务,进行sudo操作日志进行审计(信息较少,效果不错)

⑶在bash解释器嵌入一个监视器,让所有用户使用修改过的bash程序,作为解释程序。

⑷齐治的堡垒机(商业产品)。

9.如果一台办公室内主机无法上网(打不开网站),请给出你的排查步骤?

①首先确定物理链路是否联通正常。

②查看本机IP,路由,DNS的设置情况是否达标。

③telnet检查服务器的WEB有没有开启以及防火墙是否阻拦。

④ping一下网关,进行最基础的检查,通了,表示能够到达服务器。

⑤测试到网关或路由器的通常情况,先测网关,然后再测路由器一级一级的测试。

⑥测试ping公网ip的通常情况(记住几个外部IP),

⑦测试DNS的通畅。ping出对应IP。

⑧通过以上检查后,还在网管的路由器上进行检查。

10.描述Linux shell中单引号、双引号及不加引号的简单区别

单引号:所见即所得,即将单引号内的内容原样输出,或者描述为单引号里面看到的是什么就输出什么。

双引号:把双引号里面的内容给输出出来,如果内容中有命令、变量等,会先把,变来那个、命令解析出结果,然后输出最终内容。

双引号内的命令或者变量写法’命令或变量’或$(命令或变量)

无引号:把内容输出出来,可能不会键含有空格的字符串,视为一个整体输出,如果内容中有命令、变量等,会先把变量、命令解析出来,然后输出最终内容,如果字符串中带有空格等特殊字符,则不能完整输出,需要改加双引号。一般连续的字符串,数字,路径等可以用,不过最好用双引号,替代之。

Linux运维人员面试时会遇到的企业版面试题汇总(二)

11.请简述Linux启动过程中几个重要配置文件的执行过程

Linux 登录后,配置执行顺序为(Debian Serials Capable):

/etc/environment -> /etc/profile -> (~/.bash_profile | ~/.bash_login | ~/.profile) -> ~/.bashrc -> /etc/bashrc -> ~/.bash_logout

关于各个文件的作用说明:

(1)/etc/environment:此配置文件设置基本的PATH变量,及系统当前语言变量,虽然比较短,但却在系统启动中占据举足轻重的作用,比如如下是我的系统中的内容:

(2)/etc/profile: 此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行. 并从/etc/profile.d目录的配置文件中搜集shell的设置。

(3)/etc/bash.bashrc: 为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取。

(4)~/.bash_profile: 每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件。

(5)~/.bashrc: 该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该该文件被读取。

(6)~/.bash_logout: 当每次退出系统(退出bash shell)时,执行该文件. 另外,/etc/profile中设定的变量(全局)的可以作用于任何用户,而~/.bashrc等中设定的变量(局部)只能继承 /etc/profile中的变量,他们是”父子”关系。

(7)~/.bash_profile 是交互式、login 方式进入 bash 运行的~/.bashrc 是交互式 non-login 方式进入 bash 运行的通常二者设置大致相同,所以通常前者会调用后者。

12.请描述下列路径的内容是做什么的?

/var/log/messages 系统日志文件

/var/log/secure 系统安全文件(显示登录信息的文件)

/var/spool/clientmqueue 例行性任务回执邮件存放文件

/proc/interrupts 当前系统中断报告文件

/etc/fstab 开机自动挂载磁盘的配置文件

/etc/profile 环境变量存放的文件

13.请给出Linux中eth0的IP地址和广播地址的指令,需使用cut、awk、grep、sed指令。

第一种方法:使用grep和cut取值

第二种方法:使用grep和awk(默认分隔符为空格)取值

第三种方法:使用grep和awk(多分隔符)

第四种方法:使用sed和awk

第五种方法:使用grep和awk(多分隔符与加号+)

第六种方法:awk (分隔符及取行)

第七种方法:grep 网卡文件

第八种方法:head取行 awk分割

14.请输出你知道的20 个LINUX 命令及作用

cp 复制 -a(drp),-r拷贝目录 -p保持属性

mv 移动文件或目录

mkdir 创建目录 -p递归创建目录 mkdir /a/b/c

touch 创建文件,

cd 切换目录(~当前用户家目录,-上一次的目录)

cat 查看文件内容 -n显示行号

ls 查看目录下文件,-l长格式,-d查看目录**********

rm 删除文件或目录 -r目录 -f强制删除(慎用,mv,find)

find 查找文件或目录 -type 类型(f,d,l,c,b),-name名字 -exec执行动作*****

alias 查看及设置别名

unalias 取消别名

seq 打印序列 -s指定分割符 -w数字前面加0补齐位数

head 查看文件前N行,默认10行,-n指定行数

tail 查看文件后N行,默认10行,-n指定行数,-f实时跟踪文件结尾的变化

sed linux三剑客老二,文件增删改查,*****

pwd打印当前工作目录

rmdir 删除空目录

echo 显示输出

xargs (配合find,ls)等查找到的内容处理,-n分组

tree -L层数 -d目录

rpm -q query查询 -a all

uname -r内核 -m32位还是64位 -a所有信息, -n主机名(hostname)

hostname 主机名

whoami 查看当前用户

useradd 添加用户

passwd 改密码,–stdin 非交互设置密码

su 切换用户角色,-切换环境变量

以上就是小编今天为大家准备的Linux运维人员面试时会遇到的企业版面试题汇总(二),希望本篇文章能够对准备参加Linux面试的小伙伴们有所帮助,想要了解更多Linux面试相关知识,记得关注达内Linux培训官网。最后祝愿小伙伴们面试成功~

预约申请免费试听课

填写下面表单即可预约申请免费试听! 怕学不会?助教全程陪读,随时解惑!担心就业?一地学习,可全国推荐就业!

上一篇:Linux运维人员面试时会遇到的企业版面试题汇总(一)
下一篇:想要参加Linux面试该如何避免“投简历没面试”问题?

Linux运维工程师面试题目及答案汇总

Linux常见面试题汇总,建议收藏

Linux面试题目及答案解析汇总

给Linux运维工程师的面试建议

Copyright © 2023 Tedu.cn All Rights Reserved 京ICP备08000853号-56 京公网安备 11010802029508号 达内时代科技集团有限公司 版权所有

选择城市和中心
黑龙江省

吉林省

河北省

湖南省

贵州省

云南省

广西省

海南省