您的位置:首页 - 教程 - Linux - 正文
Linux系统管理员面试50题
  1. 命令nslookup是做什么的?

  2. Nslookup 是一个 监测网络中 DNS 服务器是否能正确实现域名解析的命令行工具。
  3. 你如何把CPU占用率最高的进程显示出来?

  4. top -c 按照cpu排序
  5. 如果检查Linux上开放的端口,并将不用的端口屏蔽掉?

  6. natstat -ltup 查看开放了那些端口,不用的防火墙屏蔽掉
  7. 什么是Linux?它和Unix有什么不同?

  8. Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。
    Linux和UNIX的最大的区别是,前者是开发源代码的自由软件,而后者是对源代码实行知识产权保护的传统商业软件。这应该是他们最大的不同,这种不同体现在用户对前者有很高的自主权,而对后者却只能去被动的适应;这种不同还表现在前者的开发是处在一个完全开放的环境之中,而后者的开发完全是处在一个黑箱之中,只有相关的开发人员才能够接触的产品的原型。
    区别
  9. 详细描述Unix系统启动的过程?

  10. 1    用户打开计算机电源。
    2    计算机自动执行ROM引导程序。
    3    将第一块硬盘的boot区调入内存并执行。硬盘的boot区存有硬盘的分区信息和驱动程序。
    4    将硬盘的活动分区上的bootstrap程序调入内存并执行。bootstrap程序位于该活动分区上的第0号块中。
    5    将UNIX的启动程序/boot调入内存并执行。
    6   将UNIX的内核程序/unix调入内存并执行。
    7   检测并配置内存和硬件设备。
    8    启动/etc/init进程。init将/etc/inittab调入内存,并根据启动层次的不同,选择/etc/inittab内不同的程序来执行。对于多用户来说,init会执行/sbin/bcheckrc和/sbin/brc进程,最后由/sbin/rc2进程将系统带入多用户使用环境,并为每个终端启动/etc/getty一个进程等待接收用户的登录。
    过程
  11. 如何修改文件权限,如何创建一个只读文件?

  12. chmod 100 filename
  13. 详细介绍SUDO命令,它的缺点是什么?

  14. 1、sudo好比一件黄马褂,在linux/unix环境下运行是有特权的,比如:运行一些像mount,halt,su之类的命令,或者编辑一些系统配置文件,/etc/mtab,/etc/samba/smb.conf等。这样就减少了root用户的登陆次数和管理时间,也提高了系统安全性。 
    
    2、sudo忠实的记录日志:自己都做了什么。和配置一并保存在/etc/sudoers下。
    
    3、用户使用sudo命令后,必须在输入密码才能继续执行,在一定的时间内比如5分钟没有任何定做的话,就必须重新键入密码才能有所作为。这种特性也成为时间戳或者入场卷的特性。
    
    4、常用的sudo命令及其含义:
    
      sudo -h Help 列出使用方法,退出。  
      sudo -V Version 显示版本信息,并退出。  
      sudo -l List 列出当前用户可以执行的命令。只有在sudoers里的用户才能使用该选项。  
      sudo -u username|#uid User 以指定用户的身份执行命令。后面的用户是除root以外的,可以是用户名,也可以是#uid。  
     
     
      sudo -k Kill 清除“入场卷”上的时间,下次再使用sudo时要再输入密码。  
     
     
      sudo -K Sure kill 与-k类似,但是它还要撕毁“入场卷”,也就是删除时间戳文件。  
     
     
      sudo -b command Background 在后台执行指定的命令。  
      sudo -p prompt command Prompt 可以更改询问密码的提示语,其中%u会代换为使用者帐号名称,%h会显示主机名称。非常人性化的设计。  
      sudo -e file Edit 不是执行命令,而是修改文件,相当于命令sudoedit。  
     
     
      还有一些不常用的参数,在手册页sudo(8)中可以找到。 
    
    5、关于配置sudo。配置sudo必须通过编辑/etc/sudoers文件,而且只有超级用户才可以修改它,还必须使用visudo编辑。之所以使用visudo有两个原因,一是它能够防止  
    两个用户同时修改它;二是它也能进行有限的语法检查。所以,即使只有你一个超级用户,你也最好用visudo来检查一下语法。
    View Code
  15. UDP和TCP之间有什么区别?

  16. TCP)传输控制协议,是一种提供可靠数据传输的通用协议。
    (UDP)用户数据报协议,是一个面向无连接的协议。采用该协议不需要两个应用程序先建立连接。UDP协议不提供差错恢复,不能提供数据重传,因此该协议传输数据安全性差。
  17. 描述Linux机器启动的顺序.

  18.  启动第一步--加载BIOS
     启动第二步--读取MBR
     启动第三步--Boot Loader
     启动第四步--加载内核
     启动第五步--用户层init依据inittab文件来设定运行等级
     启动第六步--init进程执行rc.sysinit
     启动第七步--启动内核模块
     启动第八步--执行不同运行级别的脚本程序
     启动第九步--执行/etc/rc.d/rc.local
     启动第十步--执行/bin/login程序,进入登录状态
  19. 设计一个3层的Web应用.

  20. 持久层(数据访问层)、业务逻辑层、表现层
    其中表现层又采用MVC架构模式,分化为模型、视图、控制三部分
  21. 概述你如何将互联网流量导入子网.

  22. nat原理
  23. 你对虚拟化了解吗?它好用吗?

  24. 虚拟化,是指通过虚拟化技术将一台计算机虚拟为多台逻辑计算机。
  25. 不同级别的RAID有什么不同?对于Web服务器和数据库服务器你会使用哪一级别的RAID?

  26. 如果是缓存服务数据库,raid0
    如果是存储数据库,raid10,raid5
  27. 说出开源社区最近的一些开发进展.

  28. 你是否向开源项目做过贡献?

  29. 系统工程师和系统管理员有什么区别?解释一下?

  30. 级别不同,工资不同
  31. 列出一些系统专家不道德的行为.

  32. 通常情况下Linux系统的交换分区是多大?

  33. 没有名字的目录在Linux系统中表示什么?

  34. 如何列出目录中的所有文件,包括隐藏文件?

  35. ls -ladh
    tree
  36. 如何添加一个没有登录权限的新的系统用户?

  37. useradd user -s /sbin/nologin,
  38. 说明什么是硬链接?硬链接被删除会发生什么?

  39. 系统管理员执行这条命令会发生什么:chmod 444 chmod?

  40. 文件改变权限
  41. 如何找出一个Linux系统的共有IP和私有IP?

  42. 用bash发邮件如何带附件?

  43. 说出一些在服务器上使用的Linux发行版.

  44. redhat , centos, ubuntu , debian, son
  45. 说明在Linux上重新安装Grub的最简便的方式?

  46. yum -y install Grub
  47. 什么是记录,NS记录,PTR记录,CNAME记录,和MX记录?

  48.     A 地址 此记录列出特定主机名的 IP 地址。这是名称解析的重要记录。
      PTR记录常被用于反向地址解析   CNAME 标准名称 此记录指定标准主机名的别名。   MX 邮件交换器 此记录列出了负责接收发到域中的电子邮件的主机。   NS 名称服务器 此记录指定负责给定区域的名称服务器。
  49. 什么是僵尸进程?做什么会导致僵尸进程?

  50.  ⒈父进程通过wait和waitpid等函数等待子进程结束,这会导致父进程挂起。
    ⒉ 如果父进程很忙,那么可以用signal函数为SIGCHLD安装handler,因为子进程结束后, 父进程会收到该信号,可以在handler中调用wait回收。
    ⒊ 如果父进程不关心子进程什么时候结束,那么可以用signal(SIGCHLD,SIG_IGN) 通知内核,自己对子进程的结束不感兴趣,那么子进程结束后,内核会回收, 并不再给父进程发送信号。
    ⒋ 还有一些技巧,就是fork两次,父进程fork一个子进程,然后继续工作,子进程fork一 个孙进程后退出,那么孙进程被init接管,孙进程结束后,init会回收。不过子进程的回收 还要自己做
    View Code
  51. 我们什么时候选择使用脚本,而不是编译型程序?

  52. 小型程序
  53. 如何创建一个简单的主从集群?

  54. 删除一个文件链接的源文件会发生什么?

  55. FTP服务器如何限制访问IP?

  56. 说明Linux的目录结构,/usr/local文件夹里放的是什么?

  57. 自安装的软件目录文件
  58. 什么是git?解释它的结构和工作原理?

  59. 参考博客http://www.nowamagic.net/academy/detail/48160210
  60. 你如何在中午十二点发一封邮件给100个人?

  61. 描述ZFS文件系统.

  62. ZFS文件系统的英文名称为Zettabyte File System,也叫动态文件系统(Dynamic File System),是第一个128位文件系统。最初是由Sun公司为Solaris 10操作系统开发的文件系统
  63. 如何修改Linux系统的默认运行级别?

  64. 如何修改Linux的内核参数?

  65. 说明SSH和Telnet之间的区别.

  66. ssh 是加密的,基于 SSL 。
    telnet 是明码传输的,发送的数据被监听后不需要解密就能看到内容。
  67. 你如何虚拟化一个Linux物理机?

  68. 告诉我一些古怪的Linux命令.

  69. 解释HTTPS的工作原理.

  70. http://blog.csdn.net/sean_cd/article/details/6966130
    HTTPS工作原理
  71. 你知道tor浏览器么?解释它的原理.

  72. 如何在下次启动机器的时候触发强制系统检查?

  73. 你喜欢什么备份技术?

  74. 主从复制
    磁带机
    脚本网络备份
  75. 解释一些SWAP分区.

  76. 解释一下ping死亡攻击.

  77. 最简单的基于IP的攻击可能要数著名的死亡之ping,这种攻击主要是由于单个包的长度超过了IP协议规范所规定的包长度。产生这样的包很容易,事实上,许多操作系统都提供了称为ping的网络工具。在为Windows操作系统中开一个DOS窗口,输入ping -l 65500 目标ip -t (65500 表示数据长度上限,-t 表示不停地ping目标地址)就可达到该目的。UNIX系统也有类似情况。
    View Code
  78. 你如何嗅探IP包的内容.

  79. wireshark抓包分析
  80. OSI层次结构如何确保数据包抵达正确的地址?


评论: