linux常见面试题?linux常用的20个命令面试

大家好,关于linux常见面试题很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于linux常用的20个命令面试的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮助!

linux常用命令面试题有哪些

linux常用命令有:

1、cp命令,作用复制,参数如下:

-a:将文件的特性一起复制。

-p:连同文件的属性一起复制,而非使用默认方式,与-a相似,常用于备份。

-i:若目标文件已经存在时,在覆盖时会先询问操作的进行。

-r:递归持续复制,用于目录的复制行为。

-u:目标文件与源文件有差异时才会复制。

2、rm命令作用为删除,参数:

-f:就是force的意思,忽略不存在的文件,不会出现警告消息。

-i:互动模式,在删除前会询问用户是否操作。

-r:递归删除,最常用于目录删除,它是一个非常危险的参数。

3、mv命令作用为移动文件:

-f:force强制的意思,如果目标文件已经存在,不会询问而直接覆盖。

-i:若目标文件已经存在,就会询问是否覆盖。

-u:若目标文件已经存在,且比目标文件新,才会更新。

4、pwd命令,作用为查看”当前工作目录“的完整路径。

pwd-P#显示出实际路径,而非使用连接(link)路径;pwd显示的是连接路径。

5、rmdir命令删除目录:

rmdir [选项]...目录...

-p:递归删除目录dirname,当子目录删除后其父目录为空时,也一同被删除。如果整个路径被删除或者由于某种原因保留部分路径,则系统在标准输出上显示相应的信息。

-v:verbose显示指令执行过程。

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命令

查看服务状态

1 service [servicename] status

启动/停止/重启服务

1 service [servicename] [start|stop|restart]

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

1 service [servicename] [reload]

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

请点击输入图片描述

2)使用 systemctl命令

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

查看服务状态

1 systemctl status [servicename]

启动/停止/重启服务

1 systemctl [start|stop|restart] [servicename]

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

1 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进程可以用

1 ps aux| grep nginx

8、Linux里如何来做挂载

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

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

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

1 mount/dev/hda1/mnt

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

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

Linux系统工程师面试题附答案(2)

Linux系统工程师面试题(附答案)

prefork的特点是:(预派生)

1.这种模式可以不必在请求到来时再产生新的进程,从而减小了系统开销

2.可以防止意外的内存泄漏

3.在服务器负载下降的时候会自动减少子进程数

worker的特点是:支持混合的多线程多进程的多路处理模块

如果对于一个高流量的HTTP服务器,worker MPM是一个比较好的选择,因为worker MPM占用的内存要比prefork要小。

15.名词解释 HDLC,VTP,OSPF,RIP,DDOS,system V,GNU,netscreen,ssh,smartd,apache,WAIT_TIME等等。

16.编写shell脚本获取本机的网络地址。比如:本机的ip地址是:192.168.100.2/255.255.255.0,那么它的网络地址是

192.168.100.1/255.255.255.0

方法一:

#!/bin/bash

#This script print ip and network

file=”/etc/sysconfig/network-scripts/ifcfg-eth0″

if [-f$file ];then

IP=`grep“IPADDR”$file|awk-F”=”‘{ print$2}’`

MASK=`grep“NETMASK”$file|awk-F”=”‘{ print$2}’`

echo“$IP/$MASK”

exit 1

fi

方法二:

#!/bin/bash

#This programm will printf ip/network

#

IP=`ifconfig eth0|grep‘inet‘|sed‘s/^.*addr://g’|sed‘s/ Bcast.*$//g’`

NETMASK=`ifconfig eth0|grep‘inet‘|sed‘s/^.*Mask://g’`

echo“$IP/$NETMASK”

exit

17.在命令行下发一邮件,发件人:123@abc.com,收信人:abc@xyz.com

二、简述题:

1.linux下如何改IP,主机名,DNS

2.linux下如何添加路由

3.简述linux下编译内核的意义与步骤

4.简述Linux启动过程

5.简述DDOS攻击的原理

6.简述Tcp三次握手的过程

7.简述VPN,常见有哪几种?

三、设计题:

1.系统设计

请考虑以下系统的设计.您可以翻阅资料,查询任何您有帮助的资料、指南等。

您有的资源:

8台安装Linux(2.6内核)的双网卡PC服务器以及相关开源软件,交换机

Apache 2.2.x

Tomcat 5.5.X

数据库系统

最多8个Internet IP地址,请您设计一个系统:

1、使用双apache web server前端;

2、采用AJP连接后段的3台Tomcat应用服务器,这些tomcat被配置成cluster,因此需要考虑apache对后端的分配,分配采用完全平衡的方法;配置使用cookie来实现session stickness;

3、1台数据库服务器只有tomcat才需要连接,也不需要对Internet提供服务。

4、考虑系统的安全性和维护方便性;

5、通过rewrite规则配置把下属URL规则改写成友好的URL

;

您需要提交

1、服务器规划,包括:

*网络结构图

*每台机器的IP地址分配

*每台机器上运行的关键软件

*您从安全性和维护性方面的考虑

2、Apache的以下配置文件给我们:

*extra/http-proxy-ajp.conf

*extra/http-rewrite.conf

2.你可以采取任何设备和不同操作系统服务器设计对两台WWW服务器和两台FTP服务器做负载均衡,用网络拓扑图表示并加以说明!(方法越多越好)

第一种方法: DNS轮巡

www1 IN A 192.168.1.1

www2 IN A 192.168.1.2

www3 IN A 192.168.1.3

ftp1 IN A 192.1.1.4

ftp2 IN A 192.1.1.5

ftp3 IN A 192.1.1.6

www IN CNAME www1

www IN CNAME www2

www IN CNAME www3

ftp IN CNAME ftp1

ftp IN CNAME ftp2

ftp IN CNAME ftp3

;

阅读剩余
THE END