1、UNIX 培训 教材UNIX操作系统目 录第一篇 基础篇第一章 UNIX操作系统概述 11.1 UNIX操作系统简介 1一、UNIX特点 1二、UNIX流派及标准 21.2 UNIX系统组成 21.3 与UNIX有关的几个名词 3第二章 UNIX常用操作 42.1 启动终端 42.2 登录 52.3 UNIX命令 5一、UNIX命令格式 5二、特殊按键 6三、UNIX常用简单命令 7四、UNIX用户间简单通讯命令 82.4 注销(退出UNIX系统) 10第三章 UNIX文件系统 103.1 UNIX文件系统分类 103.2 UNIX文件类型 103.3 UNIX树型目录结构 113.4 UNI
2、X文件名称 123.5 UNIX文件存取权限 123.6 UNIX重定向与管道 153.7 UNIX文件系统常用命令 15第四章 UNIX文件系统常用工具和实用程序 174.1 vi编辑器的最基本用法 174.2 利用find命令查找文件 184.3 grep命令基本用法 194.4 利用cmp命令比较文件 194.5 文件的备份和恢复实用程序 20一、tar命令 20二、cpio命令 214.6 文件压缩和解压程序 22一、compress 压缩命令 22二、pack 压缩文件 22三、gzip 压缩文件 22四、pkzip压缩文件 23第五章 UNIX简单维护与管理 235.1 UNIX开
3、机举例 235.2 UNIX关机举例 235.3 修改系统时间 235.4 如何控制后台进程 235.5 如何查看磁盘使用情况 245.6 掉电故障及处理 24第六章 网络通信 256.1 TCP/IP协议 256.2 查看网上用户信息 256.3 使用mail 发送和接收电子邮件 25一、发送电子邮件 25二、阅读电子邮件 266.4 在网络上登录和拷贝 26一、telnet 26二、ftp 28基础篇小结 30基础篇习题 30第二篇 深入篇第一章 UNIX启动和定时管理 321.1 UNIX启动过程 321.2 UNIX用户的登录过程 321.3 daemon进程 331.4 UNIX系统
4、的定时器 33第二章 UNIX用户管理 342.1用户管理 35一、增加新用户 35二、删除用户 35一、增加新用户组 35二、删除用户组 362.2 采用另外一种方法增加和删除用户 36一、增加用户 36二、删除用户 37第三章 存储设备的使用 383.1创建设备 383.2 mount和umount命令 38一、mount命令 38二、umount命令 393.3 软盘的使用 39一、软盘设备的创建 39二、软盘的格式化 40三、安装文件系统 40四、软盘的挂接 403.4 硬盘的使用 40一、SCSI接口卡 40二、SCSI硬盘设备的创建 41三、硬盘的分区 42四、硬盘的挂接 423.
5、5 CD-ROM的使用 42一、CD-ROM设备的创建 42二、CD-ROM的挂接 43第四章 网络、主机和路由参数设置 434.1 /etc/networks文件 434.2 /etc/hosts文件 434.3 /etc/gateways文件 444.4 设置步骤 444.5 测试 45深入篇小结 45深入篇习题 45第三篇 UNIX上机指导第一部分 上机环境 461.1 UNIX主机环境 461.2 工作站环境 46第二部分 在工作站上登录UNIX 472.1 NetTerm的安装 472.2 NetTerm的使用 47第三部分 UNIX常用命令的使用 483.1 常用命令之一 483.
6、2 常用命令之二(选做) 523.3 常用命令之三 52第四部分 ftp的使用 534.1 ftp的安装 534.2 使用ftp拷贝文件 54附录附录A UNIX命令速查表 55附录B 习题参考答案 57基础篇习题参考答案 57深入篇习题参考答案 58第一篇 基础篇第一章 UNIX操作系统概述1.1 UNIX操作系统简介UNIX是较早广泛使用的计算机操作系统之一,它的第一版于1969年在Bell实验室产生,1975年对外公布,1976年以后在Bell实验室外广泛使用。一、UNIX特点UNIX操作系统是一种非常流行的多任务、多用户操作系统,应用非常广泛。UNIX的主要特点为:多任务(Multi-
7、tasking) UNIX是一个多任务操作系统,在它内部允许有多个任务同时运行。而DOS操作系统是单任务的操作系统,不能同时运行多个任务。早期的UNIX操作系统的多任务是靠分时(time sharing)机构实现的,现在有些UNIX除了具有分时机制外,还加入了实时(real-time)多任务能力,用于象实时控制、数据采集等实时性要求较高的场合。多用户(Multi-users) UNIX又是一个多用户操作系统,它允许多个用户同时使用。在UNIX中,每位用户运行自己的或公用的程序,好象拥有一台单独的机器。DOS操作系统是单用户的操作系统,只允许一个用户使用。并行处理能力 UNIX支持多处理器系统,
8、允许多个处理器协调并行运行。管道 UNIX允许一个程序的输出作为另外一个程序输入,多个程序串起来看起来好象一条管道一样。通过各个简单任务的组合,就可以完成更大更复杂的任务,并极大提高了操作的方便性。后来DOS操作系统也借鉴并提供了这种机制。功能强大的Shell UNIX的命令解释器由Shell实现。UNIX提供了三种功能强大的Shell,每种Shell本身就是一种解释型高级语言,通过用户编程就可创造无数命令,使用方便。安全保护机制 UNIX提供了非常强大的安全保护机制,防止系统及其数据未经许可而被非法访问。稳定性好 在目前使用的操作系统中,UNIX是比较稳定的。UNIX具有非常强大的错误处理能
9、力,保护系统的正常运行。用户界面 传统的UNIX用户界面采用命令行方式,命令较难记忆,很难普及到非计算机专业人员。这也是长期以来UNIX遭受指责的主要原因,但现在大多数的UNIX都加入的图形界面,可操作性大大增强。强大的网络支持 UNIX具有很强的联网功能,目前流行的TCP/IP协议就是UNIX的缺省网络协议,正是因为UNIX和TCP/IP的完美结合,促进了UNIX、TCP/IP以及Internet的推广和普及。目前UNIX一直是Internet上各种服务器的首选操作系统。移植性好 UNIX操作系统的源代码绝大部分用C语言写成,非常便于移植到其它计算机上,再加上初期UNIX组织对UNIX源代码
10、宽松的管理政策,促进了UNIX的发展和普及。 很早以前,就应用到几乎所有16位及以上的计算机上,包括微机、工作站、服务器、小型机、多处理机和大型机等等。二、UNIX流派及标准 UNIX和其它操作系统不同,UNIX的生产厂家很多,由于历史的原因,不同厂家生产的UNIX有一些细微区别,这就产生了不同的UNIX流派。传统上认为包含了AT&T源代码的产品是真正的UNIX,而没有包含AT&T源代码的称为近似系统。下面是常见的不同厂家生产的UNIX产品: UNIX产品 计算机 生产厂家 SCO UNIX PC兼容机 SCO公司 XENIX PC兼容机 微软, SCO Digital Unix Dec Al
11、pha机 Digital公司 Solaris Sun工作站 Sun公司 AIX IBM机 IBM公司一些组织一直在对UNIX进行标准化工作,形成了一系列UNIX标准,下面是两个传统公认的UNIX标准版本:UNIX System V 这原是AT&T公司制定的标准版本,以后成为事实上的工业标准,传统上被认为是最正宗的UNIX。目前UNIX System V的版本有SVR 3.2、SVR 4.0、SVR 4.2 (SVR的全称是System V Release)。SCO UNIX就是采用的就是UNIX System V。BSD UNIX 这是加州大学Burkeley分校发表的UNIX版本(称为BSD
12、 UNIX ,即Berkeley Software Distribution Version of UNIX)。目前流行的BSD UNIX版本有BSD 4.2、BSD 4.3和BSD 4.4版。Solaris的早期版本采用的就是BSD UNIX。 UNIX SRV4里也集中了许多BSD的特性。SVR4.2把网络和图形作为UNIX的一个标准部件。SVR4.2支持除PC机以外的所有平台,PC机的UNIX版本将用Unixware。1.2 UNIX系统组成UNIX操作系统结构由三大部分组成:(1) Kernel(内核)(2) Shell(外壳)(3) 工具及应用程序 工具及应用程序 Shell Ker
13、nel 硬件 UNIX Kernel(UNIX内核) 是UNIX操作系统的核心,指挥调度UNIX机器的运行,直接控制计算机的资源,保护用户程序不受错综复杂的硬件事件细节的影响。UNIX Shell(UNIX外壳) 是一个UNIX的特殊程序,是UNIX内核和用户的接口,是UNIX的命令解释器、也是一种解释性高级语言。目前常见的Shell有三种:Shell类型简称命令主要特点Bourne ShellB Shellsh最老、使用最广泛,每个UNIX都提供。Korn ShellK Shellksh是对B Shell的扩充,兼容B Shell。C-Shellcsh格式有点象C语言。功能强,命令记忆稍难,
14、在大学和学院中较为流行。一般系统缺省为Bourne Shell, 本文以此Shell为例。要想将当前Shell改为其它 Shell,只需在操作系统提示符下键入相应的Shell命令即可。如在其它Shell下键输入命令: ksh就进入了K Shell。 工具及应用程序 UNIX提供了很多工具软件和应用程序供用户使用,如vi编辑器、文件查找、备份等等。1.3 与UNIX有关的几个名词 终端(Terminal) 终端是用户和计算机进行实时交互的接口设备。终端一般由显示器、键盘和终端控制器组成,有的还带有鼠标。显示器和键盘与终端控制器相连,终端控制器通过通用端口(如串口)和计算机主机相连。用户通过终端和
15、计算机交流。一台UNIX主机可以连多个终端。终端分为两类:字符终端和图形终端。 仿真终端 在某计算机上运行某一特定程序,把计算机当作另一台计算机的终端使用目前仿真终端与UNIX主机的连接方式主要有网络连接和串口连接。 控制台(Console) 这是一种特殊的终端,由显示器、键盘(和鼠标)组成,分别连到主机的专用接口(监视器接口、键盘接口、鼠标接口)上。一般一台主机只能接一个控制台,控制台可以完成普通终端不能完成的工作:非常重要的信息(如严重的错误信息)只能在控制台上显示,有些特殊的任务(如执行修复工作)也只能在控制台上完成。除了实现以上特殊功能外,控制台还可以象其它终端那样工作。 用户名(Us
16、er) UNIX是多用户操作系统,它允许多个用户同时使用。每个用户拥有用户名、登录口令以及操作特权。用户每次使用UNIX时必须先登录:输入用户名和口令。一般用户的UNIX操作系统提示符一般为”$”。 用户组(Group) 若干个用户可以组成一组,同组内的用户可以共享信息。root用户 UNIX的超级用户,拥有其他用户没有的特权。root用户的UNIX操作系统提示符一般为”#”。进程(Process) 是正在执行的程序。UNIX允许多个进程同时存在,每个进程都有唯一代号称为进程标识符(pid - process id)。前台进程(Foreground process) 可以和用户直接进行人机交互
17、的进程。前台进程序可以接收键盘输入并将结果显示在显示器上。缺省状态下用户启动的UNIX程序运行在前台。后台进程(Background process) 不直接和用户进行交互的进程。用户一般是感觉不到后台进程程序的运行。UNIX有很多系统进程在后台执行。设备(Device) 或称设备文件,代表某个硬件,如磁盘、软盘、串口。UNIX对硬件的存取操作都是通过设备文件来完成的。设备文件放在/dev目录下,如/dev/hd0表示第一个软盘驱动器。原始设备(Raw device) 也称为裸设备,没有经过加工的设备文件。原始设备文件名以r开头,如/dev/rhd0表示第一个软盘驱动器原始设备。第二章 UNI
18、X常用操作2.1 启动终端 对于专用终端,当打开终端电源后就会自动出现登录信息。对于网络连接的仿真终端,要先打开计算机,再运行TCP/IP协议驱动程序和终端仿真程序即可。 2.2 登录当终端与UNIX系统连通后,在终端上会出现”login:”提示符。在”login:”提示符下输入用户名,出现”password:”后再输入口令,如以abc用户登录的过程为: Login: abc Password:输入的口令并不显示出来,输入完口令后,一般会出现上次的登录信息,以及UNIX的版本号。当出现TERM一行时,要求输入所使用的终端类型。最后出现UNIX Shell提示符,等待用户输入命令。2.3 UNI
19、X命令一、UNIX命令格式1、UNIX命令提示符 在命令行下,操作系统会显示一提示符,提示用户在此提示符后可以输入一行命令。不同的Shell有不同的缺省提示符: B Shell和K Shell的缺省提示符为$; C Shell的缺省提示符为%; 但当以root用户登录时,系统提示符统一缺省为#。用户可以更改自己的缺省Shell和提示符。2、基本命令格式 在Shell提示符下,就可以输入UNIX命令。UNIX命令的基本格式如下: command 参数1 参数2 . 参数nUNIX命令由一个命令(command)和零到多个参数构成,命令和参数之间,以及参数与参数之间用空格隔开。UNIX的命令格式和
20、DOS的命令格式相似,但UNIX的命令区分大小写,且命令和参数之间必须隔开。如:对DOS来说是以下四条命令是相同的: cdtmp cd tmp CD tmp cd Tmp对UNIX操作系统来说,改变目录的命令也是cd命令,以下是正确的UNIX cd命令: cd /tmp cd /Tmp但tmp和Tmp是两个不同的目录。以下两条命令: cd/tmp CD /tmp已经不是cd命令了。3、在一行中运行多个命令可以在一行中输入多个命令,命令间用“;”分开,如: mkdir tmp ; cp file1 tmp/file2 ; ls -l tmpUNIX会顺序执行以上三条命令。4、在后台运行程序 要让
21、程序在后台执行,只需在命令行的最后加上“&”符号。例1 在后台运行find命令,在当前目录及其子目路下查找文件名为abc的文件。 执行命令和立即显示的内容如下: $ find . -name abc -print& 10722 $ .10722表示进程号(PID)。当find命令在后台执行完后,会显示结果。当在后台运行命令时,最好将其输出重定向输出到一个文件中去,以便以后检查。例2 在后台运行find命令,在当前目录及其子目路下查找文件名为abc的文件并将结果存到myfind文件中。 执行命令如下: $ find . -name abc -printmyfind&在运行后台程序的同时可以继续输
22、入命令。5、nohup命令 当终端退出后,由该终端启动的后台程序自动退出。要想终端退出后程序不停止运行,则要用nohup命令启动后台程序。如对于例2的命令加入nohup后变为: $ nohup find . -name abc -printmyfind&二、特殊按键在UNIX命令操作中有一些特殊键,列表如下:Ctrl + d结束键盘输入或退出当前shellDel中断键,停止当前动作回到shellCtrl+s暂停屏幕输出Ctrl+q继续屏幕输出Ctrl+ukill键,删除光标所在行的所有字符Esc结束当前的操作状态(如vi)三、UNIX常用简单命令下表列出了几个简单的UNIX命令:解释UNIX命
23、令命令举例查看帮助信息manman date查看日期datedate显示日历calcal 1998显示大写大字bannerbanner “ABCD”计算器bcbc修改口令passwdpasswd查看谁在使用系统whowho查看我是谁who am iwho am i显示用户信息fingerfinger 用户名清除屏幕clearclear1、man命令 - 查看帮助信息 举例: 查看man的使用方法: man 查看finger命令的帮助信息: man finger2、date命令 - 显示、修改日期和时间显示时间的命令如下: date显示如下: Mon Aug 17 13:43:14 NST 19
24、98表示NST标准时间,1998年8月17日13:43:14,星期一。3、cal命令 - 显示日历 举例: 显示1998年全年日历: cal 1998 显示1998年8月日历: cal 8 19984、banner命令 - 显示大写大字 举例:在屏幕上用大字显示“HUAWEI”,命令如下 banner HUAWEI5、bc命令 - 简单计算器 bc命令可以进行加、减、乘、除、求模、乘方运算,运算符分别为“+”“-”“*”“/”“%”“”。bc使用举例如下 bc以后输入算式即可,如: 1234 * 3 + 24按回车显示结果,以后等待输入其它算式。按+d键退出bc。6、passwd命令 - 修改
25、口令要修改自己的口令,只需运行: passwd以后系统会提示输入原来口令,并输入新口令。7、who命令 - 查看正在使用UNIX的用户 用法如下: who系统会显示正在使用UNIX的用户名、终端号和登录时间。要查看使用者自己的信息,运行: who am i8、finger命令 - 显示用户信息 finger命令比who命令显示的信息量大,功能强。基本使用方法如下: 显示登录信息: finger 显示smith用户详细信息: finger smith9、clear命令 - 清除屏幕 clear四、UNIX用户间简单通讯命令 UNIX提供许多方式让用户相互通信,它允许你以文本的方式发送及接收信息。
26、你可以传递信息给其他用户、所有用户、或自己。信息来源可以是文本文件或直接由键盘输入的内容。(一)write 命令 可使用write 实用程序向已登录的另一个用户发送一条报文,当对方也使用write 命令时,双方之间就建立了通信。 当用户使用write 命令时,就在对方用户终端上显示提示信息。write 命令的格式如下: write destination-user terminal 其中,destination-user 是你想与之通信的用户注册名,通常使用who 命令查看其注册名。如果对方在多台终端上登录,可通过用terminal 来控制write 的报文送向指定的终端。为了建立与其他用户的
27、双向通话,用户和对方每次必须执行write 命令,且必须指定注册名。一般在使用UNIX 进行通话时,通信双方有一些约定:用“o” 表示结束一条报文,“oo” 表示结束这次通信,用ctrl-d 退出write 命令。例1 UNIX上两用户alex 和jenny 通过write命令通信。在alex的所在终端上(表示回车): $ write alex Hi Alex, are you there? o Message from Alex (tty11)Sat Jan 5 15:08. Yes Jenny, Im here. o Thank you ,Alex, bye! oo Ctrl-d $该例说
28、明了使用write 命令实现Alex 和Jenny 的通信过程。首先Jenny 使用前两行向Alex发送了一条报文,接下来的两行是Alex 发送的报文Jenny 收到了,省略号表示他们的通信继续。最后,Jenny 用thank you,Alex,bye!oo 告诉Alex没有话要说了,并在下一行开始键入ctrl-d 来退出write 并回到shell。(二)使用talk双方对话 talk 命令是一个虚拟通信命令,它允许登录双方通过键盘实时对话,其格式如下: talk user-name terminalCR注意,使用talk 进行双方对话时,双方使用的机器体系结构必须相同。当对方给出响应的ta
29、lk命令后,双方终端上都显示 connect established时,双方可双工通信了。双方可以以任意的速度从键盘输入,talk 把你的输入一行一行的显示在你和对方的屏幕上。用退出talk 。(三)使用mesg 拒绝和允许接收报文 mesg 命令允许或拒绝接收由其它终端发来的write 和talk通讯信息。mesg命令在本地终端运行,其使用格式如下: mesg y nCR其中,y 表示允许接收,n 表示拒绝接收。如既不给出y 也不给出n ,则报告现在的许可状态。例:例1 显示状态: $mesg 则命令的执行结果为: is y 或 is n 例2 拒绝接收由其它终端发来的write 和talk
30、通讯信息: $mesg n $mesg is n(四)wall 广播式消息传递 所有登录用户都可收到该消息。仅超级用户使用该命令。wall命令有以下几种格式: # wall # wall filename # wall “send a message to all the people。”2.4 注销(退出UNIX系统) 在每次使用完后,一定要进行注销,以防他人通过你的帐号进入系统,并保证系统的完整性。注销过程如下:在UNIX提示符下,运行: $ exit或 $ logout或直接按键: Ctrl+d。由于UNIX操作系统的不同,注销的命令也可能不同。第三章 UNIX文件系统3.1 UNIX文件系统分类 UNIX操作系统可由多个可以动态安装及拆卸的文件系统组成。UNIX文件系统主要分为两大类:根文件系统和附加文件系统。根文件系统(the root file sy