《Linux操作系统(第2版) )》课后习题答案

更新时间:2023-04-16 05:27:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

《Linux操作系统(第2版)》课后习题答案

1.6 练习题

一、选择题

1. Linux最早是由计算机爱好者 B 开发的。

A. Richard Petersen

B. Linus Torvalds

C. Rob Pick

D. Linux Sarwar

2. 下列 C 是自由软件。

A. Windows XP

B. UNIX

C. Linux

D. Windows 2000

3. 下列 B 不是Linux的特点。

A. 多任务

B. 单用户

C. 设备独立性

D. 开放性

4. Linux的内核版本2.3.20是 A 的版本。

A. 不稳定

B. 稳定的

C. 第三次修订

D. 第二次修订

5. Linux安装过程中的硬盘分区工具是 D 。

A. PQmagic

B. FDISK

C. FIPS

D. Disk Druid

6. Linux的根分区系统类型是 C 。

A. FATl6

B. FAT32

C. ext4

D. NTFS

二、填空题

1. GNU的含义是:GNU's Not UNIX。

2. Linux一般有3个主要部分:内核(kernel)、命令解释层(Shell或其他操作环境)、实用工具。

3. 安装Linux最少需要两个分区,分别是swap交换分区和/(根)分区。

4. Linux默认的系统管理员账号是root 。

三、简答题(略)

1.简述Red Hat Linux系统的特点,简述一些较为知名的

Linux发行版本。

2.Linux有哪些安装方式?安装Red Hat Linux系统要做哪些准备工作?

3.安装Red Hat Linux系统的基本磁盘分区有哪些?

4.Red Hat Linux系统支持的文件类型有哪些?

2.6 练习题

一、选择题

1. C 命令能用来查找在文件TESTFILE中包含四个字符的行?

A. grep’????’TESTFILE

B.

grep’….’TESTFILE

C. grep’^????$’TESTFILE

D.

grep’^….$’TESTFILE

2. B 命令用来显示/home及其子目录下的文件名。

A. ls -a /home

B. ls -R /home

C. ls -l

/home D. ls -d /home

3. 如果忘记了ls命令的用法,可以采用 C 命令获得帮助

A. ?ls

B. help ls

C. man ls

D. get ls

4. 查看系统当中所有进程的命令是D 。

A. ps all

B. ps aix

C. ps auf

D. ps aux

5. Linux中有多个查看文件的命令,如果希望在查看文件内容过程中用光标可以上下移动来查看文件内容,则符合

要求的那一个命令是 C 。

A. cat

B. more

C. less

D. head

6. C 命令可以了解您在当前目录下还有多大空

间。

A. Use df

B. Use du /

C. Use du .

D.

Use df .

7. 假如需要找出/etc/my.conf 文件属于哪个包

(package),可以执行 C 命令。

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

8. 在应用程序启动时, B 命令设置进程的优先

级。

A. priority

B. nice

C. top

D.、setpri

9. C 命令可以把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

10. 使用 B 命令可以查看Linux的启动信息。

A. mesg –d

B. dmesg

C. cat /etc/mesg

D. cat /var/mesg

二、填空题

1. 在Linux系统中命令区分大小写。在命令行中,可以使用Tab键来自动补齐命令。

2. 如果要在一个命令行上输入和执行多条命令,可以使用分号来分隔命令。

3. 断开一个长命令行,可以使用反斜杠“\”,以将一个较长的命令分成多行表达,增强命令的可读性。执行后,Shell 自动显示提示符“>”,表示正在输入一个长命令。

4. 要使程序以后台方式执行,只需在要执行的命令后跟上一个“&”符号。

三、简答题

1. more和less命令有何区别?

2. Linux系统下对磁盘的命名原则是什么?

3. 在网上下载一个Linux下的应用软件,介绍其用途

和基本使用方法。

3.3 练习题(略)

1. Vim的3种运行模式是什么?如何切换?

2. 什么是重定向?什么是管道?什么是命令替换?

3. Shell变量有哪两种?分别如何定义?

4. 如何建立和执行Shell脚本文件?如何使一个Shell

脚本在当前Shell中运行?

5. 如何设置用户自己的工作环境?

6. 关于正则表达式的练习,首先我们要设置好环境,输入以下命令:

$cd

$cd /etc

$ls -a >~/data

$cd

这样,/etc目录下的所有文件的列表就会保存在你的主目录下的data文件中。

写出可以在data文件中查找所有行的正则表达式:

1)以“P”开头

2)以“y”结尾

3)以“m”开头以“d”结尾

4)以“e”、“g”或“l”开头

