运维攻城狮面试题汇总

面试题汇总

什么是运维?什么是游戏运维?

1)运维是指大型组织已经建立好的网络软硬件的维护,就是要保证业务的上线与运作的正常,在他运转的过程中,对他进行维护,他集合了网络、系统、数据库、开发、安全、监控于一身的技术,运维又包括很多种,有DBA运维、网站运维、虚拟化运维、监控运维、游戏运维等等

2)游戏运维又有分工,分为开发运维、应用运维(业务运维)和系统运维

开发运维:是给应用运维开发运维工具和运维平台的

应用运维:是给业务上线、维护和做故障排除的,用开发运维开发出来的工具给业务上线、维护、做故障排查

系统运维:是给应用运维提供业务上的基础设施,比如:系统、网络、监控、硬件等等

总结:开发运维和系统运维给应用运维提供了“工具”和“基础设施”上的支撑

开发运维、应用运维和系统运维他们的工作是环环相扣的

在工作中,运维人员经常需要跟运营人员打交道,请问运营人员是做什么工作的?

游戏运营要做的一个事情除了协调工作以外,还需要与各平台沟通,做好开服的时间、开服数、用户导量、活动等计划

现在给你三百台服务器,你怎么对他们进行管理?

管理3百台服务器的方式:

1)设定跳板机,使用统一账号登录,便于安全与登录的考量。

2)使用salt、ansiable、puppet进行系统的统一调度与配置的统一管理。

3)建立简单的服务器的系统、配置、应用的cmdb信息管理。便于查阅每台服务器上的各种信息记录。

1.如何优化Linux?

不用root,添加普通用户,通过sudo授权管理
更改默认的远程连接SSH服务端口及禁止root用户远程连接
定时自动更新服务器时间
配置国内yum源
关闭selinux及iptables(iptables工作场景如果有外网IP一定要打开,高并发除外)
调整文件描述符的数量
精简开机启动服务(crond rsyslog network sshd)
内核参数优化(/etc/sysctl.conf)
更改字符集,支持中文,但建议还是用英文字符集,防止乱码
锁定关键系统文件
清空/etc/issue,去除系统及内核版本登录前的屏幕显示

2.如何优化tomcat?

隐藏版本号

降权启动

删除测试页面

3.nginx的工作原理?

当收到一个HTTP请求时,nginx作为一个代理服务器将客户端的请求映射到一个location,location配置的每个指令会启动相应的不同的模块完成相应的工作

4.keepalived的工作原理?

利用vrrp的原理进行工作,提供高可用集群服务,keepalived根据优先级选出master主机和slave主机,当服务器节点异常或出现故障时,keepalived回将故障节点从集群系统中自动剔除,故障节点恢复之后,keepalived再将器加入到集群系统中,所有工作无需人工干预

5.lvs、Haproxy与nginx的区别?

lvs工作在4层,消耗内存资源低,抗负载能力较强,没有流量产生,配置简单,工作稳定,应用较广,但lvs软件本身不支持正则表达式处理,不能做动静分离,不支持健康检查

Haproxy基于四层和七层的转发,是专业的代理服务器,支持虚拟主机,支持Session和Cookie的功能,效率.负载均衡速度比nginx高但低于lvs,支持TCP协议的负载均衡转发,负载均衡的策略较多,有8种策略,支持url检查,健康检查等

nginx基于七层的转发,当开启upstream模块支持四层转发,支持并发量大,正则表达式比Haproxy强大,但监控检查只支持通过端口,无法使用url检查

Haproxy和Nginx由于可以做七层的转发,所以URL和目录的转发都可以做,在很大并发量的时候选择lvs,中小型企业并发量不大可以做nginx或者Haproxy,由于Haproxy配置比较简单,所以中小企业更推荐使用Haproxy


什么是代理服务器:

能当替用户去访问公网,并且能把访问到的数据缓存到服务器本地,等用户下次再访问相同的资源的时候,代理服务器直接从本地回应给用户,当本地没有的时候,我代替你去访问公网,我接收你的请求,我先在我自已的本地缓存找,如果我本地缓存有,我直接从我本地的缓存里回复你,如果我在我本地没有找到你要访问的缓存的数据,那么代理服务器就会代替你去访问公网

6.你对nginx做过哪些优化?

优化404报错页面

Nginx的服务状态信息

优化并发量(修改内核参数ulimit -Hn/Sn vim /etc/security/limits.conf,压力并发测试 ab -n -c)

优化数据包头缓存

​ 优化浏览器本地缓存静态数据

​ 优化nginx服务的安全配置:

​ 删除不需要的模块

​ 修改版本信息

​ 限制并发量(降低DOS风险)

​ 拒绝非法的请求

​ 防止buffer溢出(防止客户端请求数据溢出,降低DOS风险)

​ 添加黑白名单(在配置文件中server处定义)

cookie过滤,URL过滤

7.使用iptables命令禁止80端口

iptables -t filter --sport 80 -j REJECT

iptables -t filter --dport 80 -j REJECT

8.以下常用的应用服务的端口号

DNS (53)

Telent (23)

SSH (22)

SMTP (25)

Mysql (3306)

HTTP (80)

HTTPS (443)

FTP (21,20)

Nginx (80)

Tomcat (8005,8009,8080)

Redis (6379)

Zabbix_server (10051)

Zabbix_agent (10050)

Pop (110)

Imap (143)

Rpc (111)

Ntp (123)

DHCP (67/68)

Memcache (11211)

9.redis哨兵服务的原理

监视master服务器,当master服务器宕机会自动将slave服务器升级为master服务器

哨兵功能还有监视、事件通知、配置功能。以下是哨兵的功能列表:
监控:不间断的检查主从服务是否如预期一样正常工作
事件通知:对被监视的redis实例的异常,能通知系统管理员,或者以API接口通知其他应用程序。

10.主从同步的工作流程

客户端写入数据时,slave主机的IO线程读取master主机的binlog日志,并写入本机的relaylog中继日志,SQL线程执行relaylog日志线程的SQL命令

11.docker与虚拟机的区别

1)docker启动快速,属于秒级别.虚拟机启动通常需要几分钟

2)docker需要的资源更少,docker在操作系统级别进行虚拟化,docker容器和内核交互,几乎没有性能损耗,性能优于虚拟机

3)docker更轻量级,docker的架构可以共用一个内核与共享应用程序库,占用内存极小.同样的硬件环境,docker运行的镜像数量远多于虚拟机数量,对系统的利用率更高

4)与虚拟机相比,docker的隔离性更弱,docker属于进程之间的隔离,虚拟机可以实现系统级别的隔离

