《Linux操作系统》实验报告模板

合集下载

Linux操作系统实验实验报告

Linux操作系统实验实验报告

L i n u x操作系统实验实验报告Document number:NOCG-YUNOO-BUYTT-UU986-1986UT实验1:安装Linux系统【实验目的和要求】:安装Linux系统,掌握操作系统的系统配置,建立应用环境的过程。

【实验内容】:1、首先在windows系统中安装虚拟机。

在网上找到VMwareWorksttionPro版本,确定安装目录。

一直下一步,不需要太多的说明。

2、图为安装完成后的界面。

3、然后在阿里巴巴开源镜像网站下载centos系统镜像,然后虚拟机创建新的虚拟机,进行一些简单的虚拟机设置,设置了网络链接nat模式等等。

安装完成后的界面实验2:Linux下c语言开发【实验目的】:学会和掌握用c语言开发一个应用程序的全过程,包括,编译,调试等等。

【实验步骤】:首先在系统中查看是否已经安装有gcc,输入查看命令发现没有,于是需要安装gcc。

在centos系统中可以使用比较简便的yum命令。

在之前已经配置好了yum源。

直接输入yuminstallgcc。

回车自动安装程序和需要的依赖包。

因为虚拟机中和电脑很多地方切换使用不方便,所以安装了xshell软件。

图为xshell中的截图。

安装完毕。

然后使用vi或者vim编写运行,在屏幕上打印出hello,world。

实验3:进程创建【实验目的和要求】1.了解进程的概念及意义;2.了解子进程和父进程3.掌握创建进程的方法。

【实验内容】1.子进程和父进程的创建;2.编写附件中的程序实例【实验步骤】一1、打开终端,输入命令,在文件中输入中的代码;2、输入命令,回车后显示无错误;3、输入命令:./1_fork运行程序。

二、1、打开终端,输入命令,在文件中输入中的代码;2、输入命令,回车后显示无错误:3、输入命令:./2_vfork运行程序。

从上面可以看到两次的运行结果不一样。

我们知道write函数是不带缓存的。

因为在fork之前调用write,所以其数据写到标准输出一次。

linux操作系统 实验报告

linux操作系统 实验报告

linux操作系统实验报告Linux操作系统实验报告一、引言Linux操作系统是一种开源的、免费的操作系统,其内核由Linus Torvalds于1991年首次发布。

Linux操作系统具有稳定性高、安全性强、灵活性大等优点,因此在互联网、服务器、嵌入式系统等领域得到广泛应用。

本实验报告将介绍Linux操作系统的基本特点、安装过程以及常用命令的使用。

二、Linux操作系统的基本特点1. 开源性Linux操作系统的内核及相关软件源代码对用户开放,任何人都可以查看、修改和分发。

这使得Linux操作系统具有高度的透明度和可定制性,用户可以根据自己的需求进行定制和优化。

2. 多用户、多任务Linux操作系统支持多用户同时登录,并且可以同时运行多个任务。

这使得多个用户可以在同一台计算机上独立地进行工作,提高了计算机的利用率。

3. 稳定性和安全性Linux操作系统具有良好的稳定性和安全性。

由于其内核的设计和实现方式,Linux操作系统可以长时间运行而不会出现系统崩溃或死机的情况。

同时,Linux操作系统提供了丰富的安全机制,如文件权限控制、用户身份验证等,可以有效保护系统和用户的数据安全。

三、Linux操作系统的安装过程1. 准备安装介质在安装Linux操作系统之前,需要准备一个可启动的安装介质,如光盘或USB闪存驱动器。

这些介质可以从Linux官方网站或其他可信渠道下载。

2. 进入安装界面将安装介质插入计算机,并按下开机键启动计算机。

在启动过程中,选择从安装介质启动。

随后,将进入Linux操作系统的安装界面。

3. 设置安装选项在安装界面中,可以设置安装选项,如语言、时区、键盘布局等。

根据实际需要进行选择和设置。

4. 分区和格式化磁盘在安装界面中,可以对硬盘进行分区和格式化操作。

根据实际需求,可以选择使用整个硬盘或者将硬盘分为多个分区。

5. 安装系统在分区和格式化完成后,可以开始安装Linux操作系统。

根据安装界面的提示,选择安装位置和安装选项,然后等待安装过程完成。

linux操作系统实验报告--

linux操作系统实验报告--
2.确定设备的名称:
# cat /var/log/messages
3.挂载fat32的分区:
# mount -o codepage=936,iocharset=cp936 /dev/hda7 /mnt/cdrom(加入参数codepage=936和iocharset=cp936是为了支持中文文件名),最终fat32分区被挂载到/mnt/cdrom下。
实验过程:
一.压缩、解压缩命令:
1.在/root目录下建立新目录student:# mkdirstudent
2.进入student目录
# cd student
在student目录下建立目录stu1、stu2,文件test1、test2
# mkdir stu1
# mkdir stu2
# touch test1
④ntfs:Windows文件系统。
⑤hpfs:OS2用的文件系统。
⑥iso9660:CD-ROM光盘的标准文件系统。
确定设备的名称:在Linux操作系统中,设备文件通常都在/dev目录里。可以直接检查/var/log/messages这个文件,在该文件中可以找到计算机开机后系统已辨认出来的设备代号:# cat /var/log/messages
获得系统支持的文件系统类型,使用如下命令:# cat /proc/filesystems
如果系统并不支持要挂载设备的文件系统类型,那可能需要重新编译内核以使其增加对该种文件类型支持。
常用的文件系统有:
①ext3:Linux的文件系统
②ext2:Linux的文件系统
③vfat:Windows的FAT32文件系统,也兼容FAT16的文件系统类型
说明:
shell从字面上翻译是外壳,它是一个壳层,而这个壳层介于用户与操作系统间,负责将用户的命令解释为操作系统可以接受的低级语言,以及将操作系统相应的信息以用户可以了解的方式来显示,如缺少它,则用户与操作系统将完全被阻隔而无法沟通。

Linux操作系统实验报告

Linux操作系统实验报告

实验报告实验名称Linux操作、使用、编程指导教师杨健实验类型验证实验学时2+2 实验时间2007.10.29 1、实验目的和要求1.能够安装某Linux发行版本(例如Red Hat)2.了解Linux的启动过程3.了解Linux文件的组织结构4.熟悉X Window 环境5.练习使用Linux 常用命令6.熟练使用Linux的C语言开发环境7.学习并掌握Linux 编译工具gcc 的使用方法8. 熟练使用Linux的C语言开发环境9. 学习并掌握Linux 编译工具gcc 的使用方法10. Linux操作系统下的熟悉并能够进行进程创建11. 掌握Linux操作系统下的并发进程间同步12. 掌握Linux操作系统下的进程间通信IPC二、实验环境(实验设备)Windows 2000 + VMWare + RedHat Linux 8三、实验原理及内容熟悉了vim的操作,知道它的打开方式,编译方法,和运行方法。

了解了vim的常见的命令。

实验报告pid_t pid; //pid_t是Linux下的进程号类型,也就是Process ID _ Type 的缩写。

其实是宏定义的//unsigned int a类型int data=5;if((pid=fork())<0) /*错误处理,此处的pid的值,可以说明fork调用后,目前执行的是父进程还是子进程*/{printf("fork error\n");exit(0);}else if(pid==0) /*这是新进程*/{data--;printf("child\'s data is:%d\n",data);exit(0);}else /*这是最初的父进程*/{printf("parent\'s data is:%d\n",data);}exit(0);}/*fork函数被调用一次但返回两次。

操作系统-Linux课程实验报告

操作系统-Linux课程实验报告

实验1.1、1.2 Linux Ubuntu的安装、创建新的虚拟机VMWare实验1.3 Shell编程1.实验目的与内容通过本实验,了解Linux系统的shell机制,掌握简单的shell编程技巧。

编制简单的Shell程序,该程序在用户登录时自动执行,显示某些提示信息,如“Welcome to Linux”, 并在命令提示符中包含当前时间、当前目录和当前用户名等基本信息。

2.程序源代码清单#include<stdio.h>#include<sys/wait.h>int main(){printf("Hello Linux\n");int pid;int state;int pfd[2];pipe(pfd);if (fork()==0){printf("In the grep progress\n");dup2(pfd[0],0);close(pfd[0]);close(pfd[1]);execlp("grep","grep","sh",0);perror("exelp grep error");}esle if(fork()==0){printf("In the ps progress\n");dup2(pfd[1],1);close(pfd[0]);close(pfd[1]);execlp("ps","ps","-ef",0);perror("execlp ps -ef");}close(pfd[1]);close(pfd[0]);wait(&state);wait(&state);}实验2.3 内核模块实验步骤:(1).编写内核模块文件中主要包含init_clock(),exit_clock(),read_clock()三个函数。

Linux操作系统第二次实验报告

Linux操作系统第二次实验报告
实验内容及实验记录:
1.打开终端窗口。在当前目录下,创建测试目录*test(其中*为学生姓名拼音首字母组合)。
2.利用ls命令列出文件和目录,确认*test目录创建成功。
3.进入test目录,利用pwd命令查看当前工作目录。
4.利用touch命令,在当前目录创建一个新的空文件*file(其中*为学生姓名拼音首字母组合)。
15.进入*test目录,显示目录中的文件列表。查找当前用户的主目录下的所有名为*file的文件。
16.删除*test子目录下的所有文件。利用rmdir命令删除空目录*test。
17.回到上层目录,利用rm命令删除目录*test和其下所有文件。
指导教师评语:
实验报告
课程名称:Linux操作系统
任课教师:
授课学期:
学生班级:
学生姓名:
实验题目:文件和目录的命令行操作
实验成绩:
指导教师:
实验室:
日期:
节数:2
实验目的:
1.熟悉各类文件操作命令。
2.掌握基于命令行的文件操作。
3.熟悉目录操作命令。
4.掌握基于命令行的目录操作。
实验仪器、物品:已安装好Ubuntu桌面操作系统。
12.删除文件profile,用长格式显示文件lnsprofile和lnhprofile的详细信息,比较文件lnhprofile的链接数的变化。
13.把文件*file(其中*为学生姓名音首字母组合)改名为backupfile。显示当前目录下的文件和目录列表,确认重命名成功。
14.把文件backupfile移动到*test目录下。显示当前目录下的文件和目录列表,确认移动成功。
9.用grep命令在profile文件中对关键字then进行查询,并与上面的结果比较。

linux操作系统实验报告

linux操作系统实验报告

linux操作系统实验报告第一篇:linux操作系统实验报告Linux实验报告一一、实验步骤及内容1.虚拟机软件的安装(1)先准备虚拟机安装包。

(2)更改安装路径:“D: VMwareVMware Workstationvmware.exe”(3)输入序列号:ctrl+v,在安装过程中不能进行复制剪切操作。

(4)不能重新启动,才能继续安装汉化版D: vmwarevmware workstation2.新建一个虚拟机并进行配置(1)单击新建虚拟机虚拟机的类型选择:典型安装选择客户端操作系统:linux虚拟机的名字及位置根据需要网络类型选择:,桥接。

指定的磁盘容量删除软驱:双击floppy—remove虚拟内存设置:双击memory—1024MB设置linux的安装文件:选择安装镜像文件—指定第一个安装文件—就可以啦!之后会提示安装第二个安装文件就进行选择第二个中间鼠标切换用CTRL+ALT。

3.安装LINUX操作系统(1)要确定鼠标是否在虚拟机的激活状态下:敲回车不需要检测安装文件选择skip进入linux的安装前的配置选项:选择安装的语言—中文简体键盘:--默认鼠标:--默认安装类型:--workstation磁盘分区:--自动分区引导程序:默认网络配置:默认防火墙:无防火墙支持的语言:中文时区:亚洲-上海密码:root123456安装的软件包:全部。

二.在已有虚拟机软件的基础上安装LINUX的技巧。

(1)新建虚拟机—典型安装—linux ,red hat linux---给虚拟机命名,并且指定安装位置d:red hat linux---桥接---10G。

(2)在刚才建立的虚拟机上安装linux系统.(3)配置要安装的linux系统的安装文件iso镜像文件(4)选择配置好linux镜像文件刚才建立的虚拟机,启动虚拟机,开始安装。

三.实验总结充分了解linux系统的安装,学会新建虚拟机,在虚拟机上安装linux系统.和一些简单的技巧并对此门课程有了一定的兴趣。

操作系统Linux系统的使用实验报告1

操作系统Linux系统的使用实验报告1

