linux面试问题及回答方案设计_第1页
linux面试问题及回答方案设计_第2页
linux面试问题及回答方案设计_第3页
linux面试问题及回答方案设计_第4页
linux面试问题及回答方案设计_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、实用文档1. 软连接与硬链接区别Li M x软连接与硬链接访问文件区别2. Li nux文件删除原理Linux文件删除原理Soft link 1 File nameHard link , j jn|: 2Linux SiiHlink数昴控制 文件刪除,一股来说r每 个文4牛都有2个计数器: i_countf 口 i_link.HinkJS文件的硬连接数(硬盘)i counts文件被讲稈调用 数(内存)注解: 只要当Mink与count同旳为0时.文件才会被洲除 师命令,翎除的是文件的3. li nux系统的启动过程BIOS(基本输入输出系统)* 1.检查硬件,即计算机硬件是否满足运行基本条件。

2、(如果硬件有问题主板会发出有频率的蜂鸣,启动终止);* 2.查找软盘、光盘或硬盘的引导装在程序(指引导记录,即 MBR);* 3.将引导装在程序(MBR)载入内存,将控制权交给MBR.MBR主引导记录)* 加载并执行GRUBMBR位于启动盘第一扇区 (一般为/dev/hda 或者/dev/sda)MBF共有512位由三部分组成: 1-446bit主引导加载程序信息 447-510bit存放分区表 511-512bit存储MBF有效标记GRUB启动管理器)*加载并执行内核以及initrd 镜像GRUB让你选择启动的内核GRUB通过配置文件找到内核及Initrd镜像,initrd镜像含有内核所需的

3、基本模块驱动Kernel* 1.挂载根文件系统; 2.运行/sbin/init程序,初始化系统环境;由于in it是被lin ux第一个执行的程序,所以它的进程号为1.在根系统被挂载之前,initrd被内核作为一个临时文件系统,内核启东市展开改in itrd加载根驱动,在驱动的补充下挂载根分区.init 根据/etc/inittab 设定linux的运行级别Runl evel programs*根据运行级别,执行对应级别的程序s开头程序为启动进程使用,即startup;k开头程序为关闭过程使用,即kill.s和k后面的数字代表执行顺序即S12syslog,这个进程的启动顺序为12.S80sen

4、dmail启动顺序为 80,就会比syslog晚启动.4. top命令右上角的load average的值是什么意思,高于多少代表负载有问题拆分出四个内容:1. load average( 系统平均负载)是什么?系统平均负载被定义为在特定时间间隔内运行队列中(在CPU上运行或者等待运行多少进程)的平均进程数.2. load average的三个数值代表什么 ?通过topuptimew可以获取到load average的值,它的三个数字值分别记录了一分钟五分钟 十五分钟的系统平均负载.3. 高于多少负载有问题?高于多少代表负载有问题呢,这里有两个法则:* “有多少核心即为有多少负荷”法则:在多核

5、处理中,你的系统均值不应该高于处理器核心的总数量。* “核心的核心”法则:核心分布在分别几个单个物理处理中并不重要,其实两颗四核的处理器等于四个双核处理器等于八个单处理器。所以,它应该有八个处理器内核。4. 我们以哪个数字为准? 一分钟?五分钟?还是十五分钟?我认为你应该着眼于五分钟或者十五分钟的平均数值。坦白讲,如果前一分钟的负载情况是1.00,那么仍可以说明认定服务器情况还是正常的。但是如果十五分钟的数值仍然保持在1.00,那么就值得注意了(根据我的经验,这时候你应该增加的处理器数量了)5. 查看网络I/O命令dstat:多功能系统资源统计工具,不但可以获取net(网络)信息,还可以获取d