5)安全性:docker的安全性更弱,docker的租户root和宿主机root等同,一旦容器内的用户从普通用户权限提升为root权限,他就直接具备了宿主机的root权限,进而可进行无限制的操作.虚拟机租户root权限和宿主机的root虚拟机的权限是分离的

6)可管理性:docker的集中化管理工具还不算成熟,各种虚拟化技术都有成熟的管理工具,例如:VMware等

7)高可用和可恢复性:docker对业务的高可用支持是通过快速部署实现的.虚拟机具备负载均衡,高可用,容错性,迁移和数据保护等成熟的熟的保障机制,保障业务的连续性

8)快速创建、删除:虚拟化的创建是分钟级别的,docker容器创建是秒级别的,docker的快速迭代性决定了无论是开发、测试部署都可以节约大量时间

9)交付、部署:虚拟机可以通过镜像实现环境交付的一致性,但镜像分发无法体系化,docker在dockerfile中记录了容器的构建过程,可在集群中实现快速分发和快速部署

12.什么是ELK

Elasticsearch:负责日志检索和储存

Logstash:负责日志收集和分析、处理

Kibana:负责日志的可视化

ELK可用于解决:

分布式日志数据集中式查询和管理

系统监控,包含系统硬件和应用各个组件的监控

故障排查

安全信息和事件管理

报表功能


Elasticsearch特点:

实时分析

分布式实时文件存储,将每个字段都编入索引

文档导向,所有的对象全部是文档

高可用性,易扩展,支持集群(Cluster)、分片和复制(shards和Replicas)

接口友好,支持JSON

Logstash特点:

所有类型的数据集中处理

不同模式和格式数据的正常化

自定义日志格式的迅速扩展

为自定义数据源轻松添加插件

Kibana特点:

灵活的分析和可视化平台

实时总结流量和数据的图表

为不同的用户显示直观的界面

及时分享和嵌入的仪表板

13.查看CPU的实时状态的命令

top uptime w tload

14.zabbix的主动监控与被动监控

主动监控和被动监控都是相对于被监控端主机而言的

默认zabbix采用被动监控

当监控主机达到一定量级后,zabbix服务器会越来越慢,此时可以考虑使用主动监控,释放服务器的压力

zabbix也支持分布式监控

被动监控:server向Agent发起连接,发送监控key,Agent接受请求,响应监控数据

主动监控:Agent向server发起连接,Agent请求需要检测监控项目列表,server相应Agent发送一个items列表,Agent确认收到监控列表,TCP连接完成,会话关闭,Agent开始周期性收集数据


区别:

server不用每次需要数据都连接Agent,Agent会自己收集数据并处理数据,Server仅需要保存数据即可


15.配置zabbix自定义监控流程

①被监控端修改Agent配置文件(修改是否允许自定义key,加载配置文件目录)

②被监控端创建存放自定义key文件(在zabbix_agentd.conf文件中定义),书写自定义key

③重起客户端agentd

④测试自定义key是否生效

⑤在zabbix页面创建监控模板,创建应用,创建监控项,关联主机

16.自定义docker镜像仓库

1)创建存放Dockerfile的目录

2)书写Dockerfile

FROM:基础镜像

MAINTAINER:镜像创建者的信息

EXPOSE:开放的端口

ENV:设置变量

ADD:复制文件到镜像

RUN:制作镜像时执行的命令,可以有多个

WORKDIR:容器默认的工作目录

CMD:容器启动时执行的命令,仅可以有一条CMD

3)执行docker命令创建镜像仓库

docker build 容器名:标签 .(当前)

17.简述raid0 raid1 raid5 三种工作模式的工作原理及特点

RAID,可以把硬盘整合成一个大磁盘,还可以在大磁盘上再分区,放数据

还有一个大功能,多块盘放在一起可以有冗余(备份)

RAID整合方式有很多,常用的:0 1 5 10

RAID 0,可以是一块盘和N个盘组合

其优点读写快,是RAID中最好的

缺点:没有冗余,一块坏了数据就全没有了

RAID 1,只能2块盘,盘的大小可以不一样,以小的为准

10G+10G只有10G,另一个做备份。它有100%的冗余,缺点:浪费资源,成本高

RAID 5,3块盘,容量计算10*(n-1),损失一块盘

特点,读写性能一般,读还好一点,写不好

冗余从好到坏:RAID1 RAID10 RAID 5 RAID0

性能从好到坏:RAID0 RAID10 RAID5 RAID1

成本从低到高:RAID0 RAID5 RAID1 RAID10

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

数据库服务器:主库:RAID10 从库 RAID5RAID0(为了维护成本,RAID10)

WEB服务器,如果没有太多的数据的话,RAID5,RAID0(单盘)

有多台,监控、应用服务器,RAID0 RAID5

我们会根据数据的存储和访问的需求,去匹配对应的RAID级别

18.redis和memcache的区别

1)redis和memcache都是将数据存放在内存数据库,但memcache还可以用于缓存其他图片视频等

2)redis不仅支持简单的key:value类型数据,还提供list,set,hash等数据结构的存储

3)虚拟内存,redis当物理内存用完时,可以将一些很久没用到的value交换到磁盘

4)过期策略,memcache在set时就指定,例如set key 1 0 0 8,即永不过期,redis可以通过expire设定,例如expire name 10;

5)分布式,设定memcache集群,可以利用magent做一主多从,redis可以修改配置文件,以及slave on 设置一主多从

6)存储数据安全,memcache挂掉后,数据就没了.redis有数据的持久化RBD和AOF

7)灾难恢复,memcache挂掉后,数据不可恢复.redis数据丢失后可以通过AOF来进行恢复

8)redis支持master-slave模式数据的备份

9)应用场景,redis除了作为Nosql数据库外,还可以做消息队列,数据缓存等.memcache适合于缓存sql语句,数据集,用户的临时性数据,延迟查询数据和Session等

19.数据库实现数据备份

热备:

innobackupex

完全备份:

innobackupex --user 用户名 --password 密码 备份目录名 --no-timestamp

完全恢复:

innobackupex --apply-log 目录名 #准备恢复数据

innobackupex --copy-back 目录名 #恢复数据

增量备份:

innobackupex --user 用户名 --password 密码 --incremental-basedir=目录名 --no-timestamp

增量恢复:

innobackupex --apply-log --redo-only 目录名 --incremental-dir=目录名 #准备恢复数据

innobackupex --copy-back 目录名 #恢复数据


一款强大的在线热备工具

