首页 > 代码库 > linux复习

linux复习

  linux的特点 
          - 免费的/开源 
          - 支持多线程/多用户 
          - 安全性好 
          - 对内存和文件管理优越 

      关机命令 
      shutdown -h now(立即进行关机)      shutdown -r now (现在重新启动计算机)      reboot (现在重新启动计算机) 

      进入桌面 
      startx 

      用户登录 
      登录时尽量少用root账户登录,因为它是系统管理员,最大的权限,难免操作失误。可以利用普通用户登录,登录后再用“su -”命令来切换成系统管理员身份 

      用户注销 
      在提示符下输入logout即可 

      vi编辑器是linux下最有名的编辑器,也是我们学习linux必须掌握的工具,在linux下也可使用vi进行程序的开发,如java程序,c程序 。输入i,进入到插入模式;输入Esc键,进入命令模式 ;输入冒号:wq 表示退出保存,:q!表示退出不保存


      linux的文件系统是采用层级式的树状目录结构,在此结构中的最上层是根目录“/”,然后在此目录下再创建其他的目录,深刻理解linux文件目录是非常重要的 

- / 
- root,存放root用户的相关文件 
- home,存放普通用户的相关文件 
- bin,存放常用命令的目录,如vi,su 
- sbin,要具有一定权限才可以使用命令 
- mnt,默认挂载光驱和软驱的目录 
- etc,存放配置的相关文件 
- var,存放经常变化的文件,如网络连接的sock文件 
- boot,存放引导系统启动的相关文件 
- usr,安装一个软件的默认目录,相当于windows下的program files 

      常用命令介绍 
      pwd,显示当前在哪个路径下 

      linux的用户管理 

      useradd 用户名,添加用户 
      【案例】useradd xiaoming

      passwd 用户名,为新用户设密码 
      【案例】passwd xiaoming,修改小明的密码 

      userdel 用户名,删除用户 
      【案例】userdel xiaoming,删除用户但保存用户主目录 
      【案例】userdel ‐ xiaoming,删除用户以及用户主目录 

      logout,当前用户推出 
      who am i,当前用户是谁 

      cd,改变目录 
      ls,列出文件和目录 
      ls ‐a,显示目录下的所有文件,包括隐藏文件 
      ls ‐l,显示长列表格式 
      mkdir,建立目录 
      rmdir,删除空目录 
      touch,建立空文件 

      cp,复制命令 
      【案例】cp ‐r dir1 dir2,递归复制命令(复制子目录信息) 

      mv,移动文件和改文件名 
      rm,删除文件和目录 
      rm ‐rf *,删除所有内容,包含目录和文件,r表示递归,f表示强制 
      ln,建立符号连接,类似于建立某个文件的快捷方式 

      ln ‐s 源目标 
      【案例】ln ‐s /etc/inittab inittab,inittab指向实际文件/etc/inittab inittab 

      more,显示文件内容带分页,ctrl + page up上翻,长空格下翻 
      less,显示文件内容带分页 

      grep,在文本中查询内容 
      【案例】假设存在某个文件test.java中含有hanyang关键字,此时可以使用grep名命令来查找,grep n “hanyang” test.java,n表示在第n行出现 

      |,管道命令,在linux和unix系统,把上一个命令的结果交给|后面的命令处理 
      【案例】ls ‐l /etc/ | more 

      - man [command],帮助,类似于dos中的help 
      

- find,搜索文件及目录。在linux中,因为文件系统是以级别式的结构来组成的,所以要在整个系统中找到特定的文件和目录并不是件容易的事。而“find”命令可以解决上述问题 

在特定的目录下搜索并显示指定名称的文件和目录 
【案例】find / -name man:意思是说从根目录开始搜索名称为man的文件或目录 
- 搜索一段时间内被存取/变更的文件或目录 
【案例】find /home -amin -10:十分钟内存取的文件或目录 
【案例】find /home -atime -10:十小时内存取的文件或目录 
【案例】find /home -cmin -10:十分钟内更改过的文件或目录 
【案例】find /home -ctime +10:十小时前更改过的文件或目录 


搜索指定大小的文件 
【案例】find /home -size +10k:意思是说查找/home目录下大小为10k的文件 


重定向命令 
- ls -l > a.txt,列表的内容写入文件a.txt中(覆盖写) 
- ls -al >> aa.txt,列表的内容追加到文件aa.txt的末尾 
- 从文件中输入信息:database_program < database_data 
- en,查看环境变量 