实验课程名称:《操作系统》实验项目名称L i n u x系统的使用实验成绩实验者专业班级组别同组者实验日期年月日第一部分:实验分析与设计(可加页)一、实验预习报告(实验目的,主要设备、仪器,基本原理、实验步骤等)(可加页)实验目的和要求:Linux键盘命令和字符界面编辑器vi要求:掌握Linux系统键盘命令和vi的使用方法。

⑴熟悉开机后登录Linux系统和退出系统的过程;⑵熟悉Linux字符界面——虚拟终端窗口和shell,练习并掌握常用的Linux操作命令,如ls、cat、ps、df、find、grep、cd、more、cp、rm、mv、mkdir、rm、chmod、chown、passwd、kill、who、ln、control+d/c等;熟悉常用shell的提示符;熟悉图形界面——X-Window(如gnome或KDE)以及字符窗口与图形界面之间的切换(若实验条件允许)。

⑶学习使用Linux的在线求助系统,如man和help命令等。

⑷掌握一种Linux的编辑器,特别是字符界面的vi工具的使用。

⑸用vi编辑一个打印“Hello,I am a C program”字串的C语言程序,然后编译并运行它,记下整个过程。

熟悉gc编译器的使用。

二、实验过程记录(包括实验内容、数据记录、实验现象等)(可加页)1 首先用root创建新的用户如下图1-1所示图1-12 熟悉Linux字符界面——虚拟终端窗口和shell,练习并掌握常用的Linux操作命令,操作如图2-1所示Ls-l命令显示所有文件名字权限,创建时间等。

⑶学习使用Linux的在线求助系统,如man和help命令等。

操作如图3-1图3-1 通过输入help得到一些函数的使用方法和信息⑷掌握一种Linux的编辑器,特别是字符界面的vi工具的使用。

操作如图4-1,4-2所示输入vi yxq.c创建并进入vi编辑器图4-1输入i进入编辑模式,程序编辑完成按Ese键,在如入:wq保存并退出图4-2⑸用vi编辑一个打印“Hello,I am yxq”字串的C语言程序,然后编译并运行它,记下整个过程。

linux操作系统实验报告参考模板

linux操作系统实验报告参考模板

一、设计题目进程管理及理解和增加Linux系统调用二、设计时间和地点设计时间:2011年12月26日——2011年12月29日设计地点:装备制造学院B座502机房三、设计目的和要求(1)加深对进程概念的理解,明确进程和程序的区别。

(2)进一步认识并发执行的实质。

(3)分析进程争用资源的现象,学习解决互斥的方法。

(4)了解Linux系统中进程通信的基本原理。

(5)弄清进程管理在操作系统中的地位和作用。

(6)初步揭开Linux内核的神秘“面纱”,为今后深入学习内核原理打下基础。

(7)弄清系统调用原理,以及操作系统在处理每个系统调用的时候,用户态怎样切入核心态?又怎样从核心态返回到用户态的?四、设计内容(1)实验准备a. 基本头文件<sys/types.h>:类型头文件,定义了基本的系统数据类型。

<unistd.h>:定义了各种符号常数和类型,并声明了各种函数。

<stdio .h>带缓冲的标准输入输出!<stdlib.h>头文件即standard library标准库头文件b.vi编辑器的基本使用[root@localhost ~]# vi filenameCommand 模式是vi默认模式,如果我们处于其它命令模式时,当我们按ESC键后,接着再输入:号时,vi会在屏幕的最下方等待我们输入命令;:w 保存;:w filename 另存为filename;:wq! 保存退出;:wq! filename 注:以filename为文件名保存后退出;:q! 不保存退出;c.gcc的基本使用1、直接编译gcc filename.c -o filename2、分步编译进行预编译# gcc -E hello.c -o hello.i生成目标代码# gcc -c hello.i -o hello.o链接成可执行文件# gcc hello.o -o hellod.U盘的挂载与卸载先要为外挂点新建一个子目录,一般外挂点的子目录都是建立在/mnt里面的,也建在那里,当然也可以建在/目录下,名字可以自己定,就取名为usb,终端下的命令如下:mkdir /mnt/usb然后接上U盘了,在终端下输入mount /dev/sdb1 /mnt/usb命令并击Enter删除挂起点,方法是:umount /dev/sdb1 /mnt/usb 或 umount /dev/sdb1(2)设计内容1、进程的创建编写一段程序,使用系统调用fork()创建两个子进程。

linux实验报告总结-共10篇

linux实验报告总结-共10篇

∣inux实验报告总结(共10篇)(Linux实验报告汇总)(一)Shell 编程一、实验目的:1)掌握在Linux下的C编程基本方法。

2)掌握shell编程方法。

3)掌握dialog图形化编程方法。

二、实验内容1、编写能输出“Hello world!”问候语的C程序,并在终端中编译、执行。

要求记录所使用的命令及结果。

#include stdio.hmain()(printf(Hello world!\n);)2、编写一个C程序并设置其在后台执行,其功能是在一段时间后(可自行设置),在屏幕上显示信息:Time for play!,写出相应的程序、命令及结果。

#include stdio.hmain()(int time=0;printf(请输入等待时间(单位:s):);scanf(%d/&amp;time);sleep(time);printf(Time for play!\n);)3、编写C程序,求1到100之间整数的阶乘和,并对程序进行优化。

写出程序、命令和结果。

#include stdio.hmain()int i;double s = l,sum = 0;for( i= l;i= 100;i++)sum+=s*=i;printf( 1到100之间整数的阶乘和:%f\n,sum);printf( 1到100之间整数的阶乘和:%e\n,sum);}4、编写C程序,根据键盘输入的半径求圆面积,要求在命令行周率(P∣=3∙14,PI=3∙14159,PI=3.14159626 等)进行编使用不同的译,写出程序、命令和结果。

#include stdio.hint main()double r = 0.0 , Area = 0.0;printf(请输入半径:);scanf(%lf, &amp;r);Area = PI * r * r;printf(圆面积:%f∖n, Area);)5、编写shell程序sh.l,完成向用户输出“你好!”的问候语。

操作系统linux版实验报告

操作系统linux版实验报告

操作系统实验报告(Linux版)网络142 豹 142999实验一观察Linux进程状态一、实验目的在本实验中学习Linux操作系统的进程状态,并通过编写一些简单代码来观察各种情况下,Linux进程的状态,进一步理解进程的状态及其转换机制。

