文档库 最新最全的文档下载
当前位置:文档库 › Linux高级编程笔试题答案

Linux高级编程笔试题答案

Linux高级编程笔试题答案
Linux高级编程笔试题答案

高级编程笔试题答案

一、选择题

1.在网络字节序中,所谓”小端”(little endian)说法正确的是( B )

A. 高字节数据存放在低地址处,低字节数据存放在高地址处

B. 低字节位数据存放在内存低地址处, 高字节位数据存放在内存高地址处

C. 和编译器相关

D. 上述答案都不正确

2.C语言中,系统自动打开的文件是( D )

A. 二进制文件

B.随机文件

C.非缓冲文件

D.设备文件

3.TCP使用( B )进行流量控制。

A. 3次握手法

B. 窗口控制机制

C. 自动重发机制

D. 端口机制

4.TCP/IP层IP协议的服务是( C )

A. 可靠服务

B. 有确认的服务

C. 无连接数据报

D. 以上都不对

5.对于一个没有设置任何套接口选项的阻塞套接口,调用recv接收对方的数据,对方发

送数据前突然断电,下列哪种情况将会发生( A)

A. recv永远不会返回

B. recv立刻返回-1

C. recv立刻返回0

D. recv在等待很长一段时间后返回-1

6.下列哪些关于套接口选项函数的说法是正确的( C )

A. SO_DONTLINGER选项是让TCP套接口不对数据进行缓存,调用send函数后立刻将数

据发送出去;

B.调用SO_RCVBUF和SO_SNDBUF调整TCP窗口的大小;

C. SO_REUSEADDR选项允许套接口绑定在一个已经在使用的地址上;

D. SO_MAX_MSG_SIZE选项获取每次调用TCP套接口send时,所能发送的最大字节数;

二、问答题

1.fork和vfork的区别?

vfork用于创建一个新进程,而该进程的目的是exec一个新程序。vfork与fork一样都创建一个子进程,但他并不把父进程地址空间完全复制到子进程中,因为子进程通常都会调用exec或(_exit),于是也就不会访问该地址空间。vfork与fork的另一个区别是vfork保证子进程先运行,在它调用exec或_exit之后父进程才可能被调度运行。

vfork使用如下例:

#include

#include

#include

#include

int globvar=6;/*external variable in initialized data */

int

main(void)

{

int var; /* automatic variable on the stack */

pid_t pid;

var = 88;

printf("before vfork\n"); /* we don’t flush stdio */

if ((pid = vfork()) < 0)

{

perror("vfork error");

}

else if(pid == 0)

{ /* child */

globvar++; /* modify parent’s variables */

var++;

_exit(0); /* child terminates */

}

/* parent continues here */

printf("pid = %ld, glob = %d, var = %d\n", (long)getpid(), globvar,var);

exit(0);

}

2.excel协议族有哪些,举例函数原型?

extern char **environ;

int execl(const char *path, const char *arg, ...);

int execlp(const char *file, const char *arg, ...);

int execle(const char *path, const char *arg, ..., char * const envp[]);

int execv(const char *path, char *const argv[]);

int execvp(const char *file, char *const argv[]);

int execvpe(const char *file, char *const argv[], char *const envp[]);

3.创建线程、进程的函数是什么?

fork、vfork、pthread_create

4.线程间临界资源怎么保护?条件变量的使用?

互斥锁、信号量

条件变量是线程中的东西,就是等待某一条件的发生,和信号一样。具体的用法可参见百度百科文章:https://www.wendangku.net/doc/8412811686.html,/view/4025952.htm?fr=aladdin

5.编译有线程的文件要加什么参数?

-lpthread

6.线程与进程的区别?

线程是指进程内的一个执行单元,也是进程内的可调度实体。

与进程的区别:

a)地址空间:进程内的一个执行单元;进程至少有一个线程;它们共享进程的地

址空间;而进程有自己独立的地址空间;

b)资源拥有:进程是资源分配和拥有的单位,同一个进程内的线程共享进程的资

源;

c)线程是处理器调度的基本单位,但进程不是;

d)二者均可并发执行。

7.多进程和多线程的区别,分别在什么情景下用?

根据实际情况来判断,哪个更加合适就是哪个好

1)需要频繁创建销毁的优先用线程

原因请看上面的对比。

这种原则最常见的应用就是Web服务器了,来一个连接建立一个线程,断了就销毁线程,要是用进程,创建和销毁的代价是很难承受的

2)需要进行大量计算的优先使用线程

所谓大量计算,当然就是要耗费很多CPU,切换频繁了,这种情况下线程是最合适的。

这种原则最常见的是图像处理、算法处理。

3)强相关的处理用线程,弱相关的处理用进程

什么叫强相关、弱相关?理论上很难定义,给个简单的例子就明白了。

一般的Server需要完成如下任务:消息收发、消息处理。“消息收发”和“消息处理”

就是弱相关的任务,而“消息处理”里面可能又分为“消息解码”、“业务处理”,这两个任务相对来说相关性就要强多了。因此“消息收发”和“消息处理”可以分进程设计,“消息解码”、“业务处理”可以分线程设计。

当然这种划分方式不是一成不变的,也可以根据实际情况进行调整。

4)可能要扩展到多机分布的用进程,多核分布的用线程

原因请看上面对比。

5)都满足需求的情况下,用你最熟悉、最拿手的方式

至于“数据共享、同步”、“编程、调试”、“可靠性”这几个维度的所谓的“复杂、简单”应该怎么取舍,我只能说:没有明确的选择方法。但我可以告诉你一个选择原则:如果多进程和多线程都能够满足要求,那么选择你最熟悉、最拿手的那个。

需要提醒的是:虽然我给了这么多的选择原则,但实际应用中基本上都是“进程+线程”

的结合方式,千万不要真的陷入一种非此即彼的误区。

8.说出线程和进程的定义,为什么用多线程不用多进程?

线程和进程的定义可以参见PPT相关部分,用多线程而不使用多进程多半都是因为利用了线程比进程具有的优势,比如:数据共享简单、创建销毁速度快,占用的资源少等优点。

9.创建信号量函数原型?

typedef void (*sighandler_t)(int);

sighandler_t signal(int signum, sighandler_t handler);

10.互斥的实现方法?

互斥锁和信号量

11.二进制信号量与互斥信号量的区别?有什么作用?

1. 互斥量用于线程的互斥,信号量用于线程的同步。

这是互斥量和信号量的根本区别,也就是互斥和同步之间的区别。

互斥:是指某一资源同时只允许一个访问者对其进行访问,具有唯一性和排它性。但互斥无法限制访问者对资源的访问顺序,即访问是无序的。

同步:是指在互斥的基础上(大多数情况),通过其它机制实现访问者对资源的有序访问。在大多数情况下,同步已经实现了互斥,特别是所有写入资源的情况必定是互斥的。少数情况是指可以允许多个访问者同时访问资源

以上区别是主要想记住的。

note:信号量可以用来实现互斥量的功能

2.互斥量值只能为0/1,信号量值可以为非负整数。

也就是说,一个互斥量只能用于一个资源的互斥访问,它不能实现多个资源的多线程互斥问题。信号量可以实现多个同类资源的多线程互斥和同步。当信号量为单值信号量是,也可以完成一个资源的互斥访问。

3. 互斥量的加锁和解锁必须由同一线程分别对应使用,信号量可以由一个线程释放,另

一个线程得到。

4. 互斥锁应该加在线程内还是线程外?

加锁机制是对资源的保护,如果两个线程对同一个资源有竞争,则需要在两个线程之外初始化锁,而在线程内去获取锁,对资源进行访问,然后释放锁。

12.产生死锁的必要条件是什么?解决死锁有几种方法?

产生死锁的必要条件:

a)互斥条件:进程要求对所分配的资源进行排它性控制,即在一段时间内某资源仅为

一进程所占用。

b)请求和保持条件:当进程因请求资源而阻塞时,对已获得的资源保持不放。

c)不剥夺条件:进程已获得的资源在未使用完之前,不能剥夺,只能在使用完时由自

己释放。

d)环路等待条件:在发生死锁时,必然存在一个进程--资源的环形链。

解决死锁的基本方法:

a)预防死锁:

资源一次性分配:(破坏请求和保持条件)

可剥夺资源:即当某进程新的资源未满足时,释放已占有的资源(破坏不可剥夺条件)资源有序分配法:系统给每类资源赋予一个编号,每一个进程按编号递增的顺序请求

资源,释放则相反(破坏环路等待条件)

b)避免死锁:

预防死锁的几种策略,会严重地损害系统性能。因此在避免死锁时,要施加较弱的限制,从而获得较满意的系统性能。由于在避免死锁的策略中,允许进程动态地申请资源。因而,系统在进行资源分配之前预先计算资源分配的安全性。若此次分配不会导致系统进入不安全状态,则将资源分配给进程;否则,进程等待。其中最具有代表性的避免死锁算法是银行家算法。

c)检测死锁:

首先为每个进程和每个资源指定一个唯一的号码;

然后建立资源分配表和进程等待表

d)解除死锁:

当发现有进程死锁后,便应立即把它从死锁状态中解脱出来,常采用的方法有:

剥夺资源:从其它进程剥夺足够数量的资源给死锁进程,以解除死锁状态;

撤消进程:可以直接撤消死锁进程或撤消代价最小的进程,直至有足够的资源可用,死锁状态.消除为止;所谓代价是指优先级、运行代价、进程的重要性和价值等。13.解释可重入?

