linux系统编程试卷(答案)
linux试题及答案(全)

Linux课后习题,linux练习题,linux进步练习题,linux操作练习题
一、命令部分
1.新建一个用户yangang,密码设为123456,并将其加到root组。写出所用命令。
(2)0 8-18 * * * cut -f 1 >> /backup/bak01.txt
2. 某学校内部既存在WINDOWS操作系统,又存在LINUX操作系统,为了方便资源共享,建立一台SAMBA服务器,其地址为192.168.0.5,建立std、teacher两个用户,同时设置其密码。
创建用户:useradd std
service sshd restart
71.创建一个以自己的名的拼音命名的用户。
useradd chengwen
72.添加一个用户组,名称为js。
groupadd js
73.修改新建的用户属于js组。
usermod –g js newuser
74.进入该用户主目录,显示当前的路径。
cal 12 2011
57.建立文件/etc/group的符号链接文件/root/abc。
ln –s /etc/group /root/abc
58.后台启动程序gedit。
Gedit &
59.配置网卡eth0的IP地址为192.168.0.1,子网掩码为255.255.255.0
ifconfig eth0:192.168.0.1 netmask 255.255.255.0
linux试题及答案

linux试题及答案一、选择题1. Linux操作系统的默认文件系统是()。
A. FAT32B. NTFSC. ext4D. exFAT答案:C2. 在Linux系统中,用于查看文件内容的命令是()。
A. catB. dogC. ratD. log答案:A3. 下列哪个命令可以用来压缩文件或目录?()。
A. gzipB. zipC. bzip2D. All of the above答案:D4. 在Linux中,用于远程登录的命令是()。
A. telnetB. sshC. ftpD. rlogin答案:B5. 下列哪个是Linux系统下的包管理器?()。
A. yumB. apt-getC. pipD. Both A and B答案:D二、填空题1. 在Linux系统中,查看当前工作目录的命令是________。
答案:pwd2. 使用Linux命令行创建一个名为“myfolder”的目录的命令是________。
答案:mkdir myfolder3. 将文件“oldfile.txt”重命名为“newfile.txt”的命令是________。
答案:mv oldfile.txt newfile.txt4. 显示当前目录下所有隐藏文件和文件夹的命令是________。
答案:ls -a5. 为了查看系统进程信息,可以使用的命令是________。
答案:ps三、简答题1. 请简述Linux操作系统的主要特点。
答:Linux是一个开源的Unix-like操作系统,其主要特点包括稳定性高、安全性强、免费或低成本、多用户多任务、良好的硬件支持和丰富的软件资源等。
2. 请解释什么是Linux内核?答:Linux内核是Linux操作系统的核心部分,负责系统的最基本功能,包括进程管理、内存管理、文件系统管理和网络服务等。
它是一个运行在最低权限级别的程序,负责调度和管理系统资源。
3. 请描述Linux中的文件系统层次结构。
linux操作系统考试试卷(含答案)1

试卷编号01 拟题教研室〔或教师〕签名教研室主任签名长沙理工大学考试试卷………………………………………………………………………………………………………………课程名称〔含档次〕linux操作系统课程代号专业层次〔本、专〕考试方式〔开、闭卷〕开一、单项选择题〔每题2分,共40分〕1.Linux系统是一个〔〕的操作系统A.单用户、单任务B.单用户、多任务C.多用户、单任务D.多用户、多任务2.要给文件file1加上其他人可执行属性的命令是〔〕A.chmod a+xB.chown a+xC.chmod o+xD.chown o+x3.配置主机网卡IP地址的配置文件是〔〕A./etc/sysconfig/network-scripts/ifcfg-eth0B./etc/sysconfig/networkC./etc/resolv.confD./etc/host.conf4.Linux系统能够直接读取的分区类型是〔〕A.NTFSB.FAT16C.FAT32D.ext35.以下命令能启动DNS服务的是〔〕A.service named startB./etc/init.d/named startC.service dns startD./etc/init.d/dns restart6. /dev/sdc6分区表示( )A. 第2块IDE硬盘的第6个分区,是逻辑分区B.第3块IDE硬盘的第6个分区,是逻辑分区C. 第3块SCSI硬盘的第6个分区,是逻辑分区D.第3块SCSI硬盘的第2个分区,是逻辑分区7. Linux 下用一条命令创建/A/S/D目录结构的命令是: ( )A. mkdir /A/S/DB. mkdir –p A/S/DC. mkdir –p /A/S/DD. mkdir –r A/S/D8.为了将当前目录下的压缩归档文件myftp.tar.gz解压缩,我们可以使用:( )。
A. tar -xvzf myftp.tar.gzB. tar -xvz myftp.tar.gzC. tar -vzf myftp.tar.gzD. tar -xvf myftp.tar.gz9.比较重要的系统配置资料,一般来说大部分位于( )目录下。
Linux考试试题100道(附答案)