二、实验环境硬件环境:计算机一台,局域网环境;软件环境:Linux Ubuntu操作系统,gcc编译器。

(四)查看“不可中断阻塞”状态(D)创建一个C程序,如uninter_status.c,让其睡眠30s代码:#include<unistd.h>#include<stdio.h>int main(){int i=0,j=0,k=0;for(i=0;i<1000000;i++){for(j=0;j<1000000;j++){k++;k--;}}}实验结果:(二)查看“暂停”状态(T)运行run_status进程,其进入R状态:代码同上:(三)查看“可中断阻塞”状态(S)创建一个C程序,如interruptiblie_status.c,让其睡眠30s 编译,后台运行该程序(后接&符号),并使用ps命令查看运行状态代码:#include<unistd.h>#include<stdio.h>int main(){sleep(30);return;}实验结果:(四)查看“不可中断阻塞”状态(D)创建一个C程序,如uninter_status.c,让其睡眠30s编译,后台运行该程序(后接&),并使用ps命令查看运行状态代码:#include<unistd.h>#include<stdio.h>int main(){if(vfork()==0)sleep(300);return;}}实验结果:(五)查看“僵尸”进程(Z)创建一个C程序,如zombie_status.c,在其中创建一个子进程,并让子进程迅速结束,而父进程陷入阻塞编译,后台运行该程序(后接&),并使用ps命令查看运行状态(30s)代码:#include<unistd.h>#incldue<stdio.h>int main(){if(fork()){sleep(300);}}实验结果:实验二观察Linux进程/线程的异步并发执行一、实验目的通过本实验学习如何创建Linux进程及线程,通过实验,观察Linux进程及线程的异步执行。

linux操作系统实验报告【范本模板】

linux操作系统实验报告【范本模板】

LINUX操作系统实验报告姓名班级学号指导教师2011 年05月16 日实验一在LINUX下获取帮助、Shell实用功能实验目的:1、掌握字符界面下关机及重启的命令.2、掌握LINUX下获取帮助信息的命令:man、help。

3、掌握LINUX中Shell的实用功能,命令行自动补全,命令历史记录,命令的排列、替换与别名,管道及输入输出重定向。

实验内容:1、使用shutdown命令设定在30分钟之后关闭计算机.2、使用命令“cat /etc/cron.daliy”设置为别名named,然后再取消别名。

3、使用echo命令和输出重定向创建文本文件/root/nn,内容是hello,然后再使用追加重定向输入内容为word。

4、使用管道方式分页显示/var目录下的内容。

5、使用cat显示文件/etc/passwd和/etc/shadow,只有正确显示第一个文件时才显示第二个文件。

实验步骤及结果:1.用shutdown命令安全关闭系统,先开机在图形界面中右击鼠标选中新建终端选项中输入命令Shutdown -h 302、使用命令alias将/etc/cron。

daliy文件设置为别名named,左边是要设置的名称右边是要更改的文件。

查看目录下的内容,只要在终端输入命令即可。

取消更改的名称用命令unalias命令:在命令后输入要取消的名称,再输入名称。

3.输入命令将文件内容HELLO重定向创建文本文件/root/nn,然后用然后再使用追加重定向输入内容为word。

步骤与输入内容HELLO一样,然后用命令显示文件的全部内容。

4。

使用命令ls /etc显示/etc目录下的内容,命令是分页显示。

“|”是管道符号,它可以将多个命令输出信息当作某个命令的输入。

5实验二文件和目录操作命令实验目的:1、掌握LINUX下文件和目录的操作命令,如pwd、cd、ls、touch、mkdir、rmdir、cp、mv、rm等。

2、掌握LINUX下建立链接文件的方法。

linux操作系统实验报告书

linux操作系统实验报告书

linux操作系统实验报告书(1)一.实验名称:Linux基本命令的使用二.实验目的:1.进一步练习Linux登录和退出的方法2.练习与目录和文件操作相关的Linux命令:cd:切换目录mkdir:建立一个新目录cp:文件拷贝ls:显示目录及文件的内容mv:更改文件名称cat、more、less:浏览文件内容chmod:更改文件或目录的访问权限rm:删除文件rmdir:删除目录三.实验内容:1.登录进入Linux 系统。

2.将工作目录切换到根目录,用ls命令查看根目录下的内容,尝试使用-a,-l,-F,-A,-lF等不同选项并比较不同之处。

3.在家目录下建立一个名为test的新目录,将工作目录切换到test下,然后将/tmp下的文件lesson.log拷贝到该目录下,并将lesson.log用mv命令改名为:TestRenName.txt。

4.用cat命令浏览文件TestRenName.txt的内容,用more命令进行浏览翻页操作。

再用less命令浏览文件TestRenName.txt的内容。

5.用ls命令查看test下的文件的权限,并更改文件TestRenName.txt的权限为:只允许自己读写,不允许其他用户访问。

用ls命令查看更改后的结果后再将文件TestRenName.txt的权限更改为系统默认的权限:-rw-r--r--。

6.用rm命令删除test目录下的所有文件,再用rmdir命令删除test目录。

7.用logout命令退出系统。