若一个程序或子程序可以“安全的被并行执行(Parallel computing)”,则称其为可重入(reentrant或re-entrant)的。即当该子程序正在运行时,可以再次进入并执行它(并行执行时,个别的执行结果,都符合设计时的预期)。

若一个函数是可重入的,则该函数:

不能含有静态(全局)非常量数据。

不能返回静态(全局)非常量数据的地址。

只能处理由调用者提供的数据。

不能依赖于单实例模式资源的锁。

不能调用(call)不可重入的函数(有呼叫(call)到的函数需满足前述条件)。

多“用户/对象/进程优先级”以及多进程,一般会使得对可重入代码的控制变得复杂。同时,IO代码通常不是可重入的,因为他们依赖于像磁盘这样共享的、单独的(类似编程中的静态(Static)、全域(Global))资源。

例子:

在以下的C语言代码中,函数f和函数g都不是可重入的。

int g_var = 1;

int f()

{

g_var = g_var + 2;

return g_var;

}

int g()

{

return f() + 2;

}

以上代码中,f使用了全局变量 g_var,所以,如果两个线程同时执行它并访问g_var,则返回的结果取决于执行的时间。因此,f不可重入。而g调用了f,所以它也不可重

入。

稍作修改后,两个函数都是可重入的:

int f(int i)

{

return i + 2;

}

int g(int i)

{

return f(i) + 2;

}

14.怎么实现一个线程阻塞另一个线程?

利用同步互斥机制,或者想办法使另一个线程内的阻塞函数资源暂时不可获得,也会导致其阻塞。

15.HTTP403是什么意思?HTTP302是什么意思?

HTTP403(禁止访问)发生原因:是因为配置domain域时进行了自定义配置,或对原有的domain域进行过扩展现有的配置,并配置了应用程序的安全性所在在启动doamin 域后,输入http://localhost:7001/console就会报http 403 禁止访问

解决方案:对原有的domain域进行过扩展现有的配置,并取消对应用程序的安全性配置HTTP302错误表示被请求的资源暂时转移(Moved temporatily),然后会给出一个转移后的URL,而浏览器在处理服务器返回的302错误时,原则上会重新建立一个TCP连接,然后再取重定向后的URL的页面;但是如果页面存在于缓存中,则不重新获取。

16.假如子网掩码维255.255.255.245 有多少个ip可用?

256-245-2=9个

17.判断192.162.1.1 是A、B、C类那种网络ip地址?

C类

C类IP以110开头,从192.0.0.1到223.255.255.255

18.ISO模型每层分别是什么?集线器、交换机、路由器的工作原理?

集线器工作在第一层(即物理层),它没有智能处理能力,对它来说,数据只是电流而已,当一个端口的电流传到集线器中时,它只是简单地将电流传送到其他端口,至于其他端口连接的计算机接收不接收这些数据,它就不管了。交换机工作在第二层(即数据链路层),它要比集线器智能一些,对它来说,网络上的数据就是MAC地址的集合,它能分辨出帧中的源MAC地址和目的MAC地址,因此可以在任意两个端口间建立联系,但是交换机并不懂得IP地址,它只知道MAC地址。路由器工作在第三层(即网络层),它比交换机还要“聪明”一些,它能理解数据中的IP地址,如果它接收到一个数据包,就检查其中的IP地址,如果目标地址是本地网络的就不理会,如果是其他网络的,就将数据包转发出本地网络。

集线器(Hub):在OSI模型中属于数据链路层,集线器最大的特点就是采用共享型模式,就是指在有一个端口在向另一个端口发送数据时,其他端口就处于“等待”状态。

为什么会“等待”呢?举个例子来说,其实在单位时间内A向B发送数据包时,A是发送给B、C、D三个端口的(该现象即紧接下文介绍的IP广播),但是只有B接收,其他的端口在第一单位时间判断不是自己需要的数据后将不会再去接收A发送来的数据。直到A再次发送IP广播,在A再次发送IP广播之前的单位时间内,C,D是闲置的,或者CD之间可以传输数据。如图1,我们可以理解为集线器内部只有一条通道(即公共通道),然后在公共通道下方就连接着所有端口。

交换机:基于MAC(网卡的硬件地址)识别,能完成封装转发数据包功能的网络设备。交换机可以“学习”MAC地址,并把其存放在内部地址表中,能过在数据帧的始发者和目标接收者之间建立临时的交换路径,使数据帧直接同源地址到达目的地址。

路由器(Router):工作在OSI第三层(网络层)上、肯有连接不同类型网络的能力并能够选择数据传送路径的网络设备。路由器能连接不同类型的网络我们常见的集线器和交换机一般都是用于连接以太网的,但是如果将两种网络类型连接起来,比如以太网与ATM网,集线器和交换机就派不上用场了。路由器能够连接不同类型的局域网和广域网,如以太网、ATM网、FDDI网、令牌环网等。路由器具有路径选择能力在互联网中,从一个节点到另一个节点,可能有许多路径,路由器可以选择通畅快捷的近路,会大大提高通信速度,减轻网络系统通信负荷,节约网络系统资源,这是集线器和二层交换机所根本不具备的性能。

19.IP 通过什么协议转成域名和MAC地址?

通过DNS协议转换成域名。

DNS 是域名系统(Domain Name System) 的缩写,它是由解析器和域名服务器组成的。

域名服务器是指保存有该网络中所有主机的域名和对应IP地址,并具有将域名转换为IP地址功能的服务器。

通过ARP(地址转换协议)协议转换成MAC地址,反过来MAC到IP地址的转换是RARP(逆地址转换协议)

20.域名解析的过程和步骤?

见下图和分析

a)在浏览器中输入https://www.wendangku.net/doc/8412811686.html,域名,操作系统会先检查自己本地的hosts文件

是否有这个网址映射关系,如果有,就先调用这个IP地址映射,完成域名解

析。

b)如果hosts里没有这个域名的映射,则查找本地DNS解析器缓存,是否有这个

网址映射关系,如果有,直接返回,完成域名解析。

c)如果hosts与本地DNS解析器缓存都没有相应的网址映射关系,首先会找

TCP/ip参数中设置的首选DNS服务器,在此我们叫它本地DNS服务器,此服

务器收到查询时,如果要查询的域名,包含在本地配置区域资源中,则返回解

析结果给客户机,完成域名解析,此解析具有权威性。

d)如果要查询的域名,不由本地DNS服务器区域解析,但该服务器已缓存了此

网址映射关系,则调用这个IP地址映射,完成域名解析,此解析不具有权威

性。

e)如果本地DNS服务器本地区域文件与缓存解析都失效,则根据本地DNS服务

器的设置(是否设置转发器)进行查询,如果未用转发模式,本地DNS就把

请求发至13台根DNS,根DNS服务器收到请求后会判断这个域名(.com)是谁

来授权管理,并会返回一个负责该顶级域名服务器的一个IP。本地DNS服务

器收到IP信息后,将会联系负责.com域的这台服务器。这台负责.com域的服

务器收到请求后,如果自己无法解析,它就会找一个管理.com域的下一级DNS

服务器地址(https://www.wendangku.net/doc/8412811686.html,)给本地DNS服务器。当本地DNS服务器收到这个地址后,

就会找https://www.wendangku.net/doc/8412811686.html,域服务器,重复上面的动作,进行查询,直至找到https://www.wendangku.net/doc/8412811686.html,

主机。

f)如果用的是转发模式,此DNS服务器就会把请求转发至上一级DNS服务器,

由上一级服务器进行解析,上一级服务器如果不能解析,或找根DNS或把转

请求转至上上级,以此循环。不管是本地DNS服务器用是是转发,还是根提

示,最后都是把结果返回给本地DNS服务器,由此DNS服务器再返回给客户

机。

从客户端到本地DNS服务器是属于递归查询,而DNS服务器之间就是的交互查询就是迭代查询。

21.列举常见的网络协议?

网际层协议:包括:IP协议、ICMP协议、ARP协议、RARP协议。

传输层协议:TCP协议、UDP协议。

应用层协议:FTP、Telnet、SMTP、HTTP、NFS、DNS。

22.ARP协议工作原理?

首先,每台主机都会在自己的ARP缓冲区中建立一个ARP列表,以表示IP地址和MAC 地址的对应关系。当源主机需要将一个数据包要发送到目的主机时,会首先检查自己ARP列表中是否存在该IP地址对应的MAC地址,如果有,就直接将数据包发送到这个MAC地址;如果没有,就向本地网段发起一个ARP请求的广播包,查询此目的主机对应的MAC地址。此ARP请求数据包里包括源主机的IP地址、硬件地址、以及目的主机的IP地址。网络中所有的主机收到这个ARP请求后,会检查数据包中的目的IP是否和自己的IP地址一致。如果不相同就忽略此数据包;如果相同,该主机首先将发送端的MAC地址和IP地址添加到自己的ARP列表中,如果ARP表中已经存在该IP的信息,则将其覆盖,然后给源主机发送一个ARP响应数据包,告诉对方自己是它需要查找的MAC 地址;源主机收到这个ARP响应数据包后,将得到的目的主机的IP地址和MAC地址添加到自己的ARP列表中,并利用此信息开始数据的传输。如果源主机一直没有收到ARP 响应数据包,表示ARP查询失败。

例如:

A的地址为:IP:192.168.10.1 MAC: AA-AA-AA-AA-AA-AA

B的地址为:IP:192.168.10.2 MAC: BB-BB-BB-BB-BB-BB

根据上面的所讲的原理,我们简单说明这个过程:A要和B通讯,A就需要知道B的以太网地址,于是A发送一个ARP请求广播(谁是192.168.10.2 ,请告诉192.168.10.1),当B收到该广播,就检查自己,结果发现和自己的一致,然后就向A发送一个ARP单播应答(192.168.10.2 在BB-BB-BB-BB-BB-BB)

23.TCP/IP协议三本书名?

《TCP/IP详解卷1:协议》

《TCP/IP详解卷2:实现》

《TCP/IP详解卷3:TCP事务协议、HTTP、NNTP和UNIX域协议》

24.简述snmp协议?

1、RFC1157

2、《SNMP协议详解》

https://www.wendangku.net/doc/8412811686.html,/shanzhizi/article/details/11606767

25.Socket通信流程?

socket通信分为两种一种为tcp通信模型,一种为udp通信模型,两种通信模型分别为:

Tcp通信模型:

Tcp服务器端

Tcp客户端

UDP通信模型:

26.TCP和UDP的区别?

a)面向链接:TCP面向链接,面向连接意味着两个使用TCP的应用(通常是一个客户

和一个服务器)在彼此交换数据之前必须通过三次握手先建立一个TCP连接。在一

个TCP中仅有两方彼此通信,多播和广播不能用于TCP。UDP是不可靠的传输,传

输前不需要建立链接,可以应用多播和广播实现一对多的通信。

b)可靠性:TCP提供端到端的流量控制,对收到的数据进行确认,采用超时重发,对

失序的数据进行重新排序等机制保证数据通信的可靠性。而UDP是一种不可靠的

服务,接收方可能不能收到发送方的数据报。

c)TCP是一种流模式的协议,UDP是一种数据报模式的协议。进程的每个输出操作都

正好产生一个UDP数据报,并组装成一份待发送的IP数据报。TCP应用程序产生

的全体数据与真正发送的单个IP数据报可能没有什么联系。TCP会有粘包和半包的

现象。

d)效率上:速度上,一般TCP速度慢,传输过程中需要对数据进行确认,超时重发,

还要对数据进行排序。UDP没有这些机制所以速度快。数据比例,TCP头至少20

个字节,UDP头8个字节,相对效率高。组装效率上:TCP头至少20个字节,UDP

头8个字节,系统组装上TCP相对慢。

e)用途上:用于TCP可靠性,http,ftp使用。而由于UDP速度快,视频,在线游戏

多用UDP,保证实时性

27.网络七层协议?

OSI的7层从上到下分别是7应用层6表示层5会话层4传输层3 网络层 2数据链路层1物理层

28.C/S架构中,当服务器给客服端发送数据时,客服端离开,服务器怎么判断?

先要分清客户端是正常退出还是异常退出;

如果是正常退出,那服务器向一个已关闭的套接字对端发消息,将会收到内核产生的SIGPIPE信号,进程收到该信号的默认操作是退出该进程,用户可捕获该信号做进一步处理。

如果是客户端异常退出,则可以使用心跳机制来检测对端是否异常退出

29.说说TCP三次握手?发送的是什么内容?TCP报头内容?

第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认;

第二次握手:服务器收到syn包,必须确认客户的syn(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态;

第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。

完成三次握手,客户端与服务器开始传送数据

TCP协议头最少20个字节,包括以下的区域

TCP源端口(Source Port):16位的源端口其中包含初始化通信的端口。源端口和源IP地址的作用是

标示报问的返回地址。

TCP目的端口(Destination port):16位的目的端口域定义传输的目的。这个端口指明报文接收计算

机上的应用程序地址接口。

TCP序列号(序列码,Sequence Number):32位

TCP应答号(Acknowledgment Number):32位的序列号由接收端计算机使用,重组分段的报文成最初形式。,如果设置了ACK控制位,这个值表示一个准备接收的包的序列码。

数据偏移量(HLEN):4位包括TCP头大小,指示何处数据开始。

保留(Reserved):6位值域,这些位必须是0。为了将来定义新的用途所保留。

标志(Code Bits):6位标志域。表示为:紧急标志、有意义的应答标志、推、重置连接标志、同步序列号标志、完成发送数据标志。按照顺序排列是:URG、ACK、PSH、RST、SYN、FIN。

1. URG:紧急标志

紧急(The urgent pointer) 标志有效。紧急标志置位,

2. ACK:确认标志

确认编号(Acknowledgement Number)栏有效。大多数情况下该标志位是置位的。TCP报头内的确认编号栏内包含的确认编号(w+1,Figure:1)为下一个预期的序列编号,同时提示远端系统已经成功接收所有数据。

3. PSH:推标志

该标志置位时,接收端不将该数据进行队列处理,而是尽可能快将数据转由应用处理。在处理 telnet 或rlogin 等交互模式的连接时,该标志总是置位的。

4. RST:复位标志

复位标志有效。用于复位相应的TCP连接。

5. SYN:同步标志

同步序列编号(Synchronize Sequence Numbers)栏有效。该标志仅在三次握手建立TCP连接时有效。它提示TCP连接的服务端检查序列编号,该序列编号为TCP连接初始端(一般是客户端)的初始序列编号。在这里,可以把TCP序列编号看作是一个范围从0到4,294,967,295的32位计数器。通过TCP连接交换的数据中每一个字节都经过序列编号。在TCP报头中的序列编号栏包括了TCP分段中第一个字节的序列编号。

6. FIN:结束标志

带有该标志置位的数据包用来结束一个TCP回话,但对应端口仍处于开放状态,准备接收后续数据。

窗口(Window):16位,用来表示想收到的每个TCP数据段的大小。

校验位(Checksum):16位TCP头。源机器基于数据内容计算一个数值,收信息机要与源机器数值结果完全一样,从而证明数据的有效性。

优先指针(紧急,Urgent Pointer):16位,指向后面是优先数据的字节,在URG标志设置了时才有效。如果URG标志没有被设置,紧急域作为填充。加快处理标示为紧急的数据段。

选项(Option):长度不定,但长度必须以字节。如果没有选项就表示这个一字节的域等于0。

数据(Date):应用程序的数据。

30.多任务系统环境下经常用到函数阻塞和非阻塞状态,其区别是什么?

阻塞函数在完成其指定的任务以前不允许程序调用另一个函数。例如,程序执行一个读数据的函数调用时,在此函数完成读操作以前将不会执行下一程序语句。当服务器运行到accept语句时,而没有客户连接服务请求到来,服务器就会停止在accept语句上等待连接服务请求的到来。这种情况称为阻塞(blocking)。而非阻塞操作则可以立即完成。

比如,如果你希望服务器仅仅注意检查是否有客户在等待连接,有就接受连接,否则就继续做其他事情,则可以通过将Socket设置为非阻塞方式来实现。非阻塞socket在没有客户在等待时就使accept调用立即返回。

我们拿最常用的send和recv两个函数来说吧:

比如你调用send函数发送一定的Byte,在系统内部send做的工作其实只是把数据传输(Copy)到TCP/IP协议栈的输出缓冲区,它执行成功并不代表数据已经成功的发送出去了,如果TCP/IP协议栈没有足够的可用缓冲区来保存你Copy过来的数据的话...这时候就体现出阻塞和非阻塞的不同之处了:对于阻塞模式的socket send函数将不返回直到系统缓冲区有足够的空间把你要发送的数据Copy过去以后才返回,而对于非阻塞的socket来说send会立即返回WSAEWOULDDBLOCK告诉调用者说:"发送操作被阻塞了!!!你想办法处理吧..."

对于recv函数,同样道理,该函数的内部工作机制其实是在等待TCP/IP协议栈的接收缓冲区通知它说:嗨,你的数据来了.对于阻塞模式的socket来说如果TCP/IP协议栈的接收缓冲区没有通知一个结果给它它就一直不返回:耗费着系统资源....对于非阻塞模式的socket 该函数会马上返回,然后告诉你:WSAEWOULDDBLOCK---"现在没有数据,回头在来看看"

31.写出发送信号的命令或函数。

命令:kill

函数:int kill(pid_t, int);

32.pid_t fork() 返回值的意义?

返回值大于0 代表在父进程中,返回值为子进程的进程号;

返回值== 0 代表在子进程中;

返回值== -1 代表出错;

33.系统调用和库函数的区别?

a)调用形式不同:过程(函数)使用一般调用指令,其转向地址是固定不变的,包含

在跳转语句中;但系统调用中不包含处理程序入口,而仅仅提供功能号,按功能号

调用。

b)被调用代码的位置不同:过程(函数)调用是一种静态调用,调用者和被调用代码

在同一程序内,经过连接编辑后作为目标代码的一部份。当过程(函数)升级或修

改时,必须重新编译连结。而系统调用是一种动态调用,系统调用的处理代码在调

用程序之外(在操作系统中),这样一来,系统调用处理代码升级或修改时,与调

用程序无关。而且,调用程序的长度也大大缩短,减少了调用程序占用的存储空间。

c)提供方式不同:过程(函数)往往由编译系统提供,不同编译系统提供的过程(函

数)可以不同;系统调用由操作系统提供,一旦操作系统设计好,系统调用的功能、

种类与数量便固定不变了。