Linux考试试题100道(附答案)1、Linux系统中,用户文件描述符0 表示______。
A.标准输入设备文件描述符B.标准输出设备文件描述符B.管道文件描述符 D.标准错误输出设备文件描述符答案:A2、以长格式列目录时,若文件test的权限描述为:drwxrw-r–,则文件test的类型及文件主的权限是______。
A.目录文件、读写执行B.目录文件、读写C.普通文件、读写D.普通文件、读答案:A3、当字符串用单引号(’’)括起来时,SHELL将______。
A.解释引号内的特殊字符B.执行引号中的命令C.不解释引号内的特殊字符D.结束进程答案:C4、/etc/shadow文件中存放______。
A.用户账号基本信息B.用户口令的加密信息C.用户组信息D.文件系统信息答案:B5、若当前目录为/home,命令ls–l 将显示home 目录下的()。
A.所有文件B.所有隐含文件C.所有非隐含文件D.文件的具体信息答案:D6、为卸载一个软件包,应使用_____。
A.rpm -iB.rpm -eC.rpm -qD.rpm -V答案:B7、下面关于文件“/etc/sysconfig/network-scripts/ifcfg-eth0”的描述哪个是正确的?( )。
A.它是一个系统脚本文件B.它是可执行文件C.它存放本机的名字D.它指定本机eth0的IP地址答案:D8、如何快速切换到用户John的主目录下?( )A.cd @JohnB.cd #JohnC.cd &JohnD.cd ~John答案:D9、启动DNS服务的守护进程()A. httpd startB.httpd stopC. named startD. named stop答案:C10、Linux有三个查看文件的命令,若希望在查看文件内容过程中可以用光标上下移动来查看文件内容,应使用命令()A.cat B. more C. less D. menu答案:C11、在LINUX中,要查看文件内容,可使用()命令。
linux 试题及答案

linux 试题及答案第一部分:选择题1. Linux 是一种()操作系统。
a) 开源b) 闭源c) 商业d) 私有答案:a) 开源2. 在 Linux 中,用于显示当前所在路径的命令是()。
a) pwdb) lsc) cdd) cp答案:a) pwd3. 在 Linux 中,用于创建目录的命令是()。
a) mkdirb) touchc) rmd) mv答案:a) mkdir4. Linux 中,用于列出当前目录下的文件和文件夹的命令是()。
a) lsb) cdc) pwdd) rm答案:a) ls5. 在 Linux 中,用于复制文件的命令是()。
a) cpb) mvc) touchd) mkdir答案:a) cp第二部分:填空题1. Linux 操作系统的核心部分被称为()。
答案:内核2. Linux 中,用于修改文件或目录的权限的命令是()。
答案:chmod3. 在 Linux 中,用于压缩文件的命令是()。
答案:tar4. Linux 是基于()开发的操作系统。
答案:UNIX5. Linux 中,默认的超级用户账户是()。
答案:root第三部分:简答题1. 什么是 Linux 操作系统?答:Linux 是一种开源操作系统,它基于 UNIX 操作系统开发而成。
Linux 以其稳定性、可定制性和安全性而闻名,并广泛运用于服务器和嵌入式设备等领域。
2. 如何在 Linux 中创建一个新用户?答:可以使用 `useradd` 命令来创建一个新用户,例如 `useradd -m newuser`。
其中,`-m` 参数表示同时创建用户的主目录。
3. 如何修改文件的访问权限?答:可以使用 `chmod` 命令来修改文件的访问权限。
例如,要将文件的所有者权限设置为可读可写可执行,可以使用 `chmod u+rwx filename` 命令。
4. 如何在 Linux 中安装软件包?答:可以使用包管理器,如 `apt` (用于 Debian 系统)或 `yum` (用于 Red Hat 系统),来安装软件包。
Linux测试题(内附答案)

