面试可能遇到的问题总结【二】
(1)ssh登陆缓慢解决方法
方式一:修改配置文件,禁止做反解 UseDNS no
方式二:修改 /etc/hosts 添加一个主机名称的解析记录
方式三:ssh -v 查看登录过程信息,判断故障点
除此之外,还有可能是网络延迟导致ssh登录缓慢。
(2)简述CentOS6的启动过程
- 第一步 加电自检,检查硬件是否正常工作,如果正常,就会根据预先定义好的启动次序去指定的设备上依次查找MBR
- 第二步 通过设备中的MBR中的前446字节可以获取到bootloader程序
bootloader有两种类型:
早期LILO
流行GRUB 0.X 1.X
这里找到并执行bootloader,其实运行grub的第一阶段,通过grub state1可以找到磁盘上的一个特定分区中的grub stage2,在stage2的配置文件中就指定了内核和临时文件系统的位置,这样就通过bootloader找到了内核 - 第三步 将找到的内核装载入内存中,并运行,同时将临时文件系统在内存中展开,将一部分内存空间临时作为磁盘来使用,这样在内存中就有一个完整的、临时的文件系统,内核可从这个临时文件系统中获取到所需要的驱动程序,那么内核就可以尝试执行/sbin/init发起第一个用户空间进程
- 第四步 通过init生成第一个用户空间进程,同时会去读取配置文件/etc/inittab 以及 /etc/rc.d/rc.sysinit 来完成设置系统运行级别,以及其他的系统初始化功能
(3)启动系统的过程中,内核如何识别文件系统?
- linux的内核为了精简,将内核核心和功能模块分开存放,也就是说在内核中默认是没有功能模块,这其中包括驱动程序
- 在启动系统的过程中,内核会通过bootloader被载入到内存并运行起来,并且在系统启动的最后还需要让内核来执行文件系统中的init来发起用户空间进程,但是默认内核没有文件系统的驱动程序,所以默认内核是无法从文件系统中找到并执行init的,所以在启动系统的时候,就需要给他提供驱动程序。
- 在安装系统的时候,系统的硬件及其文件系统类型就固定了,那么就会在安装系统的最后一bu,通过内核探测收集系统的硬件和文件系统信息,然后将所需要的驱动程序连同 一个根文件系统最基本的目录结构一并打包制作一个压缩包。在这个压缩包里面有一个完整的根文件系统,同时还有驱动程序。
- 在bootloader将内核装载到内存的时候,会连同刚刚指定的好的哪个压缩包一同载入进来,然后这个压缩包会在内存中展开,此时内存中就有了一个完整的文件系统,同时还有一个内核,此时,就在内存中构建了一个完整的操作系统,只是该系统运行在内存上,然后内核就可以从这个运行在内存操作系统中获取到所需要的驱动程序,这样内核就有能够识别磁盘上的文件系统了。
(4)init的类别和功能
- 三类
- centos5上是最为正统的init程序,centos6上是upstart,centos7是systemd
- init
1)完成系统的初始化
2)发起第一个用户空间进程
3)管理用户空间进程 - centos5上的init是最正统的init,缺点就是只能顺序启动进程,所以会导致启动过程非常慢
- centos6上的init在一定程度上实现了并行启动,但是依然存在进程间的依赖关系(对于端口的依赖),在启动速度上有一定的提升
- centos7上的init已经不叫init了,叫做systemd,真正的实现了并行启动
(5)如何让改变系统的运行级别,以及如何设置于系统默认运行级别
- 对于CentOS6:
查看系统运行级别:who -r
或者runlevel
修改系统运行级别:init num
修改系统默认运行级别:修改/etc/inittab
- 对于CentOS7
CentOS7中使用target unit来模拟程程类似于CentOS6运行级别的概念。模拟方式如下:
CentOS6 | CentOS7 | 备注 |
---|---|---|
0 | runlevel0.target,poweroff.target | 用于关闭系统 |
1,single | runlevel1.target,rescure.target | 救援模式 |
2,3,4 | runlevel2/3/4.target,multiuser.target | 字符多用户接口 |
5 | runlevel5.target,graphical.target | 图形多用户接口 |
6 | runlevel6.target reboot.target | 用于重启系统 |
切换级别:systemctl isolate name.target
例如:切换到救援模式(级别):systemctl rescure.target
<<<<<切换到救援模式不需要isolate
查看系统默认的运行级别:systemctl get-default
修改系统默认的运行级别:systemctl set-default name.target
常用的关机命令:
systemctl isolate poweroff.target
systemctl isolate runlevel0.target
systemctl poweoff
面试可能遇到的问题总结【二】相关推荐
- (88)FPGA二分频设计,面试必问(十二)(第18天)
(88)FPGA二分频设计,面试必问(十二)(第18天) 1 文章目录 1)文章目录 2)FPGA初级课程介绍 3)FPGA初级课程架构 4)FPGA二分频设计,面试必问(十二)(第18天) 5)技术 ...
- 百度java面试应届,秋招 百度二轮面试---血淋淋的经历写实
一名自信向上的良好青年,参加百度面试被面试官按在地板来回摩擦~ 简单回顾一下,面试的经历吧 百度二面对话大概是这样的. 面:这个知道吗? 我:不知道. 面:这个呢? 我:不知道. 面:那我问你这个吧. ...
- Android面试Hash原理详解二
Hash系列目录 Android面试Hash原理详解一 Android面试Hash原理详解二 Android面试Hash常见算法 Android面试Hash算法案例 Android面试Hash原理详解 ...
- 面试专家陈建军出二十一组面试题(转)
====================== 面试专家陈建军出二十一组面试题 编者按:所有转载请注明华图公务员培训学校及作者陈建军,否则华图有权追究其法律责任 (一)面试题组 一:1.领导委托负责组织 ...
- iOS开发面试知识整理 – OC基础 (二)
iOS | 面试知识整理 – OC基础 (二) 1.C和 OC 如何混编 xcode可以识别一下几种扩展名文件: .m文件,可以编写 OC语言 和 C 语言代码 .cpp: 只能识别C++ 或者C语言 ...
- 面试可能遇到java基础知识
1.面向对象的特征有哪些方面? 答:面向对象的特征主要有以下几个方面: - 抽象:抽象是将一类对象的共同特征总结出来构造类的过程,包括数据抽象和行为抽象两方面.抽象只关注对象有哪些属性和行为,并不 ...
- 蚂蚁金服的一次面试经历(一面、二面)
一次有把握的面试,需要经过长时间的准备 电话一面 1.自我介绍.自己做的项目和技术领域 2.项目中的监控:那个监控指标常见的有哪些? 3.微服务涉及到的技术以及需要注意的问题有哪些? 4.注册中心你了 ...
- 程序员面试100题之十二:求数组中最长递增子序列
写一个时间复杂度尽可能低的程序,求一个一维数组(N个元素)中最长递增子序列的长度. 例如:在序列1,-1,2,-3,4,-5,6,-7中,其最长递增子序列为1,2,4,6. 分析与解法 根据题目要求, ...
- 随手记android面试题,微众银行风险模型面试随手记(一面+二面)
一面(广州现场面)面试地点在广州大学城雅乐轩酒店,离大学城地铁站和广工都很近.通知面试时间是11:10,我大概10点40到的,现场签个到.然后就坐在大厅里等,差不多11点20的时候叫到我,效率还是很高 ...
最新文章
- 全新 Sitecore Experience Cloud™ 助推数字体验转型
- iptables 定义规则
- php ajax实现的二级(多级)联动菜单(2008-10-21,11:36:08)
- as_matrix、保存训练模型
- java join yield_java中join和yield有什么区别?
- ios基础考试题1,实现按钮点击改变位置和图片的透明度和动画的使用
- Magento教程 3:如何在Magento社群版(Community Edition)安装范例资料?
- Spring Cloud与微服务学习总结(2)——Spring Cloud相较于Dubbo等RPC服务框架的优势
- 医疗器械信号输入输出部分,以及电气绝缘图,环境试验后的标准
- 简易nginx load balance示例
- 计算机科学技术的广告语,赞美科技的句子-十大经典深入人心科技类广告语
- 多维数组展平的几种方式
- numeric比较大小 数据库_SQL中NUMERIC和DECIMAL的区别
- android高仿微信的图片查看
- 物联网平台搭建的全过程介绍(五)——基于阿里云物联网平台的Android聊天app源码
- cookie的简单介绍
- JS如何向对象中添加元素
- ajax加载多次很卡,使用JQuery UI选项卡多次加载Ajax内容
- html的日历中添加行程,HTML/CSS元素定位(html日程表/日历)
- 利用Swoft实现PHP+websocket直播,即时通讯代码