[align=center] UNIX培训教材
华 为 技 术 有 限 公 司(转自http://blog.sina.com.cn/s/blog_4920c055010004br.html) 版权所有 侵权必究 目 录
第1章 UNIX操作系统概述 1.1 UNIX操作系统简介 1.2 UNIX系统组成 1.3 与UNIX有关的几个名词 第2章 UNIX常用操作 2.1 启动终端 2.2 登录 2.3 UNIX命令 2.4 注销(退出UNIX系统) 第3章 UNIX文件系统 3.1 UNIX文件系统分类 3.2 UNIX文件类型 3.3 UNIX树型目录结构 3.4 UNIX文件名称 3.5 UNIX文件存取权限 3.6 UNIX重定向与管道 3.7 UNIX文件系统常用命令 第4章 UNX文件系统常用工具 4.1 vi编辑器的最基本用法 4.2 利用find命令查找文件 4.3 grep命令基本用法 4.4 利用cmp命令比较文件 第5章 UNX系统深入了解 5.1 与UNIX有关的几个名词 5.2 在后台运行程序 5.3 在指定时间执行指定程序 5.4 如何控制后台进程 5.5 如何查看磁盘使用情况 第6章 UNX用户管理 6.1 增加用户 6.2 开机 6.3 关机 6.4 掉电故障及处理 第7章 存储设备的使用 7.1 创建设备 7.2 mount和umount命令 7.3 软盘的使用 7.4 硬盘的使用 7.5 CD-ROM的使用 第8章 UNX实用程序 8.1 文件的备份和恢复实用程序 8.2 文件压缩和解压程序 第9章 网络通信 9.1 TCP/IP协议 9.2 查看网上用户信息 9.3 使用mail 发送和接收电子邮件 9.4 在网络上登录和拷贝 9.5 网络、主机和路由参数设置 第10章 UNX常见故障处理 10.1 常见故障处理: 10.2 附一、参考资料 -------------------------------------------------------------------------------- UNIX操作系统概述
1.1 UNIX操作系统简介 UNIX是较早广泛使用的计算机操作系统之一,它的第一版于1969年在Bell实验室产生,1975年对外公布,1976年以后在Bell实验室外广泛使用。 应用范围应用到几乎所有16位及以上的计算机上,包括微机、工作站、小型机、多处理机和大型机等等。 UNIX特点 (1) 多任务、多用户 (2) 并行处理能力 (3) 管道 (4) 安全保护机制 (5) 功能强大的shell (6) 强大的网络支持,Internet上各种服务器的首选操作系统 (7) 稳定性好 (8) 系统源代码用C语言写成,移植性强 (9) 出售源代码,软件厂家自己增删 UNIX流派 举例 UNIX类别 计算机 SCO UNIX PC兼容机 Digital Unix Dec Alpha机 Solaries Sun 小型机工作站 AIX IBM机 HPUX HP小型机工作站 Linux 各种机器 1.2 UNIX系统组成 UNIX操作系统结构由三大部分组成: (1)kernel(内核) (2) shell(外壳) (3) 工具及应用程序 UNIX Kernel(UNIX内核)是UNIX操作系统的核心,指挥调度UNIX机器的运行,直接控制计算机的资源,保护用户程序不受错综复杂的硬件事件细节的影响。 UNIX Shell(UNIX外壳)是一个UNIX的特殊程序,是UNIX内核和用户的接口,是UNIX的命令解释器。目前常见的Shell有三种: shell类型 简称 命令 主要特点 Bourne Shell B Shell sh 最老、使用最广泛,每个UNIX都提供。 Korn Shell K Shell ksh 是对B Shell的扩充,兼容B Shell。 C-Shell csh 格式有点象C语言。功能强,命令记忆稍难,在大学和学院中较为流行。 一般系统缺省为Bourne Shell, 本文以此shell为例。 要想将当前Shell改为其它 Shell,只需在操作系统提示符下键入相应的Shell命令即可。如在B Shell下键输入命令: $ ksh 就进入了K Shell。 1.3 与UNIX有关的几个名词 多用户(Multi-users) 允许多个用户同时使用计算机的能力。 多任务(Multi-tasking) 为每一个用户同时执行多个任务的能力。 终端(Terminal)终端是用户和计算机进行实时交互的接口设备。终端一般由显示器、键盘和终端控制器组成,有的还带有鼠标。显示器和键盘与终端控制器相连,终端控制器通过通用端口(如串口)和计算机主机相连。用户通过终端和计算机交流。一台UNIX主机可以连多个终端。终端分为两类:字符终端和图形终端。 仿真终端在某计算机上运行某一特定程序,把计算机当作另一台计算机的终端使用。目前仿真终端与UNIX主机的连接方式主要有网络连接和串口连接。 控制台(Console)这是一种特殊的终端,由显示器、键盘(和鼠标)组成,分别连到主机的专用接口(监视器接口、键盘接口、鼠标接口)上。一般一台主机只能接一个控制台,控制台可以完成普通终端不能完成的工作:非常重要的信息(如严重的错误信息),只能在控制台上显示,有些特殊的任务(如执行修复工作)也只能在控制台上完成。除了实现以上特殊功能外,控制台还可以象其它终端那样工作。 用户名(User) UNIX是多用户操作系统,它允许多个用户同时使用。每个用户拥有用户名、登录口令以及操作特权。用户每次使用UNIX时必须先登录:输入用户名和口令。一般用户的UNIX操作系统提示符一般为"$"。 工作组(Group) 几个用户可以组成一组,同组内的用户可以共享信息。 root用户 UNIX的超级用户,拥有其他用户没有的特权。root用户的UNIX操作系统提示符一般为"#"。
本章小结: 本章介绍了UNIX操作系统的特点、组成和几个常见概念。介绍了UNIX常见的三种Shell:B Shell、K Shell和C Shell
------------------------------------------------------------------------------- 第2章 UNIX常用操作
2.1 启动终端 对于专用终端,当打开终端电源后就会自动出现登录信息。对于仿真终端,要先打开计算机,再运行TCP/IP协议驱动程序和终端仿真程序即可。 2.2 登录 当终端与UNIX系统连通后,在终端上会出现"login:"提示符。在"login:"提示符下输入用户名,出现"password:"后再输入口令,如以abc用户登录的过程为: Login: abc Password: 输入的口令并不显示出来,输入完口令后,一般会出现上次的登录信息,以及UNIX的版本号。当出现TERM一行时,要求输入所使用的终端类型。最后出现UNIX Shell提示符,等待用户输入命令。B Shell和K Shell的缺省提示符为"$",C Shell的缺省提示符为"%"。当以root用户登录时,系统提示符为"#"。 2.3 UNIX命令 在Shell提示符下,就可以输入UNIX命令。UNIX命令的基本格式如下: command 参数1 参数2 ... 参数n UNIX命令由一个命令(command)和零到多个参数构成,命令和参数之间,以及参数与参数之间用空格隔开。UNIX的命令格式和DOS的命令格式相似,但UNIX的命令区分大小写,且命令和参数之间必须隔开。如:对DOS来说是以下四条命令是相同的: cd\tmp cd \tmp CD \tmp cd \Tmp 对UNIX操作系统来说,改变目录的命令也是cd命令,以下是正确的UNIX cd命令: cd /tmp cd /Tmp 但tmp和Tmp是两个不同的目录。以下两条命令: cd/tmp CD/tmp 已经不是cd命令了。 一、UNIX常用简单命令 下表列出了几个简单的UNIX命令: 解释 UNIX命令 命令举例 帮助 man man date 查看日期 date date 显示日历 cal cal 1998 显示大字 banner banner "ABCD" 计算器 bc bc 修改口令 passwd passwd 查看谁在使用 who who 查看我是谁 who am i who am i 清除屏幕 clear clear
二、特殊键 在UNIX命令操作中有一些特殊键,列表如下:
Ctrl + d 结束键盘输入或退出当前shell Del 0中断键,停止当前动作回到shell Ctrl+s 暂停屏幕输出 Ctrl+q 继续屏幕输出 Ctrl+u kill键,删除光标所在行的所有字符 Esc 结束当前的操作状态(如vi) 三、UNIX用户间简单通讯命令 UNIX提供许多方式让用户相互通信,它允许你以文本的方式发送及接收信息。你可以传递信息给其他用户、所有用户、或自己。信息来源可以是文本文件或直接由键盘输入的内容。 (一)write 命令 可使用write 实用程序向已注册的另一个用户发送一条报文,当对方也使用write 命令时,双方之间就建立了通信。 当用户使用write 命令时,就在对方用户终端上显示提示信息。write 命令的格式如下: write destination-user [terminal] 其中,destination-user 是你想与之通信的用户注册名,通常使用who 命令查看其注册名。如果对方在多台终端上登录,可通过用terminal 来控制write 的报文送向指定的终端。为了建立与其他用户的双向通话,用户和对方每次必须执行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, I''m here. o Thank you ,Alex, bye! oo Ctrl-d $ 该例说明了使用write 命令实现Alex 和Jenny 的通信过程。首先Jenny 使用前两行向Alex发送了一条报文,接下来的两行是Alex 发送的报文Jenny 收到了,省略号表示他们的通信继续。最后,Jenny 用thank you,Alex,bye!oo 告诉Alex没有话要说了,并在下一行开始键入ctrl-d 来退出write 并回到shell。 (二)使用talk与另一个用户对话 talk 命令是一个虚拟通信命令,它把用户终端上的信息一行一行的发送给另一个用户,其格式如下: talk user-name [terminal]〈CR〉 注意,使用talk 进行双方对话时,双方使用的机器体系结构必须相同。当对方给出响应的talk命令后,双方终端上都显示 [connect established] 时,双方可双工通信了。双方可以以任意的速度从键盘输入,talk 把你的输入一行一行的显示在你和对方的屏幕上。用ctrl-d 退出talk 。 (三)使用mesg 拒绝和允许接收报文 mesg 命令允许或拒绝接收由其它终端发来的write 和talk通讯信息。mesg命令在本地终端运行,其使用格式如下: mesg [y] [n]〈CR〉 其中,y 表示允许接收,n 表示拒绝接收。如既不给出y 也不给出n ,则报告现在的许可状态。例: [例1] 显示状态: $mesg 则命令的执行结果为: is y 或 is n [例2] 拒绝接收由其它终端发来的write 和talk通讯信息: $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的常见操作。 在使用UNIX操作系统之前必须先登录,使用完成后要注销。 本章介绍了几个常用UNIX命令和命令操作中常用的特殊按键。 本章介绍了用户通讯命令:write、talk、mesg和Wall。 ------------------------------------------------------------------------------ 第3章 UNIX文件系统
3.1 UNIX文件系统分类 UNIX操作系统可由多个可以动态安装及拆卸的文件系统组成。UNIX文件系统主要分为两大类:根文件系统和附加文件系统。 根文件系统(the root file system)每一个UNIX操作系统在其主硬盘上至少含有一个文件系统,它包含构成操作系统的程序和目录,一般由“/”符号来表示。 附加文件系统除根文件系统外的其它文件系统,如/u文件系统,AFS文件系统等。 以后如无特别声明,本文都是针对根文件系统来进行说明的。 3.2 UNIX文件类型 在UNIX中文件共分为四种: 1) 一般文件(ordinary file),分为: (1) 文本文件 (2) 二进制文件 2) 目录文件(directory) 3) 特殊文件(special file),分为: 1 块设备文件 2 字符设备文件 4) 符号链接文件(symbolic links) 文件类型标识 在用"ls -l"命令显示文件目录时的用下列符号表示不同的文件类型: - 普通文件 d 目录文件 b 块设备文件 c 字符设备文件 p 管道设备 l 符号链接文件 举例: $ ls 杔 -rwxr-xr-- 2 wjm newservice 321 Oct 17 09:33 file1 drwxr-xr-x 2 wjm newservice 96 Oct 17 09:40 dir1 其中,第一列的"-"表示file1是普通文件,"d"表示dir1为目录文件。 3.3 UNIX树型目录结构 UNIX操作系统采用树型带勾连的目录结构,如下图所示。在这种结构中,一个文件的名字是由根目录到该文件的路径上的所有节点名按顺序构成的,相互之间用“/”分开。如文件prog的全路径名为:/usr/smith/prog,根目录用“/”表示。 根文件系统常用目录 根文件系统的常用目录举例如下表: /bin 大部分可执行的UNIX命令和共用程序 /dev 设备文件,如/dev/cd0 /etc 系统管理命令和数据文件 /lib C程序库 /usr 存放用户的家目录和用户共用程序或文件 /tmp 临时工作目录,存放一些临时文件
家目录 UNIX在创建用户名时,自动在/usr目录下创建与用户名同名的子目录,如/usr/smith子目录,这个子目录成为此用户的家目录(Home Directory)。家目录中有一个文件比较特殊:“.profile”(或“.login”)文件。当以该家目录的用户名登录UNIX时,会自动执行“.profile”文件。它有点类似于DOS的AUTOEXEC.BAT文件。“.profile”是B/K shell的启动文件,而“.login”是C shell的启动文件。“.profile”文件中常有一行: PATH=$HOMEHOME/bin 其中,PATH类似DOS的PATH,而$HOME表示家目录。 3.4 UNIX文件名称 UNIX文件名称: 最大长度为255字节; 大小写敏感(file1和File1表示两个不同的文件); 无专用扩展名(UNIX文件名可出现多个小数点,并无特殊含义)。 UNIX特殊文件名 / 表示根目录 . 表示当前目录 .. 表示当前目录的父目录 .字符串 表示隐含文件,如".profile"文件 文件名通配符 ? 任一个字符,如"abc?" * 任何字符,如"ab*10"表示以ab开头和以10结尾的名字 3.5 UNIX文件存取权限 文件的存取权限 UNIX文件的存取有三种权限:
权限 普通文件的存取权限 目录的存取权限 r 具有读取文件的权利 能读取文件名称 w 具有写入文件的权利 能建立和删除文件,可以改变文件名 x 具有执行文件的权利 能使用该目录下的文件(如cd命令)搜索文件等
能够存取文件的用户类型 有三种类型的用户可以存取文件:
用户类型 说明 owner 文件的拥有者 group 文件所在的工作组 other 其他用户(非owner和非group)
每种类型的用户都有三种文件存取权限:r、w、x。 文件存取权限的显示 可以通过"ls -l"命令显示,如:
$ ls -l file1
显示如下:
-rwxr-xr-- 2 wjm newservice 321 Oct 17 09:33 file1
上行第2-4字符"rwx"表示此文件属主wjm对此文件的权利为"可读、可写、可执行", 上行第5-7字符"r-x" 表示此工作组newservice内的用户对此文件的权利为"可读、不可写、可执行",上行第8-10字符"r--" 表示其他用户对此文件的权利为"可读、不可写、不可执行"
文件存取权限的修改用chmod命令修改文件的存取权限,chmod命令的格式如下: 格式1: chmod symbolic_mode file... 格式2: chmod absolute_mode file...
这里只介绍符号模式(symbolic_mode), 符号模式的命令格式如下:
chmod [who] op permision file...
who项表示用户类型,它的内容为以下一项或多项:
u 拥有者(user --- owner) g 与拥有者同一组的用户(group) o 其他人(other) a 所有人(all)
op项表示动作:
+ 表示要加上permission指定的权利 - 表示要取消permission指定的权利
permission项为存取权限,它的内容为以下一项或多项:
r 表示可读 w 表示可写 x 表示可执行
举例:
chmod u+w test report 拥有者对test和report文件“可写” chmod u-x abc.c 拥有者对abc.c文件不可执行 chmod u+rwx myfile1 拥有者对myfile“可读、可写、可执行” chmod ugo+rwx myfile2 任何人都对myfile“可读、可写、可执行”
改变文件属主及文件所在组 改变文件属主的格式如下:
chown 属主名 文件名
必须对文件具有write权利才可改变文件的拥有者。 改变文件所在组的格式如下: chgrp 组名 文件名 必须是文件的拥有者或supervisor才能改变文件组别的归属。 举例: chown wjm test1 chgrp newservice test1 3.6 UNIX重定向与管道 UNIX重定向将文件的标准输出重新定向输出到文件,或将数据文件作为另一程序的标准输入内容。如: ls -l>file1 将ls -l命令显示的内容存到file1中, ls>>file1 将ls 命令显示的内容附加存到file1的尾部 grep abc
其中,">"和">>"为输出重定向符,">"将输出内容存到重定向文件中,若文件存在,则先删除原有内容;">>"将输出内容存到重定向文件的尾部。 UNIX管道 将一文件的输出作为另一文件的输入。如: ls|more 将ls的输出作为more命令的输入 ps -ef|grep smith ps -ef的输出作为grep smith命令的输入 3.7 UNIX文件系统常用命令
UNIX命令 UNIX命令举例 类似DOS命令 显示当前目录 pwd pwd cd 改变目录 cd cd /usr cd c:\usr 进入家目录 cd cd 创建目录 mkdir mkdir abc md abc 删除空目录 rmdir rmdir abc rd abc 删除目录及其内容 rm -r rm -r abc deltree abc 显示目录内容 ls ls abc ls -l abc(文件长列表) ls -a abc(所有类型文件) ls -d * (不进子目录) dir abc 显示文本文件内容 cat cat file1.c type file1.c 一次一屏显示文本 文件内容 more more file1.c 拷贝文件 cp cp file1 file2 copy file1 file2 移动(重命名)文件 mv mv call.test call.list move call.tst call.lst ren call.test bbb 删除文件 rm rm call.list del call.lst
QUOTE: 本章小结: 本章介绍了UNIX文件系统的基本概念和基本命令: UNIX文件系统分为根文件系统和附加文件系统。 UNIX的文件类型可分为:一般文件、目录文件、特殊文件和符号链接文件。 UNIX采用树型目录结构。每个用户拥有自己的家目录。 UNIX支持长文件名。UNIX的文件名对大小写敏感。 UNIX文件的存取权限分为:r、w 、x。 UNIX支持重定向和管道。 最后介绍了UNIX文件系统常用命令。
|