d)调用的实现不同:程序使用一般机器指令(跳转指令)来调用过程(函数),是在

用户态运行的;程序执行系统调用,是通过中断机构来实现,需要从用户态转变到

核心态,在管理状态执行,因此,安全性好。

34.C/S架构设计?

简单的理解:C表示标准的客户端,及浏览器。即服务器传递各客户端的数据是具有标准格式的——HTTP.

因此,C/S架构及要实现HTTP协议的解析与封装。

比如:浏览器发送到服务器请求:GET / HTTP/1.0,这就是HTTP约定的。服务器返回200 OK,也是HTTP约定的。

在涉及到网络通信时,你需要制定协议,现在使用C/S架构,那么,你不需要自己制定协议内容等,你需要的熟悉标准的HTTP协议,进行协议封装与解析。

35.sprintf的功能?

字符串格式化命令,主要功能是把格式化的数据写入某个字符串中。sprintf 是个变参函数。

buffer:char型指针,指向将要写入的字符串的缓冲区。

format:格式化字符串。

[argument]...:可选参数,可以是任何类型的数据。

返回值:字符串长度(strlen)

int sprintf( char *buffer, const char *format, * argument+ … );

//

char buf[512];

spirntf(buf, "hello world %d\n", sizeof(buf));

snprintf()与sprintfI()

gets()与fgets()

考虑缓冲区溢出。

36.进程的创建及进程间通信的机制?

创建进程fork

进程间通信机制:文件、管道、网络套接字、共享内存、mmap、消息队列、信号37.线程的创建及线程间通信机制?

线程创建:pthread_create

线程通信:进程内各个线程共享全局变量,

线程间无需特别的手段进行通信,因为线程间可以共享数据结构,也就是一个全局变量可以被两个线程同时使用。不过要注意的是线程间需要做好同步,一般用mutex。可以参考一些比较新的UNIX/Linux编程的书,都会提到Posix线程编程,比如《UNIX环境高级编程(第二版)》、《UNIX系统编程》等等。Linux用pthread_kill对线程发信号。

38.w hile(a > 0),…-,其中的a应该定义为有符号类型还是无符号类型?

无符号类型

39.怎么让父进程知道子进程结束了?

wait

waitpid

40.说说使用管道和共享内存的整个过程?

管道:

a)创建管道

b)读写

共享内存:

a)获取key

b)获取共享内存

c)映射到虚拟地址空间

d)读写访问

e)解映射

f)删除共享内存

41.进程关闭了,管道或者共享内存还存在吗,为什么?

管道——不存在

共享内存——存在

42.僵尸进程是什么?怎么形成的,哪些情况下会形成僵尸进程?

参考博客:https://www.wendangku.net/doc/8412811686.html,/Anker/p/3271773.html

基本概念

孤儿进程:一个父进程退出,而它的一个或多个子进程还在运行,那么那些子进程将成为孤儿进程。孤儿进程将被init进程(进程号为1)所收养,并由init进程对它们完成状态收集工作。

僵尸进程:一个进程使用fork创建子进程,如果子进程退出,而父进程并没有调用wait 或waitpid获取子进程的状态信息,那么子进程的进程描述符仍然保存在系统中。这种进程称之为僵死进程。

问题及危害

unix提供了一种机制可以保证只要父进程想知道子进程结束时的状态信息,就可以得到。这种机制就是: 在每个进程退出的时候,内核释放该进程所有的资源,包括打开的文件,占用的内存等。但是仍然为其保留一定的信息(包括进程号the process ID,退出状态the termination status of the process,运行时间the amount of CPU time taken by the process等)。直到父进程通过wait / waitpid来取时才释放。但这样就导致了问题,如果进程不调用wait / waitpid的话,那么保留的那段信息就不会释放,其进程号就会一直被占用,但是系统所能使用的进程号是有限的,如果大量的产生僵死进程,将因为没有可用的进程号而导致系统不能产生新的进程. 此即为僵尸进程的危害,应当避免。

孤儿进程是没有父进程的进程,孤儿进程这个重任就落到了init进程身上,init 进程就好像是一个民政局,专门负责处理孤儿进程的善后工作。每当出现一个孤儿进程的时候,内核就把孤儿进程的父进程设置为init,而init进程会循环地wait()它的已经退出的子进程。这样,当一个孤儿进程凄凉地结束了其生命周期的时候,init 进程就会代表党和政府出面处理它的一切善后工作。因此孤儿进程并不会有什么危害。

任何一个子进程(init除外)在exit()之后,并非马上就消失掉,而是留下一个称为僵尸进程(Zombie)的数据结构,等待父进程处理。这是每个子进程在结束时都要经过的阶段。如果子进程在exit()之后,父进程没有来得及处理,这时用ps命令就能看到子进程

的状态是“Z”。如果父进程能及时处理,可能用ps命令就来不及看到子进程的僵尸状态,但这并不等于子进程不经过僵尸状态。如果父进程在子进程结束之前退出,则子进程将由init接管。init将会以父进程的身份对僵尸状态的子进程进行处理。

僵尸进程危害场景:

例如有个进程,它定期的产生一个子进程,这个子进程需要做的事情很少,做完它该做的事情之后就退出了,因此这个子进程的生命周期很短,但是,父进程只管生成新的子进程,至于子进程退出之后的事情,则一概不闻不问,这样,系统运行上一段时间之后,系统中就会存在很多的僵死进程,倘若用ps命令查看的话,就会看到很多状态为Z的进程。严格地来说,僵死进程并不是问题的根源,罪魁祸首是产生出大量僵死进程的那个父进程。因此,当我们寻求如何消灭系统中大量的僵死进程时,答案就是把产生大量僵死进程的那个元凶枪毙掉(也就是通过kill发送SIGTERM或者SIGKILL信号啦)。枪毙了元凶进程之后,它产生的僵死进程就变成了孤儿进程,这些孤儿进程会被init进程接管,init进程会wait()这些孤儿进程,释放它们占用的系统进程表中的资源,这样,这些已经僵死的孤儿进程就能瞑目而去了。

代码

孤儿进程和僵尸进程测试

#include

#include

#include

#include

int main()

{

pid_t pid;

//创建一个进程

pid = fork();

//创建失败

if (pid < 0)

{

perror("fork error:");

exit(1);

}

//子进程

if (pid == 0)

{

printf("I am the child process.\n");

//输出进程ID和父进程ID

printf("pid: %d\tppid:%d\n",getpid(),getppid());

printf("I will sleep five seconds.\n");

//睡眠5s,保证父进程先退出

sleep(5);

printf("pid: %d\tppid:%d\n",getpid(),getppid());

printf("child process is exited.\n");

}

//父进程

else

{

printf("I am father process.\n");

//父进程睡眠1s,保证子进程输出进程id

sleep(1);

printf("father process is exited.\n");

}

return 0;

}

僵尸进程测试

#include

#include

#include

#include

int main()

{

pid_t pid;

pid = fork();

if (pid < 0)

{

perror("fork error:");

exit(1);

}

else if (pid == 0)

{

printf("I am child process.I am exiting.\n");

exit(0);

}

printf("I am father process.I will sleep two seconds\n");

//等待子进程先退出

sleep(2);

//输出进程信息

system("ps -o pid,ppid,state,tty,command");

printf("father process is exiting.\n");

return 0;

}

多个僵尸进程

#include

#include

#include

#include

int main()

{

pid_t pid;

//循环创建子进程

while(1)

{

pid = fork();

if (pid < 0)

{

perror("fork error:");

exit(1);

}

else if (pid == 0)

{

printf("I am a child process.\nI am exiting.\n");

//子进程退出,成为僵尸进程

exit(0);

}

else

{

//父进程休眠20s继续创建子进程

sleep(20);

Linux运维面试题

北京华宇信息技术有限公司 BEIJING THUNISOFT INFORMATION TECHNOLOGY CORPORATION LIMITE 北京华宇信息技术有限公司 应聘人员笔试题目 (对应聘系统服务工程师人员适用) 姓名: 性别: 年龄: E-Mail: 考试日期: 考试开始时间: 考试结束时间: 须知及要求: 1.本套试题对应聘运维服务部系统服务工程师适用; 2.笔试时间不得超过90分钟; 3.笔试开始前应聘者须如实填写本页中有关应聘者信息; 4.答题请注意字迹清晰,叙述简练明了,绘图力求准确; 5.笔试题共150分,84道题,分为六部分,包括: 1)系统服务工程师调查 2)理论知识部分 3)实践知识基础部分 4)实践知识扩展部分 5)运维管理和信息服务部分 6)综合素质和沟通管理部分 6.应届毕业生以1、2、3、5、6部分为主,其他部分为辅;非应届毕业生以2、3、 4、5、6部分为主,其他部分为辅; 7.请笔试者本着“知之为知之,不知为不知”的态度; 笔试者承诺: 我已经阅读并同意笔试要求,同意如实答题,并同意不将题目内容告知他人。 签名:

CORPORATION LIMITE 应聘登记表 填表要求:应聘登记表是公司了解应聘人员情况的重要途径之一,所以请应聘人员根据自己的实际情况尽可能的填写详细,填写结束后,请务必阅读声明并签字确认。谢谢您的合作! 填写说明:家庭背景情况请至少填写2位直系亲属的基本情况 填写说明:教育经历请按照时间顺序由近至远填写(最低学历填写到高中即可)

