linux运维工程师面试知识点汇总(代码片段)

江湖有缘 江湖有缘     2022-12-04     584

关键词:

Linux运维工程师面试知识点汇总(二)

一、Linux系统部分

1.使用iptables实现端口转发

①做DNAT转换

iptables -t nat -A PREROUTING -p tcp -i eth0 --dport 8080 -j DNAT --to 192.168.3.20:80
iptables -t nat -A PREROUTING -p tcp -d 172.18.2.77 --dport 8080 -j DNAT --to-destination 192.168.2.66:80

②做SNAT转换

iptables -t nat -A POSTROUTING -s 192.168.2.0/24 -j SNAT --to-source 172.18.2.77

③清空iptables过滤规则

iptables -F 

2.iptables和firewall区别

centos7以后使用firewalld来管理防火墙

1,firewalld可以动态修改单条规则,动态管理规则集,允许更新规则而不破坏现有会话和连接。而iptables,在修改了规则后必须得全部刷新才可以生效;
2,firewalld使用区域和服务而不是链式规则;
3,firewalld默认是拒绝的,需要设置以后才能放行。而iptables默认是允许的,需要拒绝的才去限制;
4,firewalld自身并不具备防火墙的功能,而是和iptables一样需要通过内核的netfilter来实现。也就是说,firewalld和iptables一样,它们的作用都用于维护规则,而真正使用规则干活的是内核的netfilter。只不过firewalld和iptables的结果以及使用方法不一样
5.firewalld是iptables的一个封装,可以让你更容易地管理iptables规则。它并不是iptables的替代品,虽然iptables命令仍可用于firewalld,但建议firewalld时仅使用firewalld命令。

3.查询系统及资源的相关状态

系统 
uname -a # 查看内核/操作系统/CPU信息 
head -n 1 /etc/issue # 查看操作系统版本 
cat /proc/cpuinfo # 查看CPU信息 
hostname # 查看计算机名 
资源 
free -m # 查看内存使用量和交换区使用量 
df -h # 查看各分区使用情况 
du -sh # 查看指定目录的大小 
grep MemTotal /proc/meminfo # 查看内存总量 
grep MemFree /proc/meminfo # 查看空闲内存量 
uptime # 查看系统运行时间、用户数、负载 
cat /proc/loadavg # 查看系统负载 

4.firewalld常用命令

firewall-cmd --zone=public --add-port=30000-35000/tcp --permanent

5.系统调优部分

①列出系统推荐的内核调优配置文件

tuned-adm list   列出所有的调优配置文件
tuned-adm recommend  列出系统推荐的内核调优配置文件
tuned-adm profile virtual-guest 修改为某个调优配置文件

②修改内核参数

sysctl -a  查看内核所有参数
sysctl -a |grep net.ipv4.ip_forward  过滤某个内核参数
sysctl -w net.ipv4.ip_forward=1   临时修改参数
sysctl -p     使内核配置生效

6.性能调优思路

架构优化——》硬件升级——》代码优化——》系统配置调优
从右到左,成本最高,效果最显著;从左到右,成本越低,效果越小

7.用户管理

①监控登录

w 查看谁在登录
last   登录和重启的记录
lastb   尝试登录失败
lastlog 最近登录日志

②sudo提权方法

visudo /etc/sudoers.d/user1
user1 ALL= (ALL) NOPASSWD: /usr/bin/passwd, /usr/bin/mkdir   

③新建用户和组

groupadd it
useradd -u 2000 -g it user1

二、Linux基础操作部分

1.swap分区的管理

free -m 查看交换分区
swapon /dev/sdc1  临时挂载swap分区
swapoff -a  关闭所有swa分区
blkid -o list 查看设备信息

2.使用dd命令生成一个10G文件

dd if=/dev/zero of=text10g bs=10M count=1024

3.随机生成32位随机密码

cat /dev/urandom |head -1 |md5sum |head -c 32 >> ./pass.txt

4.查看IP的链接数

netstat -n  | awk '/^tcp/ print $5' | awk -F: 'print $1' | sort | uniq -c | sort -rn

5.系统进程的管理

①查看系统进程

ps -ef 或者ps -aux 查看系统进程