四.结果分析:五.实验心得*********************************************************************linux操作系统实验报告书(2)一.实验名称:Linux基本命令的使用二.实验目的:1. 掌握监视系统的几个Linux基本命令:PS--查看系统的进程tty--查看当前使用的终端df--查看系统的文件系统的空间使用情况du--查看具体某个文件和目录的磁盘空间的占用情况free--查看使用的内存资源的情况2. 掌握Linux下的联机帮助手册的使用3. 掌握Linux命令的简要帮助的获取方法4. 掌握一些其他常用的Linux命令:cal--显示日历date--显示系统的日期和时间clear--清屏find--查找文件uname--查看系统信息who--查看其他登录的用户which--查看命令的全路径tar--Linux下的压缩与解压缩命令三.实验内容:1.使用ps查看系统的进程运行情况,使用不同的命令选项并比较显示结果的差别;查看当前系统已安装的文件系统的空间使用情况;查看用户的家目录占用了多少空间;查看使用的内存资源的情况.2.查看ls命令的详细使用方法,查看ps命令的详细使用方法.3.获取ls命令的简要帮助信息,获取ps命令的简要帮助信息.4.用cal命令显示日历,用date命令显示系统的日期和时间,用clear清除屏幕,用find命令在系统中查找文件ch1.doc,用uname命令查看系统的信息,用who 命令查看其他登录的用户,用which命令查看一些命令的全路径,用tar命令来压缩test目录下的所有后缀为doc的文件到文件doc.tar.gz中,将doc.tar.gz 复制到用户的家目录并展开压缩文件.四.结果分析:1. 要查看系统的进程运行情况可使用ps命令:[stu@cs-linux stu]$ psPID TTY TIME CMD4442 pts/0 00:00:00 bash11683 pts/0 00:00:00 ps第一列中的PID表示进程编号,第二列中的TTY表示提交该进程的终端号,第三列中的TIME表示该进程已运行的时间,第四列中的CMD表示该进程所对应的命令.如果要显示进程更详细的信息,可以使用参数ps u:[stu@cs-linux stu]$ ps uUSER PID %CPU %MEM VSZ RSSTTY STAT START TIME COMMAND501 4442 0.0 0.3 5560 784 pts/0 S 09:45 0:00 bash501 11684 0.0 0.2 2592 644 pts/0 R 10:16 0:00 ps -uUSER表示进程拥有者,%CPU表示CPU时间的占用比例,%MEM表示内存的占用比例,VSZ表示进程的大小,RSS表示常驻内存部分大小,START表示进程的启动时间.如果要用长格式显示系统进程的信息,可以使用参数ps l:[stu@cs-linux stu]$ ps lFS UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME C MD4 S 501 4174 4173 0 75 0 - 1389 wait4 pts/0 00:00:00 bash0 R 501 4201 4174 0 80 0 - 776 - pts/0 00:00:00 ps要查看当前系统已安装的文件系统的空间使用情况,使用命令df:[stu@cs-linux stu]$ df文件系统1K-块已用可用已用% 挂载点/dev/hda7 9574520 2833764 6254392 32% /none 111472 0 111472 0% /dev/shm/dev/hda5 30701232 13538096 17163136 45% /mnt/hdd要查看用户的家目录占用了多少空间,先将工作目录切换到家目录,再使用命令du:[stu@cs-linux stu]$ du12 ./.kde/Autostart16 ./.kde8 ./.xemacs4 ./test64 .以上结果表示家目录公占用64KB的空间.要查看使用的内存资源的情况,应使用命令free:[stu@cs-linux stu]$ freetotal used free shared buffers cached Mem: 222948 216688 6260 0 17832 92792 -/+ buffers/cache: 106064 116884Swap: 514040 0 514040以上结果表示系统内存及交换空间使用情况.2. 查看ls命令的详细使用方法,使用命令man ls:[stu@cs-linux stu]$ man ls(.......显示内容省略)查看ps命令的详细使用方法,使用命令man ps:[stu@cs-linux stu]$ man ps(.......显示内容省略)3. 获取ls命令的简要帮助信息,可使用命令ls --help:[stu@cs-linux stu]$ ls --help(.......显示内容省略)获取ps命令的简要帮助信息,可使用命令ps --help:[stu@cs-linux stu]$ ps --help(.......显示内容省略)4. 要显示日历可使用命令cal:[stu@cs-linux stu]$ cal六月2004日一二三四五六1 2 3 4 56 7 8 9 10 11 1213 14 15 16 17 18 1920 21 22 23 24 25 2627 28 29 30以上用命令cal不加任何参数时显示当月日历,如果要指定查看某年某月的日历,可以加[月][年]参数,如要查看2004年8月:[stu@cs-linux stu]$ cal 08 2004八月2004日一二三四五六1 2 3 4 5 6 78 9 10 11 12 13 1415 16 17 18 19 20 2122 23 24 25 26 27 2829 30 31要显示系统的日期和时间,可使用命令date:[stu@cs-linux stu]$ date五6月18 11:23:23 CST 2004表示当前时间为2004年6月18日星期五11:23:23.用clear命令清除屏幕,之后将把已前显示的结果清除:[stu@cs-linux stu]$ clear用find命令在系统中查找文件ch1.doc,应首先退出到根目录下,在使用命令find ch1.doc:[stu@cs-linux /]$ cd /[stu@cs-linux /]$ find / -name "ch1.doc"find: /home/wb: 权限不够/home/stu/test/ch1.doc结果表示找到的文件在/home/stu/test/目录下.用uname命令查看系统的信息:[stu@cs-linux /]$ unameLinux用who命令查看其他登录的用户:[stu@cs-linux /]$ whostu tty1 Jun 18 14:22root pts/0 Jun 18 14:23 (:0.0)用which命令查看一些命令的全路径,如查看命令ls和ps的全路径:[stu@cs-linux /]$ which lsalias ls='ls --color=tty'/bin/ls[stu@cs-linux /]$ which ps/bin/ps用tar命令来压缩test目录下的所有后缀为doc的文件到文件doc.tar.gz中,如下:[stu@cs-linux test]$ tar cvf doc.tar.gz *.docch1.docch2.doc[stu@cs-linux test]$ lsch1.doc ch2.doc doc.tar.gz sesson.txt使用命令加参数cvf来打包所有后缀为doc的文件,参数c表示建立新文档,参数v表示在处理过程中显示相关信息,参数f表示以文件方式打包.现test目录下共有doc文件2个,所以显示ch1.doc,ch2.doc.打包后用ls命令查看,发现多了一个doc.tar.gz文件,表明操作成功.将doc.tar.gz复制到用户的家目录并展开压缩文件:[stu@cs-linux test]$ cd ..[stu@cs-linux stu]$ cp test/doc.tar.gz doc.tar.gz[stu@cs-linux stu]$ tar xvf doc.tar.gz *.docch1.docch2.doc[stu@cs-linux stu]$ lsch1.doc ch2.doc doc.tar.gz test第三行的参数x表示解包文件.五.实验心得这一章主要学习了Linux下的一些关于监视系统的命令以及一些常用辅助命令,对于一个Linux的系统管理员,掌握这些命令的使用是非常重要的,因为这些命令不仅可以让系统管理员了解到系统的运行情况,还可以了解到磁盘及内存的占用情况,以便系统管理员根据情况作出相应调整。

linux实验报告

linux实验报告