CORPORATION LIMITE 填写说明:工作经历请按照时间顺序由近至远来填写 请您在以下招聘途径中勾“√”:我是通过以下招聘途径了解此次招聘信息的:□公司主页招聘信息□现场招聘会□熟人介绍 □网上招聘(请具体描述网站名称,例如:前程无忧等__________________)声明: 本人保证以上表内所填内容的真实性,自愿承担因隐瞒事实而造成的一切后果。 签名:日期:

linux 笔试题-填空

一.填空题 1. 在Linux系统中,以(文件)方式访问设备。 2. Linux内核引导时,从文件/etc/fstab中读取要加载的文件系统。 3. Linux文件系统中每个文件用i节点来标识。 4. 全部磁盘块由四个部分组成,分别为引导块、专用块、 i节点表块和数据存储块。 5. 链接分为:硬链接和符号链接。 6. 超级块包含了i节点表和空闲块表等重要的文件系统信息。 7. 某文件的权限为:drw-r--r--,用数值形式表示该权限,则该八进制数为:644,该文件属性是目录。 8. 前台起动的进程使用 Ctrl+c 终止。 9. 静态路由设定后,若网络拓扑结构发生变化,需由系统管理员修改路由的设置。 10. 网络管理的重要任务是:控制和监控。 11. 安装Linux系统对硬盘分区时,必须有两种分区类型:文件系统分区和交换分区。 13. 编写的Shell程序运行前必须赋予该脚本文件执行权限。 14. 系统管理的任务之一是能够在分布式环境中实现对程序和数据的安全保护、备份、恢复和更新。 15. 系统交换分区是作为系统虚拟存储器的一块区域。 16. 内核分为进程管理系统、内存管理系统、i/o管理系统和文件管理系统四个子系统。 17. 内核配置是系统管理员在改变系统配置硬件时要进行的重要操作。 18. 在安装Linux系统中,使用netconfig程序对网络进行配置,该安装程序会一步步提示用户输入主机名、域名、域名服务器、IP地址、 网关地址和子网掩码等必要信息。 19. 唯一标识每一个用户的是用户id和用户名。 20 .rip协议是最为普遍的一种内部协议,一般称为动态路由选择协议。 21. 在Linux系统中所有内容都被表示为文件,组织文件的各种方法称为文件系统。 22. DHCP可以实现 IP地址分配。 23. 系统网络管理员的管理对象是服务器、用户和服务器的进程以及系统的各种资源。 24. 网络管理通常由监测、传输和管理三部分组成,其中管理部分是整个网络管理的中心。 25. 当想删除本系统用不上的设备驱动程序时必须编译内核,当内核不支持系统上的设备驱动程序时,必须对内核升级。 26 Ping命令可以测试网络中本机系统是否能到达一台远程主机,所以常常用于测试网络的。 27. vi编辑器具有两种工作模式:命令模式和输入模式。 28. 可以用ls –al命令来观察文件的权限,每个文件的权限都用10位表示,并分为四段,其中第一段占 1位,表示文件类型,第二段占3 位,表示文件所有者对该文件的权限。 29. 进程与程序的区别在于其动态性,动态的产生和终止,从产生到终止进程可以具有的基本状态为: 运行态、就绪态和等待态(阻塞态)。 30. DNS实际上是分布在internet上的主机信息的数据库,其作用是实现ip地址和主机名之间的转换。 31. Apache是实现WWW服务器功能的应用程序,即通常所说的“浏览web服务器”,在服务器端为用户提供浏览web服务的就是apache 应用程序。 32. 在Linux系统上做备份可以有两种类型:系统备份和用户备份。其中前者是指对操作系统的备份,后者是指对应用程序和用户文件的备份。 33. CD-ROM标准的文件系统类型是iso9660。 34. 当lilo.conf配置完毕后,使之生效,应运行的命令及参数是lilo。 35. 在使用ls命令时,用八进制形式显示非打印字符应使用参数-b。 36. Linux使用支持Windows 9.x/2000长文件名的文件系统的类型是vfat。 37. 设定限制用户使用磁盘空间的命令是quota。

运维面试题(含答案)

运维工程师面试题 姓名: 答题时间: 1.新安装MYSQL后怎样提升MYSQL的安全级别? A.修改mysql默认端口 B.linux下可以通过iptables来限制访问mysql端口的IP地址 C.对所有用户设置较复杂密码并严格指定对应账号的访问IP(可在mysql库 中user表中指定用户的访问可访问IP地址) D.root特权账号的处理(建议给root账号设置强密码,并指定只允许本地登录) E.开启二进制查询日志和慢查询日志 F.mysql安装目录及数据存储目录权限控制:给mysql安装目录读取权限,给mysql日志和数据所在目录读取和写入权限 G.删除无用mysql账号和删除无用的数据库(安装好的mysql默认会有个 test库,可将其删除) 2.MYSQL的主从原理,怎么配置文件? 整体上来说,复制有3个步骤: A.master将改变记录到二进制日志(binary log)中(这些记录叫做二进制日 志事件,binary log events); B.slave将master的binary log events拷贝到它的中继日志(relay log);

C.slave重做中继日志中的事件,将改变反映它自己的数据。 3.mysql主从复制的优点 <1> 如果主服务器出现问题,可以快速切换到从服务器提供的服务; <2> 可以在从服务器上执行查询操作,降低主服务器的访问压力; <3> 可以在从服务器上执行备份,以避免备份期间影响主服务器的服务。 4.Mysql复制的基本原理过程 (1)Slave上面的IO线程连接上Master,并请求从指定日志文件的指定位置(或者从最开始的日志)之后的日志内容; (2)Master接收到来自Slave的IO线程的请求后,通过负责复制的IO线程根据请求信息读取指定日志指定位置之后的日志信息,返回给Slave端的IO线程。返回信息中除了日志所包含的信息之外,还包括本次返回的信息在Master端binary log文件的名称以及在Binary log中的位置; (3)Slave的IO线程收到信息后,将接收到的日志内容依次写入到Slave端的RelayLog 文件(mysql-relay-lin.xxxxx)的最末端,并将读取到的Master端的 bin-log的文件名和位置记录到master-info文件中,以便在下一次读取的时候能够清楚的告诉master“我需要从某个bin-log的哪个位置开始往后的日志内容,请发给我” (4)Slave的SQL线程检测到Relay Log中新增加了内容后,会马上解析该Log 文件中的内容成为在Master端真实执行时候的那些可执行的查询或操作语句,并在自身执行那些查询或操作语句,这样,实际上就是在master端和Slave端执行了同样的查询或操作语句,所以两端的数据是完全一样的。

Linux期末考试试题8套(含答案)

Linux 期末考试试题(一) 一、选择题 (每小题2分,共50分) 1.在创建Linux分区时,一定要创建(D )两个分区 A. FAT/NTFS B. FAT/SWAP C. NTFS/SWAP D.SW AP/根分区 2.在Red Hat Linux 9中,系统默认的(A)用户对整个系统拥有完全的控制权。 A. root B. guest C. administrator D.supervistor. 3. 当登录Linux时,一个具有唯一进程ID号的shell将被调用,这个ID是什么( B ) A. NID B. PID C. UID D. CID 4. 下面哪个命令是用来定义shell的全局变量( D ) A. exportfs B. alias C. exports D. export 5. 哪个目录存放用户密码信息( B ) A. /boot B. /etc C. /var D. /dev 6. 默认情况下管理员创建了一个用户,就会在( B )目录下创建一个用户主目录。 A. /usr B. /home C. /root D. /etc 7. . 当使用mount进行设备或者文件系统挂载的时候,需要用到的设备名称位于( D )目录。 A. /home B. /bin C. /etc D. /dev 8. 如果要列出一个目录下的所有文件需要使用命令行( C )。 A. ls –l B. ls C. ls –a(所有) D. ls –d 9. 哪个命令可以将普通用户转换成超级用户(D ) A. super B. passwd C. tar D. su 10. 除非特别指定,cp假定要拷贝的文件在下面哪个目录下( D ) A. 用户目录 B. home目录 C. root目录 D. 当前目录 11. 在vi编辑器里,命令"dd"用来删除当前的( A ) A. 行 B. 变量 C. 字 D. 字符 12. 当运行在多用户模式下时,用Ctrl+ALT+F*可以切换多少虚拟用户终端( B ) A. 3 B. 6 C. 1 D. 12 13. Linux启动的第一个进程init启动的第一个脚本程序是( B )。 A./etc/rc.d/init.d B./etc/rc.d/rc.sysinit C./etc/rc.d/rc5.d D./etc/rc.d/rc3.d 14. 按下(A )键能终止当前运行的命令 A. Ctrl-C B. Ctrl-F C. Ctrl-B D. Ctrl-D 15. 下面哪个命令用来启动X Window ( C ) A. runx B. Startx C. startX D. xwin 16. 用来分离目录名和文件名的字符是( B ) A. dash (-) B. slash (/) C. period (.) D. asterisk(*) 17. 用"rm -i",系统会提示什么来让你确认( B ) A. 命令行的每个选项 B. 是否真的删除 C. 是否有写的权限 D. 文件的位置 18. 以下哪个命令可以终止一个用户的所有进程( D ) A. skillall B. skill C. kill D. killall 19.在Red Hat Linux 9中,一般用(D )命令来查看网络接口的状态 A. ping B. ipconfig C. winipcfg D ifconfig 20. vi中哪条命令是不保存强制退出( C )(第五章) A. :wq B. :wq! C. :q! D. :quit