②终止进程

kill -9 pid   强制终止进程
kill -15 pid   安全的终止进程

③查看pid

[root@server-01 ~]# pidof chronyd    查看进程的pid
719
[root@server-01 ~]# ps -p $(pidof chronyd)    查看进程的pid详细信息
    PID TTY          TIME CMD
    719 ?        00:00:04 chronyd

6.嗅探80端口访问

 tcpdump -i eth0 -tnn dst port 80 -c 1000 | awk -F"."  'print $1"."$2"."$3"."$4"."' | sort | uniq -c | sort -nr | head -5

7.查看http的TCP链接状态以及并发请求数

[root@server-01 ~]# netstat -tan | awk '/^tcp/ ++state[$NF] END for(key in state) print key,"\\t",state[key]'
LISTEN 	 10
ESTABLISHED 	 27

8.过滤拥有人为root的进程

[root@server-01 ~]# pgrep -U root -l |head
1 systemd
2 kthreadd
3 rcu_gp
4 rcu_par_gp
6 kworker/0:0H-kblockd
9 mm_percpu_wq
10 ksoftirqd/0
11 rcu_sched
12 migration/0
13 watchdog/0

9.查找/etc/下所有以.conf结尾文件

find /etc -name *.conf -exec cp  /data/ \\;
find /data -name *.conf  |xargs rm -rf 删除找到的文件

10.创建软链接和硬链接

①.软链接

[root@server-01 ~]# ln -s /root/pass.txt /tmp/pass_link.ln
[root@server-01 ~]# ll /tmp
total 0
lrwxrwxrwx 1 root root 14 May 10 18:47 pass_link.ln -> /root/pass.txt
[root@server-01 ~]# 

②硬链接

 ln /data/test/test.txt   ln.bak

11.rsync远程同步

rsync -av /etc root@192.168.200.100:/www/

二、存储部分

1.RAID

①raid有哪些类型

RAID 0:可以是一块盘和N个盘组合,其优点读写快,是RAID中最好的. 缺点:没有冗余,一块坏了数据就全没有了.
RAID 1,只能2块盘,盘的大小可以不一样,以小的为准
RAID 53块盘,损失一块盘

②raid使用场景

1、主要性能排序:
  冗余从好到坏:raid 1  raid 10  raid 5  raid 0

  性能从好到坏:raid 0  raid 10  raid 5  raid 1

  成本从低到高:raid 0  raid 5   raid 1  raid 10
2、RAID类型的选择

  单台服务器,很重要,盘不多,系统盘raid1

  数据库/存储服务器,主库raid10,从库raid5/raido(为了维护成本,raid10)

  web服务器,如果没有太多的数据的话,raid5,raid0(单盘)

  有多台监控/应用服务器raid5,raid0

2.快照技术

COW:写时拷贝,即数据修改写入时,将磁盘上的旧数据拷贝到新位置,而将新数据直接写入旧数据的原有磁盘位置.
ROW:Redirect On Write,写时重定向,即数据修改写时,不覆盖掉磁盘上的旧数据,而是新分配磁盘空间将数据写入。

参考学习链接:快照技术

3.DAS、NAS、SAN的比较

DAS:direct attached storage 直接附加存储
DAS是1个或多个直接连接到使用它们的服务器上的指定存储设备,这些存储设备为服务器提供块级数据访问服务。
NAS(Network Attached Storage)网络附加存储,即将存储设备连接到现有的网络上,提供数据和文件服务

SAN:存储区域网络,提供在主机和存储系统之间数据传输,网络内部数据传输的速率快

4.块存储、文件存储、对象存储

块存储: 裸设备,例如U盘,硬动硬盘;SAN存储:例如华为的OceanStor传统存储设备,底层是块存储
块存储+文件系统,NAS,典型代表群晖
对象存储:百度网盘,obs华为,oss阿里,底层架构只有两层:桶-对象

5.备份和容灾

①备份

1.物理备份:保存数据的副本,备份到底层的数据块,硬盘损坏了可以通过物理备份还原,例如数据库的RMAN
2.逻辑备份:保存的是状态和元数据,不保存底层块的数据,数据删了,可以通过逻辑备份找回,例如数据库的expdp/impdp.