*************《Linux操作系统》实训报告实验内容:熟悉掌握Linux操作系统实验地点:********************班级:******************姓名:**************学号:************目录一、目的与要求 (1)1. 目的: (1)2. 要求 (1)二、实验方案 (1)实验一、用户及文件管理 (1)1、利用Shell命令管理用户与组群 (1)2、目录操作 (6)3、文件操作 (7)4、设置文件权限 (8)实验二、vi的基本操作 (10)实验三、Linux下C语言编程和调试 (14)实验四、简单shell编程 (16)实验五、FTP服务配置 (16)三、实验总结 (21)一、目的与要求1. 目的:1)要求学生熟悉掌握linux操作系统的用户及文件管理功能;2)要求学生熟悉linux操作系统中vi编辑器的使用;3)基本掌握Linux下C语言编程和调试;4)熟悉linux操作系统下的简单shell编程;5)掌握Linux下FTP服务配置。

2. 要求1)要求利用Linux命令操作完成实验;2)实训报告中体现详细的命令操作步骤。

二、实验方案实验一、用户及文件管理1、利用Shell命令管理用户与组群【操作要求1】新建一名为duser的用户,其口令是“tdd63u2”,主要组群为myusers。

【操作步骤】(1)按下CTRL+ALT+F2组合键,切换到第2个虚拟终端,以超级用户身份登录。

(2)输入命令“useradd -g myusers duser”,建立新用户duser,其主要组群是myusers。

(3)为新用户设置口令,输入命令“passwd duser”,根据屏幕提示输入两次口令。

注意:所输入的口令在屏幕上并不显示出来,而输入两次的目的在于确保口令没有输错。

最后屏幕提示口令成功设置信息。

(4)输入命令“cat /etc/passwd”,查看/etc/passwd文件的内容,发现文件的末尾增加duser用户的信息。

linux操作系统实验报告

linux操作系统实验报告

linux操作系统实验报告Linux操作系统实验报告一、引言在计算机科学领域,操作系统是一种非常重要的软件,它负责管理计算机硬件和软件资源,提供用户与计算机之间的接口。

Linux操作系统是一种开源的、免费的操作系统,它具有高度的可定制性和稳定性,因此在科研、教育和商业领域都得到广泛应用。

本实验报告将介绍我们在课程中对Linux操作系统的实验内容和实验结果。

二、实验目的本次实验的目的是让我们学生通过亲自操作和实践,深入了解Linux操作系统的特点、功能和使用方法。

通过实验,我们将学会如何安装Linux操作系统、使用Linux命令行界面、管理文件和目录、配置网络和安全等。

三、实验环境我们使用的实验环境是一台配置较高的个人计算机,该计算机上安装了虚拟机软件。

我们选择了一款常用的虚拟机软件VirtualBox,并在其上安装了Ubuntu Linux操作系统。

四、实验内容1. Linux操作系统安装我们首先学习了如何在虚拟机上安装Linux操作系统。

通过下载Ubuntu的镜像文件,并创建虚拟机实例,我们成功地完成了Linux操作系统的安装。

在安装过程中,我们需要设置用户名、密码和网络配置等信息。

2. Linux命令行界面Linux操作系统的命令行界面是其最基本的用户接口。

我们学习了一些常用的Linux命令,如cd、ls、mkdir、rm等,用于管理文件和目录。

我们还学习了如何使用管道和重定向符号来处理命令的输入和输出。

3. 文件和目录管理Linux操作系统以文件和目录的形式来组织和管理数据。

我们学习了如何创建、复制、移动和删除文件和目录。

我们还学习了如何修改文件和目录的权限和所有权。

4. 网络配置在现代计算机网络中,网络配置是非常重要的一部分。

我们学习了如何配置Linux操作系统的网络设置,包括IP地址、子网掩码、网关等。

我们还学习了如何使用ping命令测试网络连通性。

5. 安全配置在网络环境中,安全性是一个重要的考虑因素。

LINUX操作系统实验报告..

LINUX操作系统实验报告..

LINUX操作系统实验报告::LINUX操作系统实验报告1、实验目的1.1 理解LINUX操作系统的基本概念1.2 掌握LINUX系统的安装和配置过程1.3 学习LINUX命令行操作和文件管理1.4 探究LINUX操作系统的网络配置和服务管理2、实验环境2.1 操作系统:Ubuntu 20:04 LTS2.2 软件工具:VirtualBox3、实验内容3.1 LINUX系统的安装3.1.1 准备安装盘或镜像文件3.1.2 创建虚拟机并引导安装程序3.1.3 设置分区和文件系统3.1.4 安装引导加载程序3.2 LINUX系统的基本配置3.2.1 设置主机名和网络配置3.2.2 安装基本软件包和驱动程序 3.2.3 配置用户和组权限3.2.4 配置系统服务和启动项3.3 LINUX命令行操作3.3.1 基本命令的使用3.3.2 文件和目录操作3.3.3 系统信息和网络配置命令 3.3.4 进程和服务管理命令3.4 LINUX文件管理3.4.1 文件和目录的创建与删除 3.4.2 文件权限和所有权的管理 3.4.3 文件的复制和移动3.4.4 文件的查找和过滤3.5 LINUX网络配置3.5.1 IP地质和子网掩码的配置3.5.2 网关和DNS的配置3.5.3 网络服务的启动和管理3.5.4 远程登录和文件传输4、实验步骤4.1 安装LINUX操作系统4.1.1 LINUX安装镜像文件并创建虚拟机4.1.2 引导虚拟机并按照安装向导进行安装 4.2 配置LINUX系统4.2.1 设置主机名和网络配置4.2.2 安装必要的软件和驱动程序4.2.3 创建用户和设置用户权限4.2.4 配置系统服务和启动项4.3 使用LINUX命令4.3.1 使用常见的命令操作文件和目录4.3.2 查看和管理系统的进程4.3.3 配置和管理系统服务4.3.4 网络配置和管理命令的使用4.4 文件管理操作4.4.1 创建、复制、移动和删除文件4.4.2 修改文件权限和所有权4.4.3 查找文件和过滤文件内容4.4.4 压缩和解压缩文件4.5 网络配置和服务管理4.5.1 配置IP地质、子网掩码、网关和DNS4.5.2 启动和管理网络服务4.5.3 使用远程登录和文件传输工具5、实验结果与分析在实验过程中,成功完成了LINUX操作系统的安装和配置。