上海Linux运维工程师面试题个人总结)

这下面的是一个企业发的面试题 1你常上的相关技术站有哪些? 2简述你所理解运维工程师的主要职责? 3你管理过的服务器数量级? 1台 2台 2-5台 5-10 台 10台以上 4描述一次你印象深刻的服务器运维经历。 5有一台服务器出现安全问题,你会采取什么样的方法处理?说出你的诊断处理思路。 6有多台服务器需部署相同应用文件,文件会持续更新,你用什么方式实现不同服务器间的文件同步。 7某一台服务器部署多个Web站点,其中有一个w3wp的CPU占用达到100%如何找出有问 题的Web站点? 8你眼中的沪江是怎样的?谈谈你对沪江的理解。 9是否有以下相关经验?如有请简要说明掌握情况。 a、S quid相关经验 b、N ginx、Lighttpd 等 c、Memcached d、负载均衡 e、分布式文件处理 f、Email Server 上午-10点雷傲普文化传播有限公司 1. DNS使用的端口号和协议,简单描述一下DNS正向解析和反向解析的工作原理和作用还 有应用场景? 2. 编写IPTABLES使用内网某台机器的80端口可以在公网访问,假设公网IP为10.10.1.1 , 实现192.168.1.0/32 段的NAT. 3. 举出三个以上的主流WEB服务器,并简述他们的特性和优缺点不限操作系统? Apache 源代码开放可以欲行在unix , windowns , linux 平台上,可移植性,而且模块很是丰富缺点:性能,速度上不及其他轻量级的web服务器,但是也是重量级产品,所消耗的内存,cpu也比其他的要高

Ngi nx 源代码开放发高性能的http和反向代理服务器,在高并发的情况下,ngi nx 是apache不错的替代品,他能够支持高达50000个并发连接响应,内存,cpu等系统资 apache稳定,支持动态页面源消耗也是很低的。缺点,支持模块比较少吧,相对没有不是很 强。 Tomcat对高并发跟静态页面处理还不是很强 Microsoft IIS 配置很简单,只能运行在windows。Linux上,如果要使用还购买商业 win dows server 操作系统。 4, 举出两个主流代理服务器,简述工作模式和优缺点? 5, 举出两个负载均衡的软件,并简述工作模式和优缺点? 6,IE,FF,chrome游览器最大并发请求数是多少?, 7,简单举例一下linux和windows系统今年都有哪些漏洞? 8, mysql数据库备份都有哪一些,部署一个高可用mysql应用环境,并说明他的高可用性? 9, 什么是裸设备,他的好处是什么?,mysql支持裸设备吗?10, 如果给你一个100g的INNODB类型数据库,你会用什么备份方案来做备份。 11,写一个简单的shell脚本,脚本运行时让CTRL+(无法中断的该shell脚本? 12、如何快速编译单一的内核模块? 13、如何动态增加apache和PHP模块? 14、说出linux开机流程? 15、具体说说cacti的安装过程? 16、cacti 与nagios 的区别?cacti 如何监控mysql ? 17、mysql主从复制如何实现? 18、raid 0 与raid 的区别? 19、DNS解析详细过程?从主机访问域名(三家公司都问这个问题)让写出来? 20、脚本会多少?掌握程度?sed awk区别? 人事问题(下面的都是每一个企业问的最多的问题,这些问题是我自己经历的,都是我自己的回答,仅供参考,每个人经历不一样,回答的时候一定要和写在网上的还有自己写的简历保持一致,他们好多都是把你投的简历下载下来,然后看着下载下来的简历问你问题)1. 先问问你写的工作经历,在以前公司主要做什么,是什么公司,多少人,主要负责什么, 还有你写的项目经验,项目具体怎么实施的,(一定要明白原理性的东西,把他说出来就可以) 2. 问完工作经历后,问你为什么辞职?。 我说因为以前的公司的工作接触到了linux。被linux的开源所吸引,对linux的开源产 生了兴趣,但是靠自己去学有点吃力,就辞去工作在郑州找了一家培训机构培训RHCE 3. 问为什么不在本地工作,来上海有什么规划? 4. 谈谈你对运维工程师的理解

常见linux笔试题-100道选择题与答案

Linux认证笔试基本题(答案见最后) (以下均为单选题) 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分区给网络中的其它系统使用

linux考试题库(300道)

使用shutdown -k命令并不真正使系统关机,而只是给用户提出警告 1 错误 2 正确 正确答案:2 提示:rx1:T 手工运行fsck的最好时机是在系统备份文件之后,这样在发现错误后,还可以利用备份文件进行修复 1 正确 2 错误 正确答案:1 提示:rx2:T Linux 系统引导后,内核运行init程序,这个程序在处理任何其他规定的运行等级之后,在运行/etc/rc.d/rc.sysinit脚本 1 正确 2 错误 正确答案:2 提示:rx3:F 进程可以处于僵死状态,而在当前进程表中仍有记录 1 正确 2 错误 正确答案:1 提示:rx4:T dump必须借助于其他工具才能支持备份级别 1 错误 2 正确 正确答案:2 提示:rx5:T 为了应用smbclient读取远程机power上的pub共享目录,共享目录的正确写法是//power:share 1 错误 2 正确 正确答案:1 提示:rx6:F syslogd守护进程,不仅可以将日志记录在本地机message文件中,还可以将日志记录通过网络发送出去 1 正确 2 错误 正确答案:1 提示:rx7:T Samba服务器可以设置成在网络下对外宣称自己是一个Windows NT服务器或Win95客户机 1 正确 2 错误 正确答案:1 提示:rx8:T

在fatab文件中,使用;标记注释行 1 正确 2 错误 正确答案:2 提示:rx9:F 为匹配所有的空行,可以使用如下正则表达式^$ 1 正确 2 错误 正确答案:1 提示:rx10:T 如果系统使用了sendmail,那么sendmail.log文件以二进制形式保存了sendmail的统计信息 1 错误 2 正确 正确答案:1 提示:rx11:F a.out是现代Linux的可执行文件、目标文件和系统函数库的标准格式 1 正确 2 错误 正确答案:1 提示:rx12:T Linux系统以文本文件的形式保存大部分系统日志,如lastlog 1 正确 2 错误 正确答案:2 提示:rx13:F 安装过程中,如果是使用fdisk分区工具,我们必须十分小心,因为对分区表所作的修改在每一步完成后,都会立刻反映到分区表上,除非在第二次打开fdisk后,选择删除新分区,再重新分区 1 错误 2 正确 正确答案:1 提示:rx14:F 目录树结构与文件系统是两个不同的概念,文件系统是磁盘或分区上文件的物理存放方法,而目录树结构是操作系统中管理文件的逻辑方式 1 错误 2 正确 正确答案:2 提示:rx15:T dump不同于其它备份工具的地方在于:它直接读取文件系统,而不是通过文件系统读取文件来进行备份,这样可在不影响文件时间戳的情况下,备份文件。 1 错误 2 正确 正确答案:2 提示:rx16:T

2013年最新Linux系统运维面试题(附答案)

一、有文件file1 1、查询file1 里面空行的所在行号 awk ?{if($0~/^$/)print NR}‘ file or grep -n ^$ file |awk ?BEGIN{FS=‖:‖}{print $1}‘ 2、查询file1 以abc 结尾的行 grep abc$ file1 3、打印出file1 文件第1 到第3 行 sed -n ‘1,3p‘ file1 head -3 file1 二、如何将本地80 端口的请求转发到8080 端口,当前主机IP 为192.168.2.1 Iptables -A PREROUTING -d 192.168.2.1 -p tcp -m tcp –dport 80 -j DNAT –to-destination 192.168.2.1:8080 三、crontab 在11 月份内,每天的早上6 点到12 点中,每隔2 小时执行一次/usr/bin/httpd.sh 怎么实现 0 6-12/2 * 11 * /usr/bin/httpd.sh 四、编写个shell 脚本将/usr/local/test 目录下大于100K 的文件转移到/tmp 目录下 #!/bin/bash for file in `ls /root` do if [ -f $file ]; then if [ `ls -l $file|awk '{print $5}'` -gt 10000 ]; then mv $file /tmp/ fi fi done 五、简述raid0 raid1 raid5 三种工作模式的工作原理及特点。 RAID 0:连续以位或字节为单位分割数据,并行读/写于多个磁盘上,因此具有很高的数据传输率,但它没有数据冗余,因此并不能算是真正的RAID 结构。RAID 0 只是单纯地提高 性能,并没有为数据的可靠性提供保证,而且其中的一个磁盘失效将影响到所有数据。因此,RAID 0 不能应用于数据安全性要求高的场合。 RAID 1:它是通过磁盘数据镜像实现数据冗余,在成对的独立磁盘上产生互为备份的数据。当原始数据繁忙时,可直接从镜像拷贝中读取数据,因此RAID 1 可以提高读取性能。RAID 1 是磁盘阵列中单位成本最高的,但提供了很高的数据安全性和可用性。当一个磁盘失效时, 系统可以自动切换到镜像磁盘上读写,而不需要重组失效的数据。简单来说就是:镜象结构,类似于备份模式,一个数据被复制到两块硬盘上。 RAID10:高可靠性与高效磁盘结构 一个带区结构加一个镜象结构,因为两种结构各有优缺点,因此可以相互补充。 主要用于容量不大,但要求速度和差错控制的数据库中。 RAID5:分布式奇偶校验的独立磁盘结构,它的奇偶校验码存在于所有磁盘上,任何一个硬盘损坏,都可以根据其它硬盘上的校验位来重建损坏的数据。支持一块盘掉线后仍然正常

Linux期末考试试题8套(含答案)

Linux 期末考试试题 (一 ) 一、选择题 ( 每小题 2 分,共 50分) D )两个分区 C. NTFS/SWAP D.SWAP/ 根分区 A )用户对整个系统拥有完全的控制权。 C. administrator D.supervistor. ID 号的 shell 将被调用,这个 ID 是什么 ( B ) D. CID 4. 下面哪个命令是用来定义 shell 的全局变量 ( D ) A. exportfs B. alias C. exports D. export 5. 哪个目录存放用户密码信息 ( B ) A. /boot B. /etc C. /var D. /dev 6. 默认情况下管理员创建了一个用户,就会在 ( B )目录下创建一个用户主目录。 A. /usr B. /home C. /root D. /etc 7. . 当使用 mount 进行设备或者文件系统挂载的时候,需要用到的设备名称位于 ( D )目录。 A. /home B. /bin C. /etc D. /dev 8. 如果要列出一个目录下的所有文件需要使用命令行 ( C )。 A. Is - B. Is C. Is -a(所有) D. Is - 9. 哪个命令可以将普通用户转换成超级用户 (D ) A. super B. passwd C. tar D. su 10. 除非特别指定, cp 假定要拷贝的文件在下面哪个目录下 ( D ) A. 用户目录 B. home 目录 C. root 目录 D. 当前目录 11. 在vi 编辑器里,命令"dd"用来删除当前的(A ) A. 行 B. 变量 C. 字 D. 字符 12. 当运行在多用户模式下时,用 CtrI+ALT+F* 可以切换多少虚拟用户终端 ( B ) A. 3 B. 6 C. 1 D. 12 13. Linux 启动的第一个进程 init 启动的第一个脚本程序是 ( B )。 A./etc/rc.d/init.d B./etc/rc.d/rc.sysinit C./etc/rc.d/rc5.d D./etc/rc.d/rc3.d 14 . 按下 (A )键能终止当前运行的命令 A. CtrI-C B. CtrI-F C. CtrI-B D. CtrI-D 15 . 下面哪个命令用来启动 X Window ( C ) A. runx B. Startx C. startX D. xwin 16. 用来分离目录名和文件名的字符是 ( B ) A. dash (-) B. sIash (/) C. period (.) 17. 用 "rm -i", 系统会提示什么来让你确认 ( A. 命令行的每个选项 B. 是否真的删除 A. skiIIaII B. skiII C. kiII D. kiIIaII 19. 在 Red Hat Linux 9 中,一般用( D A. ping B. ipconfig C. winipcfg D ifconfig 20. vi 中哪条命令是不保存强制退出 ( C )(第五章) A. :wq B. :wq! C. :q! D. :quit 21. 局域网的网络设备通常有( ABCDE ) A.交换机 B.路由器 C.网桥 D.双绞线 E. HUB 1.在创建 Linux 分区时,一定要创建( A. FAT/NTFS B. FAT/SWAP 2.在 Red Hat Linux 9 中,系统默认的( A. root B. guest 3. 当登录 Linux 时,一个具有唯一进程 A. NID B. PID C. UID D. asterisk (*) B ) C. 是否有写的权限 ( D ) D. 文件的位置 18. 以下哪个命令可以终止一个用户的所有进程 )命令来查看网络接口的状态

linux运维面试题中级

linux面试题 1.解释top命令和vmstat命令 top 动态 vmstat静态 2.请写出iptables语句iptables [-t 表名] -命令 -匹配 -j 动作/目标 1)本地80端口的请求转发到8080端口,当前主机IP为192.168.2.1 iptables -t nat -A PREROUTING -d 192.168.2.1 -p tcp -dport 80 -j DNAT -to 192.168.2.1:8080 2)允许本机对外连接80端口(本机能连外界服务器为80) iptables -A OUTPUT -p tcp –dport 80 -j ACCEPT 3)开放本机的3306端口 iptables -A INPUT -p tcp --dport 3306 -j ACCEPT 4)禁止外界ping本服务器 iptables -A INPUT -p icmp -j DROP 5)防止SYN攻击(轻量级预防) iptables -A FORWARD -p tcp --syn -m limit --limit 1/s -j ACCEPT iptables -A FORWARD -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/s -j ACCEPT 3.mysql高可用方案有哪些?mysql备份方案有哪些?有什么优缺点? 4.写出apache 2.x的两种工作模式,以及各自的工作原理。如何查看apache当前支持的模块。并查看在哪种模式下工作。prefork和worker #apachectl -l 5.linux基础问题 1)linux怎么查看用户登陆日志 who /var/log/wtmp cat /var/log/secure

