linux实验 (5)
北京 XX 大学
2014学年—2015学年第 1 学期 Linux应用实验报告书实验题目:实验二 Linux环境下编辑器vi/vim的使用
实验环境: Linux环境
实验目的:
1.通过Vi 操作练习,能够熟练使用Vi 中的常见操作。
2.熟悉shell的各项功能。
实验步骤:
1.熟悉Shell环境,使用Shell的各种功能
1)命令补齐功能
用date命令查看系统当前时间,在输入da后,按tab键,让shell 自动补齐命令的后半部分。
用mkdir命令创建新的目录。
首先输入第一个字母m,然后按tab 键,由于以m开头的命令太多,shell会提示是否显示全部的可能命
令,输入n。
令的列表。
●在列表中查找mkdir命令,看看还需要多输入几个字母才能确定
mkdir这个命令,然后输入需要的字母,再按tab键,让shell补齐剩下的命令。
●最后输入要创建的目录名test,按回车键执行命令。
多试几个命令利用tab键补齐。
2)命令别名功能
●输入alias命令,显示目前已经设置好的命令的别名。
●设置别名ls为ls –l,以长格形式显示文件列表:
●显示别名ls代表的命令,确认设置生效:
使用别名ls显示当前目录中的文件列表。
●删除别名ls:#unalias ls。
●显示别名ls,确认删除别名已经生效:
●最后再用命令ls 显示当前目录中的文件列表。
3)输入、输出重定向和管道
(1) 输入/输出重定向
●用ls命令显示当前目录中的文件列表:
重定向到文件list中:
●查看文件list中的内容:
●再次使用输出重定向,把ls命令在终端上显示的当前目录中的文件
列表重定向到文件list中。
这次使用管道符号>>进行重定向:
附加在文件的末尾:
重复命令#ls –l > list 。
考题。
(2)管道
●利用管道和grep命令,在上面建立的文件list中查找字符串list:
●利用管道和wc命令,计算文件list中的行数、单词数和字符数:
2.Vi编辑器:redhat Linux环境
更改linux的启动类型
修改/etc/inittab配置文件
保存退出
重新启动验证
如何限定用户登录
使用vi编辑器修改/etc/passwd配置文件
例如:
将下列项
heng:x:501:501::/home/heng:/bin/bash
修改为
heng:x:501:501::/home/heng:/sbin/nologin
保存退出
切换为heng账户登录验证
[root@localhost ~]# su - heng
使用编辑器vi
1)在“/root”目录下建一个名为“/Vi”的目录。
2)进入“/Vi”目录。
3)在vi中编写一个abc.c程序(见下)。
4)设定行号。
5)将光标移到第6行。
6)复制该行内容。
7)将光标移到倒数第二行行首。
8)粘贴复制行的内容
9)撤销第8步的动作。
10)删除该行。
11)存盘但不退出。
12)将光标移到首行。
13)插入模式下输入“Hello,this is Vi world!”。
14)返回命令行模式。
15)向下查找字符串“int”。
16)再向上查找字符串“stdio”。
17)强制退出 Vi,不存盘。
/* 一个解决“鸡兔同笼”问题的源程序abc.c */ #include<stdio.h>
main( )
{
int h,f;
int x,y;
printf("请输入头数和脚数:");
scanf("%d,%d",&h,&f);
x=(4*h-f)/2;
y=(f-2*h)/2;
printf("鸡=%d 兔子=%d",x,y);
}
实验中存在的问题及解决办法:
实验过程中发现有些命令不太理解不会用,然后查看课件或上网查询可以解决。
(完整)广州大学Linux_实验五
广州大学学生实验报告一、实验目的通过一个简单的设备驱动的实现过程。
学会Linux中设备驱动程序的编写二、使用仪器、器材1.设备:带网卡的PC若干、交换机一台。
2.工具:网线若干,已经安装好Red Hat Linux 9。
0系统的PC一台。
三、实验内容及原理设计和实现一个虚拟命名管道(FIFO)的字符设备。
写一个模块化的字符设备驱动程序四、实验过程(1)设备的实现1、数据结构/*vfifo.c*/#ifndef __KERNEL__#define __KERNEL__#endif#ifndef MODULE#define MODULE#endif#define __NO_VERSION__#include〈linux/config。
h>#include〈linux/module。
h>#include<linux/kernel.h〉#include〈linux/malloc。
h〉#include〈linux/fs。
h〉#include<linux/proc_fs。
h〉#include<linux/errno.h〉#include<linux/types。
h〉#include〈linux/fcntl。
h>#include〈linux/init。
h〉#include〈asm/system.h〉#include<asm/uaccess.h〉#ifndef VFIFO_MAJOR#define VFIFO_MAJOR 241#endif#ifndef VFIFO_NR_DEVS#define VFIFO_NR_DEVS 4#endif#ifndef VFIFO_BUFFER#define VFIFO_BUFFER 4000#endif#include<linux/devfs_fs_kernel。
h〉devfs_handle_t vfifo_devfs_dir;struct file_operations vfifo_fops;int vfifo_major=VFIFO_MAJOR;int vfifo_nr_devs=VFIFO_NR_DEVS;int vfifo_buffer=VFIFO_BUFFER;MODULE_PARM(vfifo_major,"i");MODULE_PARM(vfifo_nr_devs,"i");MODULE_PARM(vfifo_buffer,"i");MODULE_AUT HOR(”EBUDDY”);结构体/*vfifo。
linux实验报告
linux实验报告实验目的:通过对Linux操作系统的实践,掌握基本的Linux命令和操作方法,了解Linux操作系统的特点和优势。
实验一:Linux环境搭建在实验一中,我们首先需要搭建Linux操作系统的环境。
根据实验指导书的要求,我们选择了Ubuntu作为实验平台。
通过下载Ubuntu镜像文件,并利用虚拟机软件创建一个虚拟机,将镜像文件安装到虚拟机中。
在安装过程中,我们需要选择合适的分区和网络配置等,并设置root用户的密码。
实验二:基本命令的使用在实验二中,我们主要学习了Linux的基本命令的使用方法。
首先,我们了解了Linux文件系统的结构,包括根目录、用户目录、系统目录等。
然后,通过命令行终端进行一系列的实践操作,比如查看文件内容、创建目录、复制文件等。
这些命令的使用不仅提高了我们的工作效率,同时也增强了对Linux操作系统的理解。
实验三:软件安装与卸载实验三主要涉及到Linux的软件安装与卸载。
我们首先学习了使用APT工具进行软件包管理,通过安装命令行界面的方式安装了一些常用的软件,比如文本编辑器、终端工具等。
此外,我们还学习了如何卸载已安装的软件包,清理不需要的文件,以保持系统的整洁性。
实验四:权限管理在实验四中,我们学习了Linux的权限管理机制。
Linux操作系统采用了基于用户和组的权限模型,通过设置文件和目录的权限,实现对文件的读、写、执行的控制。
我们通过实际操作,创建了新的用户和组,并为不同的用户和组设置了不同的权限。
这样,可以有效地保护系统的文件和数据的安全性。
实验五:网络配置与服务搭建在实验五中,我们主要学习了Linux的网络配置和服务搭建。
通过设置网络接口、IP地址和网关等参数,实现了网络的正常连接。
同时,我们还学习了一些常用的网络命令,比如ping、ssh等。
此外,我们尝试搭建了一个简单的Web服务器,通过浏览器访问,可以查看服务器上的网页。
实验六:系统监控和故障恢复在实验六中,我们学习了Linux的系统监控和故障恢复方法。
linux实验报告
目录实验一Linux基本操作一、实验目的1、掌握linux操作系统的登录与其他基本口令2、掌握linux操作系统的基本命令二、实验内容1、linux命令的格式2、Linux命令的输入、修改、执行、分类、联机帮助3、Linux文件操作三、实验环境安装有Fedora操作平台的计算机一台四、实验过程与结果分析一、linux基本操作由于实验中我们使用的不是root权限,所以对于一些用户建立,关机等都没有相应的权限。
1)登录1.控制台登录提供用户名与密码方可登录2.远程登录这部分由于实验环境所限为进行练习2)修改口令Password pass3)退出4)关机与重启关机:shutdown now重启:reboot二、linux命令这部分主要是练习主要的命令格式(命令格式为:命令名选项一选项二…参数一参数二… )命令的输入与修改,命令的执行等等,这些操作也都及其简单。
主要是用以下几个命令1)$who$who –q /*显示登录用户名和用户数*/$who am I /*显示当前用户和登录时间*/2)echo命令:$ echo Hello! */显示字符串中的参数字符串/*-n /*输出字符串后不换行*/3)data命令用法示例:$date …+Today is %D,now is %r‟ /*显示今天的日期,和现在的时间*/$date …%B %d,%Y‟ /*显示月日年*/4)cal /*显示当年当月的日历*/三、文件操作Linux文件通常是由字母、数字、“.”、“_”和“-”字符组成。
在对大量文件进行操作时可以使用通配符。
个人觉得文件的通配符非常的重要,使用起来及其方便,主要的通配符有以下几种:?:匹配任意单个字符* :匹配0或多个任意字符[ ]:匹配方括号中列出的字符集中的任意单个字符集例如:输出所有以.c结尾的文件$ echo *.c对文件的操作主要有创建新文件,对文件权限的操作,文件的转移等等,命令操作如下所示:1)文件的创建1.cat > newfile2.vi newfile2)文件的权限文件主要有权限有读权限、写权限、执行权限、无权限四种3) 常用文件操作的命令1.文件显示:cat 、more、less2.文件复制、删除和移动cp、rm、mv3.文件内容的统计和排序wc、sort4.改变文件的存取权限chmod5.改变文件的时间标签touch6.设置文件掩码umask7.文件查找、搜索find、grep四、目录操作目录操作是本章最重要的内容,它结合文件操作,用户必须熟练使用在各种目录下进行文件操作。
linux 基本操作 实验报告
linux 基本操作实验报告《Linux基本操作实验报告》Linux操作系统是一款开源的操作系统,具有稳定性高、安全性强等特点,因此在服务器领域得到了广泛的应用。
对于初学者来说,熟悉Linux的基本操作是非常重要的,下面我将分享一份Linux基本操作的实验报告。
实验一:登录和退出Linux系统首先,我们需要了解如何登录和退出Linux系统。
在登录界面输入用户名和密码后,我们就可以进入系统。
在系统中,我们可以使用命令“exit”来退出系统。
实验二:文件和目录操作在Linux系统中,文件和目录的操作是非常重要的。
我们可以使用命令“ls”来查看当前目录下的文件和目录,使用命令“cd”来切换目录,使用命令“mkdir”来创建新的目录,使用命令“rm”来删除文件或目录。
实验三:文件编辑在Linux系统中,我们可以使用命令行工具来编辑文件。
比较常用的编辑器有vi和nano。
我们可以使用命令“vi”或“nano”来打开文件进行编辑,然后保存并退出。
实验四:用户和权限管理Linux系统中的用户和权限管理也是非常重要的。
我们可以使用命令“useradd”来添加新用户,使用命令“passwd”来修改用户密码,使用命令“chmod”来修改文件或目录的权限。
实验五:系统管理最后,我们还可以使用一些命令来管理系统。
比如使用命令“ps”来查看当前系统进程,使用命令“top”来查看系统资源占用情况,使用命令“shutdown”来关闭系统。
通过以上实验,我们可以初步了解Linux系统的基本操作。
当然,Linux系统还有很多其他的功能和命令,需要我们不断学习和实践。
希望大家能够通过实践不断提升自己的Linux操作技能,为今后的工作和学习打下坚实的基础。
linux实验五 用户管理
集美大学Linux系统管理课程实验报告课程名称:Linux系统管理班级:软件1115实验成绩:指导教师:范明红姓名:许云云实验项目名称:实验五:用户管理学号:2011813035上机实践日期:1.实验目的:1)熟悉Linux操作系统中的用户和组的概念。
2)掌握Linux操作系统中用户管理。
3)理解用户管理涉及的系统配置文件。
2.实验要点:1.认真阅读课本相关的内容,掌握相关指令的使用。
2. 理解系统管理中的用户管理的概念,掌握如何在Linux系统中管理用户和组。
3.实验准备:1 熟悉useradd(adduser)和userdel指令的使用2 熟悉groupadd和groupdel指令的使用3 熟悉passwd指令的使用4了解who、id、,finger,chfn,groups、whoami、newgrp指令的用法5 学习使用用户管理器管理用户4.实验内容:设置系统以字符界面方式启动:4.1用户管理1:使用useradd(adduser)指令添加名称为user1、user2、user3、user4的用户,分别为其设定密码。
2:使用userdel指令删除user4用户3.使用chfn指令添加用户的详细信息,并使用finger指令察看相关信息。
4.锁定user1用户,使其无法登陆。
(有2种方法)5.在其他终端使用用户user1、user2等登陆验证。
6.为user1解锁,使其能正常登陆。
方法一:使用usermod锁定:解锁:方法二:使用passwd锁定:解锁:4.2组管理。
1:使用groupadd指令添加user和group两个组2:使用groupdel指令删除group组3: 将用户user1、user2、user3添加到user组中。
4:指定user1为组管理员。
5.使用user1账户登陆,删除组内成员user3.6.更改user1账户的主组为user并验证。
4.3其他指令使用who、id、whoami、groups等指令1:使用who指令查看当前登陆系统的用户2:使用id指令查看当前用户的UID与GID3:使用whoami指令查看当前使用shell的用户名称4.4 打开用户管理配置文件/etc/passwd,/etc/shadow,/etc/group察看内容:查看/etc/passwd文件部分内容:查看/etc/ shadow文件部分内容:查看/etc/group文件部分内容:4.5 打开图形界面,使用用户管理器管理用户和组。
Linux操作系统实验实验报告
实验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.c运行,在屏幕上打印出hello,world。
实验3:进程创建【实验目的和要求】1.了解进程的概念及意义;2.了解子进程和父进程3.掌握创建进程的方法。
【实验内容】1.子进程和父进程的创建;2.编写附件中的程序实例【实验步骤】一1、打开终端,输入命令gedit1_fork.c,在1_fork.c文件中输入1_fork.bmp中的代码;2、输入命令gcc1_fork.c-o1_fork,回车后显示无错误;3、输入命令:./1_fork运行程序。
二、1、打开终端,输入命令gedit2_vfork.c,在2_vfork.c文件中输入2_vfork.bmp中的代码;2、输入命令gcc2_vfork.c-o2_vfork,回车后显示无错误:3、输入命令:./2_vfork运行程序。
从上面可以看到两次的运行结果不一样。
LINUX基础实验报告
LINUX基础实验报告实验⼀:主要是介绍Linux系统概况,⽆运⾏代码。
实验⼆:Linux的基本操作重要知识点[Tab]使⽤Tab键来进⾏命令补全,Tab键⼀般键盘是在字母Q旁边,这个技巧给你带来的最⼤的好处就是当你忘记某个命令的全称时你可以只输⼊它的开头的⼀部分然后按下Tab键就可以得到提⽰或者帮助完成,当然不⽌补全命令,补全⽬录,补全命令参数都是没问题的。
Ctrl+c键⽤来强⾏终⽌当前程序。
⼀些其他常⽤快捷键按键作⽤Ctrl+d键盘输⼊结束或退出终端Ctrl+s暂定当前程序,暂停后按下任意键恢复运⾏Ctrl+z将当前程序放到后台运⾏,恢复到前台为命令fgCtrl+a将光标移⾄输⼊⾏头,相当于Home键Ctrl+e将光标移⾄输⼊⾏末,相当于End键Ctrl+k删除从光标所在位置到⾏末Alt+Backspace向前删除⼀个单词Shift+PgUp将终端显⽰向上滚动Shift+PgDn将终端显⽰向下滚动通配符是⼀种特殊语句,主要有星号(*)和问号(?),⽤来对对字符串进⾏模糊匹配(⽐如⽂件名,参数名)。
当查找⽂件夹时,可以使⽤它来代替⼀个或多个真正字符;当不知道真正字符或者懒得输⼊完整名字时,常常使⽤通配符代替⼀个或多个真正的字符。
终端⾥⾯输⼊的通配符是由 Shell 处理的,不是由所涉及到命令语句处理的,它只会出现在命令的“参数值”⾥(它不⽤在命令名称⾥,命令不记得,那就⽤Tab补全)。
当 Shell 在“参数值”中遇到了通配符时,Shell 会将其当作路径或⽂件名去在磁盘上搜寻可能的匹配:若符合要求的匹配存在,则进⾏代换(路径扩展);否则就将该通配符作为⼀个普通字符传递给“命令”,然后再由命令进⾏处理。
总之,通配符实际上就是⼀种 Shell 实现的路径扩展功能。
在通配符被处理后, Shell 会先完成该命令的重组,然后再继续处理重组后的命令,直⾄执⾏该命令。
Shell 常⽤通配符:字符含义*匹配 0 或多个字符匹配任意⼀个字符[list]匹配 list 中的任意单⼀字符[!list]匹配除list 中的任意单⼀字符以外的字符[c1-c2]匹配 c1-c2 中的任意单⼀字符如:[0-9] [a-z]{string1,string2,...}匹配 sring1 或 string2 (或更多)其⼀字符串{c2..c2}匹配 c1-c2 中全部字符如{1..10}在linux命令⾏中获取帮助使⽤man 命令通常情况下,man ⼿册⾥⾯的内容都是英⽂的,这就要求你有⼀定的英⽂基础。
linux系统使用实验报告
linux系统使用实验报告Linux 系统使用实验报告一、实验目的本次实验旨在深入了解和熟悉 Linux 操作系统的基本操作、命令行使用以及系统配置,掌握常见的文件管理、进程管理、用户权限管理等功能,提高对 Linux 系统的实际应用能力。
二、实验环境1、操作系统:Ubuntu 2004 LTS2、实验工具:终端模拟器(Terminal)三、实验内容与步骤(一)系统登录与基本命令1、启动计算机,选择 Ubuntu 操作系统,输入用户名和密码登录系统。
2、打开终端模拟器,熟悉常用的基本命令,如`ls` (列出当前目录下的文件和文件夹)、`cd` (切换目录)、`mkdir` (创建新目录)、`rmdir` (删除空目录)等。
(二)文件管理1、在用户主目录下创建一个名为`experiment` 的文件夹,使用`mkdir experiment` 命令。
2、进入该文件夹,使用`cd experiment` 命令。
3、在`experiment` 文件夹中创建一个文本文件`filetxt` ,使用`touch filetxt` 命令。
4、使用`vi` 或`nano` 编辑器打开`filetxt` 文件,输入一些文本内容,并保存退出。
5、查看文件的内容,使用`cat filetxt` 命令。
6、复制文件,使用`cp filetxt file_copytxt` 命令。
7、移动文件,使用`mv filetxt/`命令将文件移动到上级目录。
8、删除文件,使用`rm file_copytxt` 命令。
(三)进程管理1、运行一个后台进程,例如`ping &`,然后使用`jobs` 命令查看后台进程。
2、将后台进程切换到前台,使用`fg %1` (其中%1 为后台进程的编号)命令。
3、终止进程,使用`Ctrl + C` 组合键终止正在运行的进程。
4、查看系统当前运行的进程,使用`ps aux` 命令。
(四)用户权限管理1、创建一个新用户,使用`sudo adduser username` 命令,其中`username` 为新用户的用户名。
Linux实验报告
中南大学Linux操作系统实验报告学生姓名学院信息科学与工程学院指导老师胡小龙专业班级完成时间目录1.实验一Linux的安装 (3)1.1 实验目的 (3)1.2 实验设备 (3)1.3 实验原理 (3)1.4 实验步骤 (3)2. 实验二Linux基本操作 (5)2.1 实验目的 (5)2.2 实验设备 (5)2.3 实验原理 (6)2.4 实验步骤 (6)3. 实验三Linux系统管理 (10)3.1 实验目的 (10)3.2 实验设备 (10)3.3 实验原理 (10)3.4 实验步骤 (11)4. 实验四Linux Shell程序设计 (14)4.1 实验目的 (14)4.2 实验设备 (14)4.3 实验原理 (15)4.4 实验步骤 (17)5. 实验五Linux 高级程序设计 (20)5.1 实验目的 (20)5.2 实验设备 (21)5.3 实验原理 (21)5.4 实验步骤 (21)6. 实验六Linux内核 (23)6.1 实验目的 (23)6.2 实验设备 (23)6.3 实验原理 (23)6.4 实验步骤 (23)Linux操作系统1.实验一Linux的安装1.1 实验目的(1)了解硬盘分区的概念和方法;(2)掌握硬盘的分区规划;(3)掌握Linux操作系统的安装和配置过程。
1.2 实验设备一台pc机、RedHat Linux 7.2以上版本、VMware Workstation v5.5。
1.3 实验原理Linux可以以多种方式安装在PC机上:(1)独立分区安装、(2)DOS分区安装和(3)虚拟机VMWare下安装。
鉴于VMware下安装对原来系统影响较小且不影响本实验目的,因此采用VMWare下安装方式。
1.4 实验步骤(1)在Windows XP下安装VMware 5.5(2)配置虚拟机(3)启动虚拟机(4)启动Linux安装过程(5)安装过程配置(6)安装后配置(7)第1次启动VMWare下Linux操作系统2.实验二Linux基本操作2.1 实验目的(1)复习Linux基本命令;(2)掌握常用Linux命令。
实验五_Linux进程间通信
实验五 Linux 进程间通信1. 实验目的1)熟悉在C 语言源程序中使用Linux 所提供的系统调用界面的方法;2)掌握Linux 中子进程的创建方法以及调度执行情况,理解进程与程序的区别; 3)掌握软中断信号的使用,了解使用软中断通信实现异步事件的方法;4)掌握父子进程使用管道进行通信的方法,了解管道通信的特点和上的限制。
2. 实验内容1) 父进程创建子进程(1) 实现父进程创建一个子进程,返回后父子进程都分别循环输出字符串“I am parent.”或“I am child.”5次,每输出1次后使用sleep(1)延时1秒,然后再进入下一循环。
(2) 在源程序中连续使用4个fork(),而不用if()进行返回值的判断,在4个fork()语言后面输出字符“A ”,观察并分析该程序编译连接执行后的输出结果。
(3) 由父进程创建一个子进程,子进程的功能史输出26个英文字母,使用execl()加载子进程的程序。
(1)(2)结果:(3)2)软中断的使用(1)编写一个程序循环显示“How are you?”,当键盘输入Ctrl+C的组合键后中断循环显示,执行软中断程序,软中断程序的功能是修改循环变量的值终止循环,然后输出“Byebye”。
输出显示结果:3)管道的使用:(1)编写一个程序,实现:父进程使用系统调用pipe()创建一个无名管道;(2)创建2个子进程,分别向管道各发下面中1条信息后结束:Child 1 is sending a message to parent!Child 2 is sending a message to parent!(1)结果:(2)输出结果:3.实验思考1)如果连续创建多个子进程而不使用条件进行各自空间的分隔,会出现什么情况?2)对实验内容2)进行改进,先输出10次“How are you?”,在此过程中使用Ctrl+C不能中断循环显示,10次以后使用Ctrl+C可以中断循环,应该做那些修改?3)管道通信与软中断通信在信息量的大小上有何区别?4)共享同一个管道进行通信的读写进程之间必须满足什么关系,为什么?。
