您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 冶金工业 > 中南大学-Linux系统实验报告
CENTRALSOUTHUNIVERSITYLinux系统及应用实验报告学生姓名班级学号指导教师胡小龙实验时间2014年11月1实验一Linux的安装(课后)1、实验目的(1)了解硬盘分区的概念和方法;(2)掌握硬盘的分区规划;(3)掌握Linux操作系统的安装和配置过程。2、实验设备一台pc机、RedHatLinux7.2以上版本、VMwareWorkstationv5.53、实验原理Linux可以以多种方式安装在PC机上:(1)独立分区安装;(2)DOS分区安装;(3)虚拟机VMWare下安装。鉴于VMware下安装对原来系统影响较小且不影响本实验目的,因此采用VMWare下安装方式。4、实验步逐(1)在WindowsXP下安装VMware5.5(2)配置虚拟机(3)启动虚拟机(4)启动Linux安装过程(5)安装过程配置(6)安装后配置(7)第1次启动VMWare下Linux操作系统5、实验记录(1)记录详细安装过程(2)安装过程中出现的问题及其解决措施Linux安装过程:(1)语言选择:2(2)键盘配置:(3)鼠标配置:(4)选择安装还是升级:3(5)安装类型:(6)磁盘分区设置:(7)为系统分区:4(8)添加分区:(9)引导装载程序配置:(10)网络配置:5(11)防火墙配置:(12)语言支持的选择:(13)时区配置:6(14)设置根口令(15)选择软件包组:(16)准备安装:应该看到一个安装RedHatLinux做准备的屏幕。当你重新引导系统后,一份完整的安装日志可在/root/install.log中找到,以备今后参考。要取消安装进程,按计算机的重新启动按钮,或者使用[Control]-[Alt]-[Delete]组合键来重启计算机。(17)安装软件包:7(18)创建引导盘:(19)视频卡配置:(20)配置显示器:8(21)定制配置:(22)安装完成9实验2Linux基本操作1、实验目的(1)复习Linux基本命令(2)掌握常用Linux命令2、实验内容(1)练习命令行模式下的常用命令:man:命令帮助ALT-Fx:虚终端切换常用命令:cat、Ls、ps、chmod、kill、ln、cp、mv、rm、cd、pwd、mkdir、chown、who、w、wc、whoami、date、uname等(2)编辑器vi的使用:使用vi建立并修改一个文本文件(3)档案管理:rpm、gzip、tar等命令(4)网络命令:telnet、ftp、talk3、实验记录(1)在实验过程中,记录到的实验现象:系统启动101、Manls按q退出2、redhat有七个终端控制台,其中前六个为命令行模式,第七个是图形界面,按Ctrl+Alt+Fx(1~7)可互相切换。如图可知,以root用户的身份登录了终端控制台。3、w、who、whoami命令查看当前登录主机的所有用户4、date命令查看时间,uname查看系统与内核的相关信息115、查看自己的bash相关进程:ps–l6、用root的身份在所有人都可以工作的/tmp目录中新建一个名为testing的目录,(在此查看自己的路径)该目录的权限为744且目录拥有者为root。另外,在testing目录下再新建一个空文件。尝试用VI编辑器修改其内容(用到的命令:cd、mkdir、chmod、touch、pwd)127、在/tmp下建立一个文件a、并用VI编辑器编辑其内容,用cp将其内容复制至b文件中。然后移动文件至新建目录、/tmp/test下,最后删除该文件A文件中的内容将A中的内容复制至B中上图为B中内容,复制成功13将A文件移动至新建目录test下,最后删除了文件A8、rpm命令Linux是否安装logrotate软件,并且列出属于该软件所提供的所有目录和文件9、将/etc/man.config复制到/tmp中,并且以gzip压缩1410、使用tar备份/etc/man.config目录11、由于本机网络配置及其软件下载问题,导致网络设置命令无法成功实现(2)使用过程体会、心得、技巧从安装VM,到接触RedHat。到对命令行模式的极端不适应,再到慢慢体味出在黑乎乎上的控制台上“肆意”操作的快意和喜悦。这时候我才体味出Linux命令的博大精深,目前我只是接触了一些非常简单的命令,(正则表达式这方面我还是不太熟悉)遇到问题是还是没发好好利用man。但是我最基本的操作命令有了一个入门,我相信再以后的日子里经过我的努力,我一定会拿下。15实验3Linux系统管理1、实验目的(1)掌握Linux基本系统管理命令(2)掌握基本管理方法(3)初步了解Linux中与系统管理相关的有关配置文件2、实验内容(1)用户管理adduser、useradd、passwd等观察:/etc/passwd文件(2)文件系统管理df、du命令使用mount、umount命令使用:安装usb盘或者光盘,查看分析/etc/fstab文件(3)存储器free:了解存储器使用情况(4)关机halt、shutdown–h、init0reboot、shutdown-rnow并比较它们之间的差别(5)网络配置netconfig的使用(6)启动配置/etc/inittab:查看、修改并观察其响应3、实验记录(1)在实验过程中,注意记录实验现象A、用户管理建立新的用户:gang,并且设置密码16B、文件系统管理分别用df–h将容量结果以易读的容量格式显示出来,用du显示出了/etc/man.config的内容。挂载了用来安装linux的原版光盘,用df查看后,解除了挂载C、存储器Free命令17D、关机基本上,在默认的情况下,这几个命令都会完成一样的工作(因为halt会先调用shutdown,而shutdown最后会调用halt)。不过,shutdown可以依据目前启动的服务来逐次关闭各服务后才关机;至于halt却能够在不理会目前系统状况下,进行硬件关机的特殊功能。F、启动配置修改/etc/inittab中的内容会决定liunx启动后是否启动图形界面。18实验4LinuxShell程序设计1、实验目的(1)掌握Linuxshell程序运行方法(2)掌握LinuxShell程序基本语法(3)了解Linux环境变量(3)编写简单Linuxshell程序2、实验内容(1)查看/etc/.profile文件:相当于DOS下autoexe.bat(2)通配符“*”、“?”、“[]”的使用$ls[a-c]*和$ls[a,m,t]*命令(3)重定向和管道的使用ls|morecattest.txt(4)变量$lookup=/usr/mydir$echo$lookup$exportlookup:让进程使用(5)编辑并运行以下程序(shell程序控制结构)1、fortest#!/bin/bashforainxyzdoechonowa=$adone2、fortest1#!/bin/bashforadoechonowa=$adone3、functest#!/bin/bash19setup(){echosetup…}do_date(){date}chgdir(){cd$1}do_datesetupchgdir4、paramtest#!/bin/bashechofilename:$0echoarguments:$*echonumberarg:$#echoarg2:$2shiftechonumberarg:$#echoarg2:$2sethello,everoneechoargs:$*echoarg2:$25、untiltest#!/bin/bashnumber=0until(test$number–gt5)doecho“$number”number=`expr$number+1`done3、实验要求(1)每个shell程序事例运行多遍,并给不同参数(2)详细记录程序调试及运行结果204、实验结果程序调试及运行结果如下:21实验5Linux高级程序设计1、实验目的(1)了解Linux操作系统下应用程序开发流程(2)掌握gun工具链的使用(3)了解Linux高级编程技巧(例如IPC机制、系统调用等)2、实验内容(1)编写一个简单的C语言程序,编写Makefile文件。了解编译过程,并用gdb进行调试。#includestdio.hintmain(void){printf(HelloWorld!);}调试:gcchelloworld.ca.out(2)以下任选其一:1、编写一个多进程通信程序,采用MessageQueue或sharedMemory或者MapedFile机制进行通信2、编写一个多线程程序(pthread),实现2程同步互斥源代码:#includestdio.h#includepthread.h#defineBUFFER_SIZE16structprodcons{//缓冲区相关数据结构intbuffer[BUFFER_SIZE];pthread_mutex_tlock;intreadpos,writepos;pthread_cond_tnotempty;pthread_cond_tnotfull;};22voidinit(structprodcons*b){pthread_mutex_init(&b-lock,NULL);pthread_cond_init(&b-notempty,NULL);pthread_cond_init(&b-notfull,NULL);b-readpos=0;b-writepos=0;}voidput(structprodcons*b,intdata){pthread_mutex_lock(&b-lock);if((b-writepos+1)%BUFFER_SIZE==b-readpos){pthread_cond_wait(&b-notfull,&b-lock);}b-buffer[b-writepos]=data;b-writepos++;if(b-writepos=BUFFER_SIZE)b-writepos=0;pthread_cond_signal(&b-notempty);pthread_mutex_unlock(&b-lock);}intget(structprodcons*b){intdata;pthread_mutex_lock(&b-lock);if(b-writepos==b-readpos){pthread_cond_wait(&b-notempty,&b-lock);}data=b-buffer[b-readpos];b-readpos++;if(b-readpos=BUFFER_SIZE)b-readpos=0;pthread_cond_signal(&b-notfull);pthread_mutex_unlock(&b-lock);returndata;}#defineOVER(-1)structprodconsbuffer;void*producer(void*data){23intn;for(n=0;n10000;n++){printf(%d---\n,n);put(&buffer,n);}put(&buffer,OVER);returnNULL;}void*consumer(void*data){intd;while(1){d=get(&buffer);if(d==OVER)break;printf(---%d\n,d);}returnNULL;}intmain(void){pthread_tth_a,th_b;void*retval;init(&buffer);pthread_create(&th_a,NULL,producer,0);pthread_create(&th_b,NULL,consumer,0);pthread_join(th_a,&retval);pthread_join(th_b,&r
本文标题:中南大学-Linux系统实验报告
链接地址:https://www.777doc.com/doc-7416838 .html