吐槽:

某某命令是什么,某个配置文件的路径,呃。。。。你难道不知道有--help和Tab这种东西吗?

linux系统的启动过程是怎么样的?

grub引导>加载内核>启动init进程依据inittab文件设定运行级别

怎么查看磁盘IO占用情况?

一般是用iotop工具

查看内存使用情况有哪些方法?

top 和 free 命令

强行杀掉一个进程用什么命令?

kill -9

怎么查看文件的大小?

ls -lh 或者 du -sh

使用什么命令查看 ip 地址?

ifconfig 或者 ip add li

排除网络故障一般用哪几个命令?

ping  tcpdump telnet netstat

怎么创建一个软链接?

ln -s

怎么改变一个文件的权限?

chomd

linux对用户的资源限制怎么实现?

在limits.conf配置文件中配置或者ulimit命令临时限制

怎么禁止ssh用户使用密码登陆?

在sshd_config 中password登陆的选项设置成弄no

怎么拒绝192.168.1.1访问本机的8080端口?

iptables 在INPUT链中设置

iptables -A INPUT -s 192.168.1.1 -p tcp --dport 80 -j DROP

路由转发经过iptables哪个链?

FORWARD链

同步文件一般用哪个工具?

rsync

逻辑卷怎么创建?

使用lvm 创建pv>vg>lv

你处理复杂文本一般会用什么?

awk sed grep 或者python内置的一些方法

下面是难点:

一个文件删除了但是发现空间却没释放是怎么回事?

有可能有进程正在使用这个文件,linux系统中存储数据分为两部分为数据部分和指针部分,指针位于文件系统的元数据当中(metadata)

数据被删除后指针也会被删除,但是有进程在使用这个文件指针就会被进程锁定,所以内核就认为文件并没有被删除

linux系统中的inode是什么?满了会有什么后果

因为文件都存储在硬盘的块上面,必须找到一个地方储存文件的元信息,比如创建者创建时间文件大小等等,存储文件元数据的地方就是inode

linux内核中并没有文件名的概念,是用inode号码还识别文件的,如果inode号码满了新文件将无法获得inode号码导致无法存储

能简单介绍一下文件描述的作用吗?

linux系统将所有设备都当作文件来处理,而用文件描述符来标识每个文件对象

一个进程启动后系统中会有一个已打开文件描述符表,记录着所有该进程打开的文件描述符

默认情况下,启动一个进程后,会打开三个文件,分别是标准输入、标准输出、标准错误分别使用了0、1 、2号文件描述符

linux有哪些I/O模型?

阻塞I/O、非阻塞I/O、I/O复用、信号驱动I/O、异步I/O

linux 下的有哪些IO多路复用模型?有什么区别?

select 、poll、epoll

select 每次都把fd(文件描述符)从用户态拷贝到内核态,而且每次要遍历内核中的fd,开销比较大,另外支持的fd数量太小了,默认是1024

poll跟select很像只不过支持的fd不太一样

epoll是对select和poll的改进,弥补了以上缺点,通过epoll_ctl函数实现句柄只拷贝一次,epoll_ctl会为fd指定一个回调函数从而避免遍历,epoll不受fd的数量限制具体跟系统的配置有关

iptables和netfilter是什么关系?

netfilter是linux内核的一个数据包处理模块,具有网络地址转换、数据包修改、数据包过滤的功能,还定义了5个数据数据挂载点,使得我们有机会更改数据包路由、方向、和内容

五个数据点分别是PREROUTING、INPUT、OUTPUT、FORWORD、POSTROUTING

而netfilter的规则是存在内核内存中的,用户无法直接访问到,netfilter会开放一个xtables的接口,这时候就需要一个在用户态可以修改netfilter规则的工具那就是iptables