linux操作系统实验报告

linux操作系统实验报告

linux操作系统实验报告Linux 操作系统实验报告一、实验目的本次实验的主要目的是深入了解和熟悉Linux 操作系统的基本操作、命令行使用、文件系统管理以及进程管理等方面的知识和技能。

通过实际操作和实践,提高对 Linux 操作系统的掌握程度,为今后在相关领域的学习和工作打下坚实的基础。

二、实验环境本次实验使用的是虚拟机软件 VirtualBox 安装的 Ubuntu 2004 LTS操作系统。

虚拟机配置为 2GB 内存,20GB 硬盘空间。

实验在Windows 10 操作系统的主机上进行。

三、实验内容及步骤(一)用户和权限管理1、创建新用户使用`sudo adduser <username>`命令创建新用户,例如创建用户名为`testuser` 的新用户。

2、设置用户密码使用`sudo passwd <username>`命令为新用户设置密码。

3、切换用户使用`su <username>`命令切换到新用户。

4、用户权限管理修改`/etc/sudoers` 文件,为新用户赋予特定的权限,例如允许执行特定的管理员命令。

(二)文件和目录操作1、查看文件和目录使用`ls` 命令查看当前目录下的文件和目录,使用`ls l` 命令查看详细信息,包括文件权限、所有者、大小和修改时间等。

2、创建、删除文件和目录使用`touch <filename>`命令创建新文件,使用`mkdir <directoryname>`命令创建新目录。

使用`rm <filename>`命令删除文件,使用`rmdir <directoryname>`命令删除空目录,使用`rm r <directoryname>`命令删除非空目录。

3、复制、移动文件和目录使用`cp <source> <destination>`命令复制文件或目录,使用`mv <source> <destination>`命令移动文件或目录。

Linux操作系统课程实验报告参考模板

Linux操作系统课程实验报告参考模板

Linux操作系统课程实验报告班级:姓名:学号:指导老师:田丽华完成时间:2014年7月目录一、实验目的 (1)二、实验要求 (1)三、实验内容 (1)【第一题】 (1)【第二题】 (2)【第三题】 (4)【第四题】 (4)【第五题】 (5)【第六题】 (8)【第七题】 (12)【第八题】 (14)【第九题】 (15)四、实验过程中出现的问题及解决方法 (17)五、实验体会 (18)六、Linux系统安装报告 (18)一、实验目的熟练掌握Linux操作系统的使用,掌握Linux的各项系统管理功能,掌握Linux下各类网络服务的安装、配置以及使用,并能用shell脚本实现简单的管理任务。

二、实验要求完成实验内容并写出实验报告,报告应具有以下内容:1) 实验目的;2) 实验内容;3) 题目分析及基本设计过程分析;4) 配置文件关键修改处的说明及运行情况,应有必要的效果截图;5) 脚本源程序清单,包括详细注释;6) 实验过程中出现的问题及解决方法;7) 实验体会三、实验内容【第一题】在命令行新建几个用户,如tux,tom,lily等,给每个用户创建密码,并将这几个用户分到同一个组team中。

再新建一个组student,使得tux也为该组用户。

在root用户和新建用户之间切换,验证用户创建成功与否。

(给出相关命令运行结果)(5分)实验分析:这是一道基本的题目,老师上课所讲的创建用户以及创建小组的语句稍加应用便可以轻松完成题目。

创建用户时,用命令useradd,创建小组用groupadd,输密码时用passwd,这样就可以较为迅速完成实验题目。

实验中操作及其注释:[root@localhost ~]# groupadd teacher //添加小组teacher[root@localhost ~]# groupadd student //添加小组student[root@localhost ~]# useradd –g teacher –G student tux//添加用户tux,既属于小组teacher,也属于student[root@localhost ~]# passwd tux //为用户tux添加密码实验过程中出现的问题:这个实验题目比较基础,参照讲义和老师上课提到的方法可以完美解决这个问题,但是有些知识点有些生疏,所以出现一些小错误,不过很快就纠正了,影响不大。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

课程编号:B080103040Linux操作系统实验报告姓名姚柯杰学号******** 班级软工1212 指导教师石凯实验名称Linux操作系统实验开设学期2014-2015第一学期开设时间第11周——第18周报告日期评定成绩评定人石凯评定日期东北大学软件学院实验一熟悉Linux环境一、举例列出常用的shell命令使用方法1.目录操作(1)mkdir abc 创建一个目录abc(2)cd /abc 将工作目录改变到abc(3)cd 改变当前目录到主目录(4)ls 列出当前目录的内容(5)ls -l 输出当前目录内容的长列表,每个目录或文件占一行(6)pwd 显示当前目录的全路径(1)cat mx.c 显示mx.c文件内容(2)more mx.c 分屏显示mx.c内容(3)cat file1 file2 连接file1 和file2(1) cp file1 file2 将文件1复制到文件2(2)mv file1 file2 将文件重命名为file2(3)rm filename 删除文件filename二、通过实例写出Linux下C程序编辑运行过程。

在终端命令下输入vi filename 命令,这里我输入vi helloworld.c 创建并打开helloworld.c 文件按i进入编辑模式,输入下列code:# include <stdio.h>void main(void){Printf(“hello world!\n”);}输入:wq保存退出输入cc helloworld.c编译,在输入./a.out运行三、实验总结在实验一中,我初步对linux有了初步的了解,能熟练目录和文件进行操作,并且能用linux进行基本简单的基于c的编程。

师傅领进门,修行在个人,算是通过这个实验进入了linux的门。

实验二文件操作一、实现CP命令实现思路:提取出源路径和目标路径到函数中,放于定义的两个int变量,定义缓冲区buf,对两个变量进行判断,如果符合要求打开读取源文件信息存于缓冲区,然后写到目标文件中,关闭两个文件以实现等同cp效果。

此处以hello。

C文件为源文件,目标文件1.c。

在调试cp命令中,由于一开始并未定义缓冲区,导致程序出错,后假如缓冲区,程序得以正常运行。

二、实现ls命令实现思路:调用dirent.h来实现打开目录流,定义变量,随后对变量进行判定用opendir、readdir 打开并读取目录流,将值传递给另一个变量,打印出来。

