Linux 程序设计实验报告_第1页
Linux 程序设计实验报告_第2页
Linux 程序设计实验报告_第3页
Linux 程序设计实验报告_第4页
Linux 程序设计实验报告_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

...wd......wd......wd...Linux程序设计实验报告姓名:、、、班级:计1242学号:121842284专业:计算机科学与技术指导教师:、、、实验一Linux系统安装与启动〔选做实验〕一、 实验目的(通过实践及查阅资料完成如下实验)掌握虚拟机的配置过程。掌握Linux系统的安装过程和简单配置方法。掌握与Linux相关的多操作系统的安装方法。掌握Linux系统的启动、关闭步骤。了解Linux文件系统和目录构造。二、 实验内容安装虚拟机软件〔如VMware、Virtualbox)。在虚拟机软件中安装Linux操作系统〔如Fedora、Ubuntu、redhat等配置Linux系统运行环境。正确地启动、关闭系统。三、 实验步骤1.安装虚拟机软件〔VMwareWorkstation7.。2.在虚拟机软件中新建Linux虚拟机2.1设置内存大小〔建议大于256MB)2.2设置虚拟硬盘大小〔建议大于8GB)2.3设置虚拟光驱〔虚拟方式,镜像文件〕2.4设置网络连接模式〔建议采用桥接方式〕2.5设置共享目录〔建议英文目录名〕在Linux虚拟机中安装Linux操作系统〔fedora10)。3.1选择安装界面3.2检测安装截介质〔建议跳过〕3.3安装过程中的语言、键盘选择3.4磁盘分区〔采用自动分区,总大小与2.2相匹配〕3.5引导程序选择〔采用GRUB)3.6本卷须知〔禁用SELinux)通过相关命令实现对操作系统的登录、退出与关机使用文件浏览器査看Linux操作系统目录构造四、实验思考题举例说明Linux操作系统不同目录下文件的主要作用。列出你发现的Linux与Windows操作系统区别。列出决定文本界面及图形界面显示的关键文件,并说明设置的关键。列出你所能想到的虚拟机软件的用途。实验结论:实验二:linux根本命令(必做实验)一、 实验目的、要求〔请在操作后附实验结果〕熟悉Linux操作环境。掌握Linux—般命令格式。掌握有关文件和目录操作的常用命令。掌握有关进程操作的常用命令。二、 实验内容1.熟练掌握登录和退出系统,创立,删除用户等命令〔命令:运行结果〕。2.熟悉date,cal,who,echo,clear,passwd,man等命令。3.在用户主目录下对文件进展如下操作:复制一个文件、显示文件内容、查找指定内容、排序、文件比拟、文件删除。4.对目录进展管理:创立和删除子目录、改变和显示工作目录、列出文件权限、建设链接文件等。显示系统中的进程信息。三、 实验步骤登录进入系统,翻开shell环境〔终端〕。使用date,cal,who,echo,clear等命令,了解Linux命令格式。3.利用man命令查看date,echo等命令的帮助说明。4.目录操作4.1在用户默认工作目录下新建目录testdirl〔命令:运行结果〕。4.2在用户目录下复制testdirl为testdir2〔命令:运行结果〕。4.3在用户目录下删除testdir2。〔命令:运行结果〕5.文件操作5.1进入用户默认工作目录。5.2运行date>testl,然后运行cattest1,记录观察到的信息〔命令:运行结果〕。5.3再次运行date>testl,然后运行cattestl,记录观察到的信息〔命令:运行结果〕。5.4运行date»testl,然后运行cattestl,记录观察到的信息并说明原因〔命令:运行结果〕。5.5复制testl为test2。5.6査看testl和test2的文件详细信息,记录并说明其异同。5.7统计testl文件内容的行数、字数。5.8显示testl的内容。5.9建设testl的链接文件test3。5.10复制testl到上一级目录。5.11在用户目录下删除testl,删除testdirl。四、实验思考题如何显示当前工作目录的完整路径。在Linux层次目录构造中,用户可以在被授权的任意目录下利用mkdir命令创立新目录,也可以利用cd命令从一个目录转换到另一个目录。然而,没有提示符来告知用户目前处于哪一个目录中。要想知道当前所处的目录,可以使用pwd命令,该命令显示整个路径名。pwd

说明:此命令显示出当前工作目录的绝对路径。例:$pwd/home/xu

