2 只读
3 chmod 777 mydata 4 chown root mydata
8. 从内核实现的角度说明Linux进程共享文件的方式有哪几种?举例说明什么情况下会产生对应的共享情况? (5分)
答:进程通过多个file结构共享一个inode,进程共享一个file结构。
9. 某系统管理员需每天做一定的重复工作,请按照下列要求,编制一个解决 方案: (13分)
(1)在下午5 :50删除/123目录下的全部子目录和全部文件;
(2)从早9:00~下午5:00每小时读取/456目录下x1文件中每行第一个域的全部数据加入到/bak目录下的bak01.txt文件内;
(3)每逢星期一下午4:50将/data目录下的所有目录和文件归档并压缩为文件:backup.tar.gz;
(4)在下午4:55将IDE接口的CD-ROM卸载(假设设备名为hdc); (5)在早晨8:30前开机后启动。 解决方案:
(1)用vi创建编辑一个名为prgx的crontab文件;(2分 ) (2)prgx文件的内容:
50 17 * * * rm -r /123/* (2分 )
0 9-17/1 * * * cut -f1 /456/x1 >;>; /bak/bak01.txt(2分 )
50 16 * * 1 tar zcvf backup.tar.gz /data (2分 )
55 16 * * * umount /dev/hdc (2分 )
(3)由超级用户登录,用crontab执行 prgx文件中的内容: root@xxx:#crontab prgx;
在每日早晨8:30之前开机后即可自动启动cronta(3分 )
10. 在所用的Linux系统上,根目录下有哪些内容?各自的功能是什么?(10分)
答: /root :root用户的home目录,/dev:设备文件,/media:媒体,/mnt:挂载,/usr:用户程序,/bin:系统应用程序,/user/bin:用户应用程序, /home:其他用户的家目录,/boot:启动文件,/lib:库文件。
第七章
1.编写shell程序,实现自动删除50个帐号的功能。帐号名为stud1至stud50。(10分) 答:1.#!/bin/bash 1分
2.i=1 1分 3.whlie [$ -le 50] 2分 4.do 1分 5.userdel -r stud${i} 3分 6.i=$(($i+1)) 1分 7.done 1分
2. 什么是位置变量?shell的变量类型有哪些种?(5分)
答:位置变量是指命令行上传递给程序的参数。1分
Shell变量可以分为:用户自定义变量、环境变量、位置变量、特殊变量(4分)
3. .水仙花数至少要三位数,下面请用bash shell求 100 到 999的水仙花数程序。10分
#!/bin/bash
for (( a=1; a<10; a++ )) do
for (( b=0; b<10; b++ )) do
for (( c=0; c<10; c++ )) do
number1=$((a*100+b*10+c)) number2=$((a**3+b**3+c**3))
if [ $number1 -eq $number2 ]; then echo \ fi done done done 10分
4. 使用for和while语句编写一个Shell程序,实现1-9的平方值。分别保存文件名为for.sh,while.sh。(10分)
#!/bin/bash
#this is a example for for 1' for num in 1 2 3 4 5 6 7 8 9 1' do
echo $num的平方: 1' espr $ num\\* $num 1' # { echo $num的平方:;expr $num\\* $num; } 1'
done (5')
#!/bin/bash
#this is a example for while 1' # num=1
while [ $num -le 9 ] 1' do
echo $num的平方 1' expr $num \\* $num 1' # { echo $num的平方:;expr $num\\* $num; } 1' expr $num=$num+1
done (5')
5. .编写一个shell脚本,能够显示下面序列的前25个数字。0,1,1,2,3,5,8,13…,前二个数字之和为第三个数字,即著名的Fibonacci序列。(10分)
#gedit shell.sh #!/bin/bash n=0
echo \ \m=1
echo \ \t=1 a=2
while [ $a -lt 25 ] do
t=$(expr $n + $m) echo \ \ a=$(expr $a + 1) n=$m m=$t done
# bash shell.sh
6. 编写一个Shell脚本,它能够显示下面序列的前10个数字:0,1,1,2,3,5,8,13,。。。(10分)
答案: a=0 b=1
echo –n $a,$b for ((i=0;i<8;i++)) do
c=$((a+b)) a=$b b=$c
echo –n,$c
done
7. 试编写一个SHELL程序,该程序能接收用户从键盘输入的100个整数,然后求出其总和、最大值及最小值。(6分)
答:#!/bin/sh read max min=$max sum=$max i=1
while [$i-lt 100] do
read x
sum=`expr $sum + $x` if [ $max-lt $x ] then
max=$x fi
if [ $x-lt $min ] then
min=$x fi
i=`expr $i + 1` done
echo \ = $sum max = $max min = $min \
8. 用shell编写小九九乘法表程序(10分)
#! /bin/sh
– for i in 1 2 3 4 5 6 7 8 9 do
for j in 1 2 3 4 5 6 7 8 9 do
if ( test $j -le $i ) then
echo -ne `expr $i \\* $j` \ else echo break fi done done
第八章
1. 关于Samba服务器:(1)叙述该服务器的功能;(2)配置该服务器时对安全性选项
卡中的验证模式有哪几种选项?(5分)
答:Samba服务器的功能是在既有windows也linux操作系统的局域网中提供计算机间的文件共享。
配置该服务器时对安全性选项卡中的验证模式有域、服务器、共享、用户四种选项
2. 利用vsftp配置FTP服务器,要求:(1)匿名用户可以下载上传文件;(2)本地用户不允许登陆。写出详细的配置过程和配置选项。(8分)
(1)主要配置文件是/etc/lvsftpd/vsftpd.conf;将vsftpd.conf文件中的#anon-upload-enalle=Yes 前的“#“删掉,并将/var/ftp/pub目录设为同组和其它可写权限。chmod go+w /var/ftp/pub↓
(2)用service vsftpd start(stop)(restart)命令启动(关闭)(重启)服务器。
3. .简述使用ftp进行文件传输时的两种登录方式?它们的区别是什么?常用的ftp文件传输命令是什么?
参考答案: (1)ftp有两种登录方式:匿名登录和授权登录。使用匿名登录时,用户名为:anonymous,密码为:任何合法email地址;使用授权登录时,用户名为用户在远程系统中的用户帐号,密码为用户在远程系统中的用户密码。 (3分)
区别:使用匿名登录只能访问ftp目录下的资源,默认配置下只能下载;而授权登录访问的权限大于匿名登录,且上载、下载均可。(2分)
(2)ftp文件传输有两种文件传输模式:ASCII模式和binary模式。ASCII模式用来传输文本文件,其他文件的传输使用binary模式。 (2分)
(3)常用的ftp文件传输命令为:bin、asc、put、get、mput、mget、prompt、bye。(3分)
4. 简述DHCP服务器的工作过程 4分(一点一分) (1)DHCP客户机发送IP租用请求。 (2)DHCP服务器提供IP地址。 (3)DHCP客户机进行IP租用选择。 (4)DHCP服务器IP租用认可。
5. 动态IP地址方案有什么优点和缺点 4分
优点:可以减少网络管理员管理IP地址的工作量,提高IP地址的使用率,节约IP地址。2分
缺点:主机获得的IP地址不固定,对于提供网络服务的主机不适用;需要DHCP服务器。 2分