②备份和快照的区别

快照的COW和ROW是保存数据的一种状态,还原快照,可以解决在逻辑层面,文件丢失的问题

6.存储学习链接

华为云计算之存储的分类
华为云计算之存储基础知识
Linux系统的磁盘管理
Raid技术在Linux下的使用
Linux系统之创建逻辑卷
华为云计算之磁盘技术
华为云计算之ebackup了解
FusionStorage整体介绍

三、centos7/8开机流程

1.把MBR加载到内存, MBR=512字节=引导程序(446字节)+64字节(分区表)+2字节
2.BIOS加载grub引导程序,系统控制交给引导程序。
3.引导程序加载配置文件/boot/grub2/grub.cfg,告诉/boot目录所在分区和内核文件在哪,并加载内核和initramfs,并放入内存中。initramfs包含启动时硬件必要的内核模块和初始化脚本。
4.Kernel自身初始化,且内核在initramfs中找到所有硬件的驱动程序,初始化这些硬件。
5.initramfs中的/sbin/init以pid为1的进程启动,并链接到systemd。
6.内核将根从initramfs切换到真正的根。
7.启动第一个程序systemd
————————————————
版权声明:本文为CSDN博主「江湖有缘」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/jks212454/article/details/117900788`

四、网络部分

以华为系列三层交换机为例

1.配置telnet

[SW2]telnet server enable 
[SW2]user-interface vty 0 4
[SW2-ui-vty0-4]protocol inbound telnet 
[SW2-ui-vty0-4]authentication-mode aaa
[SW2-ui-vty0-4]idle-timeout 15
[SW2-ui-vty0-4]quit
[SW2]aaa		
[SW2-aaa]local-user admin password cipher admin privilege level 15
————————————————
版权声明:本文为CSDN博主「江湖有缘」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/jks212454/article/details/118469521

2.配置ssh

rsa local-key-pair create

[SW2]user-interface vty 0 4
[SW2-ui-vty0-4]authentication-mode aaa
[SW2-ui-vty0-4]protocol inbound ssh
[SW2-ui-vty0-4]quit
[SW2]ssh user admin1 authentication-type password 
Info: Succeeded in adding a new SSH user.
[SW2]aaa
[SW2-aaa]local-user admin1 password cipher admin1 privilege level 15
Info: Add a new user.
[SW2-aaa]local-user admin1 service-type ssh
[SW2-aaa]quit
[SW2]stelnet server enable 
Info: The Stelnet server is already started.
[SW2]ssh user admin1 service-type stelnet 
[SW2]
————————————————
版权声明:本文为CSDN博主「江湖有缘」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/jks212454/article/details/118469521

3.修改交换机名

sysname SW2

4.创建vlan

vlan batch 10 20 30 40 50 100 200 300

4.配置vlan地址

[SW2]interface Vlanif 10
[SW2-Vlanif10]ip address 192.168.10.1 24

5.配置端口trunk

[SW2]interface GigabitEthernet 0/0/3 
[SW2-GigabitEthernet0/0/3]port link-type trunk 
[SW2-GigabitEthernet0/0/3]port trunk allow-pass vlan 10 20 200

6.查看配置vlan

display vlan

7.配置静态路由

[SW2]IP route-static 0.0.0.0 0.0.0.0 172.16.1.2 
[SW2]IP route-static 0.0.0.0 0.0.0.0 172.16.3.2 PRE	
[SW2]IP route-static 0.0.0.0 0.0.0.0 172.16.3.2 preference 70

8.配置vrrp

SW2]interface vlan 10
[SW2-Vlanif10]vrrp vrid 1 virtual-ip 192.168.10.3
[SW2-Vlanif10]vrrp vrid 1 priority 120
[SW2-Vlanif10]vrrp vrid 1 preempt-mode timer delay 20
[SW2-Vlanif10]quit

9.ospf简单配置

[R1]ospf
[R1] int g0/0/0
[R1-g0/0/0] ip address    172.16.10.1 24
[R1] int g0/0/1
[R1-g0/0/1] ip address 172.16.11.1 24
[R1] int loopback 0
[R1-loopback0] ip address 1.1.1.1 32   
[R1] ospf 1 router-id 1.1.1.1
[R1-ospf1] area 0
[R1-ospf1-area0] network 1.1.1.1 0.0.0.0
[R1-ospf1-area0] network 172.16.10.0 0.0.0.255
[R1-ospf1-area0] network 172.16.11.0 0.0.0.255

五、云计算基本知识

1.云计算三种服务模式

1.基础设施即服务(IaaS)
IaaS(Infrastructure-as-a- Service):基础设施即服务。消费者通过Internet可以从完善的计算机基础设施获得服务。
ps:供应商及相关业务例子:亚马逊的EC2,阿里云的ECS,华为云等产品和服务。
2、平台即服务(PaaS)
PaaS(Platform-as-a- Service):平台即服务。开发人员提供了一个用于通过全球Internet构建应用程序和服务的平台。 Paas提供了按需开发环境,用于开发,测试和管理软件应用程序。
ps:供应商及相关业务例子:AWS Elastic Beanstalk,Heroku,Force.com,谷歌的GAE( Google App Engine),新浪SAE,百度云的开发引擎等产品。
3、软件即服务(SaaS)
SaaS(Software-as-a- Service):软件即服务。它是一种通过Internet提供软件的模式,用户无需购买软件,而是向提供商租用基于Web的软件,来管理企业经营活动。
ps:供应商及相关业务例子:谷歌的Apps,微软的Office 365,Citrix的CloudStack,以及目前比较火的各种云存储(网盘),云相册,云备份,云打印,云监控等正对个人用的云服务产品

2.华为云计算FusionCompute介绍

FusionCompute:FusionCompute是云操作系统基础软件,主要由虚拟化基础平台和云基础服务平台组成,主要负责硬件资源的虚拟化,以及对虚拟资源、业务资源、用户资源的集中管理。

3.华为云计算重要产品与技术

FusionCompute    华为虚拟化平台
CNA    华为虚拟化的物理节点
FusionAccess  华为桌面云产品
ebackup  华为备份软件
replication 华为容灾软件
rainbow   华为迁移工具
FsuionCloud  华为云-私有云
FusionStorage  华为分布式存储
oceansor系列设备   华为传统存储产品

桌面运维工程师常见面试问题汇总(代码片段)

第一部分:A卷1、加快win10系统开机速度的方法有那些?2、目前常用的磁盘分区格式是什么?他们之间有什么区别?3、电脑比较多的情况下,快速安装所有电脑的操作系统采用什么方法?4、BIOS是什么、进入BIOS的设置方式有哪些... 查看详情

运维面试题-linux基础篇(代码片段)

非技术类你对现在运维工程师的理解以及对其工作的认识答:运维工程师在公司当中责任重大,需要保证时刻为公司及客户提供最高、最快、最稳定、最安全的服务。运维工程师的一个小小的失误,很有可能会对公司... 查看详情

linux运维常用知识点总结(代码片段)

...应该掌握的一些运维基础知识。由于本人不是专业的运维工程师,难免会有遗漏和错误,仅供参考!一、linux命令基本格式~]$command[-options]parameter1parameter2...命令选项参数(1)参数(2)command为命令名称或可 查看详情

linux运维工程师必备面试题20道及解析(代码片段)

1.磁盘使用率检测(用shell脚本)root@ecs-c13b~]#catfdisk.sh#!/bin/bash#截取IPIP=`ifconfigeth0|awk-F""'NR==2print$2'`#定义使用率,并转换为数字SPACE=`df-Ph|awk' 查看详情