备份过程性在线不锁表,适合生产环境


冷备:

cp tar(物理备份) mysqldump(逻辑备份)

备份:

cp -r /var/lib/mysql

tar -zcvf /root/mysql.tar.gz

恢复:

cp -r 备份目录/mysql.bak /var/lib/mysql

tar -zxf /root/mysql.tar.gz -C /var/lib/mysql

vhown -R mysql.mysql /var/lib/mysql


物理备份的缺点:

跨平台性差

备份时间长、冗余备份、浪费存储空间


mysqldump(逻辑备份)

完全备份:备份所有数据

增量备份:备份上次备份后,所有新产生的数据

差异备份:本分完全备份后,所有新产生的数据

完全备份:

mysqldump -uroot -p密码 库名 > 目录/xxx.sql

完全恢复:

mysql -uroot -p密码 [库名] < 目录/xxx.sql


效率低、备份和还原速度比较慢、锁表

备份过程中,数据插入和更新操作被阻塞

ps:mysqldump在执行备份的时候会锁表,如果想让其备份时不锁表要加–skip-opt选项


20.Lvs的几种模式区别

模式:LVS/NAT模式 LVS/DR模式 LVS/TUN模式 LVS:fullnat模式

LVS/NAT模式:

原理:

客户端将访问vip报文发送给LVS服务器

LVS服务器将请求报文的目的地址修改为后端真实服务器(DNAT),发送给后端的真实服务器;

后端服务器在处理完之后将响应的报文返回给客户端,但却不在同一网段

LVS根据自己的追踪技术将后端真实服务响应客户端的报文源地址改为自己的IP地址(SNAT),发送给客户端

优缺点:

安全,可以实现不同网段的数据请求,但请求和相应报文都需要通过负载均衡调度器,当服务器节点数目升到20时,调度器本身就可能成为系统的瓶颈

LVS/DR模式:

原理:

客户端将访问的vip报文发送给LVS服务器

LVS服务器将请求报文的mac地址改为后端真实服务器的mac地址

后端真实服务器得到访问报文后进行IP查看,再确认自己有vip之后进行请求处理;

后端真实服务器在处理完数据请求后,直接响应客户端

优缺点:

LVS服务器只是修改了mac地址,所以非常快速,并且LVS不会成为瓶颈

但配置的要求比较高,LVS服务器必须和真实服务器处于同一vlan中

后端真实服务器直接响应客户端,对于后端真实服务器本身来说并不安全

LVS/TUN模式:

原理:

客户端将访问vip报文发送给LVS服务器

LVS服务器将请求报文重新封装,发送给后端真实服务器

后端真实服务器将请求报文解封,在确认自身有vip之后进行请求处理

后端真实服务器在处理完数据请求之后,直接响应客户端

优缺点:

快速,但不安全,不能抵挡DOS攻击,跨地区回答之网络延迟很大访问效率速度更低

LVS-fullnat模式:

原理:

客户端将访问vip报文发送给LVS服务器

LVS服务器将请求报文的目的地址修改为后端真实服务器(DNAT),发送给客户端

后端服务器在处理完之后要将响应的报文返回给LVS

LVS将返回的数据包源地址改为自己(SNAT),目的地址改为客户端(DNAT),发送给客户端

fullnat模式与nat模式相似但nat模式只做两次地址转换,fullnat却做了四次

21.你写过哪些脚本?

1)监控脚本(监控系统、监控服务、监控硬件信息、监控性能、安全监控等)

2)系统初始化脚本(创建目录、创建账户、安装软件包、设置权限、修改内核参数等)

3)一键部署脚本(源码安装脚本)

4)备份脚本(自动备份数据库、备份网站数据、备份日志、备份配置文件)

5)日志分析脚本(分析日志数据、汇总统计相关信息,如PV或UV等、日志切割)

6)mysql全量备份、增量备份脚本

设置crontab定时任务,使用innobackup进行周日凌晨3点全量备份并删除上周的全量备份和周一至周六凌晨3点增量备份

7)配置ip地址、子网、网关,扩展硬盘空间

8)健康检测脚本:检测nginx服务是否运行来判断是否该关闭keepalived服务

9)预防脑裂脚本:指在一个高可用(HA)系统中,当联系着的两个节点断开联系时,本来为一个整体的系统,分裂为两个独立节点,这时两个节点开始争抢共享资源,结果会导致系统混乱,数据损坏。

对于无状态服务的HA,无所谓脑裂不脑裂;但对有状态服务(比如MySQL)的HA,必须要严格防止脑裂

解决办法:在keepalived配置文件中增加check配置,服务器周期性ping一下网关,累计连续失败的次数,当连续失败达到一定次数关闭keepalived服务;如果发现又能够ping通网关,再重启keepalived服务

22.innodb和myisam存储引擎区别

myisam存储引擎

支持表级锁

不支持事务、事务回滚、外键

表文件:

​ 表名.frm > desc 表名;

​ 表名.MYI 索引index > show index from 表名;(查找索引文件)

表名.MYD 数据 > select * from 表名;

innodb存储引擎

默认的存储引擎

支持行级锁

支持事务、事务回滚、外键

表文件:

​ 表名.frm 表结构 > desc 表名;

​ 表名.ibd 索引index+数据 > show index from 表名;select * from 表名;


事务日志文件

/var/lib/mysql/ib_logfile0

/var/lib/mysql/ib_logfile1

23.简述/etc/fstab文件的作用

Linux系统启动时,会读取/etc/fstab文件,该文件中包含有所有分区的挂载信息,系统根据该信息将所有设被挂载到特定位置

24.简述网卡链路聚合的功能

链路聚合时将两个或多个网卡数据信道结合成一个单个的通道,该通道以一个单个的更高宽带的逻辑链路出现,也可以实现网卡的冗余性.链路聚合;一般用来连接一个或多个带宽需求大的设备,例如连接骨干网络的服务器或服务器集群

25.Squid、Varinsh和Nginx有什么区别,工作中你怎么选择?

Squid、Varinsh和Nginx都是代理服务器

什么是代理服务器:

能当替用户去访问公网,并且能把访问到的数据缓存到服务器本地,等用户下次再访问相同的资源的时候,代理服务器直接从本地回应给用户,当本地没有的时候,我代替你去访问公网,我接收你的请求,我先在我自已的本地缓存找,如果我本地缓存有,我直接从我本地的缓存里回复你,如果我在我本地没有找到你要访问的缓存的数据,那么代理服务器就会代替你去访问公网

区别:

1)Nginx本来是反向代理/web服务器,用了插件可以做做这个副业但是本身不支持特性挺多,只能缓存静态文件

2)从这些功能上。varnish和squid是专业的cache服务,而nginx这些是第三方模块完成

3)varnish本身的技术上优势要高于squid,它采用了可视化页面缓存技术

在内存的利用上,Varnish比Squid具有优势,性能要比Squid高。

还有强大的通过Varnish管理端口,可以使用正则表达式快速、批量地清除部分缓存

它是内存缓存,速度一流,但是内存缓存也限制了其容量,缓存页面和图片一般是挺好的

4)squid的优势在于完整的庞大的cache技术资料,和很多的应用生产环境

工作中选择:

要做cache服务的话,我们肯定是要选择专业的cache服务,优先选择squid或者varnish。

26.Tomcat和Resin有什么区别,工作中你怎么选择?

区别:Tomcat用户数多,可参考文档多,Resin用户数少,可考虑文档少

最主要区别则是Tomcat是标准的java容器,不过性能方面比resin的要差一些

但稳定性和java程序的兼容性,应该是比resin的要好

工作中选择:现在大公司都是用resin,追求性能;而中小型公司都是用Tomcat,追求稳定和程序的兼容

27.什么是中间件?什么是jdk?

中间件介绍:

中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源

中间件位于客户机/ 服务器的操作系统之上,管理计算机资源和网络通讯

是连接两个独立应用程序或独立系统的软件。相连接的系统,即使它们具有不同的接口

但通过中间件相互之间仍能交换信息。执行中间件的一个关键途径是信息传递,通过中间件,应用程序可以工作于多平台或OS环境。

jdk:jdk是Java的开发工具包,它是一种用于构建在 Java 平台上发布的应用程序、applet 和组件的开发环境

28.讲述一下Tomcat8005、8009、8080三个端口的含义?

8005==》 关闭时使用

8009==》 为AJP端口,即容器使用,如Apache能通过AJP协议访问Tomcat的8009端口

8080==》 一般应用使用

29.什么叫CDN?

即内容分发网络

其目的是通过在现有的Internet中增加一层新的网络架构,将网站的内容发布到最接近用户的网络边缘,使用户可就近取得所需的内容,提高用户访问网站的速度

30.什么叫网站灰度发布?

灰度发布是指在黑与白之间,能够平滑过渡的一种发布方式

AB test就是一种灰度发布方式,让一部用户继续用A,一部分用户开始用B,如果用户对B没有什么反对意见,那么逐步扩大范围,把所有用户都迁移到B上面来灰度发布可以保证整体系统的稳定,在初始灰度的时候就可以发现、调整问题,以保证其影响度

31.网站的平滑升级流程

以nginx为例

步骤:

1)查看原版本的现有配置 nginx -V

2)下载解压新版本

3)将原版本的重要文件做备份(为了安全)cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.old

4)编译新版本,要求要和旧版本的所有配置一模一样,如果有新的模块也要添加,不执行make install(由于原先已有nginx,所以不能执行make install,否则会覆盖掉以前的配置文件及内容)

5)检查是否成功 nginx -t

6)平滑升级切换

注意:要根据自己实际的编译的配置内容,查找自己的pid文件的位置。

kill -USR2 cat nginx.pid 将旧版本Nginx的主进程将重命名为nginx.pid.oldbin,并执行新版本的Nginx可执行程序,启动新的主进程和新的工作进程,再次生成新的nginx.pid文件

kill -WINCH cat nginx.pid.oldbin 平缓停止worker process(此步骤可省略)

kill -QUIT cat nginx.pid.oldbin 平缓停止旧的Nginx服务进程

7)查看当前nginx的版本信息 nginx -V


nginx支持的信号,可以用来控制nginx的活动

TERM,INT——快速关闭

QUIT 平滑关闭

HUP 平滑重启,重新加载配置文件

USR1 重新打开日志文件

USR2 平滑升级可执行程序

WINCH 平滑关闭工作进程


32.简述DNS进行域名解析的过程?

用户要访问http://www.baidu.com,会先找本机的host文件,再找本地设置的DNS服务器,如果也没有的话,就去网络中找根服务器,根服务器反馈结果,说只能提供一级域名服务器.cn,就去找一级域名服务器,一级域名服务器说只能提供二级域名服务器.com.cn,就去找二级域名服务器,二级域服务器只能提供三级域名服务器.http://baidu.com.cn,就去找三级域名服务器,三级域名服务器正好有这个网站http://www.baidu.com,然后发给请求的服务器,保存一份之后,再发给客户端

33.RabbitMQ是什么?

RabbitMQ也就是消息队列中间件,消息中间件是在消息的传息过程中保存消息的容器消息中间件再将消息从它的源中到它的目标中标时充当中间人的作用队列的主要目的是提供路由并保证消息的传递;如果发送消息时接收者不可用消息队列不会保留消息,直到可以成功地传递为止,当然,消息队列保存消息也是有期限地

34.mysql的innodb如何定位锁问题,mysql如何减少主从复制延迟?

mysql的innodb如何定位锁问题:在使用 show engine innodb status检查引擎状态时,发现了死锁问题在5.5中,information_schema 库中增加了三个关于锁的表(MEMORY引擎)innodb_trx ## 当前运行的所有事务innodb_locks ## 当前出现的锁innodb_lock_waits ## 锁等待的对应关系

mysql如何减少主从复制延迟:

如果延迟比较大,就先确认以下几个因素:

从库硬件比主库差,导致复制延迟

主从复制单线程,如果主库写并发太大,来不及传送到从库就会导致延迟。

更高版本的mysql可以支持多线程复制

慢SQL语句过多

网络延迟

master负载,主库读写压力大,导致复制延迟,架构的前端要加buffer及缓存层

slave负载,一般的做法是,使用多台slave来分摊读请求,再从这些slave中取一台专用的服务器,只作为备份用,不进行其他任何操作.另外, 2个可以减少延迟的参数:–slave-net-timeout=seconds 单位为秒 默认设置为 3600秒

参数含义:当slave从主数据库读取log数据失败后,等待多久重新建立连接并获取数据

–master-connect-retry=seconds 单位为秒 默认设置为 60秒

参数含义:当重新建立主从连接时,如果连接建立失败,间隔多久后重试

通常配置以上2个参数可以减少网络问题导致的主从数据同步延迟

MySQL数据库主从同步延迟解决方案

