linux操作系统课程设计任务书

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

《Linux操作系统》课程设计任务书一、设计题目题目一:shell编程--用户信息管理(模拟)题目二:linux环境中的LAMP开发环境搭建与应用二、设计目的《Linux操作系统》课程设计是网络工程专业的集中实践性环节之一,是学习完《linux操作系统》课程后进行的一次全面的综合练习。其目的在于加深对linux操作系统的系统管理各方面技术的掌握,使学生更好地把握linux操作系统的基础命令、shell脚本技术以及各种基础服务器的配置和基本应用。类UNIX操作系统在网络环境及手持设备环境下使用极为流行,几乎所有的网络服务器都是运行在类UNIX系统之上;基于类UNIX裁剪版本的手持设备也在市场中占有极大的比重,因此,对于网络工程专业掌握类UNIX操作系统的基本使用方法是相当重要的。而Linux就是类UNIX中最为流行的一个分支,鉴于Linux的开源和Linux开发群的活跃特性,Linux都是高等院校计算机类专业必开设的课程。而Linux操作系统课程设计能够更好的加强学生在课程学习中各种知识的综合应用能力和实践经验。三、设计任务安排本次课程设计包含两个设计内容,课程设计内容的选题要求如下:1.以班级为单位,每个选题至少有13人选做;2.在符合1中的选题要求后,题目可以任选,及没有严格要求必做哪一个设计内容;3.设计内容选题名单请在课程设计开始后2天内,以电子文档方式按班级为单位提交。四、时间安排课程名称班级周次星期节次时间实验室linux操作系统课设网络工程0913全周晚上2011-2012-2第15-17周东8-409linux操作系统课设网络工程0923全周晚上2011-2012-2第15-17周东8-411五、设计内容设计内容一shell编程--用户信息管理(模拟)1.目的和要求掌握linux操作系统中shell脚本编程技术中的:变量定义、变量使用、循环控制结构、条件选择结构、用户交互、文件读写、文本内容分析以及linux重要命令的使用等。以验证学生对于shell脚本编程的掌握情况。要求学生能够利用shell脚本编程实现较为基本的功能。2.设计内容在主Shell脚本文件里(必须以menu命名)要有一个多操作选项的菜单以便用户从中选择。在不同任务的中,这些操作能自动实现以下功能:1)在屏幕上显示当前所有用户的记录2)在屏幕上显示当前所有用户(经过格式化和排序的)的记录3)只在屏幕上显示用户名和用户ID4)只在屏幕上显示(经过格式化和排序的)用户名和用户ID5)查询并显示特定用户的记录6)往passwd文件里增加新的用户记录7)从passwd文件里删除某个用户记录在目录下有四个文件分别为menu,passwd,add,delete注:passwd是自建数据文件,而不是/etc/passwd这个文件,切记。menu、add和delete是shell脚本文件。passwd文件中的内容具体形式如下所示:root:x:0:0:root:/root:/bin/bashlinux:x:500:500:linux:/home/linux:/bin/bashlianmin:x:503:500:lianmin:/home/lianmin:/bin/bash如果,你选择此设计题目,请在passwd文件中,模仿以上形式,添加以你学号和姓名拼音为账户的两行记录,具体添加模式如下:你的学号:x:1000:1000:something:/home/你的序号:/bin/bash姓名的拼音:x:1001:1001:something:/home/姓名的拼音:/bin/bash注意,这里添加这些类似系统用户的信息,并不是真实与用户关联的,这里只是用来进行测试shell脚本功能的数据信息而已。1)menu脚本执行后,大概应该呈现为下图所示的情况:假如,passwd文件中的内容如下所示:root:x:0:0:root:/root:/bin/bashlinux:x:500:500:linux:/home/linux:/bin/bashlianmin:x:503:500:lianmin:/home/lianmin:/bin/bash080510001:x:800:800:something:/home/080510001:/bin/bashzhangsan:x:801:801:something:/home/zhangsan:/bin/bash2)选择菜单1时,显示的结果大概如下图所示:3)选择菜单2时,显示的结果大概如下图所示:4)选择菜单3时,显示的结果大概如下图所示:5)选择菜单4时,显示的结果大概如下图所示:6)选择菜单5,并输入需要查询的用户名时,显示的结果大概如下图所示:7)选择菜单6,显示的结果大概如下图所示:完成添加用户后,在调用菜单2应该能够看到新添加用户mycount的信息条目。8)选择菜单7,通过用户ID来删除用户,显示的结果大概如下图所示:3.设计环境vmware8虚拟环境、Ubuntu虚拟操作系统bash或其他shell脚本环境4.设计提示1)menu脚本框架提示:#!/bin/bashrecord_file=passwdadd_file=adddelete_file=deletea=你的选择是:b=输入关键字是:clearwhiletruedoecho==========信息主菜单=======================……echo-e你的选择是:(等待用户输入)echoreadchoiceecho$a$choicecase$choicein1)…..2)…..3)…..4)…..5)whiletruedoecho请输入要查询的用户名:readanswerecho$b$answerif(test-z$answer)thenecho你还没有输入continueelif(testhead$record_file|grep-iw$answer)#-i不区分大小写-w全符合thenechobreakelseecho你输入的用户不存在,没有找到$answerbreakfidone;;6)source$add_file;;7)source$delete_file;;q)exit;;Q)exit;;*)echo无效的代码;;esacecho请按回车继续...readanswerdone2)add脚本编写提示:该脚本实现与用户的交互式添加用户信息,包括需要添加用户的:用户名、用户密码、用户ID、组ID、全名、用户家目录、登录shell类型。对于每一项信息需要进行单独的读取和必要验证。下面给出添加用户名的相关代码示例:echo-n用户名:readnewnamewhile(test-z$newname)doecho没有输入用户名echo-n用户名:readnewnamedoneuntil[`echo$newname|grep'^[a-zA-Z]*$'`]||[`echo$newname|grep'^[0-9][0-9]*$'`]||[`echo$newname|grep'^[a-zA-Z0-9]*$'`]doecho用户名只包含字母和数字!echo-n用户名:readnewnamedone3)delete脚本编写提示:delete脚本通过用户ID,找到passwd文件中对应用户ID的记录,并将其删除。同时要考虑到用户可能误操作,因此要在真正删除用户信息前,进行用户确认,如果用户不确认删除,那么就不能将用户信息记录从passwd中删除。这就需要一个临时文件进行辅助,将删除后的效果保存于该临时文件中,只有用户确认删除后,再将临时文件内容写入到passwd文件。否者保持passwd内容不变。注意:本设计题目中是对一个自建的passwd文件,而非/etc/passwd文件进行的操作。如果在真实的环境中,要实现用户信息管理所需要考虑的事情要多的多。比如:文件访问权限问题、用户在系统中拥有的文件资源如何删除等。设计内容二LAMP开发环境搭建与应用1.目的和要求Linux+Apache+Mysql+Perl/PHP/Python一组常用来搭建动态网站或者服务器的开源软件,本身都是各自独立的程序,但是因为常被放在一起使用,拥有了越来越高的兼容度,共同组成了一个强大的Web应用程序平台。随着开源潮流的蓬勃发展,开放源代码的LAMP已经与J2EE和.Net商业软件形成三足鼎立之势,并且该软件开发的项目在软件方面的投资成本较低,因此受到整个IT界的关注。从网站的流量上来说,70%以上的访问流量是LAMP来提供的,LAMP是最强大的网站解决方案.本设计课题期望学生能够在Ubuntu系统中搭建起一个LAMP开发环境,并完成编写一个网页,该网页中的内容应包含:学生的个人简单信息、服务器系统相关信息等内容。2.设计内容1)在虚拟机环境中的Ubuntu系统中成功搭建LAMP开发环境。2)编写一个网页,该网页能够显示完成本设计的学生信息以及apache服务器的相关信息。3)可以在宿主机,即虚拟机运行系统中通过域名方式访问该网页。3.设计环境运行于window系统下的vmware虚拟机环境运行于vmware虚拟机环境环境中的Ubuntu操作系统Linux系统的DNS服务配置套件bind94.设计提示:1)LAMP开发环境搭建(1)安装MYSQLsudoapt-getinstallmysql-serversudoapt-getinstallmysql-client安装过程中会要设置用户名和密码,设置后要记住,后面会使用。(2)安装Apachesudoapt-getinstallapache2(3)安装PHPsudoapt-getinstallphp5sudoapt-getinstalllibapache2-mod-auth-mysqlsudoapt-getinstallphp5-mysql(4)设置Ubuntu文件执行读写权限:LAMP组建安装好之后,PHP网络服务器根目录默认设置是在:/var/。由于Linux系统的安全性原则,该目录下的文件读写权限是只允许root用户操作的,所以我们不能在文件,也不能修改和删除,必须要先修改/var/目录的读写权限。在界面管理器中通过右键属性不能修改文件权限,得执行root终端命令:sudochmod777/var/。然后就可以写入html或php文件了。或者:suroot(用root用户)chownusername/var/(将username替换为您当前用户的用户名)exit或者ctrl+d(退出root)如果,ubuntu系统root用户还不可用,那是因为ubuntu系统默认root密码为空,您可以通过如下命令设置密码:sudopasswd-lroot(5)安装phpmyadmin-Mysql数据库管理sudoapt-getinstallphpmyadmin在安装过程中会要求选择Webserver:apache2或lighttpd,选择apache2,按tab键然后确定。然后会要求输入设置的Mysql数据库密码连接密码。然后将phpmyadmin与apache2建立连接,例如:目录在/var/,phpmyadmin在/usr/share/phpmyadmin目录,所以就用命令:sudoln-s/usr/share/phpmyadmin/var/建立连接。在浏览器地址栏中打开,测试是否工作正常。(6)检测Apache是否正常在浏览器中打开:如果出现如下信息,则表明正常。(7)检测PHP是否正常Ubuntu下Apache的默认安装路径为/var/,到其目录下新建info.php文件,文件内容为:?phpphpinfo();?然后在浏览器中打开:看是否正常。如果现实类似如下图所示状态表示PHP运行正常。注

1 / 17
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功