如果你要去面试一个Linux系统运维工程师的职位,下面这十个最常见的问题一定要会,否则你的面试可能就危险了。这些都是比较基本的问题,大家要理解,不能光死记硬背。

1、如何查看系统内核的版本

这里有两种方法:

1) uname -a

uname 这个命令是用来打印系统信息的, -a 可以打印系统所有信息,其中包含内核版本,比如我的版本号是3.10.0-957.21.3.el7.X86_64。

2) cat /proc/version

下面再补充一下各个数字和字母代表的含义:

  • 3 表示主版本号,有结构性变化才更改 (最新的是5)

  • 10 表示次版本号,新增功能才会变化,一般基数表示测试版,偶数表示稳定版。2020年3月30日,Linus Torvalds 发布了最新的 Linux 内核版本为 5.6

  • 0 表示对次版本的修订次数或补丁包数

  • 957 代表编译的次数,每次编译可对少数程序优化或修改

  • el7 用来表示版本的特殊信息,有较大的随意性;el 代表企业版,pp代表测试版,fc代表 Fedora core,rc代表候选版本

  • X86_64 表示64位

2、如何查看系统当前的 IP 地址

也有两种方法:

1)ifconfig -a

ifconfig 是用来配置网络接口的命令,-a 可以显示当前所有的接口。

2)ip addr show

3、如何查看磁盘还有多少剩余空间

这里主要可以用 df -ah 命令来查看,df 是用来查看文件系统磁盘空间使用情况的命令,-a 显示所有文件系统,-h 用人们可读的方式进行显示。

上面可以看到我的磁盘 /dev/vda1 有40 G,已经用了1.7 G,还有 36 G的可用空间。

4、如何在系统中管理服务

这里别人可能会问你,如何查看一个服务是否在运行,如何启动、停止、或重新加载配置文件。这里答案也有两种。

1) 使用 service 命令

  • 查看服务状态

    service [servicename] status

  • 启动/停止/重启服务

    service [servicename] [start|stop|restart]

  • 重新加载服务配置文件(不重启服务)

    service [servicename] [reload]

比如我想查看一下 sshd 的服务有没有开启

2)使用 systemctl 命令

比较新的系统都已经采用了 systemd,systemctl 是systemd的一个工具,主要负责控制systemd系统和服务管理器。

  • 查看服务状态

    systemctl status [servicename]

  • 启动/停止/重启服务

    systemctl [start|stop|restart] [servicename]

  • 重新加载服务配置文件(不重启服务)

    systemctl [reload] [servicename]

5、如何查看一个目录的大小

可以使用 du -sh [目录] 命令,du 使用来计算文件/目录大小的命令,-s 显示文件或整个目录的大小,-h 是用可读格式。

比如上面我查看了一下我的主目录下tmp目录的大小,一共有80 K

6、如何查看你系统中开放的端口号

1) 使用 netstat 命令

netstat命令用来显示网络状态,包括网络连接、路由表、接口统计等信息。常用的参数如下:

-a (all) 显示所有选项,默认不显示LISTEN相关。

-t (tcp) 仅显示tcp相关选项。

-u (udp) 仅显示udp相关选项。

-n 拒绝显示别名,能显示数字的全部转化成数字。

-l 仅列出有在 Listen (监听) 的服务状态。

-p 显示建立相关链接的程序名

-r 显示路由信息,路由表

-e 显示扩展信息,例如uid等

-s 按各个协议进行统计

-c 每隔一个固定时间,执行该netstat命令。

下面我用了 netstat -tulpn 命令,可以看到端口 22正在被监听。

2)使用 ss 命令

现在也有很多人用 ss 命令,ss 一般用于转储套接字统计信息。它还可以显示所有类型的套接字统计信息,包括 PACKET、TCP、UDP、DCCP、RAW、Unix 域等。这里可以用 ss -lntpd

7、如何查看某个进程对 CPU 的使用情况

1) 可以使用 top 命令

top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器。

2) 使用 ps 命令

ps aux 可以显示所有使用者的进程,最常用的方法是ps aux,然后再利用一个管道符号导向到grep去查找特定的进程。比如查看nginx 进程可以用

ps aux | grep nginx

8、Linux里如何来做挂载

这里主要考的是 mount 命令,用于挂载Linux系统外的文件。

只输入 mount命令可以查看所有系统已经挂载的文件。

如果想挂载一个新的文件,比如将 /dev/hda1 挂在 /mnt 之下,可以用

mount /dev/hda1 /mnt

9、如何查看一些你不太熟悉的命令

这里要考大家的是使用 man 命令。对某个 Linux的命令不熟悉,可以用 man <命令 >,系统会返回该命令的一个非常详细的手册,来帮助大家使用。

10、如果使用了 man 命令还是找不到答案怎么办

百度,或者在论坛、社群里求助大神......

当然,只掌握上面这十个基本问题还是远远不够的。大家在平时的工作和学习中要注重积累;在面试前将自己的经历、重要的知识点作好梳理和充分的准备;在面试当中调整好心态,从容回答问题,逻辑要清晰,表达要清楚。最后祝大家都能找到自己理想的工作。