运维面试题之linux基础的更多相关文章

  1. 运维面试题之linux编程

    吐槽: linux下的编程基本上都很简单包括shell 三剑客和vim的使用,也可能写ansible的playbook,有基础都是一两天可以学会的,正则表达式都是试出来的不知道有些面试官让我们在纸上写 ...

  2. 《前端运维》一、Linux基础--基础命令(1)

    在开始之前,你需要做一些准备工作,去阿里买一台服务器,服务器的具体细节其实并不是十分重要,我也不会在这里一步一步的教大家如何去买一个服务器.百度一下足够了,但是还是要贴一下这篇文章中,我所使用的服务器 ...

  3. 《前端运维》一、Linux基础--02用户与权限

    其实说真的,这些基础挺枯燥的,内容呢绝大多数都是些静态的. 上一篇文章我们学习了基本的指令和vim编辑器的操作方法.这篇文章我们主要来学习下Linux中用户的概念和权限相关的知识. 一.用户与用户组 ...

  4. 《前端运维》一、Linux基础--10定时任务

    一.进程管理 进程(Process)是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础.在早期面向进程设计的计算机结构中,进程是程序的基本执行实体 ...

  5. 《前端运维》一、Linux基础--03Shell基础及补充

    诶诶欸?不是学Linux么?怎么要讲shell了?shell是啥?啥是shell? 别急,我们先简单了解下shell是什么.Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁. ...

  6. 《前端运维》一、Linux基础--04Shell变量

    这一篇文章,我们就要开始学习正式的Shell语言部分的内容.那在开始之前,我们回忆一下,javascript语言,大体都包含了哪些内容?比如数据类型(对象.字符串.数值),数据结构(对象.数组).运算 ...

  7. 《前端运维》一、Linux基础--05Shell运算符

    今天我们来学习下Shell运算符,Shell跟其他的编程语言一样,也支持多种运算符,包括: 算数运算符 关系运算符 布尔运算符 字符串运算符 文件测试运算符 那下面,我们就一一来学习一下这些运算符. ...

  8. 《前端运维》一、Linux基础--07Shell函数

    linux shell 可以用户定义函数,然后在shell脚本中可以随便调用.shell中函数的定义格式如下: [ function ] funname [()] { action; [return ...

  9. 《前端运维》一、Linux基础--06Shell流程控制

    这章我们来学习下流程控制,简单来说就是逻辑判断和循环的写法.并不复杂,我们来简单地看下. 1.if语句 shell的if语句有两种写法,一种是shell脚本式的,一种是命令式的. if conditi ...

随机推荐

  1. EurekaClient项目启动报错Invocation of destroy method failed on bean with name 'scopedTarget.eurekaClient': org.springframework.beans.factory.BeanCreationNotAllowedException: Error creating bean with name 'e

    Disconnected from the target VM, address: '127.0.0.1:51233', transport: 'socket' Eureka Client的使用 使用 ...

  2. Python学习笔记八

    类的高级用法 多态:   在其他语言,使用的是类的继承. 在python中,不需要指定数据类型. 基于TCP协议的socket通信实现: 类似于打电话的情景. 服务端: 1.买手机 2.插卡 3.开机 ...

  3. thread - 传递引用参数

    当给 thread 的执行函数传递指针参数时,没有任何问题,但是如果想传递引用,按照普通函数的调用方法会遇到编译失败: #include <iostream> #include <t ...

  4. Codeforces 1109D. Sasha and Interesting Fact from Graph Theory 排列组合,Prufer编码

    原文链接https://www.cnblogs.com/zhouzhendong/p/CF1109D.html 题意 所有边权都是 [1,m] 中的整数的所有 n 个点的树中,点 a 到点 b 的距离 ...

  5. Selenium切换窗口,警告框处理,调用JavaScript代码

    多窗口切换 在页面操作过程中有时候点击某个链接会弹出新的窗口,这时就需要主机切换到新打开的窗口上进行操作. WebDriver提供了switch_to.window()方法,可以实现在不同的窗口之间切 ...

  6. 2018-2019-1 20189201《Linux内核原理与分析》第三周作业

    写作业之前,写了时光博物馆参观感受.1978-2018 40年的改革开放历程. 一.C语言中内嵌汇编语言的写法 内嵌汇编的语法如下: asm volatile ( 汇编语句模版: 输出部分: 输入部分 ...

  7. 网络编程-Python高级语法-装饰器

    理论:装饰器就是运行一个函数之前首先运行装饰器函数,python装饰器就是用于拓展原来函数功能的一种函数,这个函数的特殊之处在于它的返回值也是一个函数,使用python装饰器的好处就是在不用更改原函数 ...

  8. [CQOI2015]网络吞吐量

    Description: 给你一个图,每个点可以被经过\(a_i\)次,求有多少个人可以走最短路到n点 Hint: \(n \le 500\) Solution: 极其水的一道题,就当做复习最短路板子 ...

  9. vue_小项目_吃饭睡觉打豆豆

    vue_小项目_吃饭睡觉打豆豆 onmouseenter 和 onmouseleave : 在 移入/移出 子元素时不会重复触发 onmouseover 和 onmouseout : 在 移入/移出 ...

  10. laravel整合workerman做聊天室

    测试工具  http://www.blue-zero.com/WebSocket/ 2018年8月6日17:28:24 <?php namespace App\Console\Commands; ...