显示的路径名为/home/xu,每个目录名都用“/〞隔开,根目录以开头的“/〞表示。举例说明Linux命令的常用格式。mkdir-p/srv/ftp/linux-10创立文件夹-p如果文件夹不存在自动创立free命令free命令的功能是查看当前系统内存的使用情况,它显示系统中剩余及已用的物理内存和交换内存,以及共享内存和被核心使用的缓冲区。举例说明如何使用Linux命令帮助〔命令:运行结果〕。实验结论:实验三文件权限管理(必做实验)一、 实验目的熟悉Linux操作环境。掌握Linux—般命令格式。理解Linux中文件所有者和权限的概念。掌握有关权限操作的常用命令。掌握文件/目录的打包和压缩命令。二、 实验内容普通文件与目录权限的修改。改变文件属主。普通文件与目录的打包和压缩。三、 实验步骤文件权限操作1.1在用户默认工作目录下创立目录test03,进入test03目录,使用touch命令创建空文件filel。1.2显示filel详细信息,记录文件的权限信息,所属用户和组。1.3对filel设置权限,使其他用户可以对此文件进展写操作,并查看设置结果。1.4取消同组用户对filel的读取权限,并査看设置结果。1.5用数字形式来为filel设置权限,使所有者可读、可写、可执行;其他用户和所属组用户只有读和执行的权限,并查看设置结果。1.6用数字形式更改filel权限,使所有者只能读取此文件,其他任何用户都没有权限,并査看设置结果。1.7为其他用户添加写权限,并査看设置结果。1.8回到上层目录,查看test03的权限。1.9为其他用户添加对此目录的写权限,查看设置结果。1.10査看并记录目录test03及其中文件的所属用户和组。1.11把目录test03及其下的所有文件的所有者改成bin,所属组改成daemon,并査看设置结果。1.12删除目录test03及其下的文件。1.13设定umask为000($umask000),创立testdir目录,并査看其权限。打包压缩命令操作2.1将/etc目录拷贝SlJ用户默认工作目录下,重命名为etctest。2.2用tar命令将etctest目录打包成etctest.tar.gz,查看etctest.tar.gz的权限,解压缩etctest.tar.gz四、实验思考题4.1列举ls命令不同选项的功能。ls:显示所有非隐藏文件〔按字典顺序排序〕

〔2〕ls

-a:显示所有文件包括隐藏文件

〔3〕ls

-l:显示所有文件的详细信息

〔4〕

显示总数说明文件权限和文件所有者的含义。-rw-r--r--是文件的权限。Root是用户组。举例说明umask命令的功能。umask设置了用户创立文件的默认权限,它与chmod的效果刚好相反,umask设置的是权限“补码〞,而chmod设置的是文件权限码。一般在/etc/profile、$[HOME]/.bash_profile或$[HOME]/.profile中设置umask值。说明后缀名为tar.gz和tar.bz2的文件的压缩和解压命令。Linux下最常用的打包程序就是tar了,使用tar程序打出来的包我们常称为tar包,tar包文件的命令通常都是以.tar结尾的。生成tar包后,就可以用其它的程序来进

行压缩了,所以首先就来讲讲tar命令的根本用法:

tar命令的选项有很多(用mantar可以查看到),但常用的就那么几个选项,下面

来举例说明一下:

#tar-cfall.tar*.jpg

这条命令是将所有.jpg的文件打成一个名为all.tar的包。-c是表示产生新的包

,-f指定包的文件名。

#tar-rfall.tar*.gif

这条命令是将所有.gif的文件增加到all.tar的包里面去。-r是表示增加文件的

意思。

#tar-ufall.tarlogo.gif

这条命令是更新原来tar包all.tar中logo.gif文件,-u是表示更新文件的意思。

#tar-tfall.tar

这条命令是列出all.tar包中所有文件,-t是列出文件的意思

#tar-xfall.tar

这条命令是解出all.tar包中所有文件,-x是解开的意思

以上就是tar的最根本的用法。为了方便用户在打包解包的同时可以压缩或解压文件,tar提供了一种特殊的功能。这就是tar可以在打包或解包的同时调用其它的压缩程序。实验结论:通过这个实验我了解了普通文件与目录权限的修改。实验四用户和组的管理(必做实验)一、 实验目的熟悉Linux操作环境。掌握Linux—般命令格式。熟悉命令行操作方式进展用户和用户组管理。二、 实验内容建设新用户账号权限测试。为新用户建设账号和工作组,并进展相应配置。以该用户身份登录,修改密码。删除该用户。三、 实验步骤创立用户〔以zhangsan为例〕1.1创立一个新用户zhangsan。1.2査看/etc/passwd文件的最后一行内容,并记录。1.3査看/etc/shadow文件的最后一行内容,并记录。1.4给用户zhangsan设置密码。1.5查看/etc/shadow文件的最后一行内容,记录并说明变化。1.6使用zhangsan用户登录系统,测试能否登录成功。创立用户〔以user为例〕2.1使用1的步骤创立新用户user。2.2更改zhangsan所属群组为root。2.3査看/etc/passwd文件,记录zhangsan用户和user用户的属组情况。2.4更改用户zhangsan的帐户名为user。2.5査看/etc/passwd文件的最后一行内容,记录并说明变化。2.6删除用户user。组的管理〔以stuff为例〕3.1创立一个新组,组名为stuff。3.2査看/etc/group文件的最后一行内容,并记录。3.3创立一个新帐户test,并将其起始组和附属组都设为stuff。3.4査看/etc/group文件中的最后一行内容,记录并说明变化。3.5设置stuff组密码。3.6在stuff组中删除用户test。3.7查看/etc/group文件中的最后一行,记录并说明变化。3.8删除会且stuff。四、实验思考题说明所属群组与所属附加群组的区别。chgrp(changegroup)改变文件所属群组,hown

