28个运维经典面试题
2023运维工程师面试题20道基础
以下是20道关于运维工程师的面试题,涵盖了基础知识和实践经验:
1.什么是运维工程师,其主要职责是什么?
2.描述一下您在过去的运维工作中所负责的任务。
3.什么是Linux操作系统,它与Windows操作系统的区别是什么?
4.您如何管理和维护Linux服务器?
5.您如何监控Linux服务器的性能和安全?
6.什么是SSH协议,它是如何工作的?
7.您如何进行网络故障排除?
8.您如何配置和管理网络设备,如路由器和交换机?
9.您如何备份和恢复数据?
10.您如何安装和配置软件和应用程序?
11.您如何处理系统安全问题,例如防止黑客攻击和保护敏感数据?
12.您如何优化系统性能?
13.您如何解决系统故障和问题?
14.您如何编写自动化脚本以简化重复的任务?
15.您如何与其他团队成员合作以实现共同的目标?
16.您如何处理突发故障和紧急事件?
17.您如何管理多个项目并确保它们按时完成?
18.您如何评估和提高系统的可用性和可靠性?
19.您如何持续改进和优化运维过程和工具?
20.您认为作为一名运维工程师最重要的品质是什么?
以上问题可以帮助您了解应聘者的技术水平、实践经验、问题解决能力和团队合作精神。
运维面试提问
超哥分享 以下问题,针对想⾯试中级运维岗位提问,初级运维会再简单些。
1.在公司负责运维什么?(整体考核)
2.针对性提问(知识点考核)
web :
数据库:
回答:关于⽹站架构,⾃动化,持续集成,迭代更新,数据备份,容器化,问题排错
涉及知识点:前后端⽹站部署架构,ansible ,saltstack ,jenkins ,shell ,rsync ,docker ,k8s
12 ⾃动化:
基础:ansible ,命令,剧本⽤法
进阶:playbook 脚本写的如何,发布过什么项⽬,jinja2,role ⽤的如何
123 nginx
1 mysql
redis
mongodb
postgreSQL
1234
CICD:
容器篇:
k8s 篇:
关于更多⾯试题,google 能搜到很多,可以给⾃⼰查漏补缺。
jenkins 如何⽤的
1 公司项⽬是否容器化
docker ⽤法,dockerfile 指令作 docker 存储,⽹络如何设置 docker-compose 如何编排应⽤1234 etcd ⽤过哪些功能
k8s 安装流程,原理是否了解 什么是静态pod
pod 创建流程
pod 重启策略,健康检查,探针 configmap 和secret 作⽤,区别 说说k8s workload
k8s 扩容机制
service 怎么找到pod ? ⽤过⽆头svc 吗
外部如何访问k8s 内应⽤ k8s 数据采集的⽅式有哪些 k8s 的⽇志管理⽅式
12345678910111213。
运维面试题(含答案)
运维工程师面试题姓名: 答题时间:1.新安装MYSQL后怎样提升MYSQL的安全级别A.修改mysql默认端口下可以通过iptables来限制访问mysql端口的IP地址】C.对所有用户设置较复杂密码并严格指定对应账号的访问IP(可在mysql库中user表中指定用户的访问可访问IP地址)特权账号的处理(建议给root账号设置强密码,并指定只允许本地登录)E.开启二进制查询日志和慢查询日志安装目录及数据存储目录权限控制:给mysql安装目录读取权限,给mysql日志和数据所在目录读取和写入权限G.删除无用mysql账号和删除无用的数据库(安装好的mysql默认会有个test库,可将其删除)2.】3.MYSQL的主从原理,怎么配置文件整体上来说,复制有3个步骤:将改变记录到二进制日志(binarylog)中(这些记录叫做二进制日志事件,binarylogevents);将master的binarylogevents拷贝到它的中继日志(relaylog);重做中继日志中的事件,将改变反映它自己的数据。
4.~5.mysql主从复制的优点<1>如果主服务器出现问题,可以快速切换到从服务器提供的服务;<2>可以在从服务器上执行查询操作,降低主服务器的访问压力;<3>可以在从服务器上执行备份,以避免备份期间影响主服务器的服务。
6.Mysql复制的基本原理过程.(1)Slave上面的IO线程连接上Master,并请求从指定日志文件的指定位置(或者从最开始的日志)之后的日志内容;(2)Master接收到来自Slave的IO线程的请求后,通过负责复制的IO线程根据请求信息读取指定日志指定位置之后的日志信息,返回给Slave端的IO线程。
返回信息中除了日志所包含的信息之外,还包括本次返回的信息在Master端binarylog文件的名称以及在Binarylog中的位置;(3)Slave的IO线程收到信息后,将接收到的日志内容依次写入到Slave端的RelayLog文件()的最末端,并将读取到的Master端的bin-log的文件名和位置记录到master-info文件中,以便在下一次读取的时候能够清楚的告诉master“我需要从某个bin-log的哪个位置开始往后的日志内容,请发给我”(4)Slave的SQL线程检测到RelayLog中新增加了内容后,会马上解析该Log文件中的内容成为在Master 端真实执行时候的那些可执行的查询或操作语句,并在自身执行那些查询或操作语句,这样,实际上就是在master 端和Slave端执行了同样的查询或操作语句,所以两端的数据是完全一样的。
面试运维的面试题目(3篇)
第1篇一、基础理论题1. 请简要介绍Linux操作系统的特点及其在运维工作中的应用。
解析:Linux操作系统具有开源、稳定、安全性高、可定制性强等特点。
在运维工作中,Linux操作系统被广泛应用于服务器、存储、网络等领域,如Web服务器、数据库服务器、文件服务器等。
2. 什么是IP地址?请解释IPv4和IPv6地址的区别。
解析:IP地址是互联网中用于标识设备位置的数字标识。
IPv4地址采用32位表示,分为A、B、C、D、E五类,其中A、B、C类地址用于公共网络,D类地址用于多播,E类地址为保留地址。
IPv6地址采用128位表示,采用冒号分隔的十六进制形式,旨在解决IPv4地址耗尽的问题。
3. 请解释TCP/IP协议栈中的TCP和UDP协议的区别。
解析:TCP(传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层协议,适用于传输大量数据、需要保证数据完整性的场景。
UDP(用户数据报协议)是一种无连接的、不可靠的、基于数据报的传输层协议,适用于传输少量数据、对实时性要求较高的场景。
4. 请解释DNS域名解析的过程。
解析:DNS(域名系统)是一种将域名转换为IP地址的系统。
域名解析过程如下:(1)本地DNS缓存查询:首先,DNS服务器会检查本地缓存中是否有对应的域名解析记录。
(2)递归查询:如果本地缓存中没有记录,DNS服务器会向根域名服务器查询顶级域名服务器(如.com、.cn等)的IP地址。
(3)迭代查询:顶级域名服务器返回相应的权威域名服务器的IP地址,DNS服务器再次查询该权威域名服务器。
(4)获取IP地址:权威域名服务器返回对应的IP地址,DNS服务器将IP地址返回给客户端。
5. 请解释HTTP协议的工作原理。
解析:HTTP(超文本传输协议)是一种应用层协议,用于在Web浏览器和服务器之间传输数据。
HTTP协议的工作原理如下:(1)客户端发送请求:客户端(如浏览器)向服务器发送HTTP请求,包括请求方法(如GET、POST)、URL、协议版本、请求头等信息。
运维工程师的面试题及答案
运维工程师的面试题及答案一、简介运维工程师是负责系统运维管理的专业人员,需要具备一定的技术和知识储备。
在面试中,面试官通常会提出一些相关的问题,以评估应聘者的技术能力和工作经验。
本篇文章将整理一些典型的运维工程师面试题目及其答案,帮助读者更好地准备面试。
二、面试题目及答案题目一:请介绍一下你在之前的工作中负责的项目。
回答:在之前的工作中,我参与了一个大型网络公司的运维团队,负责管理和维护公司的服务器和网络设备。
我负责监控系统运行情况,进行故障排除,并提供技术支持。
此外,我还定期进行系统维护和更新,并制定应急预案以确保系统的稳定性和安全性。
题目二:请描述一下你在处理一次系统故障时的整个过程?回答:在处理系统故障时,我首先会迅速定位问题,并进行初步的排查。
接下来,我会检查系统的日志文件和监控数据,以了解问题的具体原因。
如果问题严重影响了系统的正常运行,我会立即采取措施进行紧急修复,以减少故障对业务的影响。
在修复故障后,我会进行详细的分析和记录,以避免类似问题再次发生。
题目三:在运维工作中,你遇到过哪些紧急情况,如何解决的?回答:我曾经遇到过一次数据库服务器突然宕机的紧急情况。
在发现问题后,我立即与数据库管理员配合,进行问题排查。
我们迅速找到了问题所在,是由于服务器硬件故障导致的。
为了尽快恢复服务,我们利用备份恢复了数据,并将服务迁移到备用服务器上。
在修复主服务器后,我还对整个系统进行了全面的检查和测试,以确保问题不会再次发生。
题目四:你在工作中如何保障系统的安全性?回答:为了保障系统的安全,我采取了多种措施。
首先,我定期对系统进行漏洞扫描和安全评估,并及时修补任何发现的漏洞。
其次,我会定期备份重要的数据,并将备份数据存储在安全的地方,以防止数据丢失。
另外,我会监控系统的日志,并及时发现并应对任何异常行为。
此外,我还会进行用户权限管理,确保只有授权的用户才能访问系统。
题目五:你在工作中如何与其他团队进行协作?回答:在工作中,我经常需要与其他团队进行协作,比如研发团队或者产品团队。
运维笔试面试题目及答案精选全文完整版
可编辑修改精选全文完整版运维笔试面试题目及答案一、题目一:Linux命令1. 查看服务器当前运行的进程的命令是什么?答:ps aux2. 列出当前目录下所有的文件(包括隐藏文件)的命令是什么?答:ls -a3. 如何查看一个文件的前10行?答:head -n 10 文件名4. 如何将一个文件从一个目录移动到另一个目录?答:mv 文件名目标目录5. 如何查看一个文件有多少行?答:wc -l 文件名二、题目二:网络基础1. 解释TCP/IP协议族。
答:TCP/IP协议族是一组用于互联网通信的协议,包括TCP、IP、UDP、ICMP等协议。
TCP负责可靠的数据传输,IP负责寻址和路由选择,UDP用于无连接的数据传输,ICMP用于错误检测和网络状况通知。
2. 什么是MAC地址?答:MAC地址是网卡的物理地址,在以太网中唯一标识一个网络设备。
MAC地址由48位二进制数组成,通常以十六进制表示,格式为00-00-00-00-00-00。
3. 解释DNS的作用。
答:DNS(Domain Name System)将域名转换为IP地址的过程,使得用户可以通过域名访问互联网资源。
DNS解析使用了分布式数据库的技术,将域名与IP地址进行映射。
4. 什么是HTTP协议?答:HTTP(Hypertext Transfer Protocol)是一种基于请求与响应模式的应用层协议,用于传输超文本资源。
HTTP使用TCP作为传输协议,客户端发送请求给服务器,服务器返回响应给客户端。
5. 什么是ARP协议?答:ARP(Address Resolution Protocol)用于将IP地址解析为MAC 地址,通过发送ARP请求广播来获取目标设备的MAC地址,以便在局域网内进行通信。
三、题目三:服务器硬件1. 什么是RAID?常见的RAID级别有哪些?答:RAID(Redundant Array of Independent Disks)是一种磁盘阵列技术,将多个硬盘组合成一个逻辑单元,实现数据的冗余备份和性能提升。
(完整版)运维面试题(含答案)
(完整版)运维面试题(含答案)运维工程师面试题姓名: 答题时间:1.新安装MYSQL后怎样提升MYSQL的安全级别?A.修改mysql默认端口B.linux下可以通过iptables来限制访问mysql端口的IP地址C.对所有用户设置较复杂密码并严格指定对应账号的访问IP(可在mysql库中user表中指定用户的访问可访问IP地址)D.root特权账号的处理(建议给root账号设置强密码,并指定只允许本地登录)E.开启二进制查询日志和慢查询日志F.mysql安装目录及数据存储目录权限控制:给mysql安装目录读取权限,给mysql日志和数据所在目录读取和写入权限G.删除无用mysql账号和删除无用的数据库(安装好的mysql默认会有个test库,可将其删除)2.MYSQL的主从原理,怎么配置文件?整体上来说,复制有3个步骤:A.master将改变记录到二进制日志(binary log)中(这些记录叫做二进制日志事件,binary log events);B.slave将master的binary log events拷贝到它的中继日志(relay log);C.slave重做中继日志中的事件,将改变反映它自己的数据。
3.mysql主从复制的优点<1> 如果主服务器出现问题,可以快速切换到从服务器提供的服务;<2> 可以在从服务器上执行查询操作,降低主服务器的访问压力;<3> 可以在从服务器上执行备份,以避免备份期间影响主服务器的服务。
4.Mysql复制的基本原理过程(1)Slave上面的IO线程连接上Master,并请求从指定日志文件的指定位置(或者从最开始的日志)之后的日志内容;(2)Master接收到来自Slave的IO线程的请求后,通过负责复制的IO线程根据请求信息读取指定日志指定位置之后的日志信息,返回给Slave端的IO线程。
返回信息中除了日志所包含的信息之外,还包括本次返回的信息在Master端binary log文件的名称以及在Binary log中的位置;(3)Slave的IO线程收到信息后,将接收到的日志内容依次写入到Slave端的RelayLog 文件(mysql-relay-lin.xxxxx)的最末端,并将读取到的Master端的bin-log的文件名和位置记录到master-info 文件中,以便在下一次读取的时候能够清楚的告诉master“我需要从某个bin-log的哪个位置开始往后的日志内容,请发给我”(4)Slave的SQL线程检测到Relay Log中新增加了内容后,会马上解析该Log文件中的内容成为在Master端真实执行时候的那些可执行的查询或操作语句,并在自身执行那些查询或操作语句,这样,实际上就是在master端和Slave端执行了同样的查询或操作语句,所以两端的数据是完全一样的。
运维工程师面试题目
运维工程师面试题目【正文】一、系统运维的基础知识1.请简要介绍一下系统运维的定义和职责。
系统运维,全称系统运维工程师,是指负责维护、管理和监控计算机系统及相关的硬件和软件资源,确保系统正常运行和高效工作的专业人员。
其主要职责包括但不限于:- 配置和安装服务器、网络设备等硬件设备;- 安装和维护操作系统和应用程序;- 监控系统性能,并进行故障排除和问题解决;- 制定和执行数据备份和恢复策略;- 进行系统性能调优和优化。
2.请列举一些常见的服务器操作系统。
常见的服务器操作系统有:- Windows Server- Linux(如CentOS、Ubuntu、Red Hat等)- Unix- FreeBSD3.系统运维中,如何进行有效的日志管理?日志管理在系统运维中非常重要,可以采取以下措施进行有效管理:- 设置合适的日志级别,避免过多的冗余信息;- 定期对日志进行清理和归档,防止磁盘空间过载;- 配置日志轮转,避免单个日志文件过大;- 使用日志分析工具,及时监测和发现异常;- 建立日志备份策略,保证日志的安全可靠存储。
4.请介绍一下常见的负载均衡技术。
常见的负载均衡技术包括以下几种:- 硬件负载均衡:使用专用的负载均衡硬件设备,如F5、CiscoACE等;- 软件负载均衡:通过软件方式实现负载均衡,如Nginx、HAProxy 等;- DNS负载均衡:通过DNS解析将请求分发到多个服务器上;- 会话保持:确保用户的会话在同一台服务器上进行,避免切换导致错误。
5.在运维过程中,常见的安全策略有哪些?常见的运维安全策略包括:- 访问控制:采用权限管理,为不同的角色和用户分配不同的访问权限;- 防火墙:配置和管理防火墙规则,限制非法访问;- 定期更新和升级软件:及时修补系统和应用的安全漏洞;- 加密通信:采用HTTPS等加密协议确保数据传输的安全;- 监控和审计:运行安全监控工具,进行实时监测和异常处理。
二、网络运维与故障排查1.请解释什么是IP地址?IPv4与IPv6有什么区别?IP地址是指互联网协议地址,用于标识和定位计算机和网络设备。
运维工程师面试题目
运维工程师面试题目运维工程师面试题目一1、了解什么是IDC?IDC机房就是电信部门利用已有的互联网通信线路、带宽资源,建立标准化的电信专业级机房环境,为企业、政府提供服务器托管、租用以及相关增值等方面的全方位服务。
也就是说有一套专门的标准。
目前我国比较大的机房主要在北京、上海、广州、唐山等地。
2、企业为什么把设备放IDC?托管的好处首先要了解服务器的运行环境,服务器的运行是必须确保能全天24小时不停运行,以及当服务器受到攻击的时候能及时有效地处理,以免造成损失,第三是服务器的运行散发出的噪音以及热量是很高的,需要一个恒温恒湿度的环境才能确保服务器的正常运行以及延长服务器使用寿命,总结以上,全年下来机器运行电费,空调电费,如果请技术人员维护的话需要维护费用,还有最重要的是家庭宽带满足不了服务器的要求,一旦有攻击的话宽的话会造成联网速度慢甚至连不上网,影响小区居民用网或者大厦其他公司用网,我想这样的事情大家都不乐意看到3、HSRP是什么意思?VTP是什么?UTP是什么?热备份路由器协议(HSRP)的设计目标是支持特定情况下 IP 流量失败转移不会引起混乱、并允许主机使用单路由器,以及即使在实际第一跳路由器使用失败的情形下仍能维护路由器间的连通性。
换句话说,当源主机不能动态知道第一跳路由器的 IP 地址时,HSRP 协议能够保护第一跳路由器不出故障。
VTP(VLAN TrunkingProtocol):是VLAN中继协议,也被称为虚拟局域网干道协议。
它是思科私有协议。
作用是十几台交换机在企业网中,配置VLAN工作量大,可以使用VTP协议,把一台交换机配置成VTP Server, 其余交换机配置成VTP Client,这样他们可以自动学习到server 上的VLAN 信息。
计算机局域网中的双绞线可分为非屏蔽双绞线(UTP)和屏蔽双绞线(STP)两大类:STP外面由一层金属材料包裹,以减小辐射,防止信息被窃听,同时具有较高的数据传输速率,但价格较高,安装也比较复杂;UTP无金属屏蔽材料,只有一层绝缘胶皮包裹,价格相对便宜,组网灵活,其线路优点是阻燃效果好,不容易引起火灾。
计算机运维面试题及答案
计算机运维面试题及答案一、选择题1. 在Linux系统中,以下哪个命令用于查看当前系统负载?A. topB. uptimeC. psD. ls答案:B2. 以下哪个选项是正确的IP地址格式?A. 192.168.1.1B. 256.100.50.25C. 192.168.1.256D. 10.0.0.0.1答案:A3. 在Windows系统中,哪个服务负责域名解析?A. DNSB. DHCPC. FTPD. HTTP答案:A二、填空题1. 在Linux系统中,使用________命令可以查看当前路径下的所有文件和目录。
答案:ls2. 在Windows系统中,________服务用于管理网络配置。
答案:DHCP3. 一个标准的B类IP地址的子网掩码是________。
答案:255.255.0.0三、简答题1. 请简述什么是DNS服务?答案:DNS服务,即域名系统服务,是互联网上的一项服务,它将域名和IP地址相互映射,使人更方便地访问互联网。
用户只需要通过易于记忆的域名访问,而DNS服务会将域名解析为IP地址,从而访问到相应的服务器。
2. 描述一下在Linux系统中如何查看当前系统运行的进程。
答案:在Linux系统中,可以通过执行`ps`命令来查看当前系统运行的进程。
使用`ps aux`可以查看所有进程的详细信息,包括进程ID、用户、CPU和内存使用情况等。
四、论述题1. 论述在计算机运维中,如何确保系统的高可用性?答案:确保系统的高可用性是计算机运维中的关键任务。
这通常涉及以下几个方面:- 定期进行系统维护和更新,以修复已知的安全漏洞和性能问题。
- 实施冗余设计,如使用多台服务器和负载均衡器,以确保在一台服务器发生故障时,其他服务器可以接管其工作。
- 制定和执行灾难恢复计划,以便在发生严重故障时能够迅速恢复服务。
- 监控系统性能和日志,以便及时发现并解决问题。
- 定期进行系统备份,确保数据的安全和可恢复性。
运维工程师面试题
运维工程师面试题在当今数字化时代,运维工程师的角色愈发重要。
他们是保障系统稳定运行、确保业务连续性的关键人物。
当企业招聘运维工程师时,面试环节中的问题至关重要。
以下是一些常见且关键的运维工程师面试题:一、基础技术知识1、请简要介绍一下常见的操作系统(如 Linux、Windows Server),以及它们在运维中的应用场景。
2、谈谈你对网络协议(如 TCP/IP、HTTP、DNS)的理解,以及在实际工作中如何排查网络故障。
3、数据库方面,熟悉哪些数据库(如 MySQL、Oracle、SQL Server)?如何进行数据库的备份和恢复?4、解释一下什么是虚拟化技术(如 VMware、KVM),以及它在运维中的优势。
二、系统管理与监控1、描述一下如何进行服务器的性能监控和优化,包括CPU、内存、磁盘 I/O 等方面。
2、如何配置和管理系统日志,以便及时发现和解决问题?3、谈谈你对自动化运维工具(如 Ansible、Puppet、SaltStack)的使用经验。
4、当系统出现故障时,你的故障排查流程是怎样的?三、安全与防护1、简述常见的网络攻击方式(如 DDoS、SQL 注入、XSS),以及如何防范。
2、如何进行系统的安全加固,包括操作系统、网络设备和应用程序?3、解释一下什么是防火墙,以及如何配置规则来保障网络安全。
4、对于数据加密和备份策略,你有什么看法和实践经验?四、脚本编写与开发1、展示一下你使用脚本语言(如 Python、Shell)解决实际问题的案例。
2、如何编写高效的脚本,提高运维工作的效率?3、熟悉哪些开发框架或库,对它们在运维中的应用有什么理解?五、团队协作与沟通1、在团队项目中,如何与开发人员、测试人员和其他运维工程师进行有效的沟通和协作?2、当面对紧急情况或高压力的工作环境时,你如何保持冷静并处理问题?3、描述一次你在团队中成功解决复杂问题的经历,以及你所扮演的角色。
六、问题解决能力1、假设服务器突然出现高负载,你会如何快速定位并解决问题?2、如果遇到新的技术难题,你会通过哪些途径获取解决方案?3、讲述一次你在工作中犯的错误,以及你是如何从中吸取教训并改进的。
运维工程师面试题
运维工程师面试题一、简介运维工程师是一个在科技行业中非常重要的职位。
他们负责建立和维护计算机系统、网络和服务器,确保系统的稳定性和安全性。
这是一个充满挑战性和责任感的职位,因此对于运维工程师的面试准备也非常重要。
二、面试问题1. 请介绍一下你的运维工作经验。
2. 你在以前的工作中遇到的最大挑战是什么?你是如何解决的?3. 请介绍一下你熟悉的运维工具和技术。
4. 如何处理突发的系统故障?请描述一次你成功解决系统故障的经历。
5. 在运维工作中,你是如何确保系统的安全性和稳定性的?6. 你在应对大规模流量突增时的工作经验是什么?7. 请简要介绍一下容器技术在运维中的应用。
8. 你是否了解自动化部署和持续集成?你有使用哪些工具和方法来简化部署过程?9. 请举例说明你如何监控和优化服务器性能。
10. 你如何与开发团队合作,确保运维工作的高效进行?三、回答技巧和要点1. 在介绍工作经验时,着重提及你负责的项目、使用的技术和所取得的成绩。
2. 在回答挑战性问题时,先明确问题,然后描述你面临的挑战和解决方案,最后重点强调你取得的成果。
3. 在介绍运维工具和技术时,展示对相关工具和技术的深入理解和实际应用经验。
4. 在描述解决系统故障的经历时,结构化地介绍问题的起因、解决过程和最终结果,强调你的解决方案和技术能力。
5. 在谈到系统安全和稳定性时,强调你对系统监控和风险评估的能力,以及你采取的保护措施。
6. 在描述应对大流量突增时的经验时,突出你的处理能力和项目效果。
7. 在谈到容器技术时,说明你对容器技术原理和实践的了解,并举例说明容器技术在运维中的具体应用。
8. 在讨论自动化部署和持续集成时,展示你对CI/CD流程和工具的了解,并举例说明你在项目中如何应用自动化部署和持续集成。
9. 在谈到服务器性能监控和优化时,介绍你所使用的监控工具和优化方法,并强调你通过优化措施所带来的效果。
10. 在描述与开发团队合作时,强调你的沟通能力、团队协作能力和解决问题的能力。
运维工程师 面试题
运维工程师面试题一、背景介绍运维工程师是现代企业中不可或缺的角色之一。
他们负责维护、管理和优化企业的信息技术基础设施,确保系统的高可用性和稳定性。
在日益复杂的IT环境下,运维工程师扮演着重要角色。
对于企业来说,招聘合适的运维工程师至关重要。
因此,在面试过程中,以下是一些常见的运维工程师面试题。
二、技术问题1. 请简要说明什么是运维工程师的主要职责?2. 请列举您在Linux服务器方面的经验和技能。
3. 您如何保证服务器的高可用性和可靠性?4. 请解释负载均衡,并说明它在运维中的作用。
5. 请讲解一下容灾和备份策略。
6. 您在Shell脚本编程方面有何经验?7. 请解释容器技术,并说明其与虚拟化技术的区别。
8. 您如何监测和诊断网络问题?9. 请举例说明您如何处理系统故障和紧急情况。
10. 请解释监控系统,并描述您在监控工具方面的经验。
三、项目经验1. 请描述您在以往工作中遇到的最具挑战性的项目,并说明您是如何解决的。
2. 请描述一次您参与的团队项目,讲讲您在其中扮演的角色和取得的成就。
3. 请列举您熟悉的自动化运维工具,并说明您在其使用方面的经验。
四、沟通与团队合作1. 请讲讲您与其他部门沟通合作的经验,如何解决跨部门问题。
2. 请描述您与团队成员之间的冲突如何处理,以及您采用的解决方法。
3. 请解释您认为团队合作在运维工程的角色中的重要性。
五、个人发展1. 您如何与技术发展保持同步,持续学习和提升?2. 请列举您参与的相关培训或认证项目,并说明对您个人发展的帮助。
六、其他问题1. 您对新兴技术趋势是否有了解?请谈谈您对云计算、DevOps或人工智能等技术的看法。
2. 请问您在面对紧急情况时的心态和处理方式是怎样的?以上是一些常见的运维工程师面试题,希望能帮助您在求职过程中更好的准备。
祝您面试顺利,获得心仪的工作!。
28个运维经典面试题
1、Linux如何挂载windows下的共享目录?mount.cifs //IP地址/server /mnt/server -o user=administrator,password=123456linux 下的server需要自己手动建一个后面的user与pass 是windows主机的账号和密码注意空格和逗号2、如何查看http的并发请求数与其TCP连接状态?netstat -n | awk ‘/^tcp/ {++b[$NF]}’ END {for(a in b) print a,b[a]}’还有ulimit -n 查看linux系统打开最大的文件描述符,这里默认1024,不修改这里web服务器修改再大也没用。
若要用就修改很几个办法,这里说其中一个:修改/etc/security/limits.confsoft nofile 10240hard nofile 10240重启后生效3、如何用tcpdump嗅探80端口的访问看看谁最高?tcpdump -i eth0 -tnn dst port 80 -c 1000 | awk -F”.” ‘{print $1″.”$2″.”$3″.”$4″.”}’ | sort |uniq -c | sort -nr | head-54、如何查看/var/log目录下的文件数?ls /var/log/ -1R | grep “-” | wc -l5、如何查看Linux系统每个ip的连接数?netstat -n | awk ‘/^tcp/ {print $5}’ | awk -F: ‘{print $1}’ | sort | uniq -c | sort -rn6、shell下生成32位随机密码cat /dev/urandom | head -1 | md5sum | head -c 32 >> /pass7、统计出apache的access.log中访问量最多的5个ipcat access.log | awk ‘{print $1}’ | sort | uniq -c | sort -n -r | head -58、如何查看二进制文件的内容?我们一般通过hexdump命令来查看二进制文件的内容。
运维1000道经典面试题
运维1000道经典面试题1 服务器的linux系统是什么版2 linux你做过那些优化3 在linux上部署过那些服务4 你怎样用nagios做的监控,监控什么?5 用cacti怎样对网络进行监控?以前公司的情况(问具体的数字)?6 你怎样查看日志?查什么内容?7 安装PHP之后,你做了那些优化?8 会用shell吗?都用shell做什么?9 你对apache做了那些优化?10 mysql你都修改了那些配置文件来进行优化(问配置文件中具体修改的内容)?11 用到的什么架构?用什么语言写的,(jsp?asp?php?)画一下架构图并简要介绍一下你们公司的架构。
12 查看正在运行的端口用什么命令?13 用正则表达式做域名排序:n个让把,14 监控会么?你们公司对几台服务器做了监控,监控了哪些服务?如果给你50台服务器,让你监控所有服务器的80端口具体怎么做15 rsync远程连接的时候受控端的验证怎么做16 shell脚本会么?会哪些编程语言?你要说你会shell脚本,问你写过什么脚本?17 raid0 raid1 raid5工作原理有什么区别?你们用的哪种?18 lvs有哪三种?你们用的哪种?这种集群有什么优势?也就是和其他两种的对比分析下差异。
apache熟悉么?模块知道什么如何优化?nginx怎么把来自80端口的请求交给8080?19 memcache工作的时候用到过么?什么命令清理缓存?20 iptables几个表21 iptables熟练么?简单的规则懂么?有几个表几个链?22 SecureCRT如何操作时防断线23 apache怎么调优?24 用过什么监控工具?25 nagios怎么同时监控80台服务器的状态?26 你们公司的架构是什么样的?怎么做的cdn27 对日志都做过哪些操作?用什么做的?28 做过哪些调优?29 会用哪些编程语言,写过什么shell脚本?30 memcache怎么清理缓存31 linux基本服务的配置都会吧?32 linux apache mysql调优33 画出自己公司的架构图34 apache的MPM35 给出一套网游架构分析优缺点(从架构设计、维护成本、数据与备份)36 exchange都做过什么?37 lvs 的模式和算法?38 postfix工作原理39 你对lvs 掌握到什么程度?40 iptable会吗?都做过什么?41 你说一下linux 的启动流程42 nagios报警值43 你平时都干什么?44 前台和后台的进程怎么杀掉45 服务器宕机了如何处理?46 你对小型机了解吗47 遇到故障如何排除?举一个例子;48 会不会编写脚本49 会不会部署squid50 游戏架构了解多少51 怎么样测试网站最大流量52 会不会安装系统53 linux怎么调优的54 以前有多少台服务器55 以前公司的pv多少56 apache mpm 区别57 用过什么负载均衡58 做负载均衡真实服务器ABC 用户访问A并且上传了图片在A 服务器,下次负载到B,B 没有图标,用户怎么请求图片59 用什么监控60 编写过脚本吗?61 ospf相比rip的优点62 进程和线程的区别63 squid 配置过吗?64 存储了解吗?65 apache 的keepalive是做什的?66 lvs有哪些模式?你们原来用什么模式67 你了解dr 原理吗?68 两台directory数据怎么共享存储69 说说你在以前公司的主要职责是什么70 以前使用过什么架构71 以前用什么监控网络流量,网络流量大概是多少。
运维的面试题及答案
运维的面试题及答案一、简介运维(DevOps)是指开发(Development)和运维(Operations)团队之间的一种合作模式。
运维工程师负责支持、维护和保护软件系统的稳定运行,并关注系统的可扩展性、可维护性和安全性。
在运维面试中,常涉及到一些技术问题,下面是一些常见的运维面试题及答案。
二、操作系统1. 什么是进程和线程?答:进程是程序的一次执行,有独立的内存空间;线程是在进程中独立运行的最小单位,共享进程的内存空间。
2. 请描述进程间通信的几种方式。
答:进程间通信可以通过管道、消息队列、信号量、共享内存、套接字等方式实现。
三、网络1. 什么是TCP/IP协议?答:TCP/IP协议是互联网上常用的网络协议,它由两个协议组成:传输控制协议(TCP)和网络互联协议(IP)。
2. 请描述一下TCP的三次握手和四次挥手过程。
答:三次握手过程是:客户端向服务端发送SYN包,服务端回复SYN+ACK包,客户端再回复ACK包,建立连接;四次挥手过程是:客户端向服务端发送FIN包,服务端回复ACK包,服务端发送FIN包,客户端回复ACK包,断开连接。
四、Linux1. 如何查看系统负载?答:可以使用命令`uptime`查看系统负载。
2. 如何查看文件的大小和所占磁盘空间?答:可以使用命令`ls -lh`查看文件的大小,使用命令`du -sh`查看文件所占磁盘空间。
五、云计算1. 什么是云计算?答:云计算是通过互联网提供计算服务的一种模式,用户可以通过网络随时随地访问所需的计算资源。
2. 请介绍几个常见的云计算平台。
答:常见的云计算平台有亚马逊AWS、微软Azure和谷歌云平台等。
六、数据库1. 什么是索引?为什么要使用索引?答:索引是数据库中的一种数据结构,用于快速定位和访问数据。
使用索引可以提高数据的检索效率。
2. 请描述主键和外键的作用。
答:主键用于唯一标识一条记录,保证数据的完整性;外键用于建立表与表之间的关系,保证数据的一致性和完整性。
运维工程师面试题目
运维工程师面试题目标题:运维工程师面试题目及答案解析(上)一、问题1:请简单介绍一下什么是运维工程师?运维工程师(DevOps Engineer)是负责开发、运维和部署软件系统的专业人士。
他们通过自动化工具和流程,确保软件系统的稳定性、可扩展性和高可用性。
除了系统运行维护外,运维工程师还负责自动化部署、持续集成、容器化技术和云计算等方面的工作。
二、问题2:请列举一些常见的运维工程师使用的工具和技术。
运维工程师使用的工具和技术有很多,以下是一些常见的:1. 编程语言:如Shell、Python、Ruby等,用于编写自动化脚本和工具;2. 版本控制工具:如Git、SVN等,用于管理代码版本和团队协作;3. 自动化部署工具:如Ansible、Chef、Puppet等,用于自动化部署和配置管理;4. 容器技术:如Docker、Kubernetes等,用于构建和管理容器化应用;5. 运维监控工具:如Nagios、Zabbix、Prometheus等,用于监控系统状态和性能;6. 日志管理工具:如ELK Stack(Elasticsearch、Logstash、Kibana)等,用于收集、分析和可视化日志;7. 虚拟化技术:如VMware、VirtualBox等,用于创建和管理虚拟机;8. 云计算平台:如AWS、Azure、阿里云等,用于部署和管理云上的应用。
三、问题3:请介绍一下你如何管理一个大型系统的运维工作?管理一个大型系统的运维工作需要有一套完善的管理体系和有效的工作流程。
以下是一些重要的方面:1. 自动化部署流程:建立自动化的部署流程,包括代码版本控制、持续集成和自动化测试等,确保系统更新和发布过程的可靠性和一致性;2. 监控与告警:建立系统监控和告警体系,及时发现和解决潜在的问题,确保系统的正常运行;3. 容量规划与扩展:随着系统的用户和负载增加,需要进行容量规划并及时扩容,确保系统的性能和可用性;4. 维护和升级:定期进行系统维护和升级,如补丁更新、软件更新等,确保系统的安全性和稳定性;5. 日志管理与分析:建立日志管理和分析系统,帮助快速定位和解决问题,提高系统的可靠性和调试效率;6. 灾备与容灾:建立灾备和容灾方案,包括备份方案、故障恢复方案等,确保系统的可靠性和可恢复性;7. 团队合作与沟通:保持良好的团队合作和沟通,与开发人员、测试人员、产品经理等紧密配合,共同推进系统的运维工作。
运维面试问题总结
运维⾯试问题总结1. 基础操作:⾯试和笔试的时候肯定会问到,频率最⾼的命令有:mkdir find awk sed uniq sort tail head mkfs chmod crontab lsofnetstat route tcpdump tar等主要考察为后⾯参数的选择以及格式2. 基础服务:dns dhcp nfs vpn apache ftp ⼯作原理、nfs的三个模块的作⽤,dns的各种记录名称以及作⽤、dhcp的四个过程、apache虚拟主机的创建(有的⾯试官会要求现场写配置⽂件)、ftp的主动模式和被动模式3. 软硬raid的区别 raid的各种级别,各种级别的优缺点、⼤⼩的计算、备份恢复情况、最多可以坏多少个4. 源码包编译的时候、⼤致的过程、系统都做了些什么事情5. Tcp的三次握⼿和四次分⼿的过程和详细的状态以及报⽂段的考察(要求⾮常熟悉,基本每个公司都会问,或者笔试都会考)、osi七层模型每层的功能、每层中都各有那些协议族,那些协议是⾯向连接的,那些是不⾯向连接的。
6. 软硬连接的区别,具体怎么连接的命令7. Linux系统的七个启动级别、操作系统启动过程。
Linux下的7个运⾏级别:0:系统停机状态,系统默认运⾏级别不能设置为0,否则不能正常启动,机器关闭。
1:单⽤户⼯作状态,root权限,⽤于系统维护,禁⽌远程登陆,就像Windows下的安全模式登录。
2:多⽤户状态,没有NFS⽀持。
3:完整的多⽤户模式,有NFS,登陆后进⼊控制台命令⾏模式。
4:系统未使⽤,保留⼀般不⽤,在⼀些特殊情况下可以⽤它来做⼀些事情。
例如在笔记本电脑的电池⽤尽时,可以切换到这个模式来做⼀些设置。
5:X11控制台,登陆后进⼊图形GUI模式,XWindow系统。
6:系统正常关闭并重启,默认运⾏级别不能设为6,否则不能正常启动。
运⾏init6机器就会重启。
POST-->BIOS-->MBR(GRUB)-->Kernel-->Init-->Runlevel。
运维工程师的面试题
运维工程师的面试题一、概述运维工程师是负责管理和维护公司的IT基础设施的专业人员。
他们负责确保服务器、网络和软件系统的正常运行,以保证公司的业务连续性和高效性。
在面试过程中,招聘者通常会提问一些与运维工程师职责和相关技能相关的问题。
本文将介绍一些常见的运维工程师面试题,以帮助应聘者准备面试。
二、面试题1. 请简要介绍一下你的运维经验。
2. 你在平时的工作中使用过哪些运维工具和技术?3. 如何保证服务器的高可用性和可靠性?4. 请说明你在故障排除和问题解决方面的经验。
5. 如何进行系统和网络监控?你使用过哪些工具?6. 请解释一下什么是容器化技术,并说明其在运维中的应用。
7. 你是否熟悉自动化配置管理工具?请举例说明你使用过的工具和其应用场景。
8. 在一个复杂的网络环境中,如何处理网络故障?9. 请介绍一下你对容灾和备份的理解,以及你在实际工作中如何实施。
10. 你如何管理和跟踪IT设备和软件的许可证?11. 请解释一下什么是敏捷开发,并说明它如何影响运维团队的工作。
12. 如何处理日常的系统备份和恢复工作?13. 你是否熟悉云计算和虚拟化技术?请说明其在运维中的应用。
14. 请介绍一下你在IT安全方面的经验和工作方法。
15. 以最近遇到的一个技术挑战为例,详细描述你当时的解决方案和结果。
三、结语以上是一些常见的运维工程师面试题,这些问题旨在考察应聘者的专业知识、经验和技能。
在面试中,应聘者应该准备充分,并能够清晰、准确地回答问题。
除了给出具体的回答,应聘者还可以结合自己的实际经验,举例说明。
通过合理回答这些问题,应聘者有望获得工作机会。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1、Linux如何挂载windows下的共享目录?mount.cifs //IP地址/server /mnt/server -o user=administrator,password=123456linux 下的server需要自己手动建一个后面的user与pass 是windows主机的账号和密码注意空格和逗号2、如何查看http的并发请求数与其TCP连接状态?netstat -n | awk ‘/^tcp/ {++b[$NF]}’ END {for(a in b) print a,b[a]}’还有ulimit -n 查看linux系统打开最大的文件描述符,这里默认1024,不修改这里web服务器修改再大也没用。
若要用就修改很几个办法,这里说其中一个:修改/etc/security/limits.confsoft nofile 10240hard nofile 10240重启后生效3、如何用tcpdump嗅探80端口的访问看看谁最高?tcpdump -i eth0 -tnn dst port 80 -c 1000 | awk -F”.” ‘{print $1″.”$2″.”$3″.”$4″.”}’ | sort |uniq -c | sort -nr | head-5 4、如何查看/var/log目录下的文件数?ls /var/log/ -1R | grep “-” | wc -l5、如何查看Linux系统每个ip的连接数?netstat -n | awk ‘/^tcp/ {print $5}’ | awk -F: ‘{print $1}’ | sort | uniq -c | sort -rn6、shell下生成32位随机密码cat /dev/urandom | head -1 | md5sum | head -c 32 >> /pass7、统计出apache的access.log中访问量最多的5个ipcat access.log | awk ‘{print $1}’ | sort | uniq -c | sort -n -r | head -58、如何查看二进制文件的内容?我们一般通过hexdump命令来查看二进制文件的内容。
hexdump -C XXX(文件名) -C是参数不同的参数有不同的意义-C 是比较规范的十六进制和ASCII码显示-c 是单字节字符显示-b 单字节八进制显示-o 是双字节八进制显示-d 是双字节十进制显示-x 是双字节十六进制显示9、ps aux 中的VSZ代表什么意思,RSS代表什么意思?VSZ:虚拟内存集,进程占用的虚拟内存空间RSS:物理内存集,进程战用实际物理内存空间10、如何检测并修复/dev/hda5?fsck用来检查和维护不一致的文件系统。
若系统掉电或磁盘发生问题,可利用fsck命令对文件系统进行检查11、介绍下Linux系统的开机启动顺序加载BIOS–>读取MBR–>Boot Loader–>加载内核–>用户层init一句inittab文件来设定系统运行的等级(一般3或者5,3是多用户命令行,5是界面)–>init进程执行rc.syninit–>启动内核模块–>执行不同级别运行的脚本程序–>执行/etc/rc.d/rc.local(本地运行服务)–>执行/bin/login,就可以登录了。
12、符号链接与硬链接的区别我们可以把符号链接,也就是软连接当做是windows系统里的快捷方式。
硬链接就好像是又复制了一份,举例说明:ln 3.txt 4.txt 这是硬链接,相当于复制,不可以跨分区,但修改3,4会跟着变,若删除3,4不受任何影响。
ln -s 3.txt 4.txt 这是软连接,相当于快捷方式。
修改4,3也会跟着变,若删除3,4就坏掉了。
不可以用了。
13、保存当前磁盘分区的分区表dd 命令是以个强大的命令,在复制的同时进行转换dd if=/dev/sda of=./mbr.txt bs=1 count=51214、如何在文本里面进行复制、粘贴,删除行,删除全部,按行查找和按字母查找?以下操作全部在命令行状态操作,不要在编辑状态操作。
在文本里移动到想要复制的行按yy 想复制到哪就移动到哪,然后按P 就黏贴了删除行移动到改行按dd删除全部dG 这里注意G一定要大写按行查找:90 这样就是找到第90行按字母查找/path 这样就是找到path这个单词所在的位置,文本里可能存在多个,多次查找会显示在不同的位置。
15、手动安装grubgrub-install /dev/sda16、修改内核参数vi /etc/sysctl.conf 这里修改参数sysctl -p 刷新后可用17、在1-39内取随机数expr $[RANDOM%39] +1RANDOM随机数%39取余数范围0-3818、限制apache每秒新建连接数为1,峰值为3每秒新建连接数一般都是由防火墙来做,apache本身好像无法设置每秒新建连接数,只能设置最大连接:iptables -A INPUT -d 172.16.100.1 -p tcp –dport 80 -m limit –limit 1/second -j ACCEPT19、FTP的主动模式和被动模式FTP协议有两种工作方式:PORT方式和PASV方式,中文意思为主动式和被动式。
PORT(主动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。
当需要传送数据时,客户端在命令链路上用PORT 命令告诉服务器:“我打开了XX端口,你过来连接我”。
于是服务器从20端口向客户端的XX端口发送连接请求,建立一条数据链路来传送数据。
PASV(被动)方式的连接过程是:客户端向服务器的FTP端口(默认是21)发送连接请求,服务器接受连接,建立一条命令链路。
当需要传送数据时,服务器在命令链路上用PASV 命令告诉客户端:“我打开了XX端口,你过来连接我”。
于是客户端向服务器的XX端口发送连接请求,建立一条数据链路来传送数据。
从上面可以看出,两种方式的命令链路连接方法是一样的,而数据链路的建立方法就完全不同。
20、显示/etc/inittab中以#开头,且后面跟了一个或者多个空白字符,而后又跟了任意非空白字符的行grep “^#\{1,\}[^]” /etc/inittab21、显示/etc/inittab中包含了:一个数字:(即两个冒号中间一个数字)的行grep “\:[0-9]\{1\}:” /etc/inittab22、怎么把脚本添加到系统服务里,即用service来调用?在脚本里加入#!/bin/bash# chkconfig: 345 85 15# description: httpd然后保存chkconfig httpd –add 创建系统服务现在就可以使用service 来start or restart23、写一个脚本,实现批量添加20个用户,用户名为user01-20,密码为user后面跟5个随机字符#!/bin/bash#description: useraddfor i in `seq -f”%02g” 1 20`;douseradd user$iecho “user$i-`echo $RANDOM|md5sum|cut -c 1-5`”|passwd –stdinuser$i >/dev/null 2>&1done24、写一个脚本,实现判断192.168.1.0/24网络里,当前在线的IP有哪些,能ping通则认为在线#!/bin/bashfor ip in `seq 1 255`doping -c 1 192.168.1.$ip > /dev/null 2>&1if [ $? -eq 0 ]; thenecho 192.168.1.$ip UPelseecho 192.168.1.$ip DOWNfi}&donewait25、写一个脚本,判断一个指定的脚本是否是语法错误;如果有错误,则提醒用户键入Q或者q无视错误并退出其它任何键可以通过vim打开这个指定的脚本[root@localhost tmp]# cat checksh.sh#!/bin/bashread -p “please input check script-> ” fileif [ -f $file ]; thensh -n $file > /dev/null 2>&1if [ $? -ne 0 ]; thenread -p “You input $file syntax error,[Type q to exit or Type vim to edit]” answercase $answer inq | Q)exit 0;;vim )vim $file;;*)exit 0;;esacfielseecho “$file not exist”exit 1fi26、写一个脚本,要求如何:创建一个函数,能接受两个参数:1)第一个参数为URL,即可下载的文件;第二个参数为目录,即下载后保存的位置;2)如果用户给的目录不存在,则提示用户是否创建;如果创建就继续执行,否则,函数返回一个51的错误值给调用脚本;3)如果给的目录存在,则下载文件;下载命令执行结束后测试文件下载成功与否;如果成功,则返回0给调用脚本,否则,返回52给调用脚本;[root@localhost tmp]# cat downfile.sh#!/bin/bashurl=$1dir=$2download(){cd $dir >> /dev/null 2>&1if [ $? -ne 0 ];thenread -p “$dir No such file or directory,create?(y/n)” answerif [ “$answer” == “y” ];thenmkdir -p $dircd $dirwget $url 1> /dev/null 2>&1elsereturn “51”fifiif [ $? -ne 0 ]; thenreturn “52”fi}download $url $direcho $?27、写一个脚本,详细需求如下:1、创建一个函数,可以接受一个磁盘设备路径(如/dev/sdb)作为参数;在真正开始后面步骤之前提醒用户有危险,并让用户选择是否继续;而后将此磁盘设备上的所有分区清空(提示,使用命令dd if=/dev/zero of=/dev/sdb bs=512 count=1实现,注意其中的设备路径不要写错了;如果此步骤失败,返回67给主程序;接着在此磁盘设备上创建两个主分区,一个大小为100M,一个大小为1G;如果此步骤失败,返回68给主程序;格式化此两分区,文件系统类型为ext3;如果此步骤失败,返回69给主程序;如果上述过程都正常,返回0给主程序;2、调用此函数;并通过接收函数执行的返回值来判断其执行情况,并将信息显示出来;local Darray=(`ls /dev/sd[a-z]`)for i in ${Darray};do[[ “$i” == “$1” ]] && Sd=$i &&breakdoneelsereturn66fi#当匹配成功,进入选择,告诉用户,是否继续,输错的话进入无限循环,当用户选择Y,则清空目标分区,且跳出while循环while :;doread -p “WarningThis operation will clean $Sd data.Next=y,Quit=n [y|n]:” Choicecase $Choice iny)dd if=/dev/zero of=$Sd bs=512 count=1 &> /dev/null &&break || return 67 ;;n)exit 88 ;;*)echo “Invalid choice,please choice again.” ;;esacdone#使用echo传递给fdisk进行分区,如果此命令失败,则跳转出去,错误值68,需要注意的是,有时候这个返回值很诡异,笔者之前成功与否都是返回的1,后来重启之后,就好了,如果慎重的话,可以对创建的分区,进行判断,不过就需要使用其他工具截取相关字段了,虽有些小麻烦,但无大碍echo-e “n\np\n1\n\n+100M\nn\np\n2\n\n+1024M\nw\n”|fdisk /dev/sdb&> /dev/null || || return 68#格式化之前,让内核重新读取磁盘分区表,值得注意的是,有的系统版本,使用partprobe无效,譬如笔者的环境是rhel5.8,而rhel6.0以后,这个命令就很危险了,而使用partx -a /dev/sdb则效果更好…此项需慎重,如果格式化失败,则告知把失败的分区定义成变量,且跳出函数,并带出错误值69`partprobe`Part=`fdisk -l /dev/$Sd|tail -2|cut -d” ” -f1`for M in ${Part};domke2fs -j $M &> /dev/null && ErrorPart=$M &&return 69donereturn 0}#下面代码,调用函数,接收函数返回值,根据返回值进行判断哪里出错。