最简单的减少slave同步延时的方案就是在架构上做优化,尽量让主库的DDL快速执行,还有就是主库是写,对数据安全性较高,比如sync_binlog=1,innodb_flush_log_at_trx_commit= 1 之类的设置,而slave则不需要这么高的数据安全,完全可以讲sync_binlog设置为0或者关闭binlog,innodb_flushlog也可以设置为0来提高sql的执行效率。另外就是使用比主库更好的硬件设备作为slave

35.如何重置mysql root密码?

一、 在已知MYSQL数据库的ROOT用户密码的情况下,修改密码的方法:

1、 在SHELL环境下,使用mysqladmin命令设置: mysqladmin –u root –p password “新密码” 回车后要求输入旧密码

2、 在mysql>环境中,使用update命令,直接更新mysql库user表的数据:

Update mysql.user set password=password(‘新密码’) where user=’root’; flush privileges; 注意:mysql语句要以分号”;”结束

3、 在mysql>环境中,使用grant命令,修改root用户的授权权限。

grant all on . to root@’localhost’ identified by ‘新密码’;

二、 如查忘记了mysql数据库的ROOT用户的密码,又如何做呢?方法如下:

1、 关闭当前运行的mysqld服务程序:service mysqld stop(要先将mysqld添加为系统服务)2、 使用mysqld_safe脚本以安全模式(不加载授权表)启动mysqld 服务 /usr/local/mysql/bin/mysqld_safe –skip-grant-table &

3、 使用空密码的root用户登录数据库,重新设置ROOT用户的密码 #mysql -u root Mysql> Update mysql.user set password=password(‘新密码’) where user=’root’; Mysql> flush privileges;

36.mysql数据备份工具

mysqldump工具

mysqldump是mysql自带的备份工具,目录在bin目录下面:/usr/local/mysql/bin/mysqldump,支持基于innodb的热备份,但是由于是逻辑备份,所以速度不是很快,适合备份数据比较小的场景,Mysqldump完全备份+二进制日志可以实现基于时间点的恢复。

基于LVM快照备份

在物理备份中,有基于文件系统的物理备份(LVM的快照),也可以直接用tar之类的命令对整个数据库目录进行打包备份,但是这些只能进行泠备份,不同的存储引擎备份的也不一样,myisam自动备份到表级别而innodb不开启独立表空间的话只能备份整个数据库。

tar包备份

percona提供的xtrabackup工具,支持innodb的物理热备份,支持完全备份,增量备份,而且速度非常快,支持innodb存储引起的数据在不同,数据库之间迁移,支持复制模式下的从机备份恢复备份恢复,为了让xtrabackup支持更多的功能扩展,可以设立独立表空间,打开 innodb_file_per_table功能,启用之后可以支持单独的表备份

37.统计ip访问情况,要求分析nginx访问日志,找出访问页面数量在前十位的ip

cat access.log | awk ‘{print $1}’ | uniq -c | sort -rn | head -10

38.使用tcpdump监听主机为192.168.1.1,tcp端口为80的数据,同时将输出结果保存输出到tcpdump.log

tcpdump ‘host 192.168.1.1 and port 80’ > tcpdump.log

39.如何将本地80 端口的请求转发到8080 端口,当前主机IP 为192.168.2.1

iptables -A PREROUTING -d 192.168.2.1 -p tcp -m tcp -dport 80 -j DNAT-to-destination 192.168.2.1:8080

40.实时抓取并显示当前系统中tcp 80端口的网络数据信息,请写出完整操作命令

tcpdump -nn tcp port 80

41.服务器开不了机怎么解决?

A,造成服务器故障的原因可能有一下几点:

1)服务器电源有问题(断电,电源松动,认为原因)

2)服务器系统文件丢失,硬件问题,散热不良造成蓝屏和死机

3)服务器网络参数配置错误,物理链路原因

B,排查服务器故障的处理步骤如下:

1)先看服务器的电源指示灯是否亮,如果电源灯不亮,先检查并确认电源没问题,试着按开机键是否能点亮服务器,如果不能点亮,和数据确认后先更换备用服务器以便快速恢复业务

2)如果服务器电源灯亮,接上显示器和键盘,如果服务器系统有异常,不能登录系统,先和数据确认,是否指定能重启服务器或是更换备用服务器,以便快速恢复业务

3)如果正确输入用户名和密码情况下登录系统,查看网卡指示灯是否正常,并用ifconfig命令查看网卡接口状态.用ping对ip测试网络是否连通

4)如果ping不通,先和数据人员确认并检查网卡配置文件参数是否配置正确,是否正确配置网关,用ifdown;ifup 网卡名"命令重启单个网卡,网卡接口(指示灯)状态正常后,再用ping命令测试"

5)还ping不通,即使排查并确保本地尾纤,模块等物理设备接入正常,收发光在规定范围内,和数据人员确认是否可以重启服务器,并确认数据方没有网络配置和数据方面的变化

6)能ping通告知数据人员,并让数据人员帮忙确认链路是否正常,有没有丢包现象等,没有丢包就OK,有就继续排查尾纤,模块等,直到链路正常没有丢包,数据人员能及时的从远程登录服务器做数据配置,快速恢复业务为OK

7)如果不能接入服务器,与数据确认是否可以重启.

42.Linux系统中病毒怎么解决

1)最简单有效的方法就是重装系统

2)要查的话就是找到病毒文件然后删除中毒之后一般机器cpu、内存使用率会比较高,机器向外发包等异常情况,排查方法简单介绍下,top 命令找到cpu使用率最高的进程,一般病毒文件命名都比较乱,可以用 ps aux 找到病毒文件位置,rm -f 命令删除病毒文件,检查计划任务、开机启动项和病毒文件目录有无其他可以文件等

3)由于即使删除病毒文件不排除有潜伏病毒,所以最好是把机器备份数据之后重装一下

43.发现一个病毒文件你删了他又自动创建怎么解决

公司的内网某台linux服务器流量莫名其妙的剧增,用iftop查看有连接外网的情况针对这种情况一般重点查看netstat连接的外网ip和端口。用lsof -p pid可以查看到具体是那些进程,哪些文件,经查勘发现/root下有相关的配置conf.n hhe两个可疑文件,rm -rf后不到一分钟就自动生成了,由此推断是某个母进程产生的这些文件。所以找到母进程就是找到罪魁祸首

查杀病毒最好断掉外网访问,还好是内网服务器,可以通过内网访问

断了内网,病毒就失去外联的能力,杀掉它就容易的多,怎么找到呢,找了半天也没有看到蛛丝马迹,没办法只有ps axu一个个排查,方法是查看可以的用户和和系统相似而又不是的冒牌货,果然,看到了如下进程可疑,看不到图片就是/usr/bin/.sshd,于是我杀掉所有.sshd相关的进程,然后直接删掉.sshd这个可执行文件,然后才删掉了文章开头提到的自动复活的文件