〔change

owner〕改变文件所有者属性。如普通用户遗失密码后要求恢复用户权限,说明root用户可能采取的方式。在root账户下,翻开/etc/shadow

(不是passwd文件,因为密码实际上经过加密后放在了“影子口令〞文件shadow中了。passwd文件每个用户均可见,但是shadow只有root可以见)。

找到普通用户名cicikasa,然后删除第二个域即可,域之间用“:〞隔开的,如下user:TdkakkkYUukkjkjk:14672:0:99999:7:::

上述红色局部就是经过加密的密码,删除即可。

在普通用户下,输入passwd即可输入新密码。如何指定不同用户的默认工作目录。修改/etc/vsftpd/vsftpd.conf将guest_username=virtual_useruser_config_dir=/etc/vsftpd_useruser_sub_token=$USER加进去在/etc目录下手工建设vsftpd_user目录在/etc/vsftpd_user目录下建设用户文件,用户文件名称=要登录的用户名。例如:FTP用户是test111那么就在/\t":///1724534/viewspace-1054365/_blank"etc/vsftpd_user/下建设一个test111文件,文件内容local_root=/\t":///1724534/viewspace-1054365/_blank"home/test111/$USER重启服务servicevsftpdrestart实验五文本编辑器〔选做实验〕一、 实验目的掌握Vi编辑器的进入与退出方法。了解文本编辑器的三种模式。熟练掌握使用vi编辑器进展编辑、选择及操作文本文件的命令。二、 实验内容进入和退出vi。利用文件拷贝方式建设一个文件。在该文件上移动光标位置。对该文件内容执行删除、修改、替换等操作。三、 实验步骤在当前用户默认工作目录下新建一个名为“test02〞的目录。将文件“/etc/rsyslog.conftest〞目录下。3.使用vi翻开estrsyslog.conf〇4.指出设定umask(类似于“umask0022〞〕的所在行号。将光标移到该行,并复制该行内容。将该行内容内容粘贴至最后一行。撤销第6步的动作。光标移到“$FileOwnersyslog〞,删除该行。存盘但不退出。将光标移到首行,插入模式下输入“Hello,thisisviworld!〞。向下查找字符串“syslog〞。再向上査找字符串“TCP〞。强制退出vi,不存盘。四、 实验思考题举例说明实验中使用的命令处于何种模式下说明在vi中如何实现字符串的查找,并实现查找结果的自动换行。说明在vi中如何实现行号的显示与关闭。实验六库文件的建设与引用(必做实验)按照课本第一章,第7-11页,建设并引用库文件,写出实验过程及结果。库函数介绍:1.Linux\t"://2cto/os/201403/_blank"系统调用,文件的描述符使用的是一个整数,库函数访问文件使用FILE类型的指针去指向描述文件;2.库函数不随系统平台而变,即不管win还是\t"://2cto/os/201403/_blank"Linux都适用;库函数-读文件size_tfread(void*ptr,size_tsize,size_tn,FILE*stream)功能:从stream指向的文件中读取n个字段,每个字段为size字节,并将读取的数据放入ptr所指向的字符数组中,返回实际已读取的字节数。〔读出来的数据量为size*n〕库函数-写文件size_tfwrite(constvoid*ptr,size_tsize,size_tn,FILE*stream)功能:从缓冲区ptr所指向的数组中把n个字段写到stream指向的文件中,每个字段长为size个字节,返回实际写入的字段数。库函数-创立和翻开FILE*fopen(constchar*filename,constchar*mode)filename:翻开的文件名〔包含路径,缺省为当前路径〕mode:翻开模式实例代码#include<stdio.h>#include<string.h>#include<stdlib.h>

#defineBUFFER_SIZE1024

/*程序入口*/intmain(intargc,char**argv)

{

FILE*\t"://2cto/os/201403/_blank"from_fd;

FILE*to_fd;7

/*判断入参*/

if(argc!=3)

{ printf("Usage:%sfromfiletofile\n",argv[0]);

}

\t"://2cto/os/201403/_blank"longfile_len=0;

charbuffer[BUFFER_SIZE];

char*ptr;

/*翻开源文件*/

if((from_fd=fopen(argv[1],"rb"))==NULL)

{

printf("Open%sError\n",argv[1]);

exit(1);

}

/*创立目的文件*/

if((to_fd=fopen(argv[2],"wb"))==NULL)

{

printf("Open%sError\n",argv[2]);

exit(1);

}

/*测得文件大小*/

fseek(\t"://2cto/os/201403/_blank"from_fd,0L,SEEK_END);

file_len=ftell(from_fd);

fseek(from_fd,0L,SEEK_SET);

printf("formfilesizeis=%d\n",file_len);

/*进展文

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论