重点:运维工程师关于mysql的高频率面试题(代码片段)

提示:面试官用不同的语言表达,但是所要了解的知识点是一样的,可照此参考1.MySQL主从复制原理指一台服务器充当主数据库,另一台充当从数据库,主数据库中的数据自动复制到从服务器之中。MySQL主从复制的基础是主数据库... 查看详情

运维工程师面试题及答案(网络运维工程师面试题)

在这里,整理了几个Linux系统运维的相关问题。有些问题没有标准答案。想参加Linux运维面试的朋友,请先考虑一下这些问题。一、Linux操作系统的知识1.常见的Linux发行版有什么?你最擅长哪个?那个官网是什么?请说明你擅长... 查看详情

linux运维工程师会面试哪些

做了2年多运维了,工资上不去想跳槽,看招聘都是服务器的比较高,需要掌握哪些知识和面试技巧知识上面的答主说的很精准了,我来说说技巧。我本身是一名HR,负责新盟教育的Linux讲师招聘,所以我需要懂Linux基础知识,方... 查看详情

计算机网络知识点汇总(代码片段)

...容1Java基础面试题2JVM面试题3Java并发编程面试4计算机网络知识点汇总5MySQL面试题6Mybatis源码分析+面试7Spring面试题8SpringMVC面试题9SpringBoot面试题10SpringClo 查看详情