期末测试卷1一、选择题(每题2分,共50分)下列各题A、B、C、D四个选项中,只有一个选项是正确的,请将正确的选项涂写在答题卡相应位置上,答在试卷上不得分。
1.Linux系统是一个()的操作系统。
A.单用户、单任务B.单用户、多任务C.多用户、单任务D.多用户、多任务2.Red Hat Linux 9系统中用户默认的Shell是()。
A.bashB.kshC.cshD.sh3.如果忘记了ls命令的用法,可以采用()命令获得帮助。
A.?lsB.help lsC.man lsD.get ls4.要给文件file1加上其他人可执行属性的命令是()。
A.chmod a+x file1B.chown a+x file1C.chmod o+x file1D.chown o+x file15.使用$cd ~命令后,会进入( ) 目录。
A. /B. ~C.用户的主目录D. /tmp6.添加用户“user”的命令是()。
er usereradd userC.add userD.adduser7.删除用户“user”及其主目录下所有文件的命令是()。
erdel -p usererdel -r usererdel -a usererdel -z user8.查看系统当中所有进程的命令是()。
A.ps allB.ps aixC.ps aufD.ps aux9.配置主机网卡IP地址的配置文件是()。
A./etc/sysconfig/network-scripts/ifcfg-eth0B./etc/sysconfig/networkC./etc/resolv.confD./etc/host.conf10.指定系统主机名的配置文件是()。
A./etc/hostsB./etc/host.confC./etc/sysocnfig/networkD./etc/resolv.conf11.以下命令可以重新启动计算机的是()。
A.rebootB.haltC.shutdownD.init 612.Linux系统默认使用的文件系统类型是()。
《LINUX系统及其编程》考试试题及答案

《Linux系统及其编程》模拟练习参考答案一、单项选择题1.Linux的根分区的文件系统类型是C。
A. FAT16B.FAT32C. ext3D. NTFS 2.安装好Linux操作系统后,系统默认的超级用户(系统管理员)账号是C。
A. administratorB.guestC.rootD. boot 3.Linux文件系统的文件都按其作用分门别类地放在相关的目录中,对于外部设备文件,一般应将其放在C目录中。
A. /binB. /etcC. /devD. /lib 4.Linux有三个查看文件的命令,若希望在查看文件内容过程中,可以用光标上下移动来查看文件内容,应使用C命令。
A. catB.moreC. lessD. menu 5.可以为文件或目录重命名的命令是C。
A. mkdirB. rmdirC. mvD. rm6.已知某用户stud1,其用户目录为/home/stud1。
如果当前目录为/home,进入目录/home/stud1/test的命令是:C。
A. cd testB. cd /stud1/testC. cd stud1/testD.cd home 7.Linux文件权限一共10位长度,分成四段,第三段表示的内容是C。
A.文件类型B.文件所有者的权限C.文件所有者所在组的权限D.其他用户的权限8.将Windows C:盘(hda1)安装在Linux文件系统的/winsys目录下,命令是B。
A. mount –t vfat dev/hda1 /winsysB. mount –t vfat /dev/hda1 /winsysC. mount –t vfat /dev/hda1 winsysD. mount –t vfat dev/hda1 winsys9.一般情况下,系统启动过程自动加载的文件系统信息是存放在文件D中A. /usr/sbin/cfdiskB. /sbin/fdiskC. /etc/mtabD. /etc/fstab 10.系统中有用户user1和user2,同属于users组。
linux试题及答案