5)包含“o”,它后面跟着“u”

6)包含“o”,隔一个字母之后是“u”

7)以小写字母开头

8)包含一个数字

9)以“s”开头,包含一个“n”

10)只含有4个字母

11)只含有4个字母,但不包含“f”

4.6 练习题

一、填空题

1. shell shell 的语法与命令(含外部命令)正则表达式管道命令数据流重导向

2. 上下左右

3. r r 与x

4. shell (#!/bin/bash) 程序用途版本作者

5. read date

6. 父程序

7. test 中括号( [] )

8. if...then case $var in ... esac

9. 不定循环(while, until) 固定循环(for)

10. sh -x script.sh

二、实践习题

1.请创建一个script ,当你运行该script 的时候,该script 可以显示:①你目前的身份(用whoami );②你目前所在的目录(用pwd)。

#!/bin/bash

echo -e "Your name is ==> $(whoami)"

echo -e "The current directory is ==> $(pwd)"

2.请自行创建一个程序,该程序可以用来计算“你还有几天可以过生日”。

#!/bin/bash

read -p "Pleas input your birthday (MMDD, ex> 0709): " bir

now=`date +%m%d`

if [ "$bir" == "$now" ]; then

echo "Happy Birthday to you!!!"

elif [ "$bir" -gt "$now" ]; then

year=`date +%Y`

total_d=$(($((`date --date="$year$bir" +%s`-`date +%s`))/60/60/24))

echo "Your birthday will be $total_d later"

else

year=$((`date +%Y`+1))

total_d=$(($((`date --date="$year$bir" +%s`-`date +%s`))/60/60/24))

echo "Your birthday will be $total_d later"

fi

3.让用户输入一个数字,程序可以由1+2+3... 一直累加到用户输入的数字为止。

#!/bin/bash

read -p "Please input an integer number: " number i=0

s=0

while [ "$i" != "$number" ]

do

i=$(($i+1))

s=$(($s+$i))

done

echo "the result of '1+2+3+...$number' is ==> $s"

4.撰写一个程序,他的作用是:①先查看一下/root/test/logical 这个名称是否存在;②若不存在,则创建一个文件,使用touch 来创建,创建完成后离开;③如果存在的话,判断该名称是否为文件,若为文件则将之删除后创建一个目录,文件名为logical,之后离开;④如果存在的话,而且该名称为目录,则移除此目录。

#!/bin/bash

if [ ! -e logical ]; then

touch logical

echo "Just make a file logical"

exit 1

elif [ -e logical ] && [ -f logical ]; then

rm logical

mkdir logical

echo "remove file ==> logical"

echo "and make directory logical"

exit 1

elif [ -e logical ] && [ -d logical ]; then

rm -rf logical

echo "remove directory ==> logical"

exit 1

else

echo "Does here have anything?"

fi

5.我们知道/etc/passwd 里面以: 来分隔,第一栏为帐号名称。请写一个程序,可以将/etc/passwd 的第一栏取出,而且每一栏都以一行字串“The 1 account is "root" ”来显示,那个1 表示行数。

#!/bin/bash

accounts=`cat /etc/passwd | cut -d':' -f1`

for account in $accounts

do

declare -i i=$i+1

echo "The $i account is \"$account\" "

done

5.8 练习题

一、选择题

1.(A)目录存放用户密码信息

A. /etc

B. /var

C. /dev

D. /boot

2. 请选出创建用户ID 是200,组ID是1000,用户主目录为/home/user01的正确命令。(C)

A. useradd -u:200 -g:1000 -h:/home/user01

user01

B. useradd -u=200 -g=1000 -d=/home/user01

user01

C. useradd -u 200 -g 1000 -d /home/user01

user01

D. useradd -u 200 -g 1000 -h /home/user01

user01

3. 用户登陆系统后首先进入下列哪个目录?(D )

A. /home

B. /root的主目录

C. /usr

D.

用户自己的家目录

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

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

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

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

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

5. 下面(C )参数可以删除一个用户并同时删除用户

的主目录?

A. rmuser –r

B. deluser –r

C. userdel

–r D. usermgr –r

6. 系统管理员应该采用哪些安全措施?(CD )

A. 把root密码告诉每一位用户

B. 设置telnet服务来提供远程系统维护

C. 经常检测帐户数量,内存信息和磁盘信息

D. 当员工辞职后,立即删除该用户帐户

7. 在/etc/group中有一行shudents::600:z3,14,w5有多少用户在student组里?(A )

A. 3

B. 4

C. 5

D. 不知道

8. 下列的哪些命令可以用来检测用户lisa的信息?(AB)

A. finger lisa

B. grep lisa /etc/passwd

C. find

lisa /etc/passwd D. who lisa

二、填空题

1. Linux操作系统是多用户多任务的操作系统,它允许多个用户同时登录到系统,使用系统资源。

2. Linux系统下的用户帐户分为两种:普通用户帐户和超级用户帐户(root)。

3. root用户的UID为0,普通用户的UID可以在创建时由管理员指定,如果不指定,用户的UID默认从500开始顺序编号。

4. 在Linux系统中,创建用户帐户的同时也会创建一个与用户同名的组群,该组群是用户的主组群。普通组群的GID默认也从500开始编号。

5. 一个用户帐户可以同时是多个组群的成员,其中某个组群是该用户的主组群(私有组群),其他组群为该用户的附属组群(标准组群)。

6. 在Linux系统中,所创建的用户帐户及其相关信息(密码除外)均放在/etc/passwd配置文件中。

7. 由于所有用户对/etc/passwd文件均有读取权限,为了增强系统的安全性,用户经过加密之后的口令都存放在/etc/shadow文件中。

8. 组群帐户的信息存放在/etc/group文件中,而关于组群管理的信息(组群口令、组群管理员等)则存放在

/etc/gshadow文件中。

6.4 练习题

一、选择题

1. 假定kernel支持vfat分区,下面哪一个操作是将/dev/hda1,一个Windows分区加载到/win目录?(D)

A. mount -t windows /win /dev/hda1

B. mount -fs=msdos /dev/hda1 /win

C. mount -s win /dev/hda1 /win

D. mount –t vfat /dev/hda1 /win

2. 请选择关于/etc/fstab的正确描述。(B )

A. 启动系统后,由系统自动产生。

B. 用于管理文件系统信息。

C. 用于设置命名规则,是否使用可以用TAB来命名一个文件。

D. 保存硬件信息。

3. 存放Linux基本命令的目录是什么(A)

A. /bin

B. /tmp

C. /lib

D. /root

4. 对于普通用户创建的新目录,哪个是缺省的访问权限?(A )

A. rwxr-xr-x

B. rw-rwxrw-

C. rwxrw-rw-

D. rwxrwxrw-

5. 如果当前目录是/home/sea/china,那么“china”的父目录是哪个目录?(A)

A. /home/sea

B. /home/

C. /

D. /sea

6. 系统中有用户user1和user2,同属于users组。在user1用户目录下有一文件file1,它拥有644的权限,如果user2想修改user1用户目录下的file1文件,应拥有(B)权限?

A. 744

B. 664

C. 646

D. 746

7. 在一个新分区上建立文件系统应该使用命令(C )

A. fdisk

B. makefs

C. mkfs

D. format

8. 用ls –al 命令列出下面的文件列表,问哪一个文件是符号连接文件?( D)

A. -rw------- 2 hel-s users 56 Sep 09 11:05 hello

B. -rw------- 2 hel-s users 56 Sep 09 11:05 goodbey

C. drwx----- 1 hel users 1024 Sep 10 08:10 zhang

D. lrwx----- 1 hel users 2024 Sep 12

08:12 cheng

9. Linux文件系统的目录结构是一棵倒挂的树,文件都按其作用分门别类地放在相关的目录中。现有一个外部设备文件,我们应该将其放在(C )目录中。

A. /bin

B. /etc

C. /dev

D. lib

10. 如果umask设置为022,缺省的创建的文件的权限为:(D )

A. ----w--w-

B. –rwxr-xr-x

C. r-xr-x---

D. rw-r--r--

二、填空题

1. 文件系统(File System)是磁盘上有特定格式的一片区域,操作系统利用文件系统保存和管理文件。

2. ext文件系统在1992年4月完成。称为扩展文件系统,是第一个专门针对Linux操作系统的文件系统。Linux 系统使用ext2/ext3/ext4文件系统。

3. ISO 9660是光盘所使用的标准文件系统。

4. Linux的文件系统是采用阶层式的树状目录结构,在该结构中的最上层是根目录“/”。

5. 默认的权限可用umask命令修改,用法非常简单,只需执行“umask 777”命令,便代表屏蔽所有的权限,因而之后建立的文件或目录,其权限都变成000。

6. 在Linux系统安装时,可以采用Disk Druid、RAID

和LVM等方式进行分区。除此之外,在Linux系统中还有fdisk、cfdisk、parted等分区工具。

7. RAID(Redundant Array of Inexpensive Disks),中文全称是独立磁盘冗余阵列,用于将多个廉价的小型磁盘驱动器合并成一个磁盘阵列,以提高存储性能和容错功能。RAID可分为软RAID和硬RAID,软RAID通过软件实现多块硬盘冗余。

8. LVM(Logical Volume Manager)的中文全称是逻辑卷管理器,最早应用在IBM AIX系统上。它的主要作用是动态分配磁盘分区及调整磁盘分区大小,并且可以让多个分区或者物理硬盘作为一个逻辑卷(相当于一个逻辑硬盘)来使用。

9. 可以通过索引节点数和磁盘块区数来限制用户和组群对磁盘空间的使用。

7.5 练习题

一、填空题

1. 二进制文件(binary file)

2. gcc

3. make makefile

4. *.tar.gz 或者是简写为*.tgz RedHat Package Manager

5. 二进制程序(binary program )

6. i386、i586、i686、x86_64

7. 依赖性

8. 依赖性

9. yum yum

二、简答题

1. 如果你曾经修改过yum 配置文件内的容器配置(/etc/yum.repos.d/*.repo) ,导致下次使用yum 进行安装时老是发现错误,该如何解决这个问题?

先确认你的配置文件确实是正确的,如果没问题,可以将yum 的缓存清除,使用“yum clean all”即可。事实上,yum 的所有缓存、下载软件、下载软件的表头数据,都放置在/var/cache/yum/ 目录下。

2. 假设我想要安装一个软件,例如pkgname.i386.rpm ,但却老是发生无法安装的问题,请问可以加入哪些参数来强制安装该软件?

可以加入--nodeps 等参数。例如rpm -ivh

--nodeps pkgname.i386.rpm

3. 承上题,强制安装之后,该软件是否可以正常运行?为什么?

一般来说,应该是“不能运行”的,因为该软件具有依赖属性的问题,某些时刻该软件的程序可能需要调用外部的函数库,但函数库可能未安装,因此无法运行成功。

4. 有些人使用OpenLinux 3.1 Server 安装在自己的P-166 MMX计算机上,却发现无法安装,在查询了该原版光盘的内容,发现里面的文件名称为***.i686.rpm 。请问,无法安装的可能原因是什么?

因为P-166MMX 为i586 的硬件平台,而OpenLinux 为针对i686 的硬件平台进行最佳化,因此很可能由于执行的参数无法支持的原因,导致无法安装成功。

5. 使用rpm -Fvh *.rpm 及rpm -Uvh *.rpm 来升级时,两者有何不同?

-Uvh 后面接的软件,如果原本未安装,则直接安装,原本已安装时,则直接升级;

-Fvh 后面接的软件,如果原本未安装,则不安装,原本已安装时,则直接升级。

6. 假设有一个厂商推出软件时,自行处理了数字签名,你想要安装他们的软件,所以需要使用数字签名,假设数字

签名的文件名为signe,那你该如何安装?

rpm --import signe

7. 承上题,假设该软件厂商提供了yum 的安装网址为:816af0aedf88d0d233d4b14e852458fb770b38ea/path/ ,那你该如何处理yum 的配置文件?

可以自行取个文件名,在此例中我们使用“vim /etc/yum.repos.d/their.repo ”,扩展名要正确。内容如下:

[their]

name=their server name

baseurl=816af0aedf88d0d233d4b14e852458fb770b38ea/path/

enable=1

gpgcheck=0

8.4 练习题

一、选择题

1. TCP/IP中,哪个协议是用来进行IP地址自动分配的?(C )

A. ARP

B. NFS

C. DHCP

D. DDNS

2. DHCP租约文件默认保存在(D )目录中。

A. /etc/dhcpd

B. /var/log/dhcpd

C. /var/log/dhcp

D. /var/lib/dhcp

3. 配置完DHCP服务器,运行(AB )命令可以启动DHCP服务。

A. service dhcpd start

B. /etc/rc.d/init.d/dhcpd start

C. start dhcpd

D. dhcpd on

二、填空题

1. DHCP Discover DHCP offer DHCP Request DHCP Acknowledge

2. 169.254.0.0/16

3. ipconfig ipconfig/release ipconfig/renew

4.Dynamic Host Configuration Protocol 动态主机配置协议

5.50%DHCP Request

6.87.5%

7.BOOTPROTO=dhcp。

三、实践题

架设一台DHCP服务器,并按照下面的要求进行配置:(略)

1)为192.168.203.0/24建立一个IP作用域,并将

192.168.203.60~192.168.203.200范围内的IP地

本文来源:https://www.bwwdw.com/article/4zsq.html

Top