听说去了BAT的 Linuxers 都做过这套面试题!

本部分为单项选择题,每道题仅有一个答案,每题2分。

 

1. cron 后台常驻程序 (daemon) 用于:

A. 负责文件在网络中的共享

B. 管理打印子系统

C. 跟踪管理系统信息和错误

D. 管理系统日常任务的调度

2. 在大多数Linux发行版本中,以下哪个属于块设备 (block devices) ?

A. 串行口

B. 硬盘

C. 虚拟终端

D. 打印机

3. 下面哪个Linux命令可以一次显示一页内容?

A. pause

B. cat

C. more

D. grep

4. 怎样了解您在当前目录下还有多大空间?

A. Use df

B. Use du /

C. Use du .

D. Use df .

5. 怎样更改一个文件的权限设置?

A. attrib

B. chmod

C. change

D. file

6. 假如您需要找出 /etc/my.conf 文件属于哪个包 (package) ,您可以执行:

A. rpm -q /etc/my.conf

B. rpm -requires /etc/my.conf

C. rpm -qf /etc/my.conf

D. rpm -q | grep /etc/my.conf

7. 假如当前系统是在 level 3 运行,怎样不重启系统就可转换到 level 5 运行?

A. Set level = 5

B. telinit 5

C. run 5

D. ALT-F7-5

8. 那个命令用于改变 IDE 硬盘的设置?

A. hdparam

B. ideconfig

C. hdparm

D. hddparm

9. 下面哪个命令可以列出定义在以后特定时间运行一次的所有任务?

A. atq

B. cron

C. batch

D. at

10.下面命令的作用是:set PS1="[\u\w\t]\\$" ; export PS1

A. 改变错误信息提示

B. 改变命令提示符

C. 改变一些终端参数

D. 改变辅助命令提示符

11.作为一个管理员,你希望在每一个新用户的目录下放一个文件 .bashrc ,那么你应该在哪个目录下放这个文件,以便于新用户创建主目录时自动将这个文件复制到自己的目录下。

A. /etc/skel/

B. /etc/default/

C. /etc/defaults/

D. /etc/profile.d/

12.在bash中,export命令的作用是:

A. 在子shell中运行命令

B. 使在子shell中可以使用命令历史记录

C. 为其它应用程序设置环境变量

D. 提供NFS分区给网络中的其它系统使用

13.在使用了shadow口令的系统中,/etc/passwd和/etc/shadow两个文件的权限正确的是:

A. -rw-r----- , -r--------

B. -rw-r--r-- , -r--r--r--

C. -rw-r--r-- , -r--------

D. -rw-r--rw- , -r-----r--

14.下面哪个参数可以删除一个用户并同时删除用户的主目录?

A. rmuser -r

B. deluser -r

C. userdel -r

D. usermgr -r

15.有一个备份程序mybackup,需要在周一至周五下午1点和晚上8点各运行一次,下面哪条crontab的项可以完成这项工作?

A. 0 13,20 * * 1,5 mybackup

B. 0 13,20 * * 1,2,3,4,5 mybackup

C. * 13,20 * * 1,2,3,4,5 mybackup

D. 0 13,20 1,5 * * mybackup

16.如何从当前系统中卸载一个已装载的文件系统

A. umount

B. dismount

C. mount -u

D. 从 /etc/fstab 中删除这个文件系统项

17.如果你的umask设置为022,缺省的你创建的文件的权限为:

A. ----w--w-

B. -w--w----

C. r-xr-x---

D. rw-r--r--

18.在一条命令中如何查找一个二进制命令 Xconfigurator 的路径?

A. apropos Xconfigurator

B. find Xconfigurator

C. where Xconfigurator

D. which Xconfigurator

19.哪一条命令用来装载所有在 /etc/fstab 中定义的文件系统?

A. amount

B. mount -a

C. fmount

D. mount -f

20.运行一个脚本,用户不需要什么样的权限?

A. read

B. write

C. execute

D. browse on the directory

21.在Linux中,如何标识接在IDE0上的slave硬盘的第2个扩展分区?

A. /dev/hdb2

B. /dev/hd1b2

C. /dev/hdb6

D. /dev/hd1b6

22.在应用程序起动时,如何设置进程的优先级?

A. priority

B. nice

C. renice

D. setpri

23.在 bash 中, 在一条命令后加入"1>&2" 意味着:

A. 标准错误输出重定向到标准输入

B. 标准输入重定向到标准错误输出

C. 标准输出重定向到标准错误输出

D. 标准输出重定向到标准输入

24.下面哪条命令可以把f1.txt复制为f2.txt?

A. cp f1.txt | f2.txt

B. cat f1.txt | f2.txt

C. cat f1.txt > f2.txt

D. copy f1.txt | f2.txt

25.显示一个文件最后几行的命令是:

A. tac

B. tail

C. rear

D. last

26.如何快速切换到用户John的主目录下?

A. cd @John

B. cd #John

C. cd &John

D. cd ~John

27.把一个流中所有字符转换成大写字符,可以使用下面哪个命令?

A. tr a-z A-Z

B. tac a-z A-Z

C.sed /a-z/A-Z

D. sed --toupper

28.使用什么命令可以查看Linux的启动信息?

A. mesg -d

B. dmesg

C. cat /etc/mesg

D. cat /var/mesg

29.运行级定义在:

A. in the kernel

B. in /etc/inittab

C. in /etc/runlevels

D. using the rl command

30.如何装载(mount)上在 /etc/fstab 文件中定义的所有文件系统?

A. mount -a

B. mount /mnt/*

C. mount

D. mount /etc/fstab

参考答案:

01.D 02.B 03.C 04.C 05.B

06.C 07.B 08.C 09.A 10.B

11.A 12.C 13.C 14.C 15.B

16.A 17.D 18.D 19.B 20.B

21.C 22.B 23.C 24.C 25.B

26.D 27.A 28.B 29.B 30.A

第二部分  简答题

本部分为简答题,每题5分。

1.生产场景如何对linux系统进行合理规划分区?

分区的根本原则是简单、易用、方便批量管理。根据服务器角色定位建议如下:

①单机服务器:如8G内存,300G硬盘

分区: /boot 100-200M,swap 16G,内存大小8G*2,/ 80G,/var 20G(也可不分),/data 180G(存放web及db数据)

优点:数据盘和系统盘分开,有利于出问题时维护。

RAID方案:视数据及性能要求,一般可采用raid5折中。

②负载均衡器(如LVS等)

分区:/boot 100-200M,swap 内存的1-2倍,/ ,

优点:简单方便,只做转发数据量很少。

RAID方案:数据量小,重要性高,可采用RAID1

③负载均衡下的RS server

分区: /boot 100-200M,swap 内存的1-2倍,/

优点:简单方便,因为有多机,对数据要求低。

RAID方案:数据量大,重要性不高,有性能要求,数据要求低,可采用RAID0

④数据库服务器mysql及oracle如16/32G内存

分区:/boot 100-200M,swap 16G,内存的1倍,/ 100G,/data 剩余(存放db数据)

优点:数据盘和系统盘分开,有利于出问题时维护,及保持数据完整。

RAID方案:视数据及性能要求主库可采取raid10/raid5,从库可采用raid0提高性能(读写分离的情况下。)

⑤存储服务器

分区:/boot 100-200M,swap 内存的1-2倍,/ 100G,/data(存放数据)

优点:此服务器不要分区太多。只做备份,性能要求低。容量要大。

RAID方案:可采取sata盘,raid5

⑥共享存储服务器(如NFS)

分区:/boot 100-200M,swap 内存的1-2倍,/ 100G,/data(存放数据)

优点:此服务器不要分区太多。NFS共享比存储多的要求就是性能要求。

RAID方案:视性能及访问要求可以raid5,raid10,甚至raid0(要有高可用或双写方案)

⑦监控服务器cacti,nagios

分区:/boot 100-200M,swap 内存的1-2倍,/

优点:重要性一般,数据要求也一般。

RAID方案:单盘或双盘raid1即可。三盘就RAID5,看容量要求加盘即可。

2.描述Linux下文件删除的原理

Linux系统是通过link的数量来控制文件删除的,只有当一个文件不存在任何link的时候,这个文件才会被删除。一般来说每个文件两个link计数器来控制i_count和i_nlink。当一个文件被一个程序占用的时候i_count就加1。当文件的硬链接多一个的时候i_nlink也加1。删除一个文件,就是让这个文件,没有进程占用,同时i_link数量为0。

3.请简单描述VI编辑器的使用

①vi编辑器是linux系统下最最基本和最常用的标准文本编辑器。

②vi编辑器有三种工作模式:普通模式、编辑模式、命令模式。

③普通模式下的键盘输入任何字符都是当作命令来执行的,也可以输入命令进行光标的移动,字符、单词、行的复制、粘帖以及删除等操作。

④编辑模式主要用于文本的输入。在该模式下,用户输入的任何字符都被作为文件的内容保存起来。

⑤命令模式下,用户可以对文件进行一些如字符串查找、替换、显示行号等操作还是必须要进入命令模式的。

⑥在普通模式下输入冒号即可进入命令模式,此时vi窗口的状态行会显示出冒号,等待用户输入命令。“i”插入模式,即可以进行编辑。用户输入完成后,按【Esc】之后编辑器又返回到普通模式下,在命令模式下,保存退出,可以使用的命令为wq和x。前面加!表示强制退出,强制保存等。

4.简述基础正则表达式sed高级参数的使用

解答:

-n取消默认输出

-p 打印

-d删除

-e允许多项编辑

sed取行,要特别注意sed -n ‘s###g‘ filename 的使用,sed的( )的功能可以记住正则表达式的一部分,其中,为第一个记住的模式即第一个小括号中的匹配内容,第二记住的模式,即第二个小括号中的匹配内容,sed最多可以记住9个。

实际字符的选取最好要唯一,正则表达式是贪婪的,总是尽可能的匹配更远的符合匹配的内容。另外注意字符串中的空格。

第三部分  开放性问题

本部分为开放性问题,无标准答案,每题10分。

1.在你以往的工作中,给公司带来了什么价值?

2.假设你不小心删除了数据库且无法恢复,你会怎么处理?

原文地址:https://www.cnblogs.com/hystj/p/8719661.html

时间: 2024-11-09 12:37:05

听说去了BAT的 Linuxers 都做过这套面试题!的相关文章

30岁后的程序员都做什么去了

最近,很多人都在讨论"中年危机",中年危机,一般指39-65岁的中年人经历的一系列事业.家庭.感情.健康上的困境.现在的90后程序员们,他们之中大多数的年龄在四舍五入之后都满30岁了. 年龄的增长,往往也意味着身上的责任逐渐变多.他们也就逐渐承担起事业.家庭甚至社会上的责任,而是适应这些责任并不是一朝一夕的事儿.这时候的他们在看了很多关于程序员30多岁被辞退等新闻后,不仅发出感慨,程序员真的是个青春饭职业?那些30岁后的程序员都做什么去了? 我们先来看一张图,这是网传的程序员职业路线图

后端程序员都做些什么?

后端程序员都做些什么? 2017-12-25 刘欣 程序猿 来自:码农翻身(微信号:coderising) 这个问题来自于QQ网友,一句两句说不清楚,索性写个文章. 我刚开始做Web开发的时候,根本没有前端,后端之说. 原因很简单,那个时候服务器端的代码就是一切:接受浏览器的请求,实现业务逻辑,访问数据库,用JSP生成HTML,然后发送给浏览器. 即使后来Javascript在浏览器中添加了一些AJAX的效果,那也是锦上添花,绝对不敢造次.因为页面的HTML主要还是用所谓"套模板"的方

scikit-learn:CountVectorizer提取tf都做了什么

http://scikit-learn.org/stable/modules/generated/sklearn.feature_extraction.text.CountVectorizer.html#sklearn.feature_extraction.text.CountVectorizer class sklearn.feature_extraction.text.CountVectorizer(input=u'content', encoding=u'utf-8', decode_er

你连自律都做不到,还奢谈什么自由?

本文由作者 菜刀少爷 授权罗辑思维发布,选自微信公众号“菜刀少爷”. 1 牛人都是狠角色 据说史蒂夫·乔布斯年轻时每天凌晨四点起床,九点前把一天工作做完.乔帮主说:自由从何而来?从自信来,而自信则是从自律来. 自律是对自我的控制,自信是对事情的控制.先学会克制自己,用严格的日程表控制生活,才能在这种自律中不断磨练出自信. 都是成年人,连最基本的行为控制都做不到,还谈什么自信?又奢谈什么自由? 前华人首富李嘉诚以勤奋自律著称.他的作息时间非常有名: 不论几点睡觉,在清晨5点59分闹铃响后起床:随后

如果在之前阶段都做的很好,是否到探索性测试阶段,就不会发现Bug了

首先提出一个问题: 如果在探索性测试阶段发现很多bug,是否是之前卡中AC写的不够详尽?或者是开卡时候QA.开发.BA等人一起讨论的不够深入? 好吧,我换一个问题,如果在之前阶段都做的很好,是否到探索性测试阶段,就不会发现Bug了? 对于这个问题,我的想法是: 在一个开发团队里有十多个人,大家都使用同样的研发流程,在每张卡中的AC也尽量写的详尽,但是你可以看到,大约10年开发经验的人和2,3年开发经验的人最后测出的Bug数差别很大.我的问题是,为什么同样的流程,类似的卡的AC描述详细程度,对于开

Java对象的创建 —— new之后JVM都做了什么?

Java对象创建过程 1. 类加载检查 虚拟机遇到一条new指令时,首先将去检查这个指令的参数是否能在常量池中定位到一个类的符号引用,并且检查这个符号引用代表的类是否已经被加载.解析和初始化过.如果没有则进行相应的类加载过程.(我之后会写一篇关于类加载顺序和过程的博客,并在此补充连接地址) 2. 分配内存空间 类加载检查通过之后,JVM将为新生对象在堆中分配内存.对象所需内存的大小在类加载完成后已经完全确定了(关于怎样计算对象所需内存大小我稍后会写一篇博客并补充链接).为对象分配空间就相当于在J

电脑在开机的时候都做了些什么

首先嘛,开机对于大家来说也就是捅一下开机按钮,然后电脑开始嗡嗡叫,各种风扇转起来,显示器上显示了一个LOGO,最后就看到了Win7的启动动画.这个过程中,电脑详细都做了些什么呢?我在这里详细的说一说我的了解.(注意这只是我的了解,我还是很严谨的哦) 1.开机之后,主板的芯片组会给CPU发送一个RESET信号,CPU会挂起,并不马上执行指令(CS:EIP=0xFFFF:0x0000) 这个时候CPU完成初始化,内部恢复到初始状态. 等芯片组检测到电源已经稳定供电了,芯片组就撤去RESET信号,CP

对象初始化都做了什么

Java中对象的初始化都做了些什么,以Person p = new Person("张三",20)为例 一.Person p 1.首先会把编译后的Person.class文件加载内存中 2.在栈内存中为类Person的引用p开辟空间 3.如果Person中有静态的成员,则会先把静态的变量和方法加载到方法区中的静态方法区 二.new Person ("张三",20) 1.new关键字,在堆内存中为Person创建对象 2.把Person中的非静态成员加载到方法区,并为

一张图告诉你广电总局这些年都做了些什么~

广电总局,那些年的禁令!国家新闻出版广电总局是国务院直属机构,我们最熟悉的莫过于电影开场时必然会出现的金色龙形长城标志.那么,一张图,让你看清广电总局这些年做了什么事…… 一张图告诉你广电总局这些年都做了些什么-,布布扣,bubuko.com