Linux考试题

Linux基础知识自测题 单选题(共计40题) 1. 查看命令cd的绝对路径,结果如下: # which cd /usr/bin/which: no cd in (/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin) 可以使用下列哪条命令获得cd的帮助信息? A. which cd B. help cd C. man cd D. info cd 2. 请判断关于Linux系统安装下列的说法哪一个是错误的? A. 安装时至少需要划分两个分区:根分区和swap分区 B. 在安装设置中可以添加除root以外的其他普通用户 C. Linux安装时可以选择不安装图形环境 D. 安装中设置了使用DHCP自动获取IP地址以后将无法再手工更改IP 3. 关于软链接文件的说法以下哪一个是错误的? A. 软链接文件和原文件的i节点一致 B. 软链接文件默认权限皆为777 C. 软链接可以链接目录 D. 软链接的文件类型使用字母l表示 4. 以下说法中错误的是? A. 默认创建的二进制文件不具有可执行权限 B. Vim的配置文件名为.vimrc C. 一个i节点只能对应一个文件 D. Linux中设备是以文件形式进行管理 5. 下列哪条命令可以取消vim/vi中上一步的错误操作? A. r B. s C. u D. x 6. 如何查找命令quota的路径? A. whatis quota B. find quota C. where quota D. which quota

运维工程师笔试题及答案

运维工程师笔试题及答案 第一部分:Linux系统知识 填空题: 1.创建目录用mkdir命令,创建文件用touch命令。 2.移动文件用mv命令,复制文件用cp命令。 3.使用history命令查看用过的命令列表。 4.查看各类环境变量用env命令。 5.终止进程用kill命令。 6.编写的Shell程序运行前赋予该脚本文件读和执行权限。 7.链接分为:硬链接和软链接/符号链接。 8.在Linux系统中,以文件方式访问设备。 9.当前用户主目录用~/表示。 10.L inux下命令可使用的通配符有“?”和“*”。 选择题: 1.某文件的组外成员的权限是只读、属主是全部权限、组内权限是可读可写、该文件权限为?(D) A.467 B.674 C.476 D.764 2.Linux配置文件一般放在什么目录?(A) A.etc

B.bin C.lib D.dev 3.什么命令常用于检测网络主机是否可达?(C) A.ssh C.ping D.exit 4.对所有用户的变量设置,应当放在哪个文件下?(B) A./etc/bashrc B./etc/profile C.~/.bash_profile D./etc/skel/.bashrc 5.什么命令解压缩tar文件?(B) A.tar-czvf filename.tgz B.tar-xzvf filename.tgz C.tar-tzvf filename.tgz D.tar-dzvf filename.tgz 第二部分:数据库 填空题: 1.数据库系统的核心是___数据库管理系统___。 2.事务四大特性分别是原子性、隔离性、一致性、持久性。 3.索引字段值不唯一,应该使用的索引类型为普通索引。

(完整版)美团Linux运维工程师面试真题答案.doc

美团对 Linux运维工程师招聘岗位的面试题与答案分析 1、 LINUX 系统软件安装和卸载的常见方法 答:有3种方式安装与卸载软件包: rpm 包卸载: rpm -e XXX.rpm (如果想忽略依赖,可加上–nodeps) yum remove xxx.rpm这种方法非常不建议使用,卸载过程会将待卸载的软件包所依赖的软件包一并卸载掉,很容 易造成系统缺少某些包而崩溃等问题 源码包卸载: cd 命令进入编译后的软件目录,即安装时的目录,执行 make uninstall 命令即可;或者直接删除安装目录 2、 Windows 和 LINUX 常用的远程连接工具有那些 答: 命令远程连接工具:图形远程连接工具:自带的远程桌面( Xshell、 SecureCRT、Putty 、 SSH Secure Shell Client等 xmanager(需安装配置服务并打开 177 端口)、VNC-Viewer(linux 需安装 vncserver)、windows linux 需安装 xrdp 和 vnc) 3、如何修改LINUX 的 IP 地址、网关和主机名: 答: A、修改 IP 地址、网关:编辑/etc/sysconfig/network -scripts/ifcfg -eth0 ,修改里面IPADDR和 GATEWAY内容,没有这两行,则添加即可,添加时确保BOOTPROTO=static,静态地址,如IPADDR=192.168.1.100GATEWAY=192.168.1.1 B、修改主机名称:编辑/etc/sysconfig/network,修改里面的HOSTNAME 内容,如设置主机名称为mysql,则:HOSTNAME=mysql即可; 4、编写脚本实现以下功能 每天早上 5 点开始做备份 要备份的是 /var/mylog里所有文件和目录可以压缩进行备份 备份可以保存到别一台器上192、168、 1、 2 FTP帐号aaa 密码bbb 要示每天的备份文件要带有当天的日期标记 答:脚本内容如下: [root@haojiu ~]#cat /root/mylogbak.sh #!/bin/bash #scripts for dirbakup and upload to ftp server. #author by haojiu #create by bakdir=mylog date=`date +%F` cd /var tar zcf ${bakdir}_${date}.tar.gz ${bakdir} sleep 1 ftp -n <<- EOF open 192.168.142.129#远程 ftp 服务器 IP user aaa bbb put mylog_*.tar.gz bye EOF