Linux 面试最常问的十个问题的更多相关文章

  1. iPhone开发常问的十个问题

    iPhone开发常问的十个问题 前言 今天去stackoverflow.com上看了一下iPhone标签下排名最高的10个问题,将它们整理出来,希望这些常见问题能帮到一些iPhone开发的初学者.本来 ...

  2. 【搞定 Java 并发面试】面试最常问的 Java 并发进阶常见面试题总结!

    本文为 SnailClimb 的原创,目前已经收录自我开源的 JavaGuide 中(61.5 k Star![Java学习+面试指南] 一份涵盖大部分Java程序员所需要掌握的核心知识.觉得内容不错 ...

  3. 面试中常问的List去重问题,你都答对了吗?

    面试中经常被问到的list如何去重,用来考察你对list数据结构,以及相关方法的掌握,体现你的java基础学的是否牢固. 我们大家都知道,set集合的特点就是没有重复的元素.如果集合中的数据类型是基本 ...

  4. linux查看日志文件内容命令(面试被常问到的问题)

    tail -f test.log 你会看到屏幕不断有内容被打印出来. 这时候中断第一个进程Ctrl-C, linux 如何显示一个文件的某几行(中间几行) 从第3000行开始,显示1000行.即显示3 ...

  5. 面试官常问的10个Linux问题

    1.如何暂停一个正在运行的进程,把其放在后台(不运行)? 为了停止正在运行的进程,让其再后台运行,我们可以使用组合键Ctrl+Z. 2.什么是安装Linux所需的最小分区数量,以及如何查看系统启动信息 ...

  6. 【搞定 Java 并发面试】面试最常问的 Java 并发基础常见面试题总结!

    本文为 SnailClimb 的原创,目前已经收录自我开源的 JavaGuide 中(61.5 k Star![Java学习+面试指南] 一份涵盖大部分Java程序员所需要掌握的核心知识.欢迎 Sta ...

  7. 面试中常问的五种IO模型和BIO,NIO,AIO

    一,五种IO模型: 一个IO操作可以分为两个步骤:发起IO请求和实际的IO操作例如:1.操作系统的一次写操作分为两步:第一步,将数据从用户空间拷贝到系统空间:第二步,从系统空间往网卡写.2.一次读操作 ...

  8. Android相关面试题---面试官常问问题

    版权声明:本文为寻梦-finddreams原创文章,请关注: http://blog.csdn.net/finddreams/article/details/44513579 一般的面试流程是笔试完就 ...

  9. 面试--hr常问的问题

    程序员换工作,会有技术面试(可能不止一轮的技术面),还会有hr的面试,技术面主要是偏向于技术问题,hr面试主要问的一些问题,下面做下汇总: 1.你换工作的原因,你为何辞职 必问的问题,送分题或者送命题 ...

随机推荐

  1. 吃瓜的正确姿势,Python绘制罗志祥词云图

    前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 这篇文章中向大家介绍了Python绘制词云的方法,不难看出绘制词云可以说是一 ...

  2. Java中什么是构造方法

    this(...)本类的构造方法super(...)父类的构造方法构造方法:给对象的数据进行初始化格式:A:方法名与类名相同B:没有返回值类型,连void都没有C:没有具体的返回值注意事项:A:如果我 ...

  3. [nodejs] 同步/异步创建多层目录

    背景 有时项目里需要同时创建多层目录的功能,但低版本的nodejs并没有提供快捷的api 尽管在v10.12.0版本 mkdir() 第二个参数支持recursive 参数,为true时能递归创建,但 ...

  4. Web前端开发必不可少的9个开源框架

    大多数人想到Web开发时,通常会想到HTML或JavaScript,往往忽略了CSS,根据Wikipedia的说法,CSS既是网页中最重要也是最常被遗忘的部分之一,尽管它是万维网的三大基础技术之一. ...

  5. sqli lab 1-4

    less-1 爆库 id=1222' union select 1,group_concat(schema_name),database() from information_schema.schem ...

  6. thinkPHP--empey标签

    直接上代码,这是判断内容是否为null而做出不同的html的选择 <notempey name="welfare_list"> <foreach name=&qu ...

  7. application/x-www-form-urlencoded ,multipart/form-data, text/plain

    APPLICATION/X-WWW-FORM-URLENCODED MULTIPART/FORM-DATA TEXT/PLAIN 后台返回的数据响应的格式类型 application/x-www-fo ...

  8. Java创建对象时的简单内存分析

    简单创建对象的内存分析 主程序: 1 public class Application { 2 public static void main(String[] args) { 3 Animal do ...

  9. Makefile 头文件 <> 与 "" 的差别,与 Visual Studio 不同

    #include "" : 首先在所有被编译的.c所在的路径中,查找头文件,如果找不到,则到 -I路径下去找头文件 #inclue <> :首先在-I路径下去找,如果找 ...

  10. Tomcat系列教材 (一)- 教程

    Tomcat系列教材 (一)- 教程 Tomcat是常见的免费的web服务器. Tomcat 这个名字的来历,Tomcat是一种野外的猫科动物,不依赖人类,独立生活. Tomcat的作者,取这个名字的 ...