运维工程师面试(代码片段)

1、MySQL数据库备份的方法编写shell脚本dbName=你的数据库名称user=你的数据库账户password=你的数据库密码storePath=备份文件存储目录mysqldump-u$user-p$password$dbName>$storePath/$dbName_$(date+%Y%m%d_%H%M).sql#添加可执行权限chmodu 查看详情

linux后台开发相关面试知识点汇总脑图版

...下Linux后台开发的要求和薪资待遇。JD1:Linux服务器开发工程师20-40K职位描述负责移动游戏社区APP后台服务架构设计开发;负责移动游戏社区平台用户数据分析及相关推荐业务开发;负责移动游戏实时语音业务系统设计和开发工... 查看详情

linux基础知识汇总(代码片段)

(一)buffer与cache的区别buffer是缓冲区,数据被提前写入,以防止对系统产生冲击而设。cache是缓存,为了缓和高速设备和低速设备之间而设。系统将一些中间结果置于此处,以加快访问速度。(二)GNU和GPL彼时Unix从免费转而收... 查看详情

java常见面试知识点汇总(代码片段)

提问:LinkedHashMap与TreeMap的实现原理?两者怎么保证有序性的?两者有什么区别?LinkedHashMap和TreeMap都是哈希表结构的具体实现。(a)LinkedHashMap的实现原理LinkedHashMap类继承自HashMap,哈希表的内部存取... 查看详情

java常见面试知识点汇总(代码片段)

提问:LinkedHashMap与TreeMap的实现原理?两者怎么保证有序性的?两者有什么区别?LinkedHashMap和TreeMap都是哈希表结构的具体实现。(a)LinkedHashMap的实现原理LinkedHashMap类继承自HashMap,哈希表的内部存取... 查看详情

前端工程师面试题汇总-3(0711)(代码片段)

1、请详细说明position定位的值有什么区别 static:position属性默认值relative:相对定位,定位是相对于自身位置定位(设置偏移量的时候,会相对于自身所在的位置偏移)。设置了relative的元素仍然处在文档流中,元素的宽高不... 查看详情

linux运维工程师会面试哪些

给大家分享一些Linux面试题的笔记,从负载均衡、nginx、MySQL、redis、kafka、zabbix、k8s等方面拆解Linux知识点。用来对个人技术点进行查漏补缺。目录:1.磁盘使用率检测(用shell脚本)2.LVS负载均衡有哪些策略?3.谈谈你对LVS的理解... 查看详情

css面试题汇总(持续更新)(代码片段)

...因此这里我整理一些比较常用的,或者是相对比较重要的知识点,每个知识点都会由浅入深,把相关的都放在一起,便于自己复习,感兴趣的朋友也可以一起学习收藏。(此篇非100%原创,因为收集一些代码示例的时候,我会直... 查看详情

超全超详细,常见sql面试知识点汇总(代码片段)

...学相关的工作(例如数据分析师、数据科学家和数据工程师)在面试时总会问到关于SQL的问题。SQL面试问题旨在评估应聘者的技术和解决问题的能力。因此对于应聘者来说,关键在于不仅要根据样本数据编写出正确的... 查看详情

前端面试高频考点,es6知识点汇总!!!(代码片段)

前端面试高频考点,ES6知识点汇总!!!⛳️大家好,我是王同学,今天给大家分享的是ES6面试的高频考点,文章没有一点套路,只有满满的干货⛳️如果对你有帮助就给我点个赞吧,这样我们就互... 查看详情