最新运维中心笔试题答案

数据库运维中心笔试题答案 一、单项选择 1、T-SQL语句是由哪一家公司设计出的:(A) A Microsoft B IBM C SUN 2、 SQL-Server 的数据库类型属于哪一类型:(A) A 关系型数据库 B 网络型数据库 C 层次型数据库 3、要启动SQL-Server 的服务器,在命令提示符下键入以下什么命令可以启动SQL-Server服务器:(B) A net send B net start mssqlerver C net help 4、输入和调试T-SQL语句的工具是:(B) A 企业管理器 B 查询分析器 C 服务器网络使用工具 D 联机丛书 5、创建数据库的关键字是: (B) A delete B Create C from D talbe 6、数据库的日志文件的扩展名是:(B) A mdf B ldf C ndf D log 7、创建表的主约束使用哪个关键字:(B) A check B primary C foreign D rull 8、datetime属于什么数据类型:(A) A 日期型 B 时间型 C 字符串型 D 整数型 9、下列数据类型中不能属于sql_variant 型的是:(C) A varchar B int C image D datetime 10、存储过程sp_bindrule的作用是什么:(A) A 绑定规则 B 查看表结构 C 绑定默认值 D 查看过程 11、insert 表示的含义:(A) A 添加 B 删除 C 查询 D 更改 12、SQL-Server 中外键约束关键字为:(C) A primary key B unique C foreign key D check 13、alter view 表示:(B) A 创建视图 B 更改视图 C 检索视图 D 删除视图

Linux操作系统考试题库完整

一、选择题 1)下列关于操作系统的叙述中,哪一条是不正确的?(C) A.操作系统管理计算机系统中的各种资源 B.操作系统为用户提供良好的界面 C.操作系统与用户程序必须交替运行 D.操作系统位于各种软件的最底层 2)Linux的发展始于()年,它是有()的一名大学生开发的。( A ) A. 1990、芬兰 B. 1991、芬兰 C. 1993、美国 D. 1991、波兰 3)内核不包括的子系统是( D )。(进程管理系统\内存管理系统\I/O管理系统\ 虚 拟文件系统\进程间同性间通信子系统) A.进程管理系统 B.内存管理系统 C.I/O管理系统 D.硬件管理系 统 4)Linux 中权限最大的账户是(B)。 A. admin B. root C. guest D. super 5)在通常情况下,登录Linux 桌面环境,需要(B)。 A.任意一个帐户B.有效合法的用户帐号和密码 C.任意一个登录密码D.本机IP 地址 6)在Red Hat Enterprise Linux 5中要配置计算机的IP地址,需要打开哪个菜单( C )。 A.“应用程序”→“Internet” B.“系统”→“首选项”→“网络代理” C.“系统”→“管理”→“网络” D.“位置”→“网络服务器” 7)配置网卡时,下面哪一项一般不需要配置( D)。 A.IP地址 B.子网掩码 C.默认网关地址 D.MAC地址 8)Linux文件权限中保存了( D)信息。 A.文件所有者的权限 B.文件所有者所在组的权限 C.其他用户的权限 D.以上都包括 9)Linux文件系统的文件都按其作用分门别类地放在相关的目录中,对于外部设备文件, 一般应将其放在( C )目录中。 A./bin B./etc C./dev D./lib 10)某文件的组外成员的权限为只读;所有者有全部权限;组内的权限为读与写,则该文件 的权限为( D )。 A. 467 B. 674 C. 476 D. 764 11)文件exer1的访问权限为rw-r--r--,现要增加所有用户的执行权限和同组用户的写权 限,下列命令正确的是( A )。 A. chmod a+x g+w exer1 B. chmod 765 exer1 C. chmod o+x exer1 D. chmod g+w exer1 12)当前安装Linux的主机中位于第二个IDE接口的master接口挂接一块40GB的硬盘,其 在Linux中的设备文件名为( B)。 A./dev/had B./dev/hdb C./dev/hdc D./dev/hdd 13)已知Linux系统中的唯一一块硬盘是第一个IDE接口的master设备,该硬盘按顺序有 3个主分区和一个扩展分区,这个扩展分区又划分了3个逻辑分区,则该硬盘上的第二个逻辑分区在Linux中的设备名称是(C)。 A./dev/hda2 B. /dev/hda5 C./dev/hda6 D./dev/sda6 14)在redhat Linux系统中,下列哪个命令可以用来将分区挂载到目录:(A) A.fdisk B. mkfs C.tune2fs D.mount 15)在redhat Linux系统中,所有文件系统的挂载信息存放在哪个配置文件中:( B ) A./etc/passwd B. /etc/fstab C./etc/modules.conf

Linux笔试题及答案

一。填空题: 1. 在Linux系统中,以文件方式访问设备。 2. Linux内核引导时,从文件/etc/fstab中读取要加载的文件系统。 3. Linux文件系统中每个文件用i节点来标识。 4. 全部磁盘块由四个部分组成,分别为引导块、专用块、i节点表块和数据存储块。 5. 链接分为:硬链接和符号链接。 6. 超级块包含了i节点表和空闲块表等重要的文件系统信息。 7. 某文件的权限为:d-rw-_r--_r--,用数值形式表示该权限,则该八进制数为:644,该文件属性是目录。 8. 前台起动的进程使用Ctrl+c终止。 9. 静态路由设定后,若网络拓扑结构发生变化,需由系统管理员修改路由的设置。 10. 网络管理的重要任务是:控制和监控。 11. 安装Linux系统对硬盘分区时,必须有两种分区类型:文件系统分区和交换分区。 13. 编写的Shell程序运行前必须赋予该脚本文件执行权限。 14. 系统管理的任务之一是能够在分布式环境中实现对程序和数据的安全保护、备份、恢复和更新。 15. 系统交换分区是作为系统虚拟存储器的一块区域。 16. 内核分为进程管理系统、内存管理系统、I/O管理系统和文件管理系统等四个子系统。 17. 内核配置是系统管理员在改变系统配置硬件时要进行的重要操作。 18. 在安装Linux系统中,使用netconfig程序对网络进行配置,该安装程序会一步步提示用户输入主机名、域名、域名服务器、IP地址、网关地址和子网掩码等必要信息。 19. 唯一标识每一个用户的是用户ID和用户名。 20 . RIP 协议是最为普遍的一种内部协议,一般称为动态路由信息协议。 21. 在Linux系统中所有内容都被表示为文件,组织文件的各种方法称为文件系统。 22. DHCP可以实现动态IP 地址分配。 23. 系统网络管理员的管理对象是服务器、用户和服务器的进程以及系统的各种资源。 24. 网络管理通常由监测、传输和管理三部分组成,其中管理部分是整个网络管理的中心。 25. 当想删除本系统用不上的设备驱动程序时必须编译内核,当内核不支持系统上的设备驱动程序时,必须对内核升级。 26 Ping命令可以测试网络中本机系统是否能到达一台远程主机,所以常常用于测试网络的连通性。 27. vi编辑器具有两种工作模式:命令模式和输入模式。 28. 可以用ls –al命令来观察文件的权限,每个文件的权限都用10位表示,并分为四段,其中第一段占 1 位,表示文件类型,第二段占3位,表示文件所有者对该文件的权限。 29. 进程与程序的区别在于其动态性,动态的产生和终止,从产生到终止进程可以具有的基本状态为:运行态、就绪态和等待态(阻塞态)。 30. DNS实际上是分布在internet上的主机信息的数据库,其作用是实现IP地址和主机名之间的转换。 31. Apache是实现WWW服务器功能的应用程序,即通常所说的―浏览web服务器‖,在服务器端为用户提供浏览web服务的就是apache应用程序。 32. 在Linux系统上做备份可以有两种类型:系统备份和用户备份。其中前者是指对操作系统的备份,后者是指对应用程序和用户文件的备份。 33. CD-ROM标准的文件系统类型是iso9660。 34. 当lilo.conf配置完毕后,使之生效,应运行的命令及参数是lilo。 35. 在使用ls命令时,用八进制形式显示非打印字符应使用参数-b。 36. Linux使用支持Windows 9.x/2000长文件名的文件系统的类型是vfat。 37. 设定限制用户使用磁盘空间的命令是quota。 38 在Linux系统中,用来存放系统所需要的配置文件和子目录的目录是/etc。 39. 硬连接只能建立对文件链接。符号链接可以跨不同文件系统创建。 40. 套接字文件的属性位是s。 41. 结束后台进程的命令是kill。 42. 进程的运行有两种方式,即独立运行和使用父进程运行。 43. Links分为硬链接和符号链接。 44. 在超级用户下显示Linux系统中正在运行的全部进程,应使用的命令及参数是ps -aux。

相关文档
相关文档 最新文档