总结一下,遇到这种问题,如果不是太严重,尽量不要重装系统

一般就是先断外网,然后利用iftop,ps,netstat,chattr,lsof,pstree这些工具顺藤摸瓜一般都能找到元凶。但是如果遇到诸如此类的问题/boot/efi/EFI/redhat/grub.efi: Heuristics.Broken.Executable FOUND,个人觉得就要重装系统了

44.说说TCP/IP的七层模型

第一层:物理层,利用传输介质为数据提供物理连接, 对应的协议:

第二层:数据链路层:建立和管理各节点间的链接链路 对应的协议:PPTP、CDP

第三层:网络层,是控制数据链路层与上传输层之间的信息转发、建立与维持对应的协议:ICMP IGMP IP(IPV4IPV6) ARP RARP

第四层:传输层,提供会话传输服务,确保数据正确传送对应的协议:TCP UDP,数据包一旦离开网卡即进入网络传输层

第五层:会话层,提供建立会话管理,支持数据交换,对应主机进程,指本地主机与远程主机正在进行的会话

第六层:表示层,处理数据(数据格式、编码、加密等),按一定的格式传送至会话层,(在五层模型里面已经合并到了应用层) 格式有,JPEG、ASCll、DECOIC、加密格式等

第七层:应用层,为用户提供各类应用服务(文件、打印、邮件等服务)对应协议:HTTP FTP TFTP SMTP SNMP DNS TELNET HTTPS POP3 DHCP

45.创建逻辑卷的流程?

1)将硬盘或分区转化为物理卷

2)将一个或多个物理卷组成卷组

3)从卷组中划分逻辑卷


创建基本分区 /dev/vdb1 /dev/vdb2等

创建卷组 vgcreate myvg /dev/vdb1 /dev/vdb2

划分逻辑卷: lvcreate -L 16G -n mylv myvg

46.ISCSI共享存储部署思路

1)准备空闲存储

2)安装targetcli

3)运行targetcli进行配置

​ - 创建与命名后端存储:backstores/block create name=back dev=/devvdb1

​ - 创建target磁盘组: iscsi/create iqn.2020-01.com.example:server0

​ -lun逻辑单元:iscsi/iqn.2020-01.com.example:server0/tpg1 luns create /backstores/block/back

​ - 配置访问控制,设置访问服务时,客户端声称的名字:iscsi/iqn.2020-01.com.example:server0/tpg1/acls create iqn.2020-01.com.example:client0

​ -客户端访问本机的ip地址以及端口:iscsi/iqn.2020-01.com.example:server0/tpg1/ portals create 172.25.0.10

4)重起服务target设置开机自启

在客户端访问iscsi磁盘:

1)安装所需软件包 iscsi-initiator-utils

2)修改配置文件/etc/iscsi/initiorname.iscsi设置访问服务时,客户端声称的名字

iqn.2020-01.com.example:client0

3)重起服务iscsid更新iqn标识

4)发现服务端共享存储

iscsiadm --mode discoverydb --type sendtargets --portal 172.25.0.10 --discover

5)本机识别加载服务端共享,重启iscsi服务设置开机自启

47.配置httpd网站服务时,快速添加新的虚拟主机

1)为每一个虚拟主机建立一份独立的配置文件,放到/etc/httpd/conf.d目录下,配置文件名称以.conf结尾

2)配置<VirtualHost IP 端口号>… …</VirtualHost>区段标记,其中使用语句ServerName指定站点名称,使用DocumentRoot指定网页目录

3)重起httpd服务

48.动态网页和静态网页的区别,基于httpd要支持PHP程序,基于Python程序具备的条件

静态网页:浏览器访问到的网页就是服务端提供的文件

动态网页:浏览器访问到的网页文件时服务端指定的程序动态生成的网页文件

支持PHP的程序:安装httpd、php软件包

支持Python程序:安装httpd、mod_wsgi软件包,并在配置站点时添加程序调用别名(WSGIScriptAlias)

49.基于httpd架设一个安全web站点的条件

安装mod_ssl模块软件包

提供可用的网站证书、密钥部署到正确的位置

修改/etc/httpd/conf.d/ssl.conf配置文件,指定站点名、网页目录、证书以及密钥的路径

50.简单描述软连接与硬链接的区别

软连接的源文件或目录如果被删除,则链接文件将失效,可以跨分区/文件系统创建软连接

硬链接的源文件或目录如果被删除,则硬链接依旧可以正常使用,硬链接不可以跨分区/文件系统

51.简述源码编译安装软件包的流程

安装依赖包

使用tar解包

使用./configure完成系统检测与配置

make编译源代码

make install 安装软件包

52.如果不小心删除了一个系统命令,在不影响其他程序运行的前提下,如何进行恢复

利用yum provides找出产生该程序文件的软件包

再利用yum reinstall重新安装即可

53.如何实现网络装机,以及实现无人值守安装

DHCP服务器:为客户机提供ip地址等参数,并告知下一个服务器地址、启动文件名

TFTP服务器:为客户机提供启动文件、启动菜单配置、用来安装系统的内核以及初始驱动程序

软件仓库:通过HTTP或FTP方式为客户机提供安装树资源(RHEL7光盘目录结构)

实现kickstart无人值守安装:

1)提前准备一份安装过程中所涉及问题的答案清单(即应答文件)一般利用system-config-kickstart图形生成

2)将此文件部署到客户机下载的位置

3)通过菜单文件进行指定客户端下载

54.Cobbler装机平台与传统PXE网络装机的优势有哪些?

Cobbler具备多系统的镜像仓库以及应答文件仓库,非常适合多系统的安装

Cobbler会默认生成菜单文件以及应答文件,非常自动化

Cobbler自动搭建网络yum仓库

55.抓包的用法

作用:

(1)捕获网络协议包

(2)分析网络协议包

命令格式:

tcpdump [选项] [过滤条件]

选项:

-i 指定监控的网络接口

-A 转换为ACSII码,以方便阅读

-w 将数据包信息保存到指定的文件

-r 从指定文件读取数据包信息

-c 定义抓包个数

过滤条件:

类型:host、net、port、portrange

方向:src(源地址)、dst(目标地址)

协议:tcp、udp、ip、wlan、arp…

多个组合条件:and、or、not

56.简述DNS分离解析的工作原理,关键配置

DNS分离解析:针对同一个域名,为不同的客户机提供不同的解析结果