压缩和解压 
- 以zip和unzip处理.zip文件 
- zip命令的基本使用方法 
- zip file.zip *:zip后接压缩后的文件名,在它的后面输入要压缩的文
件即可 
- 压缩后,自动删除原文件 
【案例】zip m file.zip to.txt:把to.txt文件压缩成file.zip文件,to.txt会自动删除的 
- 将子目录一起压缩 
【案例】zip ‐r file.zip *:将当前目录下的子目录一起压缩 
- 忽略子目录的内容 
【案例】zip ‐j file.zip * 
- 将已压缩的或没有必要压缩的文件去掉 
【案例】zip ‐n .mpg: .jpg: .gif:第一种文件中间要用“:”分开 
- 压缩某一日之后的文件 
【案例】zip ‐t 102002 file.zip:将当前目录下在2002年10月20日之后文件压缩 
- 不压缩链接文件的原文件 
【案例】zip ‐y file.zip * 
- 压缩率问题,-1~-9,其中-9的压缩率最高 
【案例】zip -9 file.zip * 
- 将不需要压缩的文件排除在外 
【案例】zip file.zip * -x file2.txt:在压缩时,将当前目录内的file2.txt文件排除在外 
- 以unzip命令进行.zip文件的解压缩 
- 直接解压缩文件 
【案例】unzip file.zip 
- 排除不需要解压缩的文件 
【案例】unzip file.zip ‐x file2:除了file2文件外,其他的文件都解压缩 
- 查看压缩包的内容 
【案例】unzip ‐Z file.zip:查看file.zip压缩包的内容,也可以使用“-l” “-v”来查看压缩包的内容 
- 以gzip和gunzip处理.gz文件 



      在linux中的每个用户必须属于一个组,不能独立于组外。在linux中每个文件有所有者、所在组、其它组的概念 。
1)所有者:一般为文件的创建者,谁创建了该文件,就天然的成为该文件的所有者。用ls ‐ahl命令可以看到文件的所有者。也可以使用chown 用户名 文件名来修改文件的所有者。
2)文件所在组:当某个用户创建了一个文件后,这个文件的所在组就是该用户所在的组,用ls ‐ahl命令可以看到文件的所有组,也可以使用chgrp 组名 文件名来修改文件所在的组。
3)其它组:除开文件的所有者和所在组的用户外,系统的其它用户都是文件的其它组。


文件权限 
      ls -l中显示的内容如下: 
      -rwxrw-r‐-1 root root 1213 Feb 2 09:39 abc 

- 10个字符确定不同用户能对文件干什么 
- 第一个字符代表文件(-)、目录(d),链接(l) 
- 其余字符每3个一组(rwx),读(r)、写(w)、执行(x) 
- 第一组rwx:文件所有者的权限是读、写和执行 
- 第二组rw-:与文件所有者同一组的用户的权限是读、写但不能执行 
- 第三组r--:不与文件所有者同组的其他用户的权限是读不能写和执行 
也可用数字表示为:r=4,w=2,x=1 因此rwx=4+2+1=7 

- 1 表示连接的文件数 
- root 表示用户 
- root表示用户所在的组 
- 1213 表示文件大小(字节) 
- Feb 2 09:39 表示最后修改日期 
- abc 表示文件名 

改变权限的命令 
chmod 改变文件或目录的权限 
chmod 755 abc:赋予abc权限rwxr-xr-x 
chmod u=rwx,g=rx,o=rx abc:同上u=用户权限,g=组权限,o=不同组其他用户权限 
chmod u-x,g+w abc:给abc去除用户执行的权限,增加组写的权限 
chmod a+r abc:给所有用户添加读的权限 

改变所有者(chown)和用户组(chgrp)命令 
chown xiaoming abc:改变abc的所有者为xiaoming 
chgrp root abc:改变abc所属的组为root 
chown root ./abc:改变abc这个目录的所有者是root 
chown ‐R root ./abc:改变abc这个目录及其下面所有的文件和目录的所有者是root 

改变用户所在组 
在添加用户时,可以指定将该用户添加到哪个组中,同样用root的管理权限可以改变某个
用户所在的组 
- usermod ‐g 组名 用户名 
你可以用 - usermod ‐d 目录名 用户名,改变该用户登录的初始目录 

linux分区详解 
硬盘的分区主要分为基本分区(Primary Portion)和扩展分区(Extension Portion)两种。只是针对一个硬盘来讲,基本分区和扩展分区的数目之和不能大于4个,且基本分区可以马上被使用但不能再分区。扩展分区必须再进行分区后才能使用,也就是说它必须还要进行二次分区。那么有扩展分区再分下去的是什么呢?它就是逻辑分区(Logical Portion),而且逻辑分区没有数量上限制 

对windows用户来说,有几个分区就有几个驱动器,并且每个分区都会获得一个字母标识符,然后就可以选用这个字母来指定在这个分区上的文件和目录。它们的文件结构都是独立的,非常好理解。但对这些用户初上手Redhat Linux,可就有点恼人了。因为对Redhat Linux用户来说无论有几个分区,分给哪一个目录使用,它归根结底就只有一个根目录、一个独立且唯一的文件结构。Redhat Linux中每个分区都是用来组成整个文件系统的一部分。因为它采用了一种叫“载入”的处理方法,它的整个文件系统中包含了一整套的文件和目录,并将一个分区和一个目录联系起来。这时要载入的那个分区将使它的存储空间在这个目录下获得。

几个重要命令 
挂载命令 
mount [-parameters] [设备名称] [挂载点] 
卸载命令 
umount [挂载点] 
查看磁盘使用情况 
df [-parameters] 
- df -h 
- df ‐l 
- df [目录全路径],查看某个目录是在哪个分区 

查看linux系统分区具体情况 
fdisk ‐l 

shell编程 
其实作为命令语言互动式地解释和执行用户输入的命令只是shell功能的一个方面。shell还可以用来进行程序设计。它提供了定义变量和参数的手段以及丰富的程序控制结构。使用shell编程类似于DOS中批处理文件,称为shell script,又叫shell程序或shell命令文件。

shell脚本文件: 
- 是一个文本文件 
- 命令的集合 
- 有执行的权限 
- 执行方式(./文件名) 

用export可以临时加入一个系统路径,如export PATH=$PATH:$HOME/bin:/root/test/t1,输出环境PATH,引用原来的值$PATH,$HOME表示工作主目录,:是路径分隔符 


shell通配符 
- *代表多个字母或数字 
- ?代表一个字母或数字 
【案例】ls a* ls a? ls f080[1-6].tif 


- 转义字符\ 
【案例】ls /mnt/win1/My\Documents 

- 单引号:不处理任何变量和命令 
【案例】echo ‘Welcome $NAME, the date is date ’ 

- 双引号:处理变量但不处理命令 
【案例】echo “Welcome $NAME, the date is date “ 

- 反引号:把引号中的每个单词作为一个命令,如果是变量则先求值然后作为一个命令处理 
【案例】echo “Welcome $NAME, the date is `date` “ 


查阅历史记录 
- history,查看使用过的命令的历史记录 
- history 5,此项说明会显示最近使用的5个命令 
- !5,此项说明执行历史编号为5的命令 

- !ls,此项说明执行最后一次以“ls”开头的命令 


在对linux基本知识的归纳总结之后,这里是一份linux的测试题。希望能帮助大家复习和熟悉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分区给网络中的其它系统使用

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

31.使用ln命令将生成了一个指向文件old的符号链接new,如果你将文件old删除,是否还能够访问文件中的数据?
A. 不可能再访问
B. 仍然可以访问
C. 能否访问取决于文件的所有者
D. 能否访问取决于文件的权限

32.xt2fs文件系统中,缺省的为root用户保留多大的空间?
A. 3%
B. 5%
C. 10%
D. 15%

33.哪个命令用来显示系统中各个分区中inode的使用情况?
A. df -i
B. df -H
C. free -b
D. du -a -c /
 

34.多数Linux发行版本中,图形方式的运行级定义为?
A. 1
B. 2
C. 3
D. 5

35.在系统文档中找到关于print这个单词的所有说明?
A. man print
B. which print
C. locate print
D. apropos print

36.man 5 passwd 含义是?
A. 显示 passwd 命令的使用方法
B. 显示 passwd 文件的结构
C. 显示 passwd 命令的说明的前五行
D. 显示关于passwd的前五处说明文档。

37.如何在文件中查找显示所有以"*"打头的行?
A. find \* file
B. wc -l * < file
C. grep -n * file
D. grep ‘^\*’ file

38.在ps命令中什么参数是用来显示所有用户的进程的?
A. a
B. b
C. u
D. x

39.显示二进制文件的命令是?
A. od
B. vil
C. view
D. binview

40.如何显示Linux系统中注册的用户数(包含系统用户)?
A. account -l
B. nl /etc/passwd |head
C. wc --users /etc/passwd
D. wc --lines /etc/passwd

41.在一行结束位置加上什么符号,表示未结束,下一行继续?
A. /
B. \
C. ;
D. |

42.命令 kill 9 的含义是:
A. kills the process whose PID is 9.
B. kills all processes belonging to UID 9.
C. sends SIGKILL to the process whose PID is 9.
D. sends SIGTERM to the process whose PID IS 9.

