划分子网,判断两个IP是否为同一网络
PID(进程ID)
普通文件,目录文件,连接文件,字符设备文件,块设备文件,命名管道文件。
mkdir
du
root
useradd,adduser
kill
无权限,可读,可写,可执行, 0,4,2,1
ls
看这里都有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 。
45. 管道文件的属性位是 p 。
46. 将前一个命令的标准输出作为后一个命令的标准输入,称之为 管道 。
47. 为脚本程序指定执行权的命令及参数是 chmod a+x filename 。
48. 进行远程登录的命令是 telnet 。
49. 欲发送10个分组报文测试与主机abc.tuu.edu.cn的连通性,应使用的命令和参数是: ping abc.tuu.edu.cn –c 10 。
50. DNS服务器的进程命名为named,当其启动时,自动装载 /etc目录下的 named.conf 文件中定义的DNS分区数据库文件。
51. Apache服务器进程配置文件是 httpd.conf 。
52.在 Linux系统中,压缩文件后生成后缀为.gz文件的命令是 gzip 。
53. 在用vi编辑文件时,将文件内容存入test.txt文件中,应在命令模式下键入 :w test.txt 。
54 可以在标准输出上显示整年日历的命令及参数是 cal -y 。
55. 在shell编程时,使用方括号表示测试条件的规则是:方括号两边必须有 空格 。
56. 检查已安装的文件系统/dev/had5是否正常,若检查有错,则自动修复,其命令及参数是 fsck –a /dev/had5 。
57. 在Windows9.x环境下共享Unix/Linux中的用户目录的一个工具是 Samba服务器 。
58. 系统管理员的职责是进行系统资源管理、系统性能管理、设备管理、安全管理和 系统性能监测 。
59 在Linux系统中,测试DNS服务器是否能够正确解析域名的的客户端命令,使用命令 nslookup 。
60. 在Linux系统下,第二个IDE通道的硬盘(从盘)被标识为 hdb 。
61. 当系统管理员需升级内核版本和改变系统硬件配置时,应 重新编译内核 。
62. 如果只是要修改系统的IP地址,应修改 /etc/rc.d/rc.inet1 配置文件。
63. 当LAN内没有条件建立DNS服务器,但又想让局域网内的用户可以使用计算机名互相访问时,应配置 /etc/hosts 文件。
64. 在vi编辑环境下,使用 Esc键 进行模式转换。
65. Slackware Linux 9.0通常使用 ext3 文件系统,系统的全部磁盘块由 四 部分组成。
66. 将/home/stud1/wang目录做归档压缩,压缩后生成wang.tar.gz文件,并将此文件保存到/home目录下,实现此任务的tar命令格式 tar zcvf /home/wang.tar.gz /home/stud1/wang 。
67. 管道就是将前一个命令的 标准输出 作为后一个命令的 标准输入 。
68. 在使用手工的方法配置网络时,可通过修改 /etc/HOSTNAME 文件来改变主机名,若要配置该计算机的域名解析客户端,需配置 /etc/resolv.conf 文件。
69. 启动进程有手动启动和调度启动两种方法,其中调度启动常用的命令为 at 、 batch 和 crontab 。
70. test.bns.com.cn的域名是 bns.com.cn ,如果要配置一域名服务器,应在 named.conf 文件中定义DNS数据库的工作目录。
71. Sendmail邮件系统使用的两个主要协议是: SMTP 和 POP ,前者用来发送邮件,后者用来接收邮件。
72. DHCP是动态主机配置协议的简称,其作用是:为网络中的主机分配IP地址 。
73. 目前代理服务器使用的软件包有很多种,教材中使用的是 squid 。
74. rm命令可删除文件或目录,其主要差别就是是否使用递归开关 -r或-R 。
75. mv 命令可以移动文件和目录,还可以为文件和目录重新命名。
76. 路由选择协议(RIP)的跳数表示到达目的地之前必须通过的 网关 数,RIP接受的最长距离是 15跳 。
77. ping命令用于测试网络的连通性,ping命令通过 ICMP 协议(internet控制信息协议)来实现。
78. nfs 协议用于实现Unix(/linux)主机之间的文件系统共享。
79. 在Linux *** 作系统中,设备都是通过特殊的 文件 来访问。
80. shell不仅是 用户命令的解释器 ,它同时也是一种功能强大的编程语言。 bash是Linux的缺省shell。
81. 用 >>符号将输出重定向内容附加在原文的后面。
82. 增加一个用户的命令是:adduser 或useradd 。
83 进行字符串查找,使用grep命令。
84. 使用 * 每次匹配若干个字符。
85. /sbin 目录用来存放系统管理员使用的管理程序。
1. 用grep命令显示在文件a中所有包含每个字符串至少有5个连续小写字符的字符串的行。cat a | grep -E "[a-z]{5,}"
2. $ find / -name "test.c" -type f -mtime +3 -user greek -exec rm {} \的含义。
找出并且删除根目录及其子目录下 所有文件名为test.c的普通的文本文件 ,且该文件的最后修改时间以当前时间为参照大于3天时间
3. 在一个程序崩溃时,它一般会在指定目录下生成一个core文件。如果没生成core文件,可能是什么原因?怎么解决?
答:用“ulimit -c”命令查看当前系统设置的core文件的大小门限值
一般情况是core文件的大小超过了这个值
执行 “ulimit -c unlimited”命令后, *** 作系统不在限制core文件大小,或者把unlimited 替换成一个适当的值。
4. 执行命令 ls –l 时,某行显示如下:
-rw-r--r-- 1 chris chris 207 jul 20 11:58 mydata
(1)用户chris对该文件具有什么权限?
答:chris对mydata文件具有读写的权限
(2)如何使任何用户都可以读写执行该文件?
答:chmod 777 mydata
5. 大学校门处要求来客登记,只有一张登记表,登记表同时只能由一个人使用,用P、V原语描述一个校外人员进入大学的过程。
三、程序填空题(每小题10分,共20分)1.阅读下面程序,请将其补充完整。
#define SHMDATASIZE 1000//共享内存大小,以字节为单位
void server(void)
{
union semun sunion
int semid, shmid
void *shmdata
char *buffer
semid=semget(_________________)//创建两个信号量
sunion.val=1
semctl(____________________)//设置信号量编号为0的值
sunion.val=0semctl(____________________)//设置信号量编号为1的值
shmid=shmget(____________________)
shmdata=shmat(___________________)
*(int *)shmdata=semid
buffer=shmdata+sizeof(int)
printf("Server is running with SHM id ** %d**\n", shmid)}
2.阅读下面程序,请将其补充完整。
#define BUFFERSIZE 1024
void locksem(int semid, int semnum)
{
struct sembuf sb
sb.sem_num=semnum
sb.sem_op=________//P *** 作
sb.sem_flg=SEM_UNDO
semop(_______________________)
}
void unlocksem(int semid, int semnum)
{
struct sembuf sb
sb.sem_num=semnum
sb.sem_op=________//V *** 作
sb.sem_flg=SEM_UNDO
semop(______________________)
}
void clientwrite(int semid, char *buffer){
locksem(semid, 0)
printf("Enter Message: ")
fgets(_______________)//从键盘输入一个字符串
unlocksem(semid, 1)
}
四、阅读程序题(共3小题,每小题10分,共30分)
1. 运行下面程序,最多运行多少个进程?画出进程家族树。
#include "stdio.h"
#include "sys/types.h"
#include "unistd.h"
int main()
{
pid_t pid1
pid_t pid2
pid1 = fork()
pid2 = fork()
}
答最多有4个进程
首先第一次调用fork 主进程会产生一个pid1的子进程
然后pid1和主进程会分别调用一次pid2 = fork()分别再产生一个子进程因此一共最多4个进程
2. 下面给出了一个SHELL程序,试对其行后有#(n)形式的语句进行解释,并说明程序完成的功能。
#!/bin/bash #(1)定义该shell脚本由哪中类型的shell解释器解析
dir=$1#(2)将shell程序的第一个命令行参数付给变量dir
if [ -d $dir ]#(3)判断dir的值是否是一个目录
then cd $dir #(4)如果dir是目录则进入该目录
for file in *
do
if [-f $file ]#(5)判断file是否为一个文件
then
cat $file #(6)打开文件,将文件内容输出到标准输出流中
echo “end of file $file”
fi
done
else
echo “bad directory name $dir”
fi
3. 阅读Makefile文件,回答以下问题:
(1) 此Makefile文件的主要功能是什么?
编译f1.c f2.c f3.c三个文件,最终生成动态链接库libmys.so
(2) 此Makefile文件包含多少个规则?它们分别是什么?
包含4个规则
第一个 “TGT = $(patsubst %.c, %.o, $(SRC))”
将$(SRC)目录下的所有以.c为后缀的文件替换成.o结尾,且存入TGT变量中
第二个 “%.o : %.c
cc -c $<”
用cc命令依次将三个源文件编译成目标文件
第三个
libmys.so : $(TGT)
cc -shared -o $@ $(TGT)
用上一步生成的3个中间文件生成动态链接库libmys.so
第四个
clean:
rm -f $(TGT)
执行 make clean 后 会删除所有的中间文件即.o文件
(3) 使用此Makefile文件可以生成目标文件f2.o吗?为什么?
答:可以,因为该makefile的逻辑是先生成所有的.o文件,然后再生成动态链接库。
all : libmys.so
SRC = f1.c f2.c f3.c
TGT = $(patsubst %.c, %.o, $(SRC))
%.o : %.c
cc -c $<
libmys.so : $(TGT)
cc -shared -o $@ $(TGT)
clean:
rm -f $(TGT)
编程题没做,楼主一、见谅,有时间做了补充下答案
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)