2024年Linux最新运维面试官喜欢问的问题_机房运维面试题库及答案,薪资翻倍
2024年Linux最新运维面试官喜欢问的问题_机房运维面试题库及答案,薪资翻倍
先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前在阿里
深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新Linux运维全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上运维知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
你做过的哪件事最令自己感到骄傲?
回答提示:
这是考官给你的一个机会,让你展示自己把握命运的能力。这会体现你潜在的领导能力以及你被提升的可能性。假如你应聘于一个服务性质的单位,你很可能会被邀请去午餐。记住:你的前途取决于你的知识、你的社交能力和综合表现。
让你印象最深的一次失败经历是什么?
测试应聘者对待失败的态度及基本价值取向。
思考时间不要超过30秒,不要说无关紧要的失败,一定要让对方也相信“这次失败给了我很深的触动”。
尽量说与事业有关的失败,而不是家庭、交友或恋爱。态度要诚恳,说出你曾为成功尽心尽力和你对这次失败的总结及之后的补救措施。让对方看到你能够承受失败,并且善于总结经验教训和改正错误。特别是要说出“如果再碰到这件事,我会……”要把具体步骤说清楚,让考官相信你不会再一次。
你在业余时间喜欢做什么?
了解应聘者的爱好、性格和生活规律,从侧面判断应聘者是否会喜欢今后的工作。
作息时间一定要规律。当然,有些行业,比如记者,需要经常熬夜,此时不妨说说自己精力旺盛,玩了一个晚上第二天照常上学。不要说自己在业余时间也要不停学习,这会给人留下“刻意回答”的嫌疑。
不妨说说自己的爱好,让对方看到你个性的另一面,让对方知道你是个懂得充实自己、也懂得享受生活的人。俱爱好最好有群体性的活动,不要给人留下孤僻的印象。
你认为个人事业的成败是由什么决定的?
了解应聘者的价值观。
根据应聘职业的特点回答,如果是集体性工作,就要答与同事间的协作。如果是个人性工作,回答“一个人的责任感和能力”更为恰当。
价值观没有的标准,但一定要结合企业文化,不要与企业文化发生太大的偏离。
客户投诉部门效率低,你会怎么作?
首先,我会保持冷静。作为一名工作人员,在工作中遇到各种各样的问题是正常的,关键是如何认识它,积极应对,妥善处理。
其次,我会反思一下客户不满意的原因。一是看是否是自己在解决问题上的确有考虑的不周到的地方,二是看是否是客户不太了解相关的服务规定而提出超出规定的要求,三是看是否是客户了解相关的规定,但是提出的要求不合理。
再次,根据原因采取相对的对策。如果是自己确有不周到的地方,按照服务规定作出合理的安排,并向客户作出解释;如果是客户不太了解政策规定而造成的误解,我会向他作出进一步的解释,消除他的误会;如果是客户提出的要求不符合政策规定,我会明确地向他指出。 最后,我会把整个事情的处理情况向领导作出说明,希望得到他的理解和支持。
我不会因为客户投诉了我而丧失工作的热情和积极性,而会一如既往地牢记为客户服务的宗旨,争取早日做一名领导信任、公司放心、客户满意的职员。
对这项工作,你有哪些可预见的困难?
回答提示:
①不宜直接说出具体的困难,否则可能令对方怀疑应聘者不行。
②可以尝试迂回战术,说出应聘者对困难所持有的态度——工作中出现一些困难是正常的,也是难免的,但是只要有坚忍不拔的毅力、良好的合作精神以及事前周密而充分的准备,任何困难都是可以克服。
回答分析:
一般问这个问题,面试者的希望就比较大了,因为已经在谈工作细节,但常规思路中的回答,又被面试官“骗”了。当面试官询问这个问题的时候,有两个目的。第一,看看应聘者是不是在行,说出的困难是不是在这个职位中一般都不可避免的问题。第二,是想看一下应聘者解决困难的手法对不对,及公司能否提供这样的资源。而不是想了解应聘者对困难的态度
如果我录用你,你将怎样开展工作?
回答提示:
①如果应聘者对于应聘的职位缺乏足够的了解,最好不要直接说出自己开展工作的具体办法。
②可以尝试采用迂回战术来回答,如“首先听取领导的指示和要求,然后就有关情况进行了解和熟悉,接下来制定一份近期的工作计划并报领导批准,最后根据计划开展工作
回答分析:
这个问题的主要目的也是了解应聘者的工作能力和计划性、条理性,而且重点想要知道细节。如果向思路中所讲的迂回战术,面试官会认为回避问题,如果引导了几次仍然是回避的话,此人绝对不会录用了。
你为什么选择(计算机或其他)专业?
了解对方的专业倾向与工作倾向。
前一个问题尽量如实回答,比如“觉得这个专业有前途”“我喜欢这个专业”“我本来报了XX专业,被调剂到这个专业”等等。回答这个问题有一个前提:你的回答是在为后面的回答铺路。
特别是你的专业与应聘工作无关时,你应该保证在考官提出第二个总理后立刻说出“我觉得我的个性与能力更适合我所应聘的工作”、“我在XX学校收集了很多相关信息”、“我的实习经历让我发现,我更适合这样的工作。”只要你能说明你适合这份工作,面试官不会真的在意你的专业背景。
学校参加过哪些社团,有没有干部经历?
了解应聘者的社交能力和领导能力,全面观察应聘者。
不要说没有,即使是班级活动,也可以拿出来说。没有参加社团活动的人,会给面试官留下“不合群”的印象。可以说说具体的活动经过,取得的成绩。有干部经验一定要重点说明。
说说你的实习经历吧
了解应聘者的社会融合度,以及实习阶段的表现。
尽量回答与应聘岗位有关的工作经验,比如,应聘销售者,说自己大学时经常批发日用品卖给同学,销量不错。这样的经历无形中说明你的能力。实习经历应如实说明,包括具体工作、取得成绩,最要紧的是说明自己的收获。
你希望与什么样的上级共事?
回答提示:
①通过应聘者对上级的“希望”可以判断出应聘者对自我要求的意识,这既上一个陷阱,又是一次机会。
②最好回避对上级具体的希望,多谈对自己的要求。
③如“做为刚步入社会的新人,我应该多要求自己尽快熟悉环境、适应环境,而不应该对环境提出什么要求,只要能发挥我的专长就可以了。
分析:这个问题比较好的回答是,希望我的上级能够在工作中对我多指导,对我工作中的错误能够立即指出。总之,从上级指导这个方面谈,不会有大的纰漏。
发现领导犯了错误,你会怎么办?
回答提示:
1,如是工作中的方法发生错误,不是什么原则性的问题,不影响大局发展,我会找个适当的时机以讨教的口吻委婉的提醒他。
2,如果是大是大非的原则问题,我想他会跟组织上汇报的,如果他没有这样做,我也会找个适当的时机委婉的提醒他,如果他还坚持,只有向上级领导反映。
3,如果这个错误回游很严重的后果则必须即使提醒他,因为我们要对工作负责,这样也是对领导负责,以免因领导的原因造成不必要的损失。
哪件事最让你感动?
考察应聘者的感性程度,没有公司愿意录用一个冷冰冰的职员。
从小处着眼,切忌回答诸如“北京成功举办奥运会最让我感动”一类的大话,这样回答会让考官认为你很做作。
最好能讲讲父母、亲友、师长等到人给你的感动。此外,一定要说一件具体的“事”,用你的表情让面试官相信你,但不要情绪失控,讲着讲着自己哭个没完。
你喜欢和什么样的人交朋友?(你喜欢什么样的领导和同事?)
考察应聘者的志向,人以群分,人们往往喜欢和自己相近的人。
不要以具体某个人为例子,谈你欣赏的个性。可以适当举出一些细节,比如某个朋友很周到,这样的人你很喜欢。
回答这个问题尽量轻松,万一你喜欢和蔼上司,偏偏你的经理是个不苟言笑的人,他也许会因为担心今后的相处而放弃录用你。尽量使用“公正”“务实”这样的词语,即让别人看到你的素质,又不会招来不必要的麻烦。
如果主管的指示是错的,你还会执行吗?
考察应聘者的处事原则和沟通技巧。
面对是非问题,万万不能马虎。首先要表示自己会慎重思考主管的指示是否真的错了,如果错了,一不定要以最佳方式拒绝执行。紧接着要询问考官,请考官给出情境,即主管在什么情况下做出了什么样的错误指示,然后再回答自己的“最佳方式”。比如“顾全上司的面子,私下讨论”“情况紧急,要据理力争”等等。
如果对方直接部你“能不能帮公司逃税”,直接拒绝,原则问题不能马虎,越大的公司越注意员工的操守。
你如何对待他人的批评?
考察应聘者接受批评的能力与合作能力。
谁都知道应该回答“我能够接受批评”,但这个回答未必相信。所以,应该对考官详细说明,旅行,自己会认真,判断他人的批评是否正确;其次,如果不正确,指出对方的误会,如果正确,虚心改正;然后,出现问题的原因,检讨自己在其他方面有没有类似的错误;最后,要反省自己的错误有没有伤害到他人,如果有,应道歉或予以补偿。如此,才是一份完整的回答。
你喜欢什么运动?
判断应聘者喜欢对抗、竞争或独享。
不要答非所问,说自己喜爱散步或旅行。要明确地说出一种运动。尽量回答大众型、需要团体合作的运动类型,如足球篮球排球,还要顺便说说喜欢这个运动的原因,你的回答应该引导对方了解你的优点比如,“我喜欢乒乓球,因为我无法得知下一个球对方会如何找。”面试官会觉得,你是个喜欢挑战的人。
你认为自己最擅长的是什么?
继续了解应聘者的个性,考察对方能力。
每个人都有擅长的事,面对面试官,不妨如实说明。要注意的问题是,不要说得太多,一个“万事能”没有实践检验,总是让人怀疑;也不要说得太少,没有擅长的事会让面试官怀疑“这个人能做什么”。
“三”是个保险数字,说三件自己擅长的事,一件或两件与要从事的工作有关,让面试官了解你的能力,另外一件可以随意发挥,活跃面试气氛
面对一个陌生的环境,你会怎样适应?大概需要多长时间适应?
考察应聘者的适应能力和应对能力。
不要立刻回答,也不要直接给出确切的时间,这样面试官会认为你很草率。请对方举出实例,才能扩展自己的思路。
根据对方的例子如“你要去一个高校云集的地方推销商品”,给出详细的答案,适应时间不宜太长,但也不要说“我立刻就能适应”,这种回答显然不负责任。
如果我雇用你,你觉得可以为部门带来什么样的贡献?
这是老板最关心的问题,也是面试官最想问的问题。
尽管面试官非常想知道你的价值,但你对自己的任何主观评价都不是他们最终决定的依据,所以,回答这个问题不卑不亢。
不要把自己吹得天花乱坠,吹嘘我能实现500万业绩,万一人家公司经理级别的每年也就200万的收益,你的牛皮立刻破了。
要以谦虚的表示自己的能力:能够为工作带来一个忠诚并勤奋的员工,为部门带来一个友好而谨慎的同事,为公司带来一颗充满创意的头脑,为这个职位带来更多的客户。尽量慎重地拟定自己未来的计划,显示你的聪明,回避了你头疼的问题——人事经理想听到的是你能为公司带来几百万,而你则告诉他你有几千万的可能。
什么是运维?什么是游戏运维?
1)运维是指大型组织已经建立好的网络软硬件的维护,就是要保证业务的上线与运作的正常,在他运转的过程中,对他进行维护,他集合了网络、系统、数据库、开发、安全、监控于一身的技术运维又包括很多种,有DBA运维、网站运维、虚拟化运维、监控运维、游戏运维等等;
2)游戏运维又有分工,分为开发运维、应用运维(业务运维)和系统运维;
开发运维:是给应用运维开发运维工具和运维平台的;
应用运维:是给业务上线、维护和做故障排除的,用开发运维开发出来的工具给业务上线、维护、做故障排查;
系统运维:是给应用运维提供业务上的基础设施,比如:系统、网络、监控、硬件等等;
总结:开发运维和系统运维给应用运维提供了“工具”和“基础设施”上的支撑开发运维、应用运维和系统运维他们的工作是环环相扣的。
什么是大型网站运维?
定义主要从运维复杂性角度考虑,如网站规范、知名度、服务器 量级、pv量等考虑,其它因素不是重点;因此,我们先定义服务器规模大于1000台,pv每天至少上亿(至少国内排名前10),如sina、baidu、 QQ,http://51.com等等;
其它小型网站可能没有真正意义上的运维工程师,这与网站规范不够和成本因素有关,更多的是集合网络、系统 、开发工作于一身的“复合性人才”,就如有些公司把一些合同采购都纳入了运维职责范围,还有如IDC网络规划也纳入运维职责。所以,非常重要一定需要明白:运维对其它关联工种必须非常了解熟悉:网络、系统、系统开发、存储,安全,DB等;我在这里所讲的运维工程师就是指专职运维工程师。
运维工作才刚开始,具体工作可能包括:升级版本上线工作、服务监控、应用状态统计、日常服务状态巡检、突发故障处理、服务日常变更调整、集群管理、服务性能评估优化、数据库管理优化、随着应用PV增减进行应用架构的伸缩、安全、运维开发工作:
更详细介绍链接 :https://mp.weixin.qq.com/s/wbhNYKaqzkEay_LQDIn0Tg
运维工作师需要什么样的技能及素质
做为一名运维工程师需要什么样的技能及素质呢,首先说说技能吧,如大家上面所看到,运维是一个集多IT工种技能与一身的岗位,对系统->网络 ->存储->协议->需求->开发->测试->安全等各环节都需要了解一些,但对于某些环节需熟悉甚至精通,如系统 (基本操作系统的熟悉使用,*nix,windows …)、协议、系统开发(日常很重要的工作是自动运维化相关开发、大规模集群工具开发、管理)、通用应用(如lvs、ha、web server 、db、中间件、存储等)、网络,IDC拓朴架构;
怎样才算是一个合格的运维工程师
1、保证服务达到要求的线上标准,如99.9%;保证线上稳定,这是运维工程师的基本责职所在。
2、不断的提升应用的可靠性与健壮性、性能优化、安全提升;这方面非常考验主动性和创新思维。
3、网站各层面监控、统计的覆盖度,软件、硬件、运行状态,能监控的都需要监控统计,避免监控死角、并能实时了解应用的运转情况。
4、通过创新思维解决运维效率问题;目前各公司大部份运维主要工作还是依赖人工操作干预,需要尽可能的解放双手。
5、运维知识的积累与沉淀、文档的完备性,运维是一个经验性非常强的岗位,好的经验与陷阱都需积累下来,避免重复性范错。
6、计划性和执行力;工作有计划,计划后想法设法达到目标,不找借口。
7、自动化运维;能对日常机械化工作进行提炼、设计并开发成工具、系统,能让系统自动完成的尽量依靠系统;让大家更多的时间用于思考、创新思维、做自已喜欢的事情。
以上只是技术上的一些层面,当然个人意识也是很重要的。
运维职业的迷惘、现状与发展前景
运维岗位不像其它岗位,如研发工程师、测试工程师等,有非常明确的职责定位及职业规划,比较有职业认同感与成就感;而运维工作可能给人的感觉是哪方面都了解一些,但又都比上专职工程师更精通、感觉平时被关注度比较低(除非线上出现故障),慢慢的大家就会迷惘,对职业发展产生困惑,为什么会有这种现象呢?除了职业本身特点外,主要还是因为对运维了解不深入、做得不深入导致;其实这个问题其它岗位也会出现,但我发现运维更典型,更容易出现这个问题;
针对这个问题我谈一下网站运维的现状及发展前景(也在思考中,可能不太深入全面,也请大家斧正补充)
运维现状:
1、处于刚起步的初级阶段,各大公司有此专职,但重视或重要程度不高,可替代性强;小公司更多是由其它岗位来兼顾做这一块工作,没有专职,也不可能做得深入。
2、技术层次比较低;主要处于技术探索、积累阶段,没有型成体系化的理念、技术。
3、体力劳动偏大;这个问题主要与第二点有关系,很多事情还是依靠人力进行,没有完成好的提练,对于大规模集群没有成熟的自动化管理方法,在此说明一下,大规模集群与运维工作是息息相关的如果只是百十来台机器,那就没有运维太大的生存空间了。
4、优秀运维人才的极度缺乏;目前各大公司基本上都靠自已培养,这个现状导致行业内运维人才的流动性非常低,非常多好的技术都局限在各大公司内部,如 google 50万台机器科学的管理,或者国内互联公司top 10 的一些运维经验,这些经验是非常有价值的东西并决定了一个公司的核心竞争力;这些问题进而导致业内先进运维技术的流通、贯通、与借签,并最终将限制了运维发展。
5、很多优秀的运维经验都掌握在大公司手中;这不在于公司的技术实力,而在于大公司的技术规模、海量PV、硬件规模足够大,如baidu可怕的流量、 海量数据~~~~这些因素决定了他们遇到的问题都是其它中/小公司还没有遇到的,或即将遇到。但大公司可能已有很好的解决方案或系统。
什么是中间件?什么是jdk?
中间件介绍:
中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源。
中间件位于客户机/ 服务器的操作系统之上,管理计算机资源和网络通讯是连接两个独立应用程序或独立系统的软件。相连接的系统,即使它们具有不同的接口。但通过中间件相互之间仍能交换信息。执行中间件的一个关键途径是信息传递通过中间件,应用程序可以工作于多平台或OS环境。
jdk:jdk是Java的开发工具包。它是一种用于构建在 Java 平台上发布的应用程序、applet 和组件的开发环境。
讲述一下Tomcat8005、8009、8080三个端口的含义?
8005==》 关闭时使用
8009==》 为AJP端口,即容器使用,如Apache能通过AJP协议访问Tomcat的8009端口
8080==》 一般应用使用
Tomcat和Resin有什么区别,工作中你怎么选择?
区别:Tomcat用户数多,可参考文档多,Resin用户数少,可考虑文档少。最主要区别则是Tomcat是标准的java容器,不过性能方面比resin的要差一些但稳定性和java程序的兼容性,应该是比resin的要好。
工作中选择:现在大公司都是用resin,追求性能;而中小型公司都是用Tomcat,追求稳定和程序的兼容。
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。
简述DNS进行域名解析的过程?
用户要访问www.baidu.com,会先找本机的host文件,再找本地设置的DNS服务器,如果也没有的话,就去网络中找根服务器,根服务器反馈结果,说只能提供一级域名服务器.cn,就去找一级域名服务器,一级域名服务器说只能提供二级域名服务器.com.cn,就去找二级域名服务器,二级域服务器只能提供三级域名服务器.baidu.com.cn,就去找三级域名服务器,三级域名服务器正好有这个网站www.baidu.com,然后发给请求的服务器,保存一份之后,再发给客户端。
RabbitMQ是什么东西?
RabbitMQ也就是消息队列中间件,消息中间件是在消息的传息过程中保存消息的容器、消息中间件再将消息从它的源中到它的目标中标时充当中间人的作用。
队列的主要目的是提供路由并保证消息的传递;如果发送消息时接收者不可用。消息队列不会保留消息,直到可以成功地传递为止,当然,消息队列保存消息也是有期限地。
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
如何重置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;
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功能,启用之后可以支持单独的表备份
keepalived的工作原理和如何做到健康检查
keepalived是以VRRP协议为实现基础的,VRRP全称Virtual Router Redundancy Protocol,即虚拟路由冗余协议。
虚拟路由冗余协议,可以认为是实现路由器高可用的协议,即将N台提供相同功能的路由器组成一个路由器组这个组里面有一个master和多个backup,master上面有一个对外提供服务的vip(该路由器所在局域网内其他机器的默认路由为该vip),master会发组播,当backup收不到vrrp包时就认为master宕掉了这时就需要根据VRRP的优先级来选举一个backup当master。这样就可以保证路由器的高可用了。
keepalived主要有三个模块,分别是core、check和vrrp。core模块为keepalived的核心,负责主进程的启动、维护及全局配置文件的加载和解析。check负责健康检查,包括常见的各种检查方式,vrrp模块是来实现VRRP协议的。
Keepalived健康检查方式配置
HTTP_GET|SSL_GET
HTTP_GET | SSL_GET
{
url {
path /# HTTP/SSL 检查的url可以是多个
digest <STRING> # HTTP/SSL 检查后的摘要信息用工具genhash生成
status_code 200# HTTP/SSL 检查返回的状态码
}
connect_port 80 # 连接端口
bindto<IPADD>
connect_timeout 3 # 连接超时时间
nb_get_retry 3 # 重连次数
delay_before_retry 2 #连接间隔时间
}
Linux系统中病毒怎么解决?
1)最简单有效的方法就是重装系统
2)要查的话就是找到病毒文件然后删除中毒之后一般机器cpu、内存使用率会比较高机器向外发包等异常情况,排查方法简单介绍下
top 命令找到cpu使用率最高的进程
一般病毒文件命名都比较乱,可以用 ps aux 找到病毒文件位置
rm -f 命令删除病毒文件
检查计划任务、开机启动项和病毒文件目录有无其他可以文件等
3)由于即使删除病毒文件不排除有潜伏病毒,所以最好是把机器备份数据之后重装一下。
说说TCP/IP的七层模型
应用层 (Application):
网络服务与最终用户的一个接口。
协议有:HTTP FTP TFTP SMTP SNMP DNS TELNET HTTPS POP3 DHCP
表示层(Presentation Layer):
数据的表示、安全、压缩。(在五层模型里面已经合并到了应用层)
格式有,JPEG、ASCll、DECOIC、加密格式等
会话层(Session Layer):
建立、管理、终止会话。(在五层模型里面已经合并到了应用层)
对应主机进程,指本地主机与远程主机正在进行的会话
传输层 (Transport):
定义传输数据的协议端口号,以及流控和差错校验。
协议有:TCP UDP,数据包一旦离开网卡即进入网络传输层
网络层 (Network):
进行逻辑地址寻址,实现不同网络之间的路径选择。
协议有:ICMP IGMP IP(IPV4 IPV6) ARP RARP
数据链路层 (Link):
建立逻辑连接、进行硬件地址寻址、差错校验等功能。(由底层网络定义协议)将比特组合成字节进而组合成帧,用MAC地址访问介质,错误发现但不能纠正
物理层(Physical Layer):
是计算机网络OSI模型中最低的一层物理层规定:为传输数据所需要的物理链路创建、维持、拆除而提供具有机械的,电子的,功能的和规范的特性
简单的说,物理层确保原始的数据可在各种物理媒体上传输。局域网与广域网皆属第1、2层物理层是OSI的第一层,它虽然处于最底层,却是整个开放系统的基础、物理层为设备之间的数据通信提供传输媒体及互连设备,为数据传输提供可靠的环境、如果您想要用尽量少的词来记住这个第一层,那就是“信号和介质”
你常用的Nginx模块,用来做什么
rewrite模块,实现重写功能
access模块:来源控制
ssl模块:安全加密
ngx_http_gzip_module:网络传输压缩模块
ngx_http_proxy_module 模块实现代理
ngx_http_upstream_module模块实现定义后端服务器列表
ngx_cache_purge实现缓存清除功能
请列出你了解的web服务器负载架构
Nginx
Haproxy
Keepalived
LVS
运维工作师需要什么样的技能及素质
做为一名运维工程师需要什么样的技能及素质呢,首先说说技能吧,如大家上面所看到,运维是一个集多IT工种技能与一身的岗位,对系统->网络 ->存储->协议->需求->开发->测试->安全等各环节都需要了解一些,但对于某些环节需熟悉甚至精通,如系统 (基本操作系统的熟悉使用,*nix,windows …)、协议、系统开发(日常很重要的工作是自动运维化相关开发、大规模集群工具开发、管理)、通用应用(如lvs、ha、web server 、db、中间件、存储等)、网络,IDC拓朴架构;
技能方面总结以下几点:
1、开发能力,这点非常重要,因为运维工具都需要自已开发,开发语言:perl、python、php(其中之一)、shell(awk,sed,expect….等),需要有过实际项目开发经验,否则工作会非常痛苦。
2、通用应用方面需要了解:操作系统(目前国内主要是linux、bsd)、webserver相关 (nginx,apahe,php,lighttpd,java。。。)、数据库(mysql,oralce)、其它杂七八拉的东东;系统优化,高可靠性;这些只是加分项,不需必备,可以边工作边慢慢学,这些东西都不难。当然在运维中,有些是有分工偏重点不一样。
3、系统、网络、安全,存储,CDN,DB等需要相当了解,知道其相关原理。
个人素质方面:
1、沟通能力、团队协作:运维工作跨部门、跨工种工作很多,需善于沟通、并且团队协作能力要强;这应该是现代企业的基本素质要求了,不多说。
2、工作中需胆大心细:胆大才能创新、不走寻常路,特别对于运维这种新的工种,更需创新才能促进发展;心细,运维工程师是网站admin,最高线上权限者,一不小心就会遗憾终生或打入十八层地狱。
3、主动性、执行力、精力旺盛、抗压能力强:由于IT行业的特性,变化快;往往计划赶不上变化,运维工作就更突出了,比如国内各大公司服务器往往是全国各地,哪里便宜性价比高,就那往搬,进行大规模服务迁移(牵扯的服务器成百上千台),这是一个非常头痛的问题;往往时间 非常紧迫,如限1周内完成,这种情况下,运维工程师的主动性及执行力就有很高的要求了:计划、方案、服务无缝迁移、机器搬迁上架、环境准备、安全评估、性能评估、基建、各关联部门扯皮,7X24小紧急事故响应等。
4、其它就是一些基本素质了:头脑要灵光、逻辑思维能力强、为人谦虚稳重、亲和力、乐于助人、有大局观。
5、最后一点,做网站运维需要有探索创新精神,通过创新型思维解决现实中的问题,因为这是一个处于幼年的职业(国外也一样,但比国内起步早点),没有成熟体系或方法论可以借鉴,只能靠大家自已摸索努力。
怎样才算是一个合格的运维工程师
1、保证服务达到要求的线上标准,如99.9%;保证线上稳定,这是运维工程师的基本责职所在。
2、不断的提升应用的可靠性与健壮性、性能优化、安全提升;这方面非常考验主动性和创新思维。
3、网站各层面监控、统计的覆盖度,软件、硬件、运行状态,能监控的都需要监控统计,避免监控死角、并能实时了解应用的运转情况。
4、通过创新思维解决运维效率问题;目前各公司大部份运维主要工作还是依赖人工操作干预,需要尽可能的解放双手。
5、运维知识的积累与沉淀、文档的完备性,运维是一个经验性非常强的岗位,好的经验与陷阱都需积累下来,避免重复性范错。
6、计划性和执行力;工作有计划,计划后想法设法达到目标,不找借口。
7、自动化运维;能对日常机械化工作进行提炼、设计并开发成工具、系统,能让系统自动完成的尽量依靠系统;让大家更多的时间用于思考、创新思维、做自已喜欢的事情。
以上只是技术上的一些层面,当然个人意识也是很重要的。
大规模集群管理问题
首先我们先要明确集群的概念,集群不是泛指各功能服务器的总合,而是指为了达到某一目的或功能的服务器、硬盘 资源的整合(机器数大于两台),对于应用来说它就是一个整体,目前常规集群可分为:高可用性集群(HA),负载均衡集群(如lvs),分布式储、计算存储集群(DFS,如google gfs ,yahoo hadoop),特定应用集群(某一特定功能服务器组合、如db、cache层等),目前互联网行业主要基于这四种类型;对于前两种类似,如果业务简单、应用上post操作比较少,可以简单的采用四层交换机 解决(如f5),达到服务高可用/负责均衡的作用,对于资源紧张的公司也有一些开源解决办法如lvs+ha,非常灵活;对于后两种,那就考验公司技术实力及应用特点了,第三种DFS主要应用于海量数据应用上,如邮件、搜索等应用,特别是搜索要求就更高了,除了简单海量存储,还包括数据挖掘、用户行为分析;如 google、yahoo就能保存分析近一年的用户记录数据,而baidu应该少于30天、soguo就更少了。。。这些对于搜索准备性、及用户体验是至关重要的。
接下来,我们再谈谈如何科学的管理集群,有以下关键几点:
I、监控
主要包括故障监控和性能、流量、负载等状态监控,这些监控关系到集群的健康运行,及潜在问题的及时发现与干预;
a、服务故障、状态监控:主要是对服务器自身、上层应用、关联服务数据交互监控;例如针对前端web server,我们就可以有很多种类型的监控,包括应用端口 状态监控,便于及时发现服务器或应用本身是否crash、通过icmp包探测服务器健康状态,更上层可能还包括应用各频道业务的监控,常用方法是采用面业特征码进行判断,或对重点页面进行签名,以网站被黑篡改(报警、并自动恢复被篡改数据)等等,这些只是一部份,还有N多监控方式,依应用特点而定,还有一些问题需解决,如集群过大,如何高性能的进行监控也是一个现实问题。
b、其它就是集群状态类的监控或统计,为我们合理管理调优集群提供数据参考、包括服务瓶颈、性能问题、异常流量、攻击等问题。
2、故障管理
a、硬件故障问题;对于成百上千或上万机器的N多集群,服务器死机、硬件故障概率是非常大的,几乎每时每刻都有服务硬件问题,死机、硬盘损坏、电源、内存、交换机。针对这种情况,我们在设计网站架构时需要充分考虑到这些问题,并将其视为常态;更多的依靠应用的冗余机制来规避这种风险,但给系统工程师足够宽裕的处理时间。(如google不是号称同时死800台机器,服务不会受到任何影响吗);这就是考验运维工程师及网站架构师功能的地方了,好的设计能达到google所描述自恢复能力,如gfs,糟糕的设计那就是一台服务器的死机可能会造成大面积服务的连锁故障反映,直接对用户拒绝响应。
b、应用故障问题;可能是某一bug被触发、或某一性能阀值被超越、攻击等情况不一而定,但重要的一点,是要有对这些问题的预防性措施,不能想当然,它不会出问题,如真出问题了,如何应对?这需要运维工程师平时做足功夫,包括应急响应速度、故障处理的科学性、备用方案的有效等。
3、自动化
自动化:简而言之,就是将我们日常手动进行的一些工作通过工具,系统自动来完成,解放我们的双手及枯燥的重复性劳动,例如:没有工具前,我们安装系统需要一台一台裸机安装,如2000台,可能需要10人/10天,搞烂N张光盘,人力成本更大。。。而现在通过自动化工具,只需几个简单命令 就能搞定、还有如机器人类程序,自动完成以往每天人工干预的工作,使其自动完成、汇报结果,并具备一定的专家系统能力,能做一些简单的是/非判断、优化选择等。。。这些好处非常明显不再多说。。。应该说,自动化运维是运维工程师职业化的一个追求,利已利公,虽然这是一个异常艰巨的任务:不断变更的业务、不规范化的应用设计、开发模式、网络架构变更、IDC变更、规范变动等因素,都可能会对现有自动化系统产生影响,所以需要模块化、接口化、变因参数化等因此,自动化相关工作,是运维工程师的核心重点工作之一,也是价值的体现。
你们公司是如何来管理用户权限的?
答 : 通过sudo来管理权限的,不论是运维还是开发,一般都不会给root权限,只有核心级开发或者研发总监或以上级别的我们才可能给相应服务器级别的权限;对核心运维或者运维总监才会给root权限。
在规划服务器的时候,在服务器上都跑几个普通用户?
答 : 普通用户是根据项目来的,在不同公司它的项目产品线不一样。我们公司只有十几个产品线,我们为每一个项目建立一个普通用户,因此不论nginx还是tomcat都是跑在普通用户下。
说说你对运维的看法?
答 : 我对运维的理解是,运维做运维的事情,开发做开发的事情。运维负责网络系统,只要系统没有故障,只要网络没有故障,只要系统资源还够用,那么我们运维的职责就到位了。而我们公司的理念是项目负责制,也就是说每个项目的责任人是开发,我们运维大概占30%-40%的责任。我们的开发占60%的责任。当进程上线的时候,这个服务是由普通用户跑的。它的每个站点目录都是普通用户的权限,也就是700的权限普通用户,这个是最安全的。无论是项目的启动,停止,以及代码上线,日志收集,日志分析都是通过我们进程跑的普通用户实现的。我们在管理这个项目的时候,我们可以把开发的用户加到这个项目组里面,这样负责相应项目的开发人员就有对应项目的所有权限.
专业是跟计算机行业毫不相关的专业吗,转行原因
答:1 我对linux十分感兴趣,近些年一直在自学和研究linux的技术,有个朋友推荐我转型运维,这样可以工作兴趣集一身。
2 我对贵公司十分向往,而且我完全满足对该职位的要求,我非常有信心能做好这份工作。
自学,平时和做运维的朋友交流学习很多
你觉得你有什么缺点?
答 :人比较宅,周末一般待在家里,看看电影,或者在上海市内出去转转,吃个自助餐什么的。
你未来三五年的规划是什么?
答: 至少,要本着高级运维去,或者运维开发去。
工作之余,你经常做哪些事情?
答 :工作一段时间,活动、活动,舒展一下身体;下班之后,打打羽毛球,跑跑步,或者和异性朋友、同学聊聊天。
运维这个职位会经常半夜起来处理问题,这也许会影响到你的生活,你怎么看待?
答 :故障,是随机的,运维主要是服务器方面的问题,问题 并不是想开发那么频繁,所以适当的加班,不影响生活。
为什么要离职呢?
回答示范1: 促使我决定离职的原因是多方面的, 第一个原因, 老实说, 是追求变化。您看, 我这一年以来,做的都是驻场, 我特别特别渴望去体会一下外面的世界。 第二个原因就是职业本身的缺陷, 因为目前这家公司比较小, 也争取不到其他的补贴,加班之类的。当然最重要的原因是我想从事Linux系统运维方面的工作, 这两年我读了不少Linux系统运维方面的书籍, 觉得自己很适合这类工作。
你在工作中有没有经历过与他人意见不合的时候呢?你是怎么处理的呢?
回答示范1: 肯定有, 我一直做运维工程师, 在工作中和别人意见不合的时候挺多的, 您可以想象得到, 同事们本来就挺有主见的, 能在公司里做同一份工作的就更加有想法, 所以每次活动大家都会有不同的意见。 我觉得, 处理不同意见并不难, 因为大家都是为了解决事情, 没有人故意唱反调。意见不合的时候, 我一般会要求自己和对方拿出具体的事实和数据来, 这样就容易看出谁对谁错。不过, 大多数情况下, 我发现矛盾双方其实都对, 大家的想法各有合理之处, 您知道, 我们毕竟都是搞运维时间都不久, 每个人单独考虑问题不可能太成熟。所以说, 意见不合反而是一件好事, 我们把不同意见综合起来, 计划就完善多了。
你觉得压力最大的时候是什么时候呢?
回答示范1: 我觉得压力最大的时候是刚刚接受一个任务或者是刚刚给自己制订了一个大目标的时候。之所以这样, 是因为我的一个习惯, 就是那句谚语, Well begun is half done. 所以, 任务开始的时候, 我会逼着自己做尽可能完整的计划, 并且尽可能把各项工作都提前做。比方说, 参加一个活动的时候, 我会在刚一确定参加活动的那个阶段拼命准备, 找资料, 提前很长时间就模拟练习。这样的话, 越到最后我反而越放松。
你最大的优点是什么呢?
回答示范0: 我是一个持之以恒的人。我从大学开始写日记一直坚持到现在, 我也一直坚持健康饮食和早晨锻炼的习惯, 我在一个社团工作了三年, 而不是像很多同学那样尝试了很多社团。工作上我也希望自己能够在一个好公司里长远发展, 而不是换来换去
你最大的缺点是什么呢?
回答示范1: 我的公开演讲能力比较差, 在公共场合讲话的时候我会感到紧张, 不过谈论我熟悉的领域我会比较放松。所以当我需要做公开发言的时候, 我必须要准备得很充分。我确实羡慕那些无论什么话题都能够高谈阔论的人。
回答示范2: 我有时候急于求成, 或者说做事爱急躁。一旦接手一个任务, 总是想要尽快把它赶完, 总觉得做完了一件事情心里才舒服。但是, 欲速则不达, 太追求efficiency, 就会牺牲accuracy。我现在总是提醒自己accuracy第一位, efficiency第二位, 这样会好得多。
回答示范3: 我有时候会设立不切实际的目标, 比方说一个月要减肥10公斤, 一个小时把表格打出来。我觉得, 设立不切实际的目标对我个人来讲的确不是一件坏事, 所谓Aim at the Sun, land on the Moon.(向着太阳飞, 至少落在月亮上。) 有了高目标就会有很大的动力, 即使完不成也无所谓。但是, 当我在一个团队里工作的时候, 这就变成了一个很大的缺点。在团队里, 一旦目标定得太高, 就会引发很多管理上的问题。我想这是我需要克服的一个缺点。
回答示范4: 我觉得我有时候会过分在意别人的感受, 比方说, 不敢直接表达不同意见, 因为觉得会让对方丢面子, 其实这样做很不利于快速有效地开展工作。我希望自己能够逐渐学会更加爽快, 对人对事更加直接。
回答示范5: 我的缺点是工作需要压力, 在有要求、 有竞争的时候我效率更高。我的学习成绩很好, 因为有考试的压力。但是在大学里面, 我没有做太多的兼职活动, 因为没有赚钱的压力。所以我特别希望自己的老板能比较严格, 多给我一些压力, 呵呵。(点评: 面试官暗喜——就要这样的受虐狂!)
回答示范6: 我的缺点是容易受到别人的影响, 比方说, 大家都学习我也就学得很拼命, 大家纷纷找兼职, 我也开始做兼职。我发现自己有从众的心理, 呵呵, 所以, 如果能加入腾讯就好了, 腾讯里有很多优秀人才, 我就可以受到好的影响了。
如果让你去问问题,你应该问哪些?
答 :
技术类
1、公司目前的服务器规模
2、用到的技术都有哪些
3、如果我到贵公司,我将负责哪些工作
4、公司有没有固定加薪周期
5、公司社保、公积金是否是全额标准。
6、有无职级评定通道(就是评级,看我们属于是初级、中级还是高级,不同级别薪资也就不同了)
举例说明你很能吃苦?
答 :在大学里面,为了减轻父母的负担,寒暑假都是做一些兼职工作,比如服务员、工厂工人、洗车。
作为一个运维你觉得最重要的性格特点是什么?
严谨细心、有耐心、沉稳、逻辑思维强、善于总结。
你认为怎么样完成工作才算认真负责?
答 :
1、根据领导的要求,按时完成工作
2、不确定的地方奥及时沟通,一定要明确领会领导的要求?
3、如果有发现一些不足或者隐患要主动提出来
4、如果有一些更好的方法或者思路应该主动向领导沟通商讨。
你平时是如何学习运维知识的?
答 : 通过看书、网上视频、看官方文档或者其他人分享的文档来学习,学习过程中会记录笔记,并且会动手实验,最终会整理一份自己的文档。
你对自己的职业生涯是如何规划的?
答 :目前阶段的方向是运维,至少要在运维领域踏实的干3,4年,之后会转向运维开发方面,如果公司能提供机会,也会选择管理方向
你认为你自己有哪些优点和缺点?
答 :
优点 : 比较稳重,遇事冷静不会手忙脚乱,做事情比较细心,有耐心等
缺点 : 爱较真,有点完美主义,吹毛求疵,偏内向。
是否能接受加班?
答: 能接受加班,但希望公司有补助
讲一下LAM和LNMP的区别?
答 : LAMP构架中PHP作为apache的模块来处理PHP请求;而在LNMP中,有独立的php-fpm服务,Nginx把php的请求通过代理的形式给php-fpm处理。由于apache和Nginx构架设计不同,Nginx对于静态文件的处理能力相对apache来说更强。
他可能会问你,在构架设计上有何不同 呢?
答 :Nginx是基于事件驱动的模型,她只需要一个value进程就可以支持上万个请求并发,而apache即使是最新版本,也是多线程多进程模型,apache要想支持更多并发,需要开启更多的线程。
公司服务器有多少台,分别做什么角色?简单描述一下构架?
答 :
1、两台阿里服务器,一台web一台数据库,这个就没啥构架可说,没啥经验
2、15台服务器,大概思路按照大作业的构架来说。
3、100多台服务器,可以说公司大大小小一共10几个业务,最大的业务用了有50台服务器,其中最前端是nginx+keepalived,最多的有30多台都是web服务器,数据库一主多从, 用mycat作为中间件 ,另外还有一个redis,作为缓存服务。
公司业务有用自动化运维工具吗?
答 : 有用到ansible,我们用ansible来更改一些服务的配置、管理计划任务、管理用户、还会批量执行一些命令或者脚本。
公司业务上线流程是怎么样的?用什么工具上线?
答 : 公司使用jenkins上线部署代码。
流程是 :开发人员现在自己的电脑上开发功能代码,然后把代码推送到gitlab,测试通过webbook自动把代码代码拉取到测试机,开发人员先做一次测试,功能没问题,会把代码发布到预上线的机器上,此时测试人员会测试,才会正式发布到生产环境。有时候也会先灰度发布一两台生产环境。
公司的代码存在哪里?
答 : 存到了自建的gitlab上,只有一两台服务器,就说到了码云,或者说放到了github上。
你是一个服务器的管理员,为了保障服务器上的数据安全,你能想到哪些安全措施?
1.服务器配备不间断 ups 2. 磁盘做 radi1 或者 5 10(除 0 以外,因为 0 不具体冗余
3.加强用户账号的安全,定期修改密码,权限的合理设定
- 软件补丁,漏动修复 5. 配置防火墙,只开放特定应用端口
公司所在地经常停电,造成服务器非正常关机而丢失了部份文件,你如何解决这个问题?
1)当务之急是确认文件是否要恢复,要就备份恢复,没有就磁盘阵列校验恢复;
2)机房没有备用电源和发电机,这不合常理,机房是否有存在必要性,如果要,就添加硬件设施;
3)添加硬件设施要多长时间,这段时间内的临时措施是什么;
4)机房添加设施要怎样部署;
解答:
- 首先要解决机房意外断电的情况,可以使用 ups 电源,
- 数据要有备份数据(最好是异地备份),
请问交换机和路由器的区别?vlan 和 VPN 是什么?
交换机主要用于局域网(相同网段)内设备连接和信息交换,它工作在一个广播域中,属于二层设备,主要是对 mac 地址过行转发
路由器主要是功能是跨网段访问和路由寻址,可以隔防广播,工作在 3 层,可以解析 ip 地址
vlan 是虚拟局域网,用于逻辑的方式隔离网络设备之间的通信,实现防止大面积的广播风暴,提高网络安全性,同时也可以通过路由器实现不同网段间的通信。
vpn 是虚拟专用网络,类拟于我们说的虚拟专线,主要用于企业与企业之间的内部连接和出差人员接入公司网络办公。
Zabbix/Nagios、cacti 维护过吗?平时都监控些什么?
本地资源: 负载 uptime cpu(top,sar),磁盘 df 内存 free IO(iostat),RAID,温度,passwd 文件的变化,本地所 有文件指纹识别
网络服务:端口,URL,丢包(ping),进程数,网络流量
其他设备:路由器,交换机端口流量,打印机, 监控光衰 windows 等
业务数据:用户登录失败次数,用户登录网站次数,输入验证失败的次数,某个 API 接口流量并发,电商网站订单, 支付交易的数量
监控软件本身仅仅是一个平台,我们想监控的内容,理论上只要在服务器命令行可以获取到就可以被监控软件监控
基本监控
CPU 使用率(%)
网络流入速率(bps)
网络流入速率(bps)
系统磁盘 BPS(bps)
系统盘 IOPS(Count/Second)
网络入流量(Bytes)
网络出流量(Bytes)
内存使用率(%)
平均负载
磁盘 IO 读(bps)
磁盘 IO 写(bps)
磁盘使用率(%)
TCP 连接数(Count)
进程总数(Count)
inode 使用率(%)
CPU 秒级监控
你为什么离职,离职的原因是什么?
因为我比较喜欢 Linux,所以我想更深入的学习 Linux 技术,而且现在的公司 linux 架构比较单一,涉及的技术面不多,所以我想到网络公司去锻炼一下。
要求 zhongliang 用户 7 天内不能更改密码,60 天以后必须修改密码 过期前 10 天通知 zhongliang 用户过期
后 30 天后禁止用户登陆
#passwd -n 7 -x 60 -w 10 -i 30 olboy
-n :後面接天數,多久不可修改密碼天數
-x :後面接天數,多久內必須要更動密碼
-w :後面接天數,密碼過期前的警告天數
-i :後面接『日期』,密碼失效日期
现场工程师因误作,使用 a 用户执行了一个死循环的脚本 bad.sh 导致 a 用户家目录/home/a 下生成了一个
bad.log 的文件并且不断增大,需要采取措施解决,请写出解决方法及命令格式
ps -ef |grep bad.sh |awk ‘{print $2}’|xargs kill -9
给出正确的关机和重起服务器的命令
shutdown -h now 立刻关机(最安全)
shutdown -h +1 1 分钟后关机
init 0 到 0 级别,关关
halt 立即停止系统,需要人工关电源
halt -p
poweroff 立即停止系统,并且关闭电源
reboot 重启
shutdown -r now 重启
shutdown -r +1 1 分钟后重启
logout 退出
exit 退出
ctrl+d 退出
定时任务
1、每隔 2 小时将系统文件/etc/services 文件打包备份到/tmp 下,每次备份时间生成不同的备份包
00 */2 * * * /bin/tar zcf /tmp/tar_`date +%F-%H`.tar.gz /tmp/ >/dev/null 2>&1
2、每天晚上 12 点,打包站点目录/var/www/html 备份到/data 目录下,每次备份时间成生不同的备份包
00 00 * * * /bin/tar zcf /data/www_`date +%F-%H`.tar.gz /data>/dev/null 2>&1
3、每周六,日,上午 9:00 和下午 14:00 来京峰教育这里学习,执行程序/server/script/jflinux.sh
00 09,14 * * 6,0 /bin/sh /server/script/jflinux.sh >/dev/null 2>&1
4、 每天晚上 00 点,把刚才生包的包删除 7 天前的
00 00 * * * /bin/find /tmp -type f -name "*.tar.gz" -ctime +7 | xargs rm -f
5、在每周 6 的凌晨 3:15 执行/home/shell/collect.pl。并将标准输出和标准错误输出到/dev/null 设备,
15 03 * * 6 /home/shell/collect.pl >/dev/null 2>&1
6、 crontab 在 11 月内,每天的早上 6 点到 12 点中,每隔 2 小时执行一次/usr/bin/httpd.sh
06-12/2 * 11 * /bin/sh /usr/bin/httpd.sh >/dev/null 2>&1
7、crontab 文件由六个域组成,每个域之间用空格分割,其排列如下:B
A: MIN HOUR DAY MONTH YEAR COMMAND
B: MIN HOUR DAY MONTH DAYOFWEEK COMMAND
C: COMMADN HOUR DAY MONTH DAYOFWEEK
D: COMMAND YEAR MONTH DAY HOUR MIN
只查看 ett.txt 文件(100 行)内第 20 到第 30 行的内容?
seq 100 >ett.txt #
方法 1:sed -n '20,30'p ett.txt
方法 2:head -30 ett.txt | tail -11 ett.txt
方法 3:awk '{if(NR<31 && NR>19) print $1}' ett.txt
方法 4:grep "25" -C 5 ett.txt
已知 apache 服务的记问日志按天记录在服务器本地目录/app/log/下,由于磁盘空间 现在要求只能保留最近7 天访问日志,请问如何解决
find /app/log -type -f -name "access*.log" -ctime +7 | xargs rm -rf
已知配置文件,打印行号
方法 1: cat -n httpd.conf
方法 2:nl httpd.conf
方法 3: grep -n "." httpd.conf
方法 4: awk '{print NR,$0}' httpd.conf
方法 5: sed '=' httpd.conf
方法 6:grep -n $ /etc/passwd
# 过滤内容显示行号 grep -n "20" httpd.conf
tar命令使用案例
请用 tar 打包/etc/ 整个目 录(打包及压缩)
网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!: MIN HOUR DAY MONTH DAYOFWEEK COMMAND
C: COMMADN HOUR DAY MONTH DAYOFWEEK
D: COMMAND YEAR MONTH DAY HOUR MIN
## 只查看 ett.txt 文件(100 行)内第 20 到第 30 行的内容?
seq 100 >ett.txt #
方法 1:sed -n ‘20,30’p ett.txt
方法 2:head -30 ett.txt | tail -11 ett.txt
方法 3:awk ‘{if(NR<31 && NR>19) print $1}’ ett.txt
方法 4:grep “25” -C 5 ett.txt
## 已知 apache 服务的记问日志按天记录在服务器本地目录/app/log/下,由于磁盘空间 现在要求只能保留最近7 天访问日志,请问如何解决
find /app/log -type -f -name “access*.log” -ctime +7 | xargs rm -rf
## 已知配置文件,打印行号
方法 1: cat -n httpd.conf
方法 2:nl httpd.conf
方法 3: grep -n “.” httpd.conf
方法 4: awk ‘{print NR,$0}’ httpd.conf
方法 5: sed ‘=’ httpd.conf
方法 6:grep -n $ /etc/passwd
过滤内容显示行号 grep -n “20” httpd.conf
## tar命令使用案例
请用 tar 打包/etc/ 整个目 录(打包及压缩)
**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**
**[需要这份系统化的资料的朋友,可以点击这里获取!](https://bbs.csdn.net/forums/4f45ff00ff254613a03fab5e56a57acb)**
**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**