43.如何删除一个非空子目录/tmp?
A. del /tmp/*
B. rm -rf /tmp
C. rm -Ra /tmp/*
D. rm -rf /tmp/*

44.使用什么命令可以在今天午夜运行命令 cmd1 ?
A. at midnight cmd1
B. cron -at "00:00" cmd1
C. batch -t "00:00" < cmd1
D. echo "cmd1" | at midnight

45.你的系统使用增量备份策略,当需要恢复系统时,你需要按什么顺序恢复备份数据?
A. 最后一次全备份,然后从最早到最近的增量备份
B. 最后一次全备份,然后从最近到最早的增量备份
C. 最早到最近的增量备份,然后最后一次全备份
D. 最近到最早的增量备份,然后最后一次全备份

46.对所有用户的变量设置,应当放在哪个文件下?
A. /etc/bashrc
B. /etc/profile
C. ~/.bash_profile
D. /etc/skel/.bashrc

47.Linux系统中,一般把命令 ls 定义为 ls --color 的别名,以便以不同颜色来标识不同类型的文件。但是,如何能够使用原先的ls命令?
A. \ls
B. ;ls
C. ls $$
D. ls --noalias

48.在Linux系统中的脚本文件一般以什么开头?
A. $/bin/sh
B. #!/bin/sh
C. use /bin/sh
D. set shell=/bin/sh

49.下面哪种写法表示如果cmd1成功执行,则执行cmd2命令?
A. cmd1&&cmd2
B. cmd1|cmd2
C. cmd1;cmd2
D. cmd1||cmd2

50.在哪个文件中定义网卡的I/O地址?
A. cat /proc/modules
B. cat /proc/devices
C. cat /proc/ioports
D. cat /io/dma

51.Linux中,提供TCP/IP包过滤功能的软件叫什么?
A. rarp
B. route
C. iptables
D. filter

52.如何暂停一个打印队列?
A. lpr
B. lpq
C. lpc
D. lpd

53.在vi中退出不保存的命令是?
A. :q
B. :w
C. :wq
D. :q!

54.在 XFree86 3.x 中, 缺省的字体服务器为:
A. xfs
B. xfserv
C. fonts
D. xfstt

55.使用什么命令检测基本网络连接?
A. ping
B. route
C. netstat
D. Ifconfig

56.下面哪个协议使用了二个以上的端口?
A. telnet
B. FTP
C. rsh
D. HTTP

57.在PPP协议中,哪个认证协议不以明文传递密码?
A. PAM
B. PAP
C. PGP
D. CHAP

58.下面哪个文件系统应该分配最大的空间?
A. /usr
B. /lib
C. /root
D. /bin

59.如何在Debian系统中安装rpm包?
A. alien pkgname.rpm
B. dpkg --rpm pkgname.rpm
C. dpkg --alien pkgname.rpm
D. alien pkganme.rpm ; dpkg -i pkganme.deb
 

60.在安装软件时下面哪一步需要root权限?
A. make
B. make deps
C. make config
D. make install

61.什么命令用来只更新已经安装过的rpm软件包?
A. rpm -U *.rpm
B. rpm -F *.rpm
C. rpm -e *.rpm
D. rpm -q *.rpm

62.在 windows 与 Linux 双起动的系统中,如果要让 LILO 管理引导,则 LILO 应该放在:
A. MBR
B. /
C. root分区的首扇区
D. /LILO

63.ldconfig的配置文件是
A. /lib/ld.so
B. /etc/ld.so.conf
C. /etc/ld.so.cache
D. /etc/modules.conf

64.下面哪个命令可以压缩部分文件:
A. tar -dzvf filename.tgz *
B. tar -tzvf filename.tgz *
C. tar -czvf filename.tgz *
D. tar -xzvf filename.tgz *

65.网络服务的daemon是:
A. lpd
B. netd
C. httpd
D. Inetd

66.Linux与windows 的网上领居互联,需要提供什么daemon?
A. bind
B. smbd
C. nmbd
D. shard

67.对于Apache服务器,提供的子进程的缺省的用户是:
A. root
B. apached
C. httpd
D. nobody

68.sendmail中缺省的未发出信件的存放位置是:
A. /var/mail/
B. /var/spool/mail/
C. /var/spool/mqueue/
D. /var/mail/deliver/

69.apache的主配置文件是:
A. httpd.conf
B. httpd.cfg
C. access.cfg
D. apache.conf

70.关于可装载的模块,装载时的参数,如I/O地址等的存放位置是:
A. /etc/conf.modules
B. /etc/lilo.conf
C. /boot/System.map
D. /etc/sysconfig 

71.在 Linux 中,如何关闭邮件提示?
A. biff n 
B. mesg n 
C. notify off 
D. set notify=off 

72.在 bash shell 环境下,当一命令正在执行时,按下 control-Z 会: 
A. 中止前台任务 
B. 给当前文件加上 EOF. 
C. 将前台任务转入后台 
D. 注销当前用户 

73.定义bash环境的用户文件是:
A. bash & .bashrc
B. bashrc & .bash_conf
C. bashrc & bash_profile
D. .bashrc & .bash_profile

74.下面哪条命令用来显示一个程序所使用的库文件?
A. ldd
B. ld so
C. modprobe
D. ldconfig

75.如何查看一个RPM软件的配置文件的存放位置?
A. rpm -qc rpm1
B. rpm -Vc rpm1
C. rpm --config rpm1
D. rpm -qa --config rpm1

76.如何查看一个RPM软件的修改记录?
A. rpm -Vc postfix
B. rpm -qpil postfix
C. rpm --changelog postfix
D. rpm -q --changelog postfix

77.通过Makefile来安装已编译过的代码的命令是:
A. make 
B. install
C. make depend
D. make install

78.什么命令解压缩tar文件?
A. tar -czvf filename.tgz
B. tar -xzvf filename.tgz
C. tar -tzvf filename.tgz
D. tar -dzvf filename.tgz

79.在 XF86Config 配置文件中,哪个段用来设置字体文件?
A. The Fonts section.
B. The Files section.
C. The xfsCodes section.
D. The Graphics section.

80.8 bit color 指的是:
A. 64K colors
B. 16K colors
C. 256 colors
D. 16M colors

81.下面哪个文件用来设置 X window 的显示分辨率?
A. xinit
B. xinitrc
C. XF86Setup
D. XF86Config

82.哪个变量用来指定一个远程X应用程序将输出放到哪个X server上?
A. DISPLAY
B. TERM
C. ECHO
D. OUTPUT

83.在xdm的配置目录中,哪个文件用来设置在用户通过xdm登录后自动起动的应用程序?
A. The Xsession file
B. The Xsetup_0 file
C. The Xstart_up file
D. The GiveConsole file

84.命令 netstat -a 停了很长时间没有响应,这可能是哪里的问题?
A. NFS.
B. DNS.
C. NIS.
D. routing.

85.ping使用的协议是:
A. TCP
B. UDP
C. SMB
D. ICMP

86.下面哪个命令不是用来查看网络故障的?
A. ping 
B. init
C. telnet 
D. netstat

87.拨号上网使用的协议通常是:
A. PPP
B. UUCP
C. SLIP
D. Ethernet

88.TCP/IP中,哪个协议是用来进行IP自动分配的?
A. ARP
B. NFS
C. DHCP
D. DNS

89.下面哪个文件定义了网络服务的端口?
A. /etc/netport
B. /etc/services
C. /etc/server
D. /etc/netconf

90.下面哪个功能用来生成一个文件的校验码?
A. md5
B. tar
C. crypt
D. md5sum

91.缺省的,用户邮件放在:
A. ~/mail/
B. /var/mail/
C. /var/mail/spool/
D. /var/spool/mail/

92.下面哪个文件包含了供 NFS daemon 使用的目录列表?
A. /etc/nfs
B. /etc/nfs.conf
C. /etc/exports
D. /etc/netdir

93.如何停止一台机器的telnet服务?
A. Put NONE in /etc/telnet.allow
B. Put a line ‘ALL:ALL‘ in /etc/hosts.deny
C. Comment the telnet entry in /etc/inittab
D. Comment the telnet entry in /etc/xinetd.conf

94.在哪个文件中保存了sendmail的别名?
A. /etc/aliases
B. /etc/mailaliases
C. /etc/sendmail.aliases
D. /etc/sendmail/aliases

95.smbd and nmbd daemons 的配置文件是:
A. /etc/exports
B. /etc/smb.conf
C. /etc/samba/config
D. /usr/local/samba.cfg

96.下面哪个命令用来卸载一个内核模块?
A. rmmod
B. unmod
C. delmod
D. modprobe

97.什么情况下必须运行lilo
A. once a day from cron
B. once a week from cron
C. after installing a new kernel
D. after installing a new module

98.什么命令显示所有装载的模块?
A. lsmod
B. dirmod
C. modules
D. modlist

99.下面哪个命令刷新打印机队列?
A. lpflush
B. lprm -
C. lpclear
D. lprm all

100.下面哪个命令可以查看网卡的中断?
A. cat /proc/ioports
B. cat /proc/interrupts
C. cat /proc/memoryinfo
D. which interrupts

二、多选题

1.关于硬链接的描述正确的
A 跨文件系统 

B不可以跨文件系统 

C 为链接文件创建新的i节点 

D可以做目录的连接

E链接文件的i节点同被链接文件的i节点


2.在网站发布用户wang的个人网页时,需要创建用户网页目录,假定用户网页目录设定为web(用户目录在/home目录下),如下描述正确的是
A 存放用户网页的绝对路径/wang/web 

B存放用户网页的目录~wang/
C 存放用户网页的绝对路径/home/wang/web 

D存放用户网页的绝对路径/home/web
E 在本机访问用户wang的个人网页的URL地址http://localhost/~wang/


3.在一台WWW服务器上将端口号设定为8000,默认的网页文件index.html,服务器网页的根目录/www。在本机访问服务器时,正确的用法是
A 浏览器访问该服务器的URL地址http://localhost/
B 浏览器访问该服务器的URL地址http://localhost:8000/
C 浏览器访问该服务器的用户li网页URL地址http://localhost/~li
D 浏览器访问该服务器的用户li网页URL地址http://localhost:8000/~li
E 浏览器访问该服务器的URL地址localhost:8000/


4.在shell编程中关于$2的描述正确的是
A 程序后携带了两个位置参数 

B 宏替换 

C 程序后面携带的第二个位置参数
D 携带位置参数的个数 

E 用$2引用第二个位置参数


5.某文件的权限是 -rwxr--r--,下面描述正确的是
A 文件的权限值是755 

B 文件的所有者对文件只有读权限
C 文件的权限值是 744 

D 其他用户对文件只有读权限 

E同组用户对文件只有写权限


6.关于OpenSSH的作用的描述正确的是
A 开放源代码的安全加密程序 

B OpenSSH常用于为http协议加密
C OpenSSH用于提高远程登录访问的安全性 

D 它和telnet实用同样的端口号
E OpenSSH是免费下载的应程序


7.关于NFS服务器描述正确的是
A 网络中实现Windows系统之间文件系统共享的应用软件
B 网络中实现Linux系统之间文件系统共享的应用软件
C 网络中实现Unix系统之间文件系统共享的应用软件
D 网络中实现Windows系统和Unix之间文件系统共享的应用软件
E 网络中实现Windows系统和Linux之间文件系统共享的应用软件


8.关于sed描述正确的是
A sed 是Linux系统中的流编辑器 

B sed 是UNIX系统中的流编辑器
C sed 网络文件系统的类型 

D 利用管道对标准输入/标准输入的数据进行编辑和组合
E sed是NFS的应用程序


9.关于限制磁盘限额,描述正确的是(ABD)
A 使用edquota可以监控系统所有用户使用的磁盘空间,并在接近极限时提示用户
B 用户组的磁盘限额是用户组内所有用户予设磁盘空间总和
C 单个用户的磁盘限额就是该用户所在用户组内所有磁盘限额的总合
D 在Linux系统下限制用户使用的磁盘空间可以使用edquota
E 用户组的磁盘限额就是该用户组内拥有最大磁盘限额值的用户的磁盘限额


10.关于建立系统用户的正确描述是
A 在Linux系统下建立用户使用useradd命令
B 每个系统用户分别在/etc/passwd和/etc/shadow文件中有一条记录
C 访问每个用户的工作目录使用命令“cd /用户名”
D 每个系统用户在默认状态下的工作目录在/home/用户名
E 每个系统用户在/etc/fstab文件中有一条记录

 

三、问答题

1.简述Linux文件系统通过i节点把文件的逻辑结构和物理结构转换的工作过程。

    Linux通过i节点表将文件的逻辑结构和物理结构进行转换。

    i节点是一个64字节长的表,表中包含了文件的相关信息,其中有文件的大小、文件所有者、文件的存取许可方式以及文件的类型等重要信息。在i节点表中最重要的内容是磁盘地址表。在磁盘地址表中有13个块号,文件将以块号在磁盘地址表中出现的顺序依次读取相应的块。Linux文件系统通过把i节点和文件名进行 连接,当需要读取该文件时,文件系统在当前目录表中查找该文件名对应的项,由此得到该文件相对应的i节点号,通过该i节点的磁盘地址表把分散存放的文件物 理块连接成文件的逻辑结构。


2.简述进程的启动、终止的方式以及如何进行进程的查看。

    在Linux中启动一个进程有手工启动和调度启动两种方式:

    (1)手工启动

    用户在输入端发出命令,直接启动一个进程的启动方式。可以分为:

    ①前台启动:直接在SHELL中输入命令进行启动。

    ②后台启动:启动一个目前并不紧急的进程,如打印进程。

    (2)调度启动

    系统管理员根据系统资源和进程占用资源的情况,事先进行调度安排,指定任务运行的时间和场合,到时候系统会自动完成该任务。

    经常使用的进程调度命令为:at、batch、crontab。


3. 简述DNS进行域名正向解析的过程。

    首先,客户端发出DNS请求翻译IP地址或主机名。DNS服务器在收到客户机的请求后:

    (1)检查DNS服务器的缓存,若查到请求的地址或名字,即向客户机发出应答信息;

    (2)若没有查到,则在数据库中查找,若查到请求的地址或名字,即向客户机发出应答信息;

    (3)若没有查到,则将请求发给根域DNS服务器,并依序从根域查找顶级域,由顶级查找二级域,二级域查找三级,直至找到要解析的地址或名字,即向客户机所在网络的DNS服务器发出应答信息,DNS服务器收到应答后现在缓存中存储,然后,将解析结果发给客户机。

    (4)若没有找到,则返回错误信息。


4.系统管理员的职责包括那些?管理的对象是什么?

    系统管理员的职责是进行系统资源管理、设备管理、系统性能管理、安全管理和系统性能监测。管理的对象是服务器、用户、服务器的进程及系统的各种资源等。


5.简述安装Slackware Linux系统的过程。

(1)对硬盘重新分区。 

(2)启动Linux系统(用光盘、软盘等)。

(3)建立Linux主分区和交换分区。

(4)用setup命令安装Linux系统。

(5)格式化Linux主分区和交换分区

(6)安装Linux软件包

    (7)安装完毕,建立从硬盘启动Linux系统的LILO启动程序,或者制作一张启动Linux系统的软盘。重新启动Linux系统。


6.什么是静态路由,其特点是什么?什么是动态路由,其特点是什么?

    静态路由是由系统管理员设计与构建的路由表规定的路由。适用于网关数量有限的场合,且网络拓朴结构不经常变化的网络。其缺点是不能动态地适用网络状况的变化,当网络状况变化后必须由网络管理员修改路由表。

    动态路由是由路由选择协议而动态构建的,路由协议之间通过交换各自所拥有的路由信息实时更新路由表的内容。动态路由可以自动学习网络的拓朴结构,并更新路由表。其缺点是路由广播更新信息将占据大量的网络带宽。


7.进程的查看和调度分别使用什么命令?

    进程查看的命令是ps和top。

    进程调度的命令有at,crontab,batch,kill。


8.当文件系统受到破坏时,如何检查和修复系统?

    成功修复文件系统的前提是要有两个以上的主文件系统,并保证在修复之前首先卸载将被修复的文件系统。

    使用命令fsck对受到破坏的文件系统进行修复。fsck检查文件系统分为5步,每一步检查系统不同部分的连接特性并对上一步进行验证和修改。在执行 fsck命令时,检查首先从超级块开始,然后是分配的磁盘块、路径名、目录的连接性、链接数目以及空闲块链表、i-node。


9.解释i节点在文件系统中的作用。

    在linux文件系统中,是以块为单位存储信息的,为了找到某一个文件在存储空间中存放的位置,用i节点对一个文件进行索引。I节点包含了描述一个文件所必须的全部信息。所以i节点是文件系统管理的一个数据结构。


10.什么是符号链接,什么是硬链接?符号链接与硬链接的区别是什么?

    链接分硬链接和符号链接。

    符号链接可以建立对于文件和目录的链接。符号链接可以跨文件系统,即可以跨磁盘分区。符号链接的文件类型位是l,链接文件具有新的i节点。

    硬链接不可以跨文件系统。它只能建立对文件的链接,硬链接的文件类型位是-,且硬链接文件的i节点同被链接文件的i节点相同。


11.在对linux系统分区进行格式化时需要对磁盘簇(或i节点密度)的大小进行选择,请说明选择的原则。

    磁盘簇(或i节点密度)是文件系统调度文件的基本单元。磁盘簇的大小,直接影响系统调度磁盘空间效率。当磁盘分区较大时,磁盘簇也应选得大些;当分区较小时,磁盘簇应选得小些。通常使用经验值。


12.简述网络文件系统NFS,并说明其作用。

    网络文件系统是应用层的一种应用服务,它主要应用于Linux和Linux系统、Linux和Unix系统之间的文件或目录的共享。对于用户而言可以通过 NFS方便的访问远地的文件系统,使之成为本地文件系统的一部分。采用NFS之后省去了登录的过程,方便了用户访问系统资源。


13.某/etc/fstab文件中的某行如下:
/dev/had5 /mnt/dosdata msdos defaults,usrquota 1 2请解释其含义。

(1)第一列:将被加载的文件系统名;

(2)第二列:该文件系统的安装点;

(3)第三列:文件系统的类型;

(4)第四列:设置参数;

(5)第五列:供备份程序确定上次备份距现在的天数;

(6)第六列:在系统引导时检测文件系统的顺序。


14.Apache服务器的配置文件httpd.conf中有很多内容,请解释如下配置项:(1)MaxKeepAliveRequests 200 (2)UserDir public_html(3)DefaultType text/plain (4)AddLanguare en.en(5)DocumentRoot“/usr/local/httpd/htdocs”(6)AddType application/x-httpd-php.php.php.php4

(1)允许每次连接的最大请求数目,此为200;

(2)设定用户放置网页的目录;

(3)设置服务器对于不认识的文件类型的预设格式;

(4)设置可传送语言的文件给浏览器;

(5)该目录为Apache放置网页的地方;

(6)服务器选择使用php4。


15.某Linux主机的/etc/rc.d/rc.inet1文件中有如下语句,请修正错误,并解释其内容。
/etc/rc.d/rc.inet1:
……
ROUTE add –net default gw 192.168.0.101 netmask 255.255.0.0 metric 1
ROUTE add –net 192.168.1.0 gw 192.168.0.250 netmask 255.255.0.0 metric 1

修正错误:

(1)ROUTE应改为小写:route;

(2)netmask 255.255.0.0应改为:netmask 255.255.255.0;

(3)缺省路由的子网掩码应改为:netmask 0.0.0.0;

(4)缺省路由必须在最后设定,否则其后的路由将无效。

解释内容:

(1)route:建立静态路由表的命令;

(2)(2)add:增加一条新路由;

(3)-net 192.168.1.0:到达一个目标网络的网络地址;

(4)default:建立一条缺省路由;

(5)gw 192.168.0.101:网关地址;

(6)metric 1:到达目标网络经过的路由器数(跳数)。


16.试解释apache服务器以下配置的含义:

(1)port 1080 

(2)UserDir userdoc

(3)DocumentRoot “/home/htdocs”

(4)
    Options Indexes FollowSymLinks
    AllowOverride None
    Order deny,allow
    deny from all
    allow from 192.168.1.5

(5)Server Type Standlone

Apache服务器配置行含义如下:

(1)将apache服务器的端口号设定为1080;

(2)设定用户网页目录为userdoc;

(3)设定apache服务器的网页根目录:/home/htdocs;

(4)在此apache服务器上设定一个目录/home/htdocs/inside,且此目录只允许IP地址为192.168.1.5的主机访问;

(5)定义apache服务器以独立进程的方式运行。



17.简述使用ftp进行文件传输时的两种登录方式?它们的区别是什么?常用的ftp文件传输命令是什么?

(1)ftp有两种登录方式:匿名登录和授权登录。使用匿名登录时,用户名为:anonymous,密码为:任何合法email地址;使用授权登录时,用户名为用户在远程系统中的用户帐号,密码为用户在远程系统中的用户密码。

区别:使用匿名登录只能访问ftp目录下的资源,默认配置下只能下载;而授权登录访问的权限大于匿名登录,且上载、下载均可。

(2)ftp文件传输有两种文件传输模式:ASCII模式和binary模式。ASCII模式用来传输文本文件,其他文件的传输使用binary模式。

(3)常用的ftp文件传输命令为:bin、asc、put、get、mput、mget、prompt、bye

 

四.编程与应用题

1.用Shell编程,判断一文件是不是字符设备文件,如果是将其拷贝到 /dev 目录下。 

参考程序: 

#!/bin/sh 

FILENAME= 

echo “Input file name:” 

read FILENAME 

if [ -c "$FILENAME" ] 

then 

cp $FILENAME /dev 

fi 

2.请下列shell程序加注释,并说明程序的功能和调用方法:#!/bin/sh 

#!/bin/sh 

# /etc/rc.d/rc.httpd 

# Start/stop/restart the Apache web server. 

# To make Apache start automatically at boot, make this 

# file executable: chmod 755 /etc/rc.d/rc.httpd 

case "$1" in 

‘start‘) 

/usr/sbin/apachectl start ;; 

‘stop‘) 

/usr/sbin/apachectl stop ;; 

‘restart‘) 

/usr/sbin/apachectl restart ;; 

*) 

echo "usage $0 start|stop|restart" ;; 

esac 

 

参考答案: 

(1)程序注释 

#!/bin/sh 定义实用的shell 

# /etc/rc.d/rc.httpd 注释行,凡是以星号开始的行均为注释行。 

# Start/stop/restart the Apache web server. 

# To make Apache start automatically at boot, make this 

# file executable: chmod 755 /etc/rc.d/rc.httpd 

case "$1" in #case结构开始,判断“位置参数”决定执行的操作。本程序携带一个“位置参数”,即$1 

‘start‘) #若位置参数为start 

/usr/sbin/apachectl start ;; #启动httpd进程 

‘stop‘) #若位置参数为stop 

/usr/sbin/apachectl stop ;; #关闭httpd进程 

‘restart‘) #若位置参数为stop 

/usr/sbin/apachectl restart ;; #重新启动httpd进程 

*) #若位置参数不是start、stop或restart时 

echo "usage $0 start|stop|restart" ;; #显示命令提示信息:程序的调用方法 

esac #case结构结束 

(2)程序的功能是启动,停止或重新启动httpd进程 

(3)程序的调用方式有三种:启动,停止和重新启动。 

 

3.设计一个shell程序,添加一个新组为class1,然后添加属于这个组的30个用户,用户名的形式为stdxx,其中xx从01到30。 

参考答案: 

#!/bin/sh 

i=1 

groupadd class1 

while [ $i -le 30 ] 

do 

if [ $i -le 9 ] ;then 

USERNAME=stu0${i} 

else 

USERNAME=stu${i} 

fi 

useradd $USERNAME 

mkdir /home/$USERNAME 

chown -R $USERNAME /home/$USERNAME 

chgrp -R class1 /home/$USERNAME 

i=$(($i+1)) 

done 

 

4.编写shell程序,实现自动删除50个账号的功能。账号名为stud1至stud50。 

参考程序: 

#!/bin/sh 

i=1 

while [ $i -le 50 ] 

do 

userdel -r stud${i} 

i=$(($i+1 )) 

done 

 

5.某系统管理员需每天做一定的重复工作,请按照下列要求,编制一个解决方案: 

(1)在下午4 :50删除/abc目录下的全部子目录和全部文件; 

(2)从早8:00~下午6:00每小时读取/xyz目录下x1文件中每行第一个域的全部数据加入到/backup目录下的bak01.txt文件内; 

(3)每逢星期一下午5:50将/data目录下的所有目录和文件归档并压缩为文件:backup.tar.gz; 

(4)在下午5:55将IDE接口的CD-ROM卸载(假设:CD-ROM的设备名为hdc); 

(5)在早晨8:00前开机后启动。 

参考答案: 

解决方案: 

(1)用vi创建编辑一个名为prgx的crontab文件; 

(2)prgx文件的内容: 

50 16 * * * rm -r /abc/* 

0 8-18/1 * * * cut -f1 /xyz/x1 >;>; /backup/bak01.txt 

50 17 * * * tar zcvf backup.tar.gz /data 

55 17 * * * umount /dev/hdc 

(3)由超级用户登录,用crontab执行 prgx文件中的内容: 

root@xxx:#crontab prgx;在每日早晨8:00之前开机后即可自动启动crontab。 

6.设计一个shell程序,在每月第一天备份并压缩/etc目录的所有内容,存放在/root/bak目录里,且文件名为如下形式yymmdd_etc,yy为年,mm为月,dd为日。Shell程序fileback存放在/usr/bin目录下。 

参考答案: 

(1)编写shell程序fileback: 

#!/bin/sh 

DIRNAME=`ls /root | grep bak` 

if [ -z "$DIRNAME" ] ; then 

mkdir /root/bak 

cd /root/bak 

fi 

YY=`date +%y` 

MM=`date +%m` 

DD=`date +%d` 

BACKETC=$YY$MM$DD_etc.tar.gz 

tar zcvf $BACKETC /etc 

echo "fileback finished!" 

(2)编写任务定时器: 

echo "0 0 1 * * /bin/sh /usr/bin/fileback" >; /root/etcbakcron 

crontab /root/etcbakcron 

或使用crontab -e 命令添加定时任务: 

0 1 * * * /bin/sh /usr/bin/fileback 

 

7.有一普通用户想在每周日凌晨零点零分定期备份/user/backup到/tmp目录下,该用户应如何做? 

参考答案:(1)第一种方法: 

用户应使用crontab –e 命令创建crontab文件。格式如下: 

0 0 * * sun cp –r /user/backup /tmp 

(2)第二种方法: 

用户先在自己目录下新建文件file,文件内容如下: 

0 * * sun cp –r /user/backup /tmp 

然后执行 crontab file 使生效。 

 

8.设计一个Shell程序,在/userdata目录下建立50个目录,即user1~user50,并设置每个目录的权限,其中其他用户的权限为:读;文件所有者的权限为:读、写、执行;文件所有者所在组的权限为:读、执行。 

参考答案: 建立程序 Pro16如下: 

#!/bin/sh 

i=1 

while [ i -le 50 ] 

do 

if [ -d /userdata ];then 

mkdir -p /userdata/user$i 

chmod 754 /userdata/user$i 

echo "user$i" 

let "i = i + 1" (或i=$(($i+1)) 

else 

mkdir /userdata 

mkdir -p /userdata/user$i 

chmod 754 /userdata/user$i 

echo "user$i" 

let "i = i + 1" (或i=$(($i+1)) 

fi 

done 

linux复习