11.将/home/stud1/wang目录做归档压缩,压缩后生成wang.tar.gz文件,并将此文件保存到/home目录下,用命令实现上述过程。
答:,实现此任务的tar命令格式为tar zcvf /home/wang.tar.gz /home/stud1/wang 。
13.在根目录下创建目录gdc,并设置权限为gdc的主人具有读写执行权限,与主人同组用户可读写,其它任何用户则只能读。
答:mkdir /gdc;chmod u=rwx,g=rw,o=r。
14.在用户user的主目录下新建目录software,并将路径/etc下所有以h开头的文件及目录拷贝到software中,用命令实现上述过程。
答:mkdir /home/user/software;
cp /etc/h* /home/user/software
1.vim有几种工作模式?各模式之间如何转换?
答:
3.在命令模式下如何将光标定位到指定行?如何删除文本中的字符、行?如何查找匹配某个模式的行?
答:
定位到指定行:nG。
删除字符:命令模式下x;删除行:命令模式下dd。
查找:命令模式下/+pattern。
6、查看当前目录使用的命令:_pwd_____ 查看当前系统进程的信息命令:_ps___ 对文件中的数据进行统计的命令:_wc_______ 获得详细帮助的命令为_man____ 或 __--help___。
第2章
2.什么是虚拟文件系统,Linux为什么采用虚拟文件系统?
答:虚拟文件系统(VFS)是Linux 内核中的一个软件层,用于给用户空间的程序提供文件系统接口;同时,它也提供了内核中的一个抽象功能,允许不同的文件系统共存。虚拟文件系统既没有文件,也不直接管理文件,它只是用户与实际文件系统之间的接口。它并不需要保存在永久存储介质中,只是在需要时由内核在内存处理器需要处理的数据或处理后的结果,可见内存是计算机处理器的工作空间。它是处理器运行的程序和数据必须驻留于其中的一个临时存储区域,是计算机十分重要的部件。 中创建起来的一个文件系统,所以叫做虚拟文件系统。Linux 允许众多不同类型的文件系统共存,并支持跨文件系统的操作,这是由于虚拟文件系统的存在。系统中所有的文件系统不但依赖虚拟文件系统共存,而且也依靠虚拟文件系统协同工作。
第3章
第4章
2.在Linux系统中运行级别分为几级?分别有何特点?
答:
系统的运行级别是系统运行时所处的一种状态,不同的运行级别在用户登录及使用上有一些不同。Linux系统提供7种运行级别,7种运行级别定义如下:
运行级别0:系统停机状态,系统默认运行级别不能设为0,否则不能正常启动。
运行级别1:单用户工作状态,root权限,用于系统维护,禁止远程登陆。
运行级别2:多用户状态(没有NFS支持)
运行级别3:完全的多用户状态(有NFS),标准运行级别,登录后进入命令行模式。
运行级别4:系统未使用,保留。
运行级别5:多用户模式,X11控制台,登录后进入图形GUI模式。
运行级别6:系统正常关闭并重启,默认运行级别不能设为6,否则不能正常启动。
4.Linux系统用户的类型都有哪些?
答:
(1)超级用户
(2)普通用户
(3)特殊用户
关闭系统的shutdown、halt、reboot、init命令各有何特点?
答:
(1)shutdown命令
使用shutdown命令可以安全的关闭Linux系统,shutdown命令是用shell编写的程序,必须由超级用户才能执行,shutdown命令执行后,会以广播的形式通知正在系统中工作的所有用户,系统将在指定的时间内关闭,请保存文件,停止作业,注销用户。shutdown命令的语法格式:shutdown [-fFhknrc(参数名称)] [-t 秒数] 时间 [警告信息]
(2)halt命令
halt是最简单的关机命令,相当于shutdown –h组合,halt执行时,kill掉所有应用程序,然后调用系统指令sync,sync将所有内存信息通过文件系统写入硬盘,然后停止内核。Halt命令格式:# halt
(3)reboot命令
reboot命令的执行过程与halt基本类似,不同的是halt是用于关机,而reboot是关机后引发系统重启。命令格式:# reboot
(4)init命令
init进程是所有进程的祖先,其进程号始终为1,init命令主要用于系统不同运行级之间的切换,切换的工作是立即完成的。
第5章
查找资料了解什么是LAMP服务器?它的需要哪些程序?
答:Linux+Apache+Mysql+Perl/PHP/Python一组常用来搭建动态网站或者服务器的开源软件,本身都是各自独立的程序,但是因为常被放在一起使用,拥有了越来越高的兼容度,共同组成了一个强大的Web应用程序平台。随着开源潮流的蓬勃发展,开放源代码的LAMP已经与J2EE和.Net商业软件形成三足鼎立之势,并且该软件开发的项目在软件方面的投资成本较低,因此受到整个IT界的关注。从网站的流量上来说,70%以上的访问流量是LAMP来提供的,LAMP是最强大的网站解决方案。要安装LAMP服务器步骤是要依次安装apache、mysql和PHP。
第6章
2.如何编辑一个shell脚本、shell脚本的执行方式有哪些?
答:
Vi+shellscriptname
执行方式:(1)为脚本文件加上可执行权限,然后在命令行直接输入shell脚本文件名执行。
(2)sh shell脚本名
(3). shell脚本名
9.设计一个shell脚本:求命令行上所有整数和。
答:
sum=0
while [ $# != 0 ]
do
let sum=sum+$1
shift
done
echo “the sum of arguments is $sum”
10.设计一个shell脚本:判断当前工作目录下所有的文件类型,如果是目录显示目录名,如果是文件查看文件内容,如果都不是,显示提示信息。
答:
for file in ./*
do
if [ -d “$file” ]
then
ls “$file”
elif [ -f “file” ]
then
more “$file”
else
echo “$fiel is not a directory or a regular file.s”
done
第7章
1.gcc编译过程一般分为哪几个阶段?各阶段的主要工作是什么?
答:gcc编译过程一般分为预处理、编译、汇编、链接四个阶段,各阶段的主要工作如下:
(1)预处理阶段
在该阶段,编译器将上述代码中的stdio.h编译进来。GCC首先调用cpp进行预处理,根据以字符#开头的命令修改原始的C程序。如hello.c中#include 指令告诉预处理器读系统头文件stdio.h的内容,并把它直接插入到程序文本中去。结果就得到经过编译预处理的源代码hello.i。
但实际工作中通常不用专门生成这种文件,因为基本上用不到。若非要生成这种文件不可,可以利用下面的示例命令。
$gcc -E hello.c -o hello.i
(2)编译阶段
GCC调用cc1检查代码的规范性,是否有语法错误等,以确定代码实际要做的工作,在检查无误后,把代码翻译成汇编语言,生成汇编处理后的汇编代码hello.s。这个阶段对应的GCC命令如下所示。
$gcc -S hello.i -o hello.s
汇编语言是非常有用的,它为不同高级语言不同编译器提供了通用的语言。如:C编译器和Fortran编译器产生的输出文件用的都是一样的汇编语言。
(3)汇编阶段
GCC调用as把编译阶段生成的hello.s文件转成编译后的目标文件hello.o,但hello.c中所引用的其他文件中函数(如printf)的内存位置尚未定义。这个阶段对应的GCC命令如下所示:
$gcc -c hello.s -o hello.o
(4)链接阶段
GCC调用ld将程序的目标文件与所需的所有附加的目标文件连接起来,最终生成可执行文件。如GCC找到hello.c所调用的函数printf函数库所在位置/user/lib,把函数的实现链接进来,生成最终的可执行文件hello。可以利用下面的示例命令完成。
$gcc hello.o -o hello
如果我们不想生成中间的各类型文件,可用如下命令由源文件直接编译链接成可执行文件。
$gcc hello.c -o hello
2.简述GNU gdb的功能。
答:gdb是Linux系统中一个功能强大的GNU调试程序,它可以调试C和C++程序,