linux试题及答案Linux是一种开源的类Unix操作系统,它以其稳定性、安全性和灵活性而广受欢迎。
Linux系统广泛应用于服务器、嵌入式系统和个人电脑。
以下是一些常见的Linux考试题目及其答案,供学习者参考。
题目1:Linux操作系统的主要特点是什么?答案:Linux操作系统的主要特点包括开源性、多用户多任务、良好的网络功能、丰富的软件资源、高度的可定制性、良好的安全性和稳定性。
题目2:请解释什么是Linux内核?答案:Linux内核是Linux操作系统的核心部分,负责管理系统资源,如CPU时间、内存、文件系统和外围设备。
它提供了操作系统的基本功能,如进程管理、文件系统管理、网络通信等。
题目3:如何在Linux系统中查看当前登录用户?答案:可以使用`who`命令来查看当前登录的用户。
此外,`w`命令可以显示当前登录的用户以及他们正在运行的进程。
题目4:请说明Linux系统中的文件权限是如何表示的?答案:Linux系统中的文件权限通常以10个字符表示,前三个字符表示所有者权限,中间三个表示所属组权限,最后四个表示其他用户权限。
权限字符包括:r(读)、w(写)、x(执行)和-(无权限)。
例如,`-rw-r--r--`表示所有者有读写权限,所属组和其他用户只有读权限。
题目5:如何使用命令行在Linux系统中创建一个新文件?答案:可以使用`touch`命令来创建一个新文件,例如`touchfilename`。
如果文件已存在,则`touch`命令会更新文件的访问和修改时间。
题目6:请解释Linux系统中的软链接和硬链接的区别。
答案:硬链接是指向文件inode的另一个目录项,它和原文件是同一个文件系统上的文件,删除原文件会导致硬链接失效。
软链接(符号链接)则类似于Windows中的快捷方式,它是一个指向原文件路径的文件,可以跨文件系统。
题目7:如何在Linux中查看系统运行的进程?答案:可以使用`ps`命令查看当前运行的进程,例如`ps aux`会显示所有用户的进程信息。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
凌阳教育嵌入式培训系统编程部分测试试题注:考试为闭卷,程序题需上机操作运行出结果,考试时间为120分钟一:选择题(本题共4小题,每题3分共12分)1)下列不是Linux系统进程类型的是( D )A 交互进程B 批处理进程C 守护进程D 就绪进程(进程状态)2)以下对信号的理解不正确的是( B )A 信号是一种异步通信方式B 信号只用在用户空间进程通信,不能和内核空间交互C 信号是可以被屏蔽的D 信号是通过软中断实现的3)进程有三种状态( C )A 准备态、执行态和退出态B 精确态、模糊态和随机态C 运行态、就绪态和等待态D 手工态、自动态和自由态4)不是进程和程序的区别( B)A 程序是一组有序的静态指令,进程是一次程序的执行过程B 程序只能在前台运行,而进程可以在前台或后台运行C 程序可以长期保存,进程是暂时的D 程序没有状态,而进程是有状态的二:填空题(本题共6小题,2)、3)两题每空四分,其余每空一分。
共23分)1) 列举八种常见的进程间通信方式无名管道、有名管道、消息队列、信号量、共享内存、信号、套接字网络上两个主机的进程间通信方式为套接字2) 命名管道比无名管道的优势提供了一个可以访问的路径名,实现没亲缘关系的进程间通信3) 消息队列比命名管道和无名管道的优势可以按类型实现消息的随机查询,没必要先进先出4) 按照逻辑结构不同进行数据库划分,Sqlite 数据库属于哪一类关系型数据库5) 在C语言中操作sqlite数据库,常用的2中方式是sqlite_exec(回调)、sqlite_gettable(非回调)6) 列举四种进程调度算法先来先调度(FCFS)、短进程优先调度(SPF)、高优先级调度(HPF)、时间片轮转调度三:问答题(本题共7题,每题5分,共35分)1) 什么是系统调用?系统调用是通过什么方式陷入内核态的?请写出你对系统调用的理解。
什么是文件I/O和标准I/O库?文件I/O和标准I/O库的区别?系统调用是指操作系统提供给用户程序调用的一组特殊接口,用户程序可以通过这组接口获得操作系统内核提供的服务。
系统调用是通过软件中断方式陷入内核的linux的文件I/O是由操作系统提供的基本IO服务, 标准I/O库通过封装系统调用,提供了一个到底层I/O的接口。
标准I/O默认采用了缓冲机制,还创建了一个包含文件和缓冲区相关数据的数据结构;文件I/O一般没有采用缓冲模式,需要自己创建缓冲区。
一种是标准库封装系统调用而成,更高级,一种是系统提供的,比较低级;标准I/O可移植性高、文件I/O可移植性低。
2) 什么是进程?用fork()创建一个子进程时,系统会做什么工作进程是具有独立功能的程序关于某个数据集合上的一次运行活动,是系统进行资源分配的单位,不仅是系统内部独立运行的实体也是独立竞争资源的实体。
用fork()时系统会分配子进程一个ID号然后继承父进程的地址空间,包括进程上下文进程堆栈打开的文件描述符等等,他就是父进程的一个复制品。
3) 进程和线程有什么区别?每个独立的进程有一个程序运行的入口、顺序执行序列和程序的出口。
但是线程不能够独立执行,必须依存在进程程中,由进程提供多个线程执行的控制。
进程是系统进行资源分配和调度的一个独立单位. 线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位.线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源但是它可与同属一个进程的其他的线程共享进程所拥有的全部资源.一个线程可以创建和撤销另一个线程;同一个进程中的多个线程之间可以并发执行。
4) 什么是线程的互斥和同步,程序应怎样写才能达到互斥或同步?互斥:是指某一资源同时只允许一个访问者对其进行访问,具有唯一性和排它性。
但互斥无法限制访问者对资源的访问顺序,即访问是无序的。
同步:是指在互斥的基础上(大多数情况),通过其它机制实现访问者对资源的有序访问。
在大多数情况下,同步已经实现了互斥,特别是所有写入资源的情况必定是互斥的。
少数情况是指可以允许多个访问者同时访问资源。
在写程序时可以用互斥锁和信号量实现线程同步,一个线程访问共享资源时给这个资源上锁其他线程就不能访问了直到上锁的进程释放互斥锁为止。
5) 什么是僵尸进程?孤儿进程?守护进程?僵尸进程:僵尸进程是指它的父进程已经退出(父进程没有等待(调用wait/waitpid)它),而该进程dead之后没有进程接受,就成为僵尸进程,也就是(zombie)进程。
孤儿进程:一个父进程退出,而它的一个或多个子进程还在运行,那么那些子进程将成为孤儿进程。
孤儿进程将被init进程(进程号为1)所收养,并由init进程对它们完成状态收集工作。
守护进程:是指在UNIX或其他多任务操作系统中在后台执行的电脑程序,并不会接受电脑用户的直接操控。
此类程序会被以进程的形式初始化。
守护进程程序的名称通常以字母“d”结尾:例如,syslogd就是指管理系统日志的守护进程。
通常,守护进程没有任何存在的父进程(即PPID=1),且在UNIX系统进程层级中直接位于init之下。
守护进程程序通常通过如下方法使自己成为守护进程:对一个子进程调用fork,然后使其父进程立即终止,使得这个子进程能在init下运行。
这种方法通常被称为“脱壳”6) 有3个线程:A、B、C,现要求A先执行,然后B再执行,最后C再执行,之后A->B->C循环执行,请说出大体的思路?创建3个信号量sem_A、sem_B、sem_C,分别用来给A、B、C 3个线程,启动sem_A信号量的初始值为1,其余2个信号量初始值为0,当主线程创建3个子线程后,因为sem_A 的值大于0,所以只有A线程执行相关的代码,B、C线程堵塞在对sem_B、sem_C信号量的p操作;当A线程执行完相应的代码后,给sem_B信号量加1,之后B线程开始执行相关操作,在此时A线程堵塞在对sem_A信号量的p操作,C线程继续堵塞;当B线程执行完毕相关操作后,给sem_C进行V操作,B线程堵塞,C线程执行相关操作;以上是从A->B->C线程执行的流程.7) exit()、_exit()和return()的区别?exit():结束当前的进程,并且会刷新缓存区,关闭没有关闭的文件等_exit():结束当前的进程,不对缓存区刷新return:1:在main函数中会结束当前进程2:在子函数中,会返回调用当前函数的调用位置,进程从下个C语句开始执行四:程序题(本小题共3题,每题10分共30分)1)用多线程、信号量实现生产者和消费者的模拟,仓库容量为10,仓库中开始有3件产品,消费者每3秒消费一件产品,生产者每两秒生产一个产品,生产者和消费者不能同时进入仓库(需要互斥)//信号量---线程间通信//“生产者消费者”问题#include<stdio.h>#include<stdlib.h>#include<unistd.h>#include<semaphore.h>#include<pthread.h>#define msleep(x)usleep(x*1000)#define PRODUCT_SPEED 3 //生产速度#define CONSUM_SPEED 1 //消费速度#define INIT_NUM 3 //仓库原有产品数#define TOTAL_NUM 10 //仓库容量sem_t p_sem, c_sem, sh_sem;int num=INIT_NUM;void product(void) //生产产品{sleep(PRODUCT_SPEED);}int add_to_lib() //添加产品到仓库{num++;//仓库中的产品增加一个msleep(500);return num;}void consum() //消费{sleep(CONSUM_SPEED);}int sub_from_lib() //从仓库中取出产品{num--; //仓库中的产品数量减一msleep(500);return num;}void *productor(void *arg) //生产者线程{while(1){sem_wait(&p_sem);//生产信号量减一product();// 生产延时sem_wait(&sh_sem);//这个信号量是用来互斥的printf("push into! tatol_num=%d\n",add_to_lib());sem_post(&sh_sem);sem_post(&c_sem); //消费信号量加一}}void *consumer(void *arg) //消费者线程{while(1){sem_wait(&c_sem); //消费者信号量减一sem_wait(&sh_sem);printf("pop out! tatol_num=%d\n",sub_from_lib());sem_post(&sh_sem);sem_post(&p_sem);//生产者信号量加一consum();//消费延时}}int main(){pthread_t tid1,tid2;sem_init(&p_sem,0,TOTAL_NUM-INIT_NUM);sem_init(&c_sem,0,INIT_NUM);sem_init(&sh_sem,0,1);pthread_create(&tid1,NULL,productor,NULL);pthread_create(&tid2,NULL,consumer,NULL);pthread_join(tid1,NULL);pthread_join(tid2,NULL);return 0;}2)编写一个多线程的程序:要求:1、创建2个子线程,主进程要传递3个参数给线程1,传递另一个参数给线程2;2、线程1、线程2中对每个传给线程的参数加1,等线程都执行完毕后,进程打印出四个参数的值。
3、传给线程1参数的值必需要能够改变,传给线程2参数的值必需不能改变#include <stdio.h>#include <unistd.h>#include <pthread.h>typedef struct{int A;int B;int C;}DATA;/*传参方法1*/void *thread_1(void *arg){DATA *rec;sleep(1);rec = (DATA *)arg;rec->A += 1;rec->B += 1;rec->C += 1;return NULL;}/*传参方法2*/void *thread_2(void * arg){int rec = 0;sleep(1);rec = (int )(arg);rec ++;return NULL;}int main(int argc, char *argv[]){pthread_t tid1,tid2;DATA test;int D = 100;test.A = 100;test.B = 100;test.C = 100;/*创建两个线程*/pthread_create(&tid1, NULL, (void *)thread_1, (void *)(&test));pthread_create(&tid2, NULL, (void *)thread_2, (void *)D);pthread_join(tid1, NULL);pthread_join(tid2, NULL);printf("A=%d\n", test.A);printf("B=%d\n", test.B);printf("C=%d\n", test.C);printf("D=%d\n", D);return 0;}3) 编制一段程序,实现进程的管道通信:使用系统调用pipe()建立一条管道线,2个子进程分别向管道各写一句话:Child process 1 is sending a message!Child process 2 is sending a message!而父进程则从管道中读出来自于2个子进程的信息,显示在屏幕上。