关键配置:通过view语句为客户端分类,在每个视图内使用match-client来匹配客户机的来源地址,每个视图内都定义目标DNS区域但不调用不同的地址库文件

57.简述Linux常见目录的用途

/:整个Linux文件系统的根目录

/boot:存放系统内核、启动菜单配置等文件

/home:存放普通用户的默认家目录(同名子目录)

/root:管理员的家目录

/bin、/sbin:存放各种系统命令、可执行的程序

/dev:存放设备文件

/etc:存放各种系统配置、系统服务配置文件

58.传统以太网的最大传输包长(MTU)是多少字节?

1500字节

59.通常在企业中用vlan做什么?好处有哪些?

按部门划分主机

好处:广播控制,增加安全,提高带宽利用,降低延迟

60.交换机与路由器的区别?

交换机工作在数据链路层,转发数据帧,通过MAC地址查找主机

路由器工作在网络层,转发数据包,可以识别IP地址进行路径选择

61.在TCP/IP五层模型中,哪一层提供点到点的服务,哪一层提供端到端的服务?

网络层提供点到点服务

传输层提供端到端服务

62.写出下列服务使用的传输层协议(TCP/UDP)以及默认端口

pop3、imap、smtp、dns、windows远程、DHCP、mysql

服务名 协议 端口

pop3 tcp 110

imap tcp 143

smtp tcp 25

dns tcp 53

​ udp 53

Windows远程 (mstsc) tcp 3389

DHCP 服务端udp 67

​ 客户端udp 68

mysql tcp 3306

63.网卡MAC地址通常是几进制标识,长度是多少字节,如何区别厂商标识和序列号?

十六进制,长度六字节,前24位是厂商标识,后24位是序列号

64.在局域网想获得192.168.1.2的MAC地址,在系统中如何操作?

因为arp协议可以根据IP地址解析mac地址,使用ping测试对方后输入arp -a 即可查询arp缓存表而得到mac地址


例:

[student@room9pc01 ~]$ ping -c 2 192.168.1.2

PING 192.168.1.2 (192.168.1.2) 56(84) bytes of data.

64 bytes from 192.168.1.2: icmp_seq=1 ttl=255 time=1.32 ms

64 bytes from 192.168.1.2: icmp_seq=2 ttl=255 time=1.54 ms

— 192.168.1.2 ping statistics —

2 packets transmitted, 2 received, 0% packet loss, time 1001ms

rtt min/avg/max/mdev = 1.324/1.436/1.549/0.118 ms

[student@room9pc01 ~]$ arp -a

176-130-9-1.abo.bbox.fr (176.130.9.1) at 00:15:f9:d1:eb:49 [ether] on eth0


65.在传输层有哪些协议?有什么区别?

TCP与UDP协议

TCP是可靠的传输,面向连接,传输效率低

UDP时不可靠的,无连接的,传输效率高

66.简述三次握手,四次断开的过程

在TCP/IP中,采用三次握手来建立一次连接。

第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYN_SENT状态,等待服务器确认;SYN:同步序列编号(Synchronize Sequence Numbers)。

第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态;

第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED(TCP连接成功)状态,两者可以进行数据交换了,完成三次握手。

四次断开过程如下:

(1) TCP客户端发送一个FIN,用来关闭客户到服务器的数据传送,提出断开连接要求。

(2) 服务器收到这个FIN,它发回一个ACK,确认序号为收到的序号加1。和SYN一样,一个FIN将占用一个序号。确定这一方连接将关闭。

(3) 服务器关闭客户端的连接,发送一个FIN给客户端,请求关闭连接。

(4) 客户端发回ACK报文确认,并将确认序号设置为收到序号加1。

67.什么是DoS攻击?

导致目标系统无法处理正常用户的请求行为,即拒绝服务攻击

主要特点:

不需要侵入受攻击的系统

如果目标系统没有漏洞,远程攻击也有可能成功

不以窃取目标系统上的机密信息为目的

68.在局域网内的某台主机用ping命令测试网络连接时发现网络内部的主机都可以连通,而不能与公网连通,有哪些原因?

局域网内的网关或主机的网关无效,没有设置连接公网的网关

69.什么是默认路由?有哪些作用?

默认路由是特殊的静态路由,在路由表中找到不明确的路由条目时会使用默认路由,一般在网关出口访问外网时使用

70.NAT的作用以及优点有哪些?公司有哪些业务使用NAT?

作用:

网络地址转换

优点:

节约公网IP,提高安全,处理地址重叠

业务范畴:

web服务器,App服务器,PC主机

71.如何获取一个文件每一行第三个元素?

awk ‘{print $3}’ 文件名


awk支持按列输出,通过内置变量$1,$2,$3…可以显示任意列,默认列是一空格或Tab缩进为分隔符,也可以使用-F选项指定其他分隔符


72.使用awk统计httpd访问日志中每个客户端IP出现的次数?

awk ‘{ip[$1]++}END{for(i in ip){print ip[i],i}}’ /var/log/httpd/access_log


定义数组,数组名为ip,数字下标为日志文件的第一列(也就是客户端的IP地址),++目的在于对客户端进行统计计数,客户端IP出现一次计数器就加一.END中的指令在读取完文件后执行,通过循环将所有的统计信息输出


73.哪些方式可以将标准输出和错误输出重定向到文件?

命令 &> 文件名

命令 > 文件名1 2> 文件名2

命令 > 文件名 2>&1

命令 &>> 文件名

命令 >> 文件名1 2>> 文件名2

命令 >> 文件名 2>&1

74.正则表达式符号*、+、?、[]、[^]、{n} 分别代表什么含义?

* 表示匹配的前面的字符出现了任意次(包括0次)

  • 表示匹配的前面的字符出现了至少1次(1次或多次)
    

? 表示匹配前面的字符出现了0次或1次

[] 表示集合,匹配集合中的任意单个字符

[^] 表示对集合取反

{n} 表示精确匹配前面的字符出现了n次

75.编写脚本,用户输入密码,脚本判断密码是否正确,输入正确则提示正确,连续输入错误密码3次,则报警?

[root@test ~]# vim test.sh

#!/bin/bash

init=123456

for i in {1…3}

do

read -p “请输入密码:” pass

if [ $pass == $init ];then

​ echo “密码正确”

​ exit

fi

done

echo “警告:密码输入错误”


[root@repo ~]# bash test.sh

请输入密码:789456

请输入密码:4857

请输入密码:46584

警告:密码输入错误

[root@repo ~]# bash test.sh

请输入密码:123456

