摘要Linux是一款免费的操作系统,用户可以通过网络或其他途径免费获得,并可以任意修改其源代码。这是其他的操作系统所做不到的。正是由于这一点,来自全世界的无数程序员参与了Linux的修改、编写工作,程序员可以根据自己的兴趣和灵感对其进行改变,这让Linux吸收了无数程序员的精华,不断壮大。Linux的基本思想有两点:第一,一切都是文件;第二,每个软件都有确定的用途。其中第一条详细来讲就是系统中的所有都归结为一个文件,包括命令、硬件和软件设备、操作系统、进程等等对于操作系统内核而言,都被视为拥有各自特性或类型的文件。这次的课程设计为了熟悉以下内容Linux基本网络命令,配置网络文件,建立个人账户,配置samba服务器,配置vsFTp服务器,shell编程。关键词:Linux基本网络命令配置网络文件建立个人账户配置samba服务器配置vsFTp服务器shell编程Linux课程设计第2页共20页目录1.绪论..................................................11.1引言.............................................12.操作系统特性..........................................12.1linux的主要特性...................................12.2UNIX的主要特点....................................23.系统设计...............................................33.1设计的目的与意义...................................33.2课程设计的目标.....................................33.3课程设计的要求.....................................34.课程设计的具体内容....................................44.1基本网络命令及使用方法............................44.2telnet建立多账户测试..............................84.3配置samba服务器,实现不同系统之间的文件共享......104.4配置vsFTP服务器................................114.5简单shell编程...................................14总结....................................................17参考文献................................................18第1页共17页1.绪论1.1引言Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。Linux是一个领先的操作系统,世界上运算最快的10台超级计算机运行的都是Linux操作系统。严格来讲,Linux这个词本身只表示Linux内核,但实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU工程各种工具和数据库的操作系统。Linux得名于天才程序员林纳斯•托瓦兹。Linux操作系统是UNIX操作系统的一种克隆系统,它诞生于1991年的10月5日(这是第一次正式向外公布的时间)。以后借助于Internet网络,并通过全世界各地计算机爱好者的共同努力,已成为今天世界上使用最多的一种UNIX类操作系统,并且使用人数还在迅猛增长。Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。它主要用于基于Intelx86系列CPU的计算机上。这个系统是由全世界各地的成千上万的程序员设计和实现的。其目的是建立不受任何商品化软件的版权制约的、全世界都能自由使用的Unix兼容产品。2.操作系统特性2.1linux的主要特性(1)基本思想Linux的基本思想有两点:第一,一切都是文件;第二,每个软件都有确定的用途。其中第一条详细来讲就是系统中的所有都归结为一个文件,包括命令、硬件和软件设备、操作系统、进程等等对于操作系统内核而言,都被视为拥有各自特性或类型的文件。至于说Linux是基于Unix的,很大程度上也是因为这两者的基本思想十分相近。(2)发展领域职业领域:系统应用类(网管\系统管理和维护人员\安全管理人员中低端行业领域)待遇属于中下。系统开发类行业(JAVA软件开发\C语言软件开发\WEB开发\嵌入式软件开发)其中嵌入式软件开发是linux应用最广的领域待遇属于中等发展方向:UNIX往高端领域和产业发展,例如:AIX、HP-UX、Solaris等等。(3)完全免费Linux是一款免费的操作系统,用户可以通过网络或其他途径免费获得,并可以任意修改其源代码。这是其他的操作系统所做不到的。正是由于这一点,来自全世界的无数程序员参与了Linux的修改、编写工作,程序员可以根据自己的兴趣和灵感对其进行改变,这让Linux吸收了无数程序员的精华,不断壮大。Linux课程设计第2页共17页(4)完全兼容POSIX1.0标准这使得可以在Linux下通过相应的模拟器运行常见的DOS、Windows的程序。这为用户从Windows转到Linux奠定了基础。许多用户在考虑使用Linux时,就想到以前在Windows下常见的程序是否能正常运行,这一点就消除了他们的疑虑。(5)多用户、多任务Linux支持多用户,各个用户对于自己的文件设备有自己特殊的权利,保证了各用户之间互不影响。多任务则是现在电脑最主要的一个特点,Linux可以使多个程序同时并独立地运行。(6)良好的界面Linux同时具有字符界面和图形界面。在字符界面用户可以通过键盘输入相应的指令来进行操作。它同时也提供了类似Windows图形界面的X-Window系统,用户可以使用鼠标对其进行操作。在X-Window环境中就和在Windows中相似,可以说是一个Linux版的Windows。(7)支持多种平台Linux可以运行在多种硬件平台上,如具有x86、680x0、SPARC、Alpha等处理器的平台。此外Linux还是一种嵌入式操作系统,可以运行在掌上电脑、机顶盒或游戏机上。2001年1月份发布的Linux2.4版内核已经能够完全支持Intel64位芯片架构。同时Linux也支持多处理器技术。多个处理器同时工作,使系统性能大大提高。2.2UNIX的主要特点(1)模块化程度高Linux的内核设计非常精巧,分成进程调度、内存管理、进程间通信、虚拟文件系统和网络接口五大部分;其独特的模块机制可根据用户的需要,实时地将某些模块插入或从内核中移走,使得Linux系统内核可以裁剪得非常小巧,很适合于嵌入式系统的需要.(2)源码公开由于Linux系统的开发从一开始就与GNU项目紧密地结合起来,所以它的大多数组成部分都直接来自GNU项目。任何人、任何组织只要遵守GPL条款,就可以自由使用Linux源代码。(3)广泛的硬件支持Linux能支持x86、ARM、MIPS、ALPHA和PowerPC等多种体系结构的微处理器。(4)安全性及可靠性好内核高效稳定Linux内核的高效和稳定已在各个领域内得到了大量事实的验证。Linux中大量网络管理、网络服务等方面的功能,可使用户很方便地建立高效稳定的防火墙、路由器、工作站、服务器等。为提高安全性,它还提供了大量的网络管理软件、网络分析软件和网络安全软件等。(5)具有优秀的开发工具开发嵌入式系统的关键是需要有一套完善的开发和调试工具。传统的嵌入式开发调试工具是在线仿真器(InCircuitEmulator,ICE),它通过取代目标板的微处理器,给目标程序提供一个完整的仿真环境,从而使开发者能非常清楚地了解到程序在目标板上的工作状态,便于监视和调试程序。在线仿真器的价格非Linux课程设计第3页共17页常高,而且只适合做非常底层的调试。如果使用的是嵌人式Linux,一旦软硬件能支持正常的串口功能,即使不用在线仿真器,也可以很好地进行开发和调试工作,从而节省了一笔不小的开发费用。嵌入式Linux为开发者提供了一套完整的工具链(ToolChain),能够很方便地实现从操作系统到应用软件各个级别的调试。由于UNIX系统对各种数据库,特别是关系型数据库管理系统提供了强大的支持能力,因此主要的数据库厂家,包括Oracle,Informix,Sybase,Progress等都将UNIX作为优选的运行平台,而且创造出极高的性能价格比。3.系统设计3.1设计的目的与意义(1)Linux操作系统具有较好的可移植性、良好地编程环境和强大的网络工。程,作为计算机专业的学生,Linux是一门非常重要的必修课,(2)通过这课程设计能够全面了解Linux的基本命令和基本操作,而且通过上机操作提高自己的编程能力、程序调试能力和应用能力。(3)本次Linux课程设计的目的就在于通过一次实践性的活动加深对这门课程的理解,使我们在感性的认识上进一步升华为理性的认识。为后继课程的学习打下坚实的基础。(4)通过这次课程设计能够检测自己在这门课程上学习的好坏,这是这次课程设计的意义所在。3.2课程设计的目标(1)熟悉基本的网络命令以及他们的使用方法,例如ping、ifconfig、netstat等网络命令。(2)熟悉网络配置文件的配置方法。(3)体会Linux多用户的特点,利用telnet进行。每个人建立个自己的帐户进行测试。(4)配置samba服务器,实现不同系统之间的文件共享。(5)配置vsFTP服务器(6)简单shell编程。3.3课程设计的要求(1)通过这次实习掌握网络命令的使用方法。(2)掌握网络配置文件的配置方法。Linux课程设计第4页共17页(3)学会配置Samba和FTP服务器。(4)掌握shell编程的基本知识。4.课程设计的具体内容4.1基本网络命令及使用方法(1)ping命令功能说明:检测主机。语法:ping[-dfnqrRv][-c完成次数][-i间隔秒数][-I网络界面][-l前置载入][-p范本样式][-s数据包大小][-t存活数值][主机名称或IP地址]标准用法:ping(-选项)主机名称或IP地址补充说明:执行ping指令会使用ICMP传输协议,发出要求回应的信息,若远端主机的网络功能没有问题,就会回应该信息,因而得知该主机运作正常。参数:-d使用Socket的SO_DEBUG功能。-c完成次数设置完成要求回应的次数。-f极限检测。-i间隔秒数指定收发信息的间隔时间。-I网络界面使用指定的网络界面送出数据包。-l前置载入设置在送出要求信息之前,先行发出的数据包。-n只输出数值。-p范本样式设置填满数据包的范本样式。-q不显示指令执行过程,开头和结尾的相关信息除外。-r忽略普通的RoutingTable,直接将数据包送到远端主机上。-R记录路由过程。-s数据包大小设置数据包的大小。-t存活数值设置存活数值TTL的大小。-v详细显示指令的执行过程。Ping命令执行结果如下图:Linux课程设计第5页共17页(2)ifconfig命令语法:ifconfig[网络设备][downup-allmulti-arp-promisc][add地址][del地址][硬件地址][me