如果你要去面试一个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. ajax ★ ★ ★ ★ ★

    ajax 1   定义:  是创建交互式应用的网页交互技术 2    特点:无刷新.异步 3  中介数据类型: 1)  XML - 可扩展的标记语言                          ...

  2. APP测试和WEB测试区别

    App测试web测试的区别 单纯从功能测试的层面上来讲的话,APP 测试.web 测试 在流程和功能测试上是没有区别的 根据两者载体不一样,则区别如下: 1.兼容性测试:web端兼容浏览器,app端兼 ...

  3. 2020-MRCTF

    ez_bypass I put something in F12 for you include 'flag.php'; $flag='MRCTF{xxxxxxxxxxxxxxxxxxxxxxxxx} ...

  4. redis: Zset有序集合类型(七)

    存值:zadd myset 1 one 取值:zrange myset 0 -1 127.0.0.1:6379> zadd myset 1 one #存值 分值为1 (integer) 1 12 ...

  5. 如何快速地恢复你的win10

    win10清单 这份List不会介绍如何安装系统,而是当面对一个新系统,如何最快的搭建,或者说恢复到一个生产力环境. 必备习惯 备份软件安装包和常用内容上云是高效恢复的两点关键. 备份软件安装包 我的 ...

  6. Git 简明手册

    0,Git 是什么 Git 是一个VCS(Version Control System),即版本控制系统. 版本控制系统从字面意思来看,它的用途就是管理/控制文件的版本.使用它,可以方便的知道一个文件 ...

  7. 理解分布式一致性:Paxos协议之Generalized Paxos & Byzantine Paxos

    理解分布式一致性:Paxos协议之Generalized Paxos & Byzantine Paxos Generalized Paxos Byzantine Paxos Byzantine ...

  8. CodeForces 1058C C. Vasya and Golden Ticket

    C. Vasya and Golden Ticket time limit per test1 second memory limit per test256 megabytes inputstand ...

  9. 51 NOD 1049 最大子段和 动态规划 模板 板子 DP

    N个整数组成的序列a[1],a[2],a[3],-,a[n],求该序列如a[i]+a[i+1]+-+a[j]的连续子段和的最大值.当所给的整数均为负数时和为0. 例如:-2,11,-4,13,-5,- ...

  10. VUE简单整理

    在用 Vue.js 构建大型应用时推荐使用 NPM 安装: # 最新稳定版 $ cnpm install vue 命令行工具 Vue.js 提供一个官方命令行工具,可用于快速搭建大型单页应用. # 全 ...