密码正确


76.编写脚本,自动生成一个8位随机密码

[root@repo ~]# vim test1.sh

#!/bin/bash

str=“abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789”

pass=“”

for i in {1…8}

do

num= [ R A N D O M [RANDOM% [RANDOM{#str}]

tmp=${str:num:1}

pass+=$tmp

done

echo $pass


[root@repo ~]# bash test1.sh

fI55Qcr0

[root@repo ~]# bash test1.sh

iTmEyE9Q

[root@repo ~]# bash test1.sh

wy0PvcHa

[root@repo ~]# bash test1.sh

nk6AC9VT


77.源码编译安装nginx时,如何启用更多的模块以及禁用不需要的模块?

执行./configure脚本时,通过添加–with-模块名的方式启用更多模块,通过添加–without-模块名禁用不需要的模块

ngx_http_auth_basic_module模块 实现网站的用户认证功能,包含auth_basic等配置参数

ngx_http_charset_module模块 可以自定义网页编码,包含charset utf8等配置参数

ngx_http_fastcgi_module模块 转发请求给PHP服务,包含fastcgi_pass等配置参数

ngx_http_gzip_module模块 实现网站数据压缩功能,包含gzip、gzip_type等配置参数

ngx_http_log_module模块 记录用户请求的日志,,包含access_log等配置参数

ngx_http_rewrite_module模块 地址重新模块,包含rewrite、break、last等配置参数

ngx_http_ssl_module模块 实现HTTPS加密网站,包含ssl_certificate、ssl_certificate_key等参数

ngx_http_stub_status_module模块 显示nginx服务状态,包含stub_status配置参数

ngx_http_upstream_module模块 定义集群服务器组模块,包含upstream、hash、ip_hash等配置参数

ngx_stream_core_module模块 定义4层调度(集群服务器组)模块

ngx_http_core_module模块 核心模块,包含http、server_name、root等配置参数

ngx_http_access_module模块 访问控制模块,包含allow和deny配置参数

ngx_http_proxy_module 模块 代理模块,包含proxy_pass等配置参数

ngx_http_limit_conn_module 模块 限制并发量模块,包含limit_conn等参数

proxy模块中配置过:proxy_set_header proxy_connect_timeout proxy_send_timeout proxy_buffer_*

78.nginx支持哪些类型的代理服务器,如何进行配置?

基于7层的HTTP代理和MAIL代理

基于4层的TCP或UDP代理

定义集群服务器模板配置:

​ upstream servers {

​ server 后端真实服务器IP:端口

​ server 后端真实服务器IP:端口

​ }

调用集群配置文件模板:

​ 7层调度:proxy_pass http://servers;

​ 4层调度:proxy_pass servers;

79.如何修改Linux内核参数,调整进程可以打开的最大文件数量?

临时调整的规则:

ulimit -Hn 数量 #硬限制

ulimit -Sn 数量 #软限制

永久规则:

vim /etc/security/limit.conf

用户或组 soft nofile 数量

用户或组 hard nofile 数量

80.HTTP常见状态码

状态码 功能描述

200 一切正常

301 永久重定向

302 临时重定向

401 用户名或密码错误

403 禁止访问(客户端IP地址被拒绝)

404 文件不存在

414 请求URI头部过长

500 服务器内部错误

502 Bad Gateway

81.subversion的主要功能是什么?

SVN是一个版本控制系统,主要功能为版本控制,支持日志、数据恢复功能

可以实现的功能:

svn co 下载代码

svn ci 提交代码

svn log 查看日志

svn update 更新代码

svn diff 查看代码差异

svn rm 删除

svn merge 合并


工作中主要用于:

代码管理(通过版本库上线代码到服务器)

文档管理(技术指导手册的版本控制)


82.客户端无法连接服务时,如何查看服务器的服务是否启动,端口是否开放?

netstat或ss命令查看系统中启动的端口信息

该命令的常用选项:

-a 显示所有端口信息

-n 以数字形式显示端口号

-t 显示tcp连接的端口

-u 显示udp连接的端口

-l 显示服务器正在监听的端口信息,如httpd启动后,会一直监听80端口

-p 显示监听端口的服务名称是什么(也就是程序名称)

83.Tomcat如何开启SSL加密,SSL默认的加密端口是多少?

开启一个独立的Connector,设置端口,并在配置中调用非对称秘钥文件

默认的SSL端口为443端口,Tomcat配置文件中的默认设置为8443端口

84.如何将源码包软件转换成一个RPM包?

1)安装rpmbuild工具

2)将源码包放到SOURCES目录下

3)在SPECS目录下创建一个spec配置文件,病按照格式要求编辑文件内容

4)使用rpmbuild -ba spec 文件,即可转换成一个RPM包


SPECS文件可以定义:

软件的描述信息,如何编译安装源码软件,对什么文件进行打包封装为RPM,安装前和安装后脚本等

IDC机房运维是指对机房设备进运维管理和维护的工作。下面是我对该领域的一些常见问题的回答: 1. 请谈谈你对IDC机房运维工作的理解。 IDC机房运维是保障机房设备正常运和维护的工作,包括设备安装、巡检、故障排除、硬件维护等,目的是为了确保IDC机房的稳定性和可靠性。 2. 你在这个领域有哪些经验? 我有几年的IDC机房运维经验,熟悉机房环境和设备的安装、维护和故障处理。我曾执过机房巡检、设备升级、机柜布线、定期备份等工作,并处理过各种突发事件。 3. 你在处理机房故障方面有什么经验? 在处理机房故障时,我首先会仔细查看故障报告和设备日志,找出问题的根源。然后,我会根据问题的性质,采取适当的措施进修复,如更换受损的硬件、修复软件故障等。此外,我还会记录故障原因和解决方法,以便日后参考和改进。 4. 你如何管理机房设备? 我会进设备管理,包括设备安装、计划巡检、软硬件升级、定期备份等。此外,我还会制定设备管理规范,确保设备的正常运和安全性。我也会与供应商保持良好的合作关系,及时获取到新的技术和设备信息。 5. 你如何保障机房的稳定性? 为了保障机房的稳定性,我会定期对机房设备进巡检,预防问题的发生。我还会制定机房规范和安全措施,确保设备的正常运和数据的安全性。此外,我还会及时处理故障和进紧急维护,以减少故障对业务的影响。 总的来说,IDC机房运维是一个相对复杂和关键的工作,需要有扎实的技术和丰富的经验。我相信通过我的努力和专业知识,能够胜任这个岗位,并为公司的发展和机房的稳定运做出贡献。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值