编译源程序并运行:在实现ls命令中使用man手册查找需要的dir等目录流信息,man是个强大的命令,在编程的过程中由于疏忽一开始并未假如判断条件,有些突发情况会难以处理,最后通过课件修过过来。

三、设备文件操作鼠标对应的设备文件是 /dev/input/mice实验三进程间通信(一)进程的创建(必做题)编写一段程序,使用系统调用fork( )创建两个子进程,在系统中有一个父进程和两个子进程活动。

让每个进程在屏幕上显示一个字符;父进程显示字符“a”,子进程分别显示字符“b”和“c”。

试观察记录屏幕上的显示结果,并分析原因。

创建一个新的子进程。

其子进程会复制父进程的数据与堆栈空间。

Fork成功则在父进程会返回新建立的子进程pid,而在新建立的子进程中则返回0。

如果fork失败则直接返回-1。

所以在循环条件上出现上述情况。

修改已编写的程序,将每个进程的输出由单个字符改为一句话,再观察程序执行时屏幕上出现的现象,并分析其原因。

(必做题)子进程创建成功,到下一个while,第二个子进程成功到最后循环,输入parents1-500,随后返回继续上面子进程的循环输出。

【思考题】1.系统是怎样创建进程的?答:在UNIX系统中,只有0进程是在系统引导时被创建的,在系统初启时由0进程创建1进程,以后0进程变成对换进程,1进程成为系统中的始祖进程。

UNIX利用fork( )为每个终端创建一个子进程为用户服务,每个终端进程又可利用fork( )来创建其子进程,从而形成一棵进程树。

2.当前运行的程序(主进程)的父进程是什么?建立如下的c文件来获取pid得到这三个进程pid,可见父进程的pid是5182。

(二)信号量机制实验【实验内容】1.编写一段程序,使用系统调用fork( )创建两个子进程,再用系统调用signal( )让父进程捕捉键盘上来的中断信号(即按ctrl+c键),当捕捉到中断信号后,父进程用系统调用kill( )向两个子进程发出信号,子进程捕捉到父进程发来的信号后,分别输出下列信息后终止:Child process 1 is killed by parent!Child process 2 is killed by parent!父进程等待两个子进程终止后,输出以下信息后终止:Parent process is killed!实验要求:⑴运行程序并分析结果。

⑵如果把signal(SIGINT,stop)放在①号和②号位置,结果会怎样并分析原因。

⑶该程序段前面部分用了两个wait(0),为什么?⑷该程序段中每个进程退出时都用了语句exit(0),为什么?程序代码:# include<stdio.h>#include<stdlib.h># include<signal.h># include<unistd.h>#include<sys/types.h>#include<sys/wait.h>int wait_mark;void waiting(),stop();void main(){ int p1, p2;signal(SIGINT,stop);while((p1=fork())==-1);if(p1>0){//while((p2=fork())= =-1);if(p2>0){ //wait_mark=1;waiting(0);kill(p1,10);kill(p2,12);waiting();waiting();printf("parent process is killed!\n");exit(0);}else{wait_mark=1;signal(12,stop);waiting();lockf(1,1,0);printf("child process 2 is killed by parent!\n");lockf(1,0,0);exit(0);}}else{wait_mark=1;signal(10,stop);waiting();lockf(1,1,0);printf("child process 1 is killed by parent!\n");lockf(1,0,0);exit(0);}}void waiting(){while(wait_mark!=0);}void stop(){wait_mark=0;}(1)当按下ctrl+c中断进程时,程序将执行,父进程打印消息,父进程kill 子进程,子进程1收到消息上锁,打印消息,然后解锁关闭进程,随后子进程2同样操作,在kill子进程后父进程打印消息,中断自身进程。

(2)运行后表面并没有任何改变,在两处加入代码之后,偶尔会出现需要在中断第一次进程后需要进行第二次中断。

在添加两个中段接受指令后,会先执行关于子进程的代码片段。

(3)答:父进程为子进程收尸,防止僵尸程序出现。

(4)答:在调用处强行退出程序,运行一次程序就结束。

(三)进程的管道通信实验(四)【实验内容】1.编制一段程序,实现进程的管道通信。

使用pipe()建立一条管道线。

两个子进程p1和p2分别向管道各写一句话:Child 1 is sending message!Child 2 is sending message!而父进程则从管道中读出来自于两个子进程的信息,显示在屏幕上。

实验要求:运行程序并分析结果。

2.在父进程中用pipe()建立一条管道线,往管道里写一句话,两个子进程接收这句话。

定义缓冲区,创建管道,随后创建进程,将父进程的消息写进缓冲去写进管道再传给写进子进程,子进程接受。

定义一个管道,父进程传递消息到管道,随后创建两个子进程接收这个消息,然后结束进程。

实验小结:再这个实验中一开始打算将两个子进程分开判断,但是常常最后出现结果不是出现僵尸进程就是跳过其中一个子进程结束,最后我觉得既然两个进程同时创建,不如直接将他们一起进行判断。

(四)消息的发送与接收实验【实验内容】1.消息的创建、发送和接收。

使用系统调用msgget( ),msgsnd( ),msgrev( ),及msgctl( )编制一长度为1k的消息发送和接收的程序。

<参考程序>①client.c#include <sys/types.h>#include <sys/msg.h>#include <sys/ipc.h>#define MSGKEY 75struct msgform{ long mtype;char mtext[1000];}msg;int msgqid;void client(){int i;msgqid=msgget(MSGKEY,0777);for(i=10;i>=1;i--){msg.mtype=i;printf(“(client)sent\n”);msgsnd(msgqid,&msg,1024,0);}exit(0);}main( ){client( );}②server.c#include <sys/types.h>#include <sys/msg.h>#include <sys/ipc.h>#define MSGKEY 75struct msgform{ long mtype;char mtext[1000];}msg;int msgqid;void server( ){msgqid=msgget(MSGKEY,0777|IPC_CREAT); do{msgrcv(msgqid,&msg,1030,0,0);printf(“(server)received\n”);}while(msg.mtype!=1);msgctl(msgqid,IPC_RMID,0);exit(0);}main( ){ server( );}1.列出调试通过程序的清单,分析运行结果。

首先运行client.c创建打开消息队列75,往消息对列中传递消息10-1,然后运行serve.c,打开消息队列75,然后接收其中的消息直到消息为假(不存在),退出进程。

相关文档
最新文档