1、目 录前言 11Linux 的简介 .21.1 什么是 Linux.21.2Linux 系统的主要特点 21.3LINUX 的组成 32 基本的网络命令以及他们的使用方法 .32.1ping 命令 .32.2ifconfig 命令 42.3netstat 命令 42.4echo 命令 .53 网络配置文件的配置方法 .64telnet 配置 .74.1telnet 简介 .74.2telnet 建立账户 74.3telnet 测试账户 85 配置 NFS 服务器 .95.1NFS 简介 95.2NFS 的文件远程挂载 .106 配置 samba 服务器 .116.1samba 服务器的简介 .
2、126.2samba 服务器文件共享 127 简单 shell 编程 .137.1 编写 shell 脚本 137.2 编写弹出式菜单的 shell 程序 147.3 编写一个小九九乘法表 168gcc 的简单使用 .178.1 递归的方法求 N 的阶乘 178.2 求 1 至 n 之间的奇数 188.3 求 1 至 n 的累加和 .19总结 21塔里木大学信息工程学院1前言Linux 系统是一种自由和开放源码的类 Unix 操作系统。目前存在着许多不同的 Linux,但它们都使用了 Linux 内核。Linux 可安装在各种计算机硬件设备中,从手机、平板电脑、路由器和视频游戏控制台,到台式计
3、算机、大型机和超级计算机。Linux 是一个领先的操作系统,世界上运算最快的 10 台超级计算机运行的都是 Linux 操作系统。严格来讲,Linux 这个词本身只表示 Linux内核,但实际上人们已经习惯了用 Linux 来形容整个基于 Linux 内核,并且使用 GNU 工程各种工具和数据库的操作系统。Linux 得名于计算机业余爱好者Linus Torvalds。Linux 凭借其自由、免费、开放源代码的优势,经过来自互联网、遍布全球的程序员的努力,再加上 IBM、Sun 等计算机巨头的支持,Linux 在手机操作系统市场中异军突起,尤其是在众多知名厂商宣布支持 Linux 手机操作系统
4、之后,Linux 的发展将不容忽视。由于 Linux 具有源代码开放、软件授权费用低、应用开发人才资源丰富等优点,便于开发个人和行业应用。这一可控认证系统。特点非常重要,因为丰富的应用是智能手机的优越性体现和关键卖点所在。从应用开发的角度看,由于 Linux 的源代码是开放的,有利于独立软件开发商(ISV)开发出硬件利用效率高、功能更强大的应用软件,也方便行业用户开发自己的安全。塔里木大学信息工程学院2Linux 基础与应用大作业摘要:Linux 是一套免费使用和自由传播的类 Unix 操作系统,它主要用于基于Intel x86 系列 CPU 的计算机上。本论文文阐述了 Linux 的基本网络
5、命令以及他们的使用方法、网络配置文件的配置方法、配置 NFS 服务器、配置 samba 服务器、shell 编程、gcc 的简单使用等等。为了达到阐述问题的目的,对一些进行了详细的分析以及对一些基本操作进行了截图。在此论文中,系统的开发平台是 Redhat Linux 9.0,本文详细介绍了 Linux 操作系统下的基本操作与应用。关键字:Linux 网络命令 配置服务器 shell 编程 gcc1Linux 的简介1.1 什么是 Linux简单地说,Linux 是一套免费使用和自由传播的类 Unix 操作系统,它主要用于基于 Intel x86 系列 CPU 的计算机上。其目的是建立不受任何
6、商品化软件的版权制约的、全世界都能自由使用的 Unix 兼容产品。Linux 以它的高效性和灵活性著称。它能够在个人计算机上实现全部的 Unix 特性,具有多任务、多用户的能力。Linux 可在 GNU(“不是 UNIX”工程的缩写)公共许可权限下免费获得,是一个符合 POSIX 标准的操作系统。Linux 操作系统软件包不仅包括完整的 Linux 操作系统,而且还包括了文本编辑器、高级语言编译器等应用软件。它还包括带有多个窗口管理器的 X-Windows 图形用户界面,如同我们使用 Windows NT 一样,允许我们使用窗口、图标和菜单对系统进行操作。1.2Linux 系统的主要特点开放性
7、:指系统遵循世界标准规范,特别是遵循开放系统互连(OSI)国际标准。 多用户:是指系统资源可以被不同用户使用,每个用户对自己的资源(例如:文件、设备)有特定的权限,互不影响。多任务:它是指计算机同时执行多个程序,而且各个程序的运行互相独立。良好的用户界面 :Linux 向用户提供了两种界面:用户界面和系统调用。Linux 还为用户提供了图形用户界面。它利用鼠标、菜单、窗口、滚动条等设塔里木大学信息工程学院3施,给用户呈现一个直观、易操作、交互性强的友好的图形化界面。设备独立性:是指操作系统把所有外部设备统一当作成文件来看待,只要安装它们的驱动程序,任何用户都可以象使用文件一样,操纵、使用这些设
8、备,而不必知道它们的具体存在形式。 Linux 是具有设备独立性的操作系统,它的内核具有高度适应能力 ,提供了丰富的网络功能,完善的内置网络是 Linux 一大特点。 可靠的安全系统:Linux 采取了许多安全技术措施,包括对读、写控制、带保护的子系统、审计跟踪、核心授权等,这为网络多用户环境中的用户提供了必要的安全保障。良好的可移植性:是指将操作系统从一个平台转移到另一个平台使它仍然能按其自身的方式运行的能力。Linux 是一种可移植的操作系统,能够在从微型计算机到大型计算机的任何环境中和任何平台上运行。 1.3LINUX 的组成LINUX 的内核:内核是系统的核心,是运行程序和管理 像磁盘
9、和打印机等硬件设备的核心程序。LINUX SHELL: Shell 是系统的用户界面,提供了用户与内核进行交互操作的一种接口。LINUX 文件系统: Linux 文件系统是文件存放在磁盘等存储设备上的组织方法。Linux 能支持多种目前浒的文件系统,如EXT2、EXT3、FAT、VFAT、ISO9660、NFS、SMB 等。LINUX 应用系统:标准的 Linux 系统都有一整套称为应用程序的程序集,包括文本编辑器、编程语言、X Window、办公套件、Internet 工具、数据库等2 基本的网络命令以及他们的使用方法Linux 的网络命令比较多,其中一些命令像ping、ftp、telnet
10、、route、netstat 等在其它操作系统上也能看到,但也有一些 Unix/Linux 系统独有的命令,如 ifconfig、finger、mail 等。Linux 网络操作命令的一个特点是,命令参数选项和功能很多,一个命令往往还可以实现其它命令的功能2.1ping 命令执行 ping 命令,它会使用 ICMP 传输协议发出要求回应的信息,若远程主机的网络没有什么问题,就会回应信息,因而得知该主机运作正常。塔里木大学信息工程学院4标准用法:Ping (-选项) 主机名称或是 IP 地址。Ping 命令使用如下图 1 所示:图 12.2ifconfig 命令ifconfig 是一个用来查看、
11、配置、启用或禁用网络接口的工具,这个工具极为常用的。可以用这个工具来临时性的配置网卡的 IP 地址、掩码、广播地址、网关等。也可以把 它写入一个文件中(比如/etc/rc.d/rc.local),这样系统引导后,会读取这个文件,为网卡设置 IP 地址. ifconfig 是一个计算机编辑的命令,ifconfig 有两种格式。ifconfig 命令使用如下图 2 所示:图 22.3netstat 命令netstat 用于显示与 IP、TCP、UDP 和 ICMP 协议相关的统计数据,一般用塔里木大学信息工程学院5于检验本机各端口的网络连接情况。用法:netstat (-选项)。netstat 命
12、令使用如下图 3、图 4 所示:图 3图 42.4echo 命令echo 命令的功能是在显示器上显示一段文字,一般起到一个提示的作用。该命令的一般格式为: echo (-n ) 字符串 其中选项 n 表示输出文字后不换行;字符串能加引号,也能不加引号。用 echo 命令输出加引号的字符串时,将字符串原样输出;用 echo 命令输出不加引号的字符串时,将字符串中的各个单词作为字符串输出,各字符串之间用一个空格分割。echo 命令使用如下图 5所示:塔里木大学信息工程学院6图 53 网络配置文件的配置方法要建立一个安全 Linux 服务器就首先要了解 Linux 环境下和网络服务相关的配置文件的含
13、义及如何进行安全的配置。在 Linux 系统中,TCP/IP 网络是通过若干个文本文件进行配置的,也许你需要编辑这些文件来完成联网工作,但是这些配置文件大都可以通过配置命令 linuxconf(其中网络部分的配置可以通过 netconf 命令来实现)命令来实现。下面介绍基本的 TCP/IP 网络配置文件.etc/conf.modules 文件该配置文件定义了各种需要在启动时加载的模块的参数信息。这里主要着重讨论关于网卡的配置。在使用 Linux 做网关的情况下,Linux 服务器至少需要配置两块网卡。为了减少启动时可能出现的问题,Linux 内核不会自动检测多个网卡。对于没有将网卡的驱动编译到
14、内核而是作为模块动态载入的系统若需要安装多块网卡,应该在“conf.modules”文件中进行相应的配置.etc/HOSTNAME 文件 该文件包含了系统的主机名称,包括完全的域名,如:。 */etc/sysconfig/network-scripts/ifcfg-ethN 文件 系统网络设备的配置文件保存在“/etc/sysconfig/network-scripts”目录下,ifcfg-eth0 包含第一块网卡的配置信息,ifcfg-eth1 包含第二块网卡的配置信息。*/etc/resolv.conf 文件塔里木大学信息工程学院7该文件是由域名解析器(resolver,一个根据主机名解析
15、 IP 地址的库)使用的配置文件,*/etc/host.conf 文件该文件指定如何解析主机名。Linux 通过解析器库来获得主机名对应的 IP地址*/etc/host.conf 文件该文件指定如何解析主机名。Linux 通过解析器库来获得主机名对应的 IP地址.*/etc/hosts 文件当机器启动时,在可以查询 DNS 以前,机器需要查询一些主机名到 IP 地址的匹配。这些匹配信息存放在/etc/hosts 文件中。在没有域名服务器情况下,系统上的所有网络程序都通过查询该文件来解析对应于某个主机名的 IP 地址。4telnet 配置4.1telnet 简介Telnet 是常用的远程登录手段
16、,有两种操作模式::Telnet 命令模式和Telnet 会话模式。连接到 Telnet 服务器后,Telnet 客户端会自动进入 Telnet会话模式,此模式最常见。在会话模式下,所有击键将通过网络发送到 Telnet服务器,并可在 Telnet 服务器上由在该处运行的任何程序进行处理。Telnet命令模式允许在本地将命令发送到 Telnet 客户端服务本身,例如打开到远程主机的连接、关闭到远程主机的连接、显示操作参数、设置终端选项、打印状态信息和退出程序。 4.2telnet 建立账户开启服务窗口,创建一个新的文件夹,找到 disable = yes=就是改这里,将 yes 改成 no 即
17、可,服务预设是关闭的,具体步骤如下图 6、图 7 所示:塔里木大学信息工程学院8图 6图 74.3telnet 测试账户通过另一代服务器与其连接上,在这台服务器上可以检测到建立的文件夹,在主机上输入一个数据如下图所示;在另一代服务器可以接受到这个数据如下图 8、图 9 所示:塔里木大学信息工程学院9图 8图 95 配置 NFS 服务器5.1NFS 简介NFS 分为服务器和客户端 , 服务器提供文件共享的机器 , 客户端就是访问服务器的机器。要使 NFS 服务器提供服务,必须启动 inet 、portmap、nfs 和 mount 这 4 个守护进程,并保持在后台运行、规划好要共享的分区或目录、
18、定义客户机的参数、配置 NFS 主配置文件:/etc/exports、重启 NFS 服务、在另一台服务器上检测并测试。塔里木大学信息工程学院105.2NFS 的文件远程挂载5.2.1 先查看服务器端是否安装下列软件包,如果没有就重新建立一个新的文件夹,如下图 10 所示图 105.2.2 配置 NFS 服务器端配置文件,如下图 11 所示:图 11塔里木大学信息工程学院115.2.3 重启 NFS 服务,如下图 12 所示图 125.2.4 文件远程测试,如下图 13 所示:图 136 配置 samba 服务器塔里木大学信息工程学院126.1samba 服务器的简介Linux 下进行资源共享有
19、很多种方式,Samba 服务器就是最常见的一种。Samba 服务器可以让 Windows 操作系统(Windows 2000/XP/2003 等)用户访问局域网中 Linux 主机,就象访问网上邻居一样方便。如图 1 所示,图中的服务器运行 Samba 服务器程序,其操作系统是 Linux。该服务器通过 Samba 可以向局域网中的其他 Windows 系统提供文件服务。同时,在 Linux 服务器上还连接了一个共享打印机,打印机也通过 Samba 向局域网的其他 Windows 用户提供打印服务。6.2samba 服务器文件共享6.2.1 打开 samba 服务器,并创建新的用户,如下:图
20、14、图 15 所示:图 14图 156.2.3 把新建文件改为读/写状态,如下图 16 所示:塔里木大学信息工程学院13图 166.2.4 在 Windows 用户检测,结果所下图 17 所示:图 177 简单 shell 编程7.1 编写 shell 脚本Shell 就是一个命令行解释器,它的作用就是遵循一定的语法将输入的命令加以解释并传给系统。它为用户提供了一个向 Linux 发送请求以便运行程序的接口系统级程序,用户可以用 Shell 来启动、挂起、停止甚至是编写一些程序。下面是编写的一个程序如下图 18 所示,该程序它能根据输入的命令行参数采取不同的动作:如果是目录,则列出该目录中的
21、文件;如果是可执行的文件,则用 shell 执行之;如果是可读的文件,则分屏显示其内容;塔里木大学信息工程学院14图 18执行结果如下图 19 所示,当输入 menu 时程序开始判断,输出结果 menu 为可执行文件,并执行 menu图 197.2 编写弹出式菜单的 shell 程序塔里木大学信息工程学院15在 shell 脚本中输入如下图 20、图 21、图 22 所示的程序,由于截图的失误程序有重复的部分图 20图 21塔里木大学信息工程学院16图 22程序执行结果如图 23 所示:图 237.3 编写一个小九九乘法表7.3.1 编辑如下图 24 所示的程序:塔里木大学信息工程学院17图
22、247.3.2 执行程序得到如下图 25 所示的结果:图 258gcc 的简单使用8.1 递归的方法求 N 的阶乘程序与执行结果如下图 26、图 27 所示:塔里木大学信息工程学院18图 26图 278.2 求 1 至 n 之间的奇数塔里木大学信息工程学院19程序与执行结果如下图 28、图 29 所示:图 28图 298.3 求 1 至 n 的累加和塔里木大学信息工程学院20程序与执行结果如下图 30、图 31 所示:图 30图 31塔里木大学信息工程学院21总结(1)基础知识不够牢固,对于 C 语言的程序编写在之前没研究过,用到的时候就捉襟见肘,作为一项基本的编程语言,以后还需要多加掌握。(
23、2)对于 Linux 的操作不够熟练。浪费了很多的时间,以及在出现问题之后经常不知所措,不知道采取什么办法来解决,多加练习一些 Linux 中的基本操作。(3)资料的贫乏,网上的知识重复太大。限制了资料的查询,以及个人知识面的狭窄,说明在这方面的研究还较少,也告诉我不能限制与课本的知识,课外的知识一样不可轻视。(4)通过此次论文设计,我对 Linux 操作系统也有了更深的体验。虽然通过自己的努力以及同学的帮助下完成了此次论文设计。尽管还有诸多的不完善的地方,但脚步总的一步一步来踏,在以后的学习生活中,要用严谨的态度去学习。参考文献1 David Tansley 著. 徐炎译.Linux 与 U
24、NIXShell 编程指南. 北京:机械工业出版社,2000.62 刘兵著Linux 实用教程M.北京:中国水利水电出版社,2004.73 朱居正、高冰著. Red Hat Linux 9 实用培训教程 . 北京:清华大学出版社,2004.74 张炯著.Unix 网络编程实用技术与实例分析北京:清华大学出版社,2002.115 顾云苏著Linux 服务器配置与优化北京:清华大学出版社,20019注意事项本论文中出现的两张黄色背景图片是在实现 Telnet 账户测试和配置NFS 服务器文件远程挂载中需要连接另一台 Linux 服务器,而另一台 Linux 服务器的脚本页面的背景颜色是黄色的,敬请老师理解。