6、isk(硬盘 处 理器(CPU)等信息,结果可保存为csv.dstat的用法如下:dstat -afv options. delay count使用 dstat -h查看全部选项,这里不逐一列举,下面简单介绍下常用选项常用选项如下:#直接跟数字,表示#秒收集一次数据,默认为一秒;dstat 5表示5秒更新一次-c,-cpu统计CPU状态,包括user, system, idle (空闲等待时间百分比),wait (等待磁盘IO) , hardware interrupt(硬件中断) , software interrupt (软件中断)等;-d, -disk统计磁盘读写状态-D total,s

7、da统计指定磁盘或汇总信息-I, -load统计系统负载情况,包括1分钟、5分钟、15分钟平均值-m, -mem统计系统物理内存使用情况,包括used, buffers, cache, free-s, -swap 统计swap已使用和剩余量-n, -net 统计网络使用情况,包括接收和发送数据-N eth1,total统计ethl接口汇总流量-r, -io 统计I/O请求,包括读写请求-p, -proc统计进程信息,包括 runnable、uninterruptible 、new-y, -sys统计系统信息,包括中断、上下文切换-t显示统计时时间,对分析历史数据非常有用-fs统计文件打开数和i

8、nodes数查看网络命令为下1dstat -N lo,ethO 100 5,这个频率貌似不解释:指定查看Lo和eth0网卡,每条数据存在100秒(每一秒实时刷新数据能改),共刷新5条.6. memcache运行原理別览器tTmemcachedL.rmemcachedmemcachedF*memcachedlJ首次询司:从RDRMS中取再魁語存劃巾测衍出命 翁二兌言I从mem carh占取再期腐昱忌匸直i7. 当一个网站访问慢时,你怎么去优化#翻译为:当一个网站访问慢时,你都是怎么去查找问题,和解决问题以达到优化效果的第一,用5分钟排除网络因素,借助工具(如pagespeed)分析页面加载过程1

9、. 某个元素或者图片加载过慢:具体原因具体分析2. DNS解析时长问题:可以通过购买解析服务,来让自己的域名在各地 DNS更多缓存3. 网络带宽瓶颈:考虑增加带宽4. 网络线路波动:考虑CDN或者镜像站第二,要考虑到服务器问题1. 是否有服务器过载:考虑增加硬件2.1/0 操作:数据库的频繁读写,服务器的频繁请求(包括静态文件的读取,图片的读取)等都属于I/O问题。对于数据库的问题,首先要优化SQL存储过程等。如果单表数据量过大要考虑做分割或者运用程序来控制分表。如果请求量过大,要考虑做集群。对于服务器(静态)文件的I/O问题,则可以考虑做 CDN这样也可以解决地域性问题。对于动态文件的访 问

10、,则涉及到代码优化及负载均衡两项。3. 具体应用优化:nginx 针对访问量修改配置文件 ,调高Buffers 调低keep alive 空连接 时间等第三,安全方面1. 查看webmail等其它服务日志,是否存在被攻击现象:针对安全方面加固2. 是否有其它攻击存在 DDOS,WEB C等8. mysql主从不同步怎么解决1.在master端执行:2.mysql flush logs;3.mysql show masterstatus;PS:记下 File、Position的值。4.在slave端执行:5.mysql stop slave;6.mysql CHANGE MASTER TO MA

11、STER_LOG_FILE=bin-log.000002,MASTER_LOG_POS=107;7.mysql start slave;mysql show slavestatussql命令手动冋步,还有-种方法是跳过这个导致错误的事物1.跳过指定数量的事务:2.mysqlslave stop;3.mysqlSET GLOBAL SQL_SLAVE_SKIP_COUNTER 1#跳过一个事务mysqlslave start4. 修改mysql的配置文件,通过 slave_skip_errors参数来跳所有错误或指定类型的错误5. vi /etc/f6. mysqld7. slave-skip-

12、errors=1062,1053,1146#跳过指定 error no 类型的错误slave-skip-errors=all# 跳过所有错误9. 进程和线程的区别翻译:进程和线程的概念*进程(英语:process ),是计算机中已运行程序的实体。进程是程序的基本执行实体,进程本身不是基本运行单位,而是线程的容器线程(英语:thread )是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个线程,每条线程并行执行不同的任务。 进程是系统进行资源分配的基本单位,有独立的内存地址空间;线程是CPU调度的基本

13、单位,没有单独地址空间,有独立的栈,局部变量,寄存器,程序计数器等。 创建进程的开销大,包括创建虚拟地址空间等需要大量系统资源;创建线程开销小,基本上只有一个内核对象和一个堆栈。 一个进程无法直接访问另一个进程的资源;同一进程内的多个线程共享进程的资源。 进程切换开销大,线程切换开销小;进程间通信开销大,线程间通信开销小。 线程属于进程,不能独立执行。每个进程至少要有一个线程,成为主线程10. 常用的RAID原理RAID 0连续以位或字节为单位分割数据,并行读/写于多个磁盘上,因此具有很高的数据传输率,但它没有数据冗余,因此并不能算是真正的RAID结构。RAID 0只是单纯地提高性能,并没有为

14、数据的可靠性提供保证,而且其中的一个磁盘失效将影响到所有数据。因此,RAID 0不能应用于数据安全性要求高的场合。RAID 1它是通过磁盘数据镜像实现数据冗余,在成对的独立磁盘上产生互为备份的数据。当原始数据繁忙时,可直接从镜像拷贝中读取数据,因此RAID 1可以提高读取性能。RAID1是磁盘阵列中单位成本最高的,但提供了很高的数据安全性和可用性。当一个磁盘失效时,系统可以自动切换到镜像磁盘上读写,而不需要重组失效的数据。 简单来说就是:镜象结构,类似于备份模式,一个数据被复制到两块硬盘上。RAID 10高可靠性与高效磁盘结构一个带区结构加一个镜象结构,因为两种结构各有优缺点,因此可以相互补充

15、。主要用于容量不大,但要求速度和差错控制的数据库中。RAID 5分布式奇偶校验的独立磁盘结构,它的奇偶校验码存在于所有磁盘上,任何一个硬盘损坏,都可以根据其它硬盘上的校验位来重建损坏的数据。支持一块盘掉线后仍然正常运行。11. 有没有做过性能调优这个是个大的话题,要反问是应用调优还是系统调优没有进行过调优,基本调优步骤:1. 找出系统性能瓶颈(包括硬件瓶颈和软件瓶颈);能优化的方案(升级硬件?改进系统系统结构?);3. 达到合理的硬件和软件配置;4. 使系统资源使用达到最大的平衡。12. 请求一个网站的过程域名解析- 发起TCP的3次握手- 建立TCP连接后发起http请求- 服务器响应 ht

16、tp请求,浏览器得到 html代码- 浏览器解析html代码,并请求html代码中的资源(如js、css、图片等)- 浏览器对页面进行渲染呈现给用户13. Ivs/dr 调度的过程客户端请求发送给 LVS = LVS接受请求后根据调度算法选出后台服务器= LVS将报文目标MAC地址修改为该服务器= 服务器处理请求后直接返回给客户端14. 我想查看 WEB日志中访问TOP 10的IP有哪些怎么查看当时是面试官让我把具体命令说出来,也就是看看知道一些处理文本的命令嘛.其实不难:catlogfile |cut -d -f 5 |sort |u niq -c | sort -nr|head -n 10

17、 |lesscut命令负责将文本以空格分开,取第五列数据=排序= 去重并统计次数(-c参数就是统计参数)= 再次排序(统计次数会被写在IP之前, 所以这里是按统计次数排序sort的-r是逆序就是从大到小,-n为按数字排序主要是 sort默认排序很可能会把 10判断为比2还小,通过-n就不会出现这个情况)= 取次数最多的10 条= less 可有可无15. CDN的主要原理CDN是种组合技术,主要包含以下3个方面: 源站源站指发布内容的原始站点。添加、删除和更改网站的文件,都是在源站上进行的;另外缓存服务器所抓取的对象也全部来自于源站。 缓存服务器缓存服务器是直接提供给用户访问的站点资源,有一台

18、或数台服务器组成;当用户发起访问时,他的访问请求被智能 DNS定位到离他较近的缓存服务器。如果用户所请求的内容刚好在 缓存里面,则直接把内容返还给用户; 如果访问所需的内容没有被缓存,则缓存服务器向邻近的缓存服务器或直接向源站抓取内容,然后再返还给用户。 智能DNS智能DNS是整个CDN技术的核心,它主要根据用户的来源,将其访问请求指向离用户比较近的缓存服务器,如把广州电信的用户请求指向到广州电信 IDC机房中的缓存服务器。 通过智 能DNS解析,让用户访问同服务商下的服务器, 消除国内南北网络互相访问慢的问题, 达到 加速作用。智能DNS的出现,颠复了传统的一个域名对应一个镜像的做法,让用户

19、更加便捷的去访冋网站。缓存服务器中有访问内容:客户端请求= 智能DNS解析到最近的缓存服务器= 缓存服务器返回请求资源缓存服务器中无访问内容:客户端请求= 智能DNS解析到最近的缓存服务器= 缓存服务器发现没有客户端请求 资源,向源站请求= 源站返回资源到缓存服务器= 缓存服务器返回客户端请求资源16. 跨服务器同步文件当时面试官原问题是,”将某一个文件夹的所有图片(不同类型jpg|png)同步到另一台服务器的,当时我那个不会啊 只憋出个find命令含含糊糊的说了下回来赶紧复习了下,其实就两个内容,一个是怎么查找到这个文件,一个是怎么去同步到另一台服务器:怎么查找:1. Is 命令+ grep

20、 命令l s /tmp/test | grep .*.jpg|*.png最简单易懂,只不过ls并不是查找命令,所以这条命令也只是去查看了/tmp/test 文件夹下的有哪些文件,并没有对/tmp/test下的子目录去搜索.2. find 命令-type-regex .*.jpg|.*.p ngf i nd/tmp/test最常用的查找命令,可以通过指定正则 文件类型文件大小文件权限文件属主属组文件 时间等对文件匹配查找.还有一些locatewhereis等等比较另类的命令,都可以用,只要你能定位到你的文件就可以这里就不举例.怎么同步:通过管道将查找交给负责同步的命令1. xargs + scp

21、 命令ls /tmp/test | grep .*.jpg|.*.p ng| xargs -n1 -I scp root7:/tmpfind /tmp/test -type f -regex.*.jpg|.*.p ng| xargs -n1-I scp root7:/tmp2. 使用xargs接收管道标准输入,然后执行远程拷贝命令.3.3. find命令+ scp命令find /tmp/test -type f -regex .*.jpg|.*.p ng-exec scproot7:/tmp;4. 也可以配合xargs命令完成f

22、ind /tmp/test -type f -regex .*.jpg|.*.p ng| xargs-n1 -I scp root7:/tmp5. 这两条效果一样的,执行过程都是建立子进程逐个文件scp.比较坑的是,你要使用scp文件的话,没有秘钥认证远程主机的话,每个文件都要输一次密码 7.6. rsync同步普通rsync 同步:find /tmp/test -typef -regex .*.jpg|.*.p ng| xargs-n1-I rsync root7:/tmp7. 上传rsync server 同步(需要远程主机已搭建 rsync服务器):find /tmp -type f -regex .*.jpg|.*.p ng|xargs -n1 -I rsync -avzP wys8:wys8. 以上的两条和 scp 一样需要逐个密码认证,而rsync有-password-file 指定密码文件(注意密码文件权限必须600,否则会报错)来戴我们认证密码,像这样:find /tmp -type f -regex.*.jpg|.*.p ng|xargs -n1 -I rsync -avzP -password

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论