职业IT人-IT人生活圈

 找回密码
 成为会员
搜索
查看: 2349|回复: 0

UNIX培训教材

[复制链接]
zlyuanna 发表于 2006-11-8 23:41 | 显示全部楼层 |阅读模式
UNIX培训教材  

   
目  录  
第1章 UNIX操作系统概述    6  
1.1 UNIX操作系统简介    6  
1.2 UNIX系统组成    6  
1.3 与UNIX有关的几个名词    7  
第2章 UNIX常用操作    9  
2.1 启动终端    9  
2.2 登录    9  
2.3 UNIX命令    9  
2.4 注销(退出UNIX系统)    13  
第3章 UNIX文件系统    14  
3.1 UNIX文件系统分类    14  
3.2 UNIX文件类型    14  
3.3 UNIX树型目录结构    15  
3.4 UNIX文件名称    15  
3.5 UNIX文件存取权限    16  
3.6 UNIX重定向与管道    18  
3.7 UNIX文件系统常用命令    19  
第4章 UNX文件系统常用工具    20  
4.1 vi编辑器的最基本用法    20  
4.2 利用find命令查找文件    21  
4.3 grep命令基本用法    22  
4.4 利用cmp命令比较文件    23  
第5章 UNX系统深入了解    24  
5.1 与UNIX有关的几个名词    24  
5.2 在后台运行程序    24  
5.3 在指定时间执行指定程序    25  
5.4 如何控制后台进程    26  
5.5 如何查看磁盘使用情况    27  
第6章 UNX用户管理    28  
6.1 增加用户    28  
6.2 开机    30  
6.3 关机    30  
6.4 掉电故障及处理    31  
第7章 存储设备的使用    32  
7.1 创建设备    32  
7.2 mount和umount命令    33  
7.3 软盘的使用    34  
7.4 硬盘的使用    35  
7.5 CD-ROM的使用    37  
第8章 UNX实用程序    39  
8.1 文件的备份和恢复实用程序    39  
8.2 文件压缩和解压程序    41  
第9章 网络通信    44  
9.1 TCP/IP协议    44  
9.2 查看网上用户信息    44  
9.3 使用mail 发送和接收电子邮件    45  
9.4 在网络上登录和拷贝    45  
9.5 网络、主机和路由参数设置    51  
第10章 UNX常见故障处理    55  
10.1 常见故障处理:    55  
10.2 附一、参考资料    57  
   
关键词:  
UNIX      Sloaris  

摘    要:  
               本文档主要介绍UNIX操作系统的系统结构与常用操作,以及Solaris基础。可以与N2000的产品基础培训共用。  


   
   
   
第1章   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  
    本章小结:  
           本章介绍了UNIX文件系统的基本概念和基本命令:  
    UNIX文件系统分为根文件系统和附加文件系统。  
    UNIX的文件类型可分为:一般文件、目录文件、特殊文件和符号链接文件。  
    UNIX采用树型目录结构。每个用户拥有自己的家目录。  
    UNIX支持长文件名。UNIX的文件名对大小写敏感。  
    UNIX文件的存取权限分为:r、w 、x。  
    UNIX支持重定向和管道。  
    最后介绍了UNIX文件系统常用命令。  
   
第4章  UNX文件系统常用工具  
4.1    vi编辑器的最基本用法  
    vi编辑器是UNIX的强有力的文本文件编辑工具,利用它可以建立、修改文本文件。  
    在当前的各种UNIX GUI界面下都提供了文本编辑器,其操作方法和WINDOWS下的notepad类似,可以方便的进行文本编辑。但vi是最基本的文本编辑工具,所有的UNIX均支持。  
     vi编辑器常用的两种状态方式  
    1) 文本输入方式    用于文本的输入  
    2) 命令方式    用于输入控制命令  
    vi编辑器的进入  
    vi 文件名  
    自动进入命令方式。  
    文本输入方式的进入  
    a-将在光标所在位置之后插入文本(append)  
    A-将在光标所在行末插入文本  
    i-将在光标所在位置之前插入文本(insert)  
    I-将在光标所在行的第一个非空字符前插入文本  
    o-将在光标所在行的下一行开始插入文本(open)  
    O-将在光标所在行的上一行开始插入文本  
    光标位置移动(两种方式均适用)  
    h-左移  
    j-下移  
    k-上移  
    l-右移  
    文本输入方式的退出  
    ESC     按ESC键进入命令方式  
    删除更改操作  
    在命令方式下运行。  
    x-删除光标所在字符  
    dd-删除光标所在行  
    退出vi编辑器  
    在命令方式下运行。不管在什么状态,最好在运行下面命令前,先按以下ESC键,以防出错。  
     :wq    存盘退出  
     :q-不存盘退出  
     :q!-不存盘强制退出  
     :w-只存盘不退出  
4.2    利用find命令查找文件  
    find命令会在指定目录及其子目录下查找符合条件的特定文件。此命令的最大用处是当忘了文件的正确所在,而想找到该文件。  
    命令格式  
find  目录名  条件  
    目录名 ---  欲开始寻找的目录所在。find会寻找此目录及其子目录。可以有多个目录名称,只要目录与目录之间用空格分开即可。  
    条件   ---  欲搜索文件的条件,可包含文件名称、拥有者、最后修改时间等等。  
    条件列表说明  
-name name    指定要被寻找的文件或目录名称,  
  可用通配符,如, -name ’*.c’  
-print    将符合条件的路径打印出来  
-size n    寻找占用n个block的文件  
-type x    以文件类型作为寻找条件。文件类型x如下:  
  d --- 目录(directory),    f --- 文件(file),  
  b --- 块(block),         c -- 字符(character),  
  p --- 管道(pipe)  
-user user    寻找属于user所拥有的文件,  
  user可为用户名或uid号  
-group group    寻找工作组为group的所有文件,  
  group可为组名称或gid号  
-links n    寻找链接数等于n的所有文件  
-atim n    寻找n天之前曾被存取的文件  
-mtime n    寻找n天之前曾被修改的文件  
-exec command {}\\;    用寻找到的文件作为执行command的对象,  {}内存欲执行command时所需的参数  
    条件的逻辑运算符:  
逻辑运算符    逻辑意义    举例    说明  
!    非    !-name \"*.c\"    所有不以.c为扩展名的文件  
-o    或    -size +10 -o -links 3    所有大于10block或链接数为3的文件  
    与    -size +10 -links 3    大于10block且链接数为3的文件  
    注:上表中的“+10”表示大于10,“-10”表示小于10。  
      基本用法举例  
ind /temp -name \"abc*\" -print    在/temp目录下查找文件名以abc开始的文件  
find . -name test -print    在当前目录下查找文件名为test的文件  
4.3    grep命令基本用法  
    grep在整个文本文件中寻找特定字符串,并将所有出现该字符串的行打印。  
    命令格式  
grep 字符串 文件名  
      
    举例  
grep abcd temp    在temp中查找abcd字符串  
grep \"This is a book\" temp    在temp中查找\"This is a book\"字符串,由于字符串中含有空格,故要用引号括起来  
      
4.4    利用cmp命令比较文件  
    cmp可比较两个文件,这两个文件可以是文本文件也可以是非文本文件。cmp命令会显示两个文件第一次数据不同的位置。若两个文件内容相同,则不显示任何信息。  
      
    命令格式  
      
cmp  [-ls]  文件名1  文件名2  
    参数说明  
-l    显示每个不同之处不同字节的内容  
-s    只显示cmp命令的返回值(相同为0,不相同为1)  
      
        举例  
      
cmp temp1 temp2    比较temp1和temp2两个文件的内容  
      
    本章小结:  
    本章介绍了UNIX文件系统几个常用工具软件:  
    利用vi可以对文本文件进行编辑。  
    利用find可以在目录中查找文件名。  
    利用grep可以在文本文件中查找指定字符串。  
    利用cmp可以比较两个文件的内容是否相同。  
   
第5章  UNX系统深入了解  
5.1    与UNIX有关的几个名词  
    进程(process)  是正在执行的程序。UNIX允许多个进程同时存在,每个进程都有唯一代号称为进程标识符(pid --- process id)。  
    前台进程(foreground process)  可以和用户直接进行人机交互的进程。前台进程序可以接收键盘输入并将结果显示在显示器上。缺省状态下用户启动的UNIX程序运行在前台。  
    后台进程(background process)  不直接和用户进行交互的进程。用户一般是感觉不到后台进程程序的运行。UNIX有很多系统进程在后台执行。  
    设备(device)  或称设备文件,代表某个硬件,如磁盘、软盘、串口。UNIX对硬件的存取操作都是通过设备文件来完成的。设备文件放在/dev目录下,如/dev/hd0表示第一个软盘驱动器。  
    原始设备(raw device)  也称为裸设备,没有经过加工的设备文件。原始设备文件名以r开头,如/dev/rhd0表示第一个软盘驱动器原始设备。  
5.2    在后台运行程序  
    要让程序在后台执行,只需在命令行的最后加上“&”符号。  
    [例1] 在后台运行find命令,在当前目录及其子目路下查找文件名为abc的文件。  
        执行命令和立即显示的内容如下:  
            $ find . -name abc -print&  
            10722  
            $   
    10722表示进程号(PID)。当find命令在后台执行完后,会显示结果。  
    当在后台运行命令时,最好将其输出重定向输出到一个文件中去,以便以后检查。  
    [例2] 在后台运行find命令,在当前目录及其子目路下查找文件名为abc的文件并将结果存到myfind 文件中。  
    执行命令如下:  
            $ find . -name abc -print>myfind&  
      
    在运行后台程序的同时可以继续输入命令。  
5.3    在指定时间执行指定程序  
    本节介绍cron和crontab。  
    cron是一个系统进程,在UNIX的多用户模式下执行。它使某程序在一特定的时间被执行。cron会按照crontabs文件所指定的时间执行命令,crontabs文件内容举例如下:  
      
        #min     hour    day     month       day_of_week    command  
        #0-59    0-23    1-31    1-12        0-6(Sunday=0)         
        #-----------------------------------------------------------  
        30       0       *       *           *              /usr/abc/rj  
        0        7       *       1,3-6,8-12  1-5            /usr/abc/makfile  
      
    crontabs文件由若干行组成,每行表示一个事件。每行由若干字段组成,字段间用空格分开。每行中字段名依次为:分、时、日、月、星期、要执行的命令。每个字段取值举例:  
      
各字段取值举例    说明  
*    表示任何时间  
1,3,4    表示离散数字  
1-5    表示从1到5  
1-3,5    表示从1到3,还有5  

上例crontabs文件中的:  
        30  0  *  *  *  /usr/abc/rj  
一行,表示在每天的午夜0:30启动/usr/abc/rj文件运行,而如下一行:  
        0  7  *  1,3-6,8-12  1-5  /usr/abc/makfile  
表示每当3至6月和8至1月的周1到周五,启动/usr/abc/makfile文件运行。  
crontabs文件是不能直接通过编辑命令修改的。要对crontabs文件进行操作可使用crontab命令。crontab命令的几种格式举例如下:  

crontab命令举例    说明  
crontab    删除crontabs原内容,并通过键盘输入新内容  
crontab myfile    将myfile的内容取代crontabs原内容  
crontab -r    删除现有的crontabs文件  
crontab -l    显示现有的crontabs文件内容  

[例1] 在原crontabs内容的基础上增加如下事件:每月1日凌晨3时启动/usr/abc/stat文件运行。  
做法如下:  
    (1) 运行 crontab -l > tmp  
(2) 对tmp文件进行编辑,追加下面一行:  
        0  3  1  *  *  /usr/abc/stat  
    (3) 运行 crontab tmp  
5.4    如何控制后台进程  
    一、显示进程信息  
UNIX命令    解释  
ps     显示使用终端有关的进程信息  
ps -u 用户名    显示某用户的进程(如ps -u abc)  
ps -e    显示所有正在运行的进程信息  
ps -f    长列表显示每个进程信息  
     长列表显示所有正在运行的进程信息,UNIX命令如下:  
            ps -ef  
      
    二、用kill命令杀掉后台进程  
UNIX命令    解释  
kill 进程号     删除进程  
kill -9 进程号    强制删除进程  
      
    三、停止失控进程步骤  
(1) 在未锁死的终端以root登录  
(2) 用\"ps -ef\"和\"grep 关键字\"命令找到失控进程pid号  
(3) kill pid号,若杀不掉,再运行\"kill -9 pid号\"  
(4) 若还杀不掉,则shutdown  
5.5    如何查看磁盘使用情况  
解释    UNIX命令  
查看磁盘自由空间    df -v  
查看磁盘使用情况    du [文件名]  
    本章小结:  
    本章是对UNIX的深入了解,介绍了:  
    进程和设备的概念  
    通过在命令行末加上\"&\",使命令在后台执行。  
    通过crontab命令,实现程序的定时执行。  
    通过ps和kill命令,可以对进程进行控制。  
    使用df和du命令查看磁盘使用空间情况。  
   
第6章  UNX用户管理  
    本章以增加新用户devos为例,说明增加和删除用户的过程。  
    在SCO UNIX 5.x,可以运行scoadmin,选择account  manager,以菜单方式进行用户管理。或在GUI界面下,进入 system administration --->account manager,进行用户管理。  
6.1    增加用户  
     要在UNIX系统中增加新用户需要下列步骤:  
        (1)在/etc/passwd文件中新增一行数据,表示给该用户的信息;  
        (2)为该用户选择工作组,将该用户标识符加在/etc/group文件内适当位置;  
        (3)为该用户创建一个家目录(home directory),将其家目录的拥有者改为该用户所有,组别也改为该用户的组别;  
        (4)为该用户设置密码。  
    一、/etc/passwd文件  
        /etc/passwd是一文本文件,用来存放用户信息,每行表示一个用户。/etc/passwd每行的格式如下:  
            user_name:password:uid:gid:comment:home:shell  
    每行有很多项组成,项与项之间用\":\"隔开。每项的说明如下:  
      
user_name    用户名  
password    登录密码,初始设置时为空  
uid    用户识别号(User ID),是一数值,每个用户的识别号不同  
gid    工作组识别号,参见/etc/group文件  
comment    注释,可以任意字符,一般用来说明用户的身份特征  
home    家目录名  
shell    该用户缺省shell,一般取值为:/bin/sh、/bin/ksh、/bin/csh  
      
    /etc/passwd的内容举例如下:  
            cfl:x:201:50:Cao Feilong:/usr/cfl:/bin/sh  
            abc:x:206:50:abc:/usr/abc:/bin/sh  
    要增加一新用户,用户名devos,需要在/etc/passwd文件末尾增加如下一行:  
            devos::207:50ick Devos:/usr/devos:/bin/sh  
    二、/etc/group文件  
    /etc/group是一文本文件,用来存放用户工作组信息,每行表示一个组。/etc/group每行的格式如下:  
            group_name:password:gid:members_list  
    每行有四项组成,项与项之间用\":\"隔开。  
      
group_name    工作组名  
password    工作组密码,一般为空  
gid    工作组识别号(Group ID),是一数值,每个组的识别号不同  
members_list    该组成员列表,由一个或多个用户名组成,用户名之间用逗号隔开  
    /etc/group的内容举例如下:  
            other::1:root,daemon  
            group::50:ingres,sybase,cfl,abc  
    值得说明的是,一个用户可以是多个组的成员。  
     若要使devos用户属于group组,还需要在/etc/group文件中group组所在行末加上devos:  
            group::50:ingres,sybase,cfl,abc,devos  
    三、创建家目录  
            # mkdir /usr/devos         在/usr目录下创建与用户名同名的目录devos  
            # chown devos /usr/devos   设置/usr/devos的属主为devos  
            # chgrp group /usr/devos   设置/usr/devos的工作组为group  
            # chmod 755 /usr/devos     设置存取权限,一般为755  
    四、设密码  
        对用户devos建立密码的命令为:  
            # passwd devos  
    早期的UNIX版本,用户密码经加密后存放在/etc/passwd中的password字段。而在SVR3以后的版本则借用/etc/shadow存放用户密码。  
    6.2 删除用户  
    删除用户的步骤如下:  
        (1)删除/etc/passwd内该用户的信息行  
        (2)删除/etc/group内有关该用户的项。  
        (3)将该用户的家目录删除  
    本章小结:  
    本章介绍了增加用户和删除用户的过程。值得注意的是很多UNIX系统都提供了专门进行UNIX用户管理的系统命令,一般用这些专用命令对UNIX用户进行维护。  
    UNIX的开关机和维护管理  
6.2    开机  
     以SCO UNIX为例。SCO UNIX的开机过程如下:  
    (1) 打开SCO UNIX主机电源  
    (2) 出现boot:后打回车  
    (3) 按Ctrl+d进入多用户模式,输入root的密码后进入单用户模式  
    (4) 输入日期时间  
    (5) 出现\"login:\"表示SCO_UNIX开机成功,以后可以进行登录  
      
6.3    关机  
    UNIX主机的关机过程为,在root用户下键入:  
# shutdown  -g0 -y  
    表示立即关机。由多用户模式进入单用户模式,执行如下命令:  
    # shutdown  -g0 -y su  
    [注意] 1、必须在运行完shutdown命令,并出现允许关机的信息时,再关掉主机电源。未出现允许关机的信息,千万不要关主机电源。  
        2、对于小型机双机系统,其开关机要严格遵循其特定的次序,通常先开磁盘阵列再启动主机,关机时先关主机,最后关闭磁盘阵列。  
6.4    掉电故障及处理  
        系统意外掉电,会造成如下问题:  
(1) 文件系统被破坏,造成文件丢失  
(2) 高速缓存中的数据未写到磁盘而使数据丢失  
    解决:开机后系统会自动运行fsck命令,提示是否检查/dev/root文件系统,输入y检查并修复文件系统。  
    若系统掉电或磁盘发生问题,可利用fsck命令对文件系统进行检查。fsck的命令格式如下:  
            fsck [-y][-n][-b][-D][-f] [fs_device]  
    其中:  
fsck参数    解释  
-y    对fsck执行过程中的所有问题都回答y (yes),fsck会更正所有错误  
-n    对fsck执行过程中的所有问题都回答n (no)  
-b    若是检查根文件系统(root file system),并且造成文件系统改变,系统会重新启动(reboot)  
-D    检查坏掉的区块  
-f    以快速方式检查文件系统  
fs_device    描述相对于硬件设备的特殊文件名。若去掉此项会自动检查存在于/etc/checklist文件内的文件系统  
      
    [注意] 对于小型机双机系统,其开关机要严格遵循其特定的次序,通常先开磁盘阵列再启动主机,关机时先关主机,最后关闭磁盘阵列,具体操作请参见各种小型机的随机手册。  
   
第7章  存储设备的使用  
    本章主要介绍UNIX中常用存储设备的使用。本章涉及的存储设备有:软盘、硬盘、CD-ROM。  
7.1    创建设备  
    设备必须创建后,才有可能工作。创建设备的UNIX命令为:  
            /etc/mkdev 设备类型 [参数列表]  
    其中常见设备类型如下表所示  
设备类型    说明  
fd    软盘  
hd    硬盘  
cdrom    CD-ROM  
tape    磁带机  
serial    串口  
parallel    并口  
mouse    鼠标  
lp    打印机  
      
    设备创建好后,系统会在/dev目录下生成设备文件。下表列出了SCO UNIX 3.0下的几个设备:  
设备文件举例    说明  
/dev/fd0    boot的软盘驱动器  
/dev/fd0135ds18    135磁道、双密度软盘,每磁道18个扇区  
/dev/cd0    第1个光盘驱动器  
/dev/hd00    0第1个物理硬盘  
      
    本章只涉及存储设备。  
7.2    mount和umount命令  
    在使用某设备上的文件系统之前,必须将该设备上的文件系统挂接(mount)到已经存在的文件系统的某个目录上,此目录称为挂接点(mount point)。此时该设备上的文件系统相当于该目录的延伸,对该目录的操作就等于对该设备文件系统的操作。使用完该设备的文件系统后,还要将它卸出(umount)。  
    一、mount命令  
    mount的过程(步骤)如下:  
            第1步:创建一目录  
            第2步:对目录权限进行修改  
            第3步:执行mount命令,将设备挂接到该目录上  
    块设备的mount命令格式如下:  
            /etc/mount  [-v] [-r] [-f fstyp ] special directory  
            /etc/mount  
    其中,不带参数的mount只是显示mount列表。带参数的mount真正执行挂接操作,参数说明如下:  
mount参数    说明  
-r    只读  
-v    在挂接的同时,显示挂接信息  
mount参数    说明  
-r    只读  
-v    在挂接的同时,显示挂接信息  
directory    挂接目录,在挂接前必须预先创建好  
    注意:必须将设备准备好后,再进行挂接,否则挂接会失败。  
    例如,要挂接软盘,必须将相应软盘插入驱动器后,再进行挂接。  
    二、umount命令  
    umount命令将设备从文件系统中卸出。umount命令格式如下:  
            umount 设备文件  
    [例1] 卸出CD-ROM的命令如下:  
            umount /dev/cd0  
    执行完umount命令后,再将CD-ROM从驱动器中取出。  
7.3    软盘的使用  
    一、软盘设备的创建  
    UNIX在安装时,已经创建了fd设备。下面列出了SCO UNIX的磁盘驱动器设备文件名:  
      
第一个软盘驱动器  
设备文件    说明  
(相当于DOS的A盘)  
/dev/fd0    boot的软盘驱动器  
/dev/fd0135ds18    135磁道,双面,每磁道18个扇区  
/dev/fd0135ds9    135磁道,双面,每磁道9个扇区  
/dev/fd048    48磁道的软盘驱动器  
/dev/fd048ds8    48磁道,双面,每磁道8个扇区  
/dev/fd048ds9    48磁道,双面,每磁道9个扇区  
/dev/fd048ss8    48磁道,单面,每磁道8个扇区  
/dev/fd048ss9    48磁道,单面,每磁道9个扇区  
/dev/fd096    96磁道的软盘驱动器  
/dev/fd096ds15    96磁道,双面,每磁道15个扇区  
/dev/fd096ds18    96磁道,双面,每磁道18个扇区  
/dev/fd096ds9    96磁道,双面,每磁道9个扇区  
      
    若将上面的/dev/fd0换成/dev/fd1,其余不变,则认为是第二个软盘驱动器(相当于DOS的B盘)。  
        在使用之前可先查看该文件是否存在,若不存在,可以创建fd设备。fd设备的创建命令如下:  
            mkdev fd  
    会出现菜单,以后按菜单操作即可。  
    二、软盘的格式化  
    软盘的格式化命令如下:  
      
            format 软盘原始设备文件名  
      
    例如,要格式化135磁道、双面、每磁道18个扇区的软盘,format命令如下:  
            format /dev/rfd0135ds18  
    三、软盘的挂接  
        软盘的挂接命令举例如下:  
      
# mkdir /a_dir    创建一目录  
# chmod 777 /a_dir    改变该目录权限  
# mount /dev/fd0135ds18 /a_dir    将/dev/fd0135ds18挂接到/a_dir目录  
7.4    硬盘的使用  
        大多数服务器都采用SCSI总线硬盘,本节主要介绍SCSI硬盘。  
&, nbsp;   一、SCSI接口卡  
        SCSI接口卡(SCSI Host Adapter)插在计算机总线插槽内,硬盘、CD-ROM或其它设备通过SCSI总线与SCSI接口卡相连。在进行软硬件设置时常用到以下参数。  
      
    (一) SCSI主接口卡卡号:ha  
         一台计算机最多可插多块主接口卡,每块卡有一个编号,称为SCSI主接口卡卡号(ha --- Host Adaptor Number)。卡号的取值范围为:0  &n, bsp;1 。  
      
    (二) SCSI主接口卡类型:hatype  
        SCSI主接口卡由不同厂家制造,没有统一的软件驱动程序。在使用之前,应先选择相应的软件驱动程序。一般用驱动程序名字作为该卡的类型(hatype - Host Adapter Type)。常见的驱动程序如下:  
            ad      Adapter 154x、154x emlation、164x  
            ciha    386/486 CBUS SCSI  
            dpt     DPT PM2012  
            eiad    Adaptec 174x  
            esc     Olivetti ESC-1  
            fdha    Future Domain TMC-1660、TMC-1680、MCS-700  
      
    (三)控制器地址:id  
        一个主接口卡由八个控制器组成,每个控制器有一个编号,称为id号(ID Number),取值为:0   7。  
        
    (四)逻辑单元号:lun  
        一个控制器可最多带8个设备,逻辑单元号(lun --- Logical Unit Number)就是设备地址,取值为0 - 7。但对于大多数硬盘或光盘来说,只有一个lun,即0。  
    二、SCSI硬盘设备的创建  
    UNIX在安装时,至少已经创建了第一张硬盘设备。下面列出了SCO UNIX的硬盘驱动器设备文件名:  
      
第一个硬盘驱动器  
设备文件    说明  
(相当于DOS的C盘)  
/dev/hd00    驱动器0的整个硬盘  
/dev/hd01    驱动器0的第1个磁盘分区  
/dev/hd02    驱动器0的第2个磁盘分区  
/dev/hd0a    驱动器0的整个硬盘  
      
    若将上面的/dev/hd0换成/dev/hd1,其余不变,则认为是第二个硬盘驱动器。  
        在使用之前可先查看该文件是否存在,若不存在,可以创建硬盘设备。SCSI硬盘硬盘设备的创建命令如下:  
      
            /etc/mkdev  hd  id  ha  lun  hatype  
      
    其中,id是主接口卡控制器地址;ha是主接口卡卡号;lun是逻辑单元号;hatype是主接口卡类型(参见本节第一部分SCSI接口卡)。  
      
    例如,在Compaq服务器的第一块SCSI适配器上增加第二块硬盘,并设硬盘的ID号为2,SCO UNIX的运行如下命令:  
            # mkdev hd 2 0 0 cha  
            # reboot  
            # mkdev hd 2 0 0 cha  
      
    创建硬盘也可以直接运行:  
            mkdev hd  
    会出现菜单,以后按菜单操作即可。  
    三、硬盘的挂接  
        硬盘的挂接命令举例如下:  
# mkdir /hd1_dir    创建一目录  
# chmod 777 /hd1_dir    改变该目录权限  
# mount /dev/hd11 /hd1_dir    将/dev/hd11挂接到/hd1_dir目录  
      
7.5    CD-ROM的使用  
    一、CD-ROM设备的创建  
    绝大多数UNIX在安装时,已经创建了CD-ROM设备。CD-ROM的设备文件名为:  
      
            /dev/cd0      第1个CD-ROM驱动器  
            /dev/cd1      第2个CD-ROM驱动器  
      
    在使用之前可先查看该文件是否存在,若都不存在,再创建CD-ROM设备。CD-ROM设备的创建命令如下:  
            mkdev cdrom  
    会出现菜单,以后按菜单操作即可。  
    二、CD-ROM的挂接  
        CD-ROM的挂接命令如下:  
# mkdir /cdrom    创建一目录  
# chmod 555 /cdrom    改变该目录权限  
# mount -r /dev/cd0 /cdrom    0将/dev/cd0挂接到/cdrom目录, \"-r\"表示只读  
    本章小结:  
        本章主要介绍了软盘、硬盘和CD-ROM的使用前的配置过程。  
   
第8章  UNX实用程序  
8.1    文件的备份和恢复实用程序  
    一、tar命令  
        使用tar 命令,可将多个文件合并成一个文件库(archival)的方式存放于磁带或磁盘上。当需要时,可由文件库获取所需的文件。tar 的指令格式:  
            $ tar  [function-option [modifier]]  [files]  
    tar 命令分为两部分:功能选项和修改选项。功能选项用来设定tar的动作(如读取,写入等),而修改选项则用来修改tar的动作。tar命令选项前没有“-”。  
        功能选项(function-option):  
            r  将所指的文件附加在文件库后  
            x  读取文件库内的文件,如文件名为目录,则连子目录也会被读取 (常用)  
            c  建立一个新文件库 (常用)  
            g  将文件由文件库的最前头开始建立,而不是写在最后一个文件后  
        修改选项(modifier):  
            v  启动显示模式,tar 会显示所处理的文件名 (常用)  
            w  启动确认模式,tar处理每个文件之前,要求用户先加以确认  
            f   表示文件库为file,省略此项,以预设的磁带或磁盘为对象 (常用)  
    (一)利用tar 命令备份  
    [例1]   
            $ tar  cv  work  
    在当前目录下,对work 目录中的所有文件及子目录作备份,备份到缺省设备,且在备份时显示文件信息。  
    [例2]  
            $ tar  cvf  /dev/rdsk/c0s0  work   
    f 选项表示不使用缺省设备,而使用提供的设备。  
    注:在不同的UNIX 系统中,软盘和磁带设备的名称不通用。请使用时注意查正。  
    (二)利用tar 命令复原:  
    [例3]  
            $tar  xv   
    x 表示将缺省设备中的文件复原到硬盘,v 表示复原时显示文件提示。  
    [例4]  
            $tar  xv  /work/aaro1d  /work/all.bak  /work/state.wp  
    复原更具有选择性,这里列出三个文件。注意,必须输入备份文档的全名。  
    [例5]  
            $tar  xvf  /dev/rdsk/c0s0   
    从给定的设备中复原文件。  
    二、cpio命令  
        利用cpio 可将文件或目录从文件库获取出来或将数据拷贝到文件库。cpio 的指令格式:  
            cpio [bcdmrtuv] [patterns]  
            cpio  [abcv]  
            cpio [adlmuv][directory]  
    说明:cpio 共有三种基本模式,-o即copy-out 模式,将一组文件copy到一个文件库,-i 即copy-in 模式,读取文件库,并将其展开在当前目录。-p 能从某个目录读取所有文件(包括子目录到另一个目录),且不以archive 的方式存放。  
        cpio 常配合shell使用。-o常用标准输入设备读取要copy 的文件名称,并将copy成的archive file 通过标准输出设备输出。一般利用输入/输出重定向或管道的原理,达到真正复制的功能。  
    (一)利用cpio备份:  
    [例1]  
            $ find work 杙rint | cpio 杘cdv >/dev/rdsl/f0t  
    将work目录下的文件备份到软盘上。-o表示输出模式,-c生成一个带有头信息的文件。 -d表示按需要生成目录,-v表示命令执行时不断显示信息。用“>”把结果定向到软盘。  
    [例2]  
            $ ls |cpio 杘 >/usr/linfs/old1  
    将当前目录下的所有文件复制成old1 archive file  
    [例3]  
            $ ls *.c | cpio 杘>oldc  
    复制工作目录中的所有的c程序.  
    [例4]  
            $ ls| cpio 杙 /usr/linfs/tempdir  
    复制当前工作目录下的文件到/usr/linfs/tempdir 目录,不生成archive  file  
    (二)利用cpio 复原:  
    [例5]  
            $ cpio 杋cdv     将软盘中的文件复原。-i告诉cpio把文件作为它的输入,-d按需要生成目录,-v显示执行时的所有信息,-c具有头文件格式。  
    [例6]  
            $ cpio 杋cdv \"*stat.wp\"     仅复原*stat.wp的文件  
    [例7]  
            $ cpio 杋     仅复原*.f 文件  
8.2    文件压缩和解压程序  
    一、compress 压缩命令  
    compress命令可将文件压缩以减少存储空间。压缩后的文件以“.Z”结尾。展开命令为uncompress。压缩命令格式:  
            compress  filename   
    展开命令格式为:  
            uncompress compressed-filename  
    [例1] 对file 文件进行压缩和解压缩  
            compress file  
    则压缩后的文件名为file.Z,解压命令为:  
            uncompress file.Z  
    二、pack 压缩文件  
    pack 压缩文件对应的解压缩文件unpack。压缩后文件的名称为“.z”其压缩后的空间因文件类型而定。命令格式:  
            pack  [-]  name  
            unpack  name  
    三、pkzip压缩文件  
    pkzip 压缩文件对应的解压缩文件为pkunzip。.压缩后的文件名称为“.zip”。命令格式:  
            pkzip  filename   
            pkunzip  filename  
    四、gzip 压缩文件  
    gzip 压缩文件对应的解压缩文件为zip。压缩后的文件名称为“.gz”。命令格式::  
            gzip  filename  
            zip  -d filename   
    本章小结:  
    本章主要介绍了UNIX的几个常用工具。  
    tar和cpio是文件备份和恢复两个实用程序。  
    文件的压缩和解压程序很多,本章简要介绍了compress、pack、pkzip、和gzip。  
   
第9章  网络通信  
9.1   TCP/IP协议  
    在当今世界,UNIX系统被广泛使用的原因之一,就是UNIX的强大联网功能。UNIX的网络协议缺省为TCP/IP。UNIX已成为Internet上各种服务器的首选协议。  
    TCP/IP协议由一系列协议组成,统称TCP/IP协议族。TCP/IP协议是TCP/IP协议族中的基本协议,协议族常用协议有:  
    传输控制协议/互网络协议(TCP/IP - Transmission Control Protocol/Internet Protocol)是协议族的基本协议。  
    用户数据报协议(UDP - User Datagram Protocol)提供无连接的传输层协议,但不保证传输的可*性。  
    远程登录协议(telnet)是用户层协议,定义了远程登录的标准。  
    文件传输协议(FTP - File Transfer Protocol)也是用户层协议,定义了不同系统间进行文件拷贝的标准。  
9.2    查看网上用户信息  
        用finger命令来显示正在使用UNIX系统的用户信息。finger的命令格式如下:  
      
            finger [用户名][@主机域名或ip地址]  
      
    finger命令举例  
命令举例    说明  
finger    查看本地所有用户信息  
finger root    查看root用户的信息  
finger @xywsyb2    查看主机xywsyb2上的所有用户信息  
finger abc@xywsyb2.huawei.com.cn    查看主机xywsyb2.huawei.com.cn上的所有用户信息  
finger abc@xywsyb2    查看主机xywsyb2上的abc用户信息  
finger abc@129.6.114.202    查看主机129.6.114.202上的abc用户信息  

9.3    使用mail 发送和接收电子邮件  
     mail 命令用来发送和接收电子邮件。用户不仅可使用mail 与本系统的用户通信,还可与网络中的用户通信。mail 的两种功能:发送电子邮件和接收电子邮件。  
    一、发送电子邮件  
            $ mail alex   
            Subject: test  
            This is a test message。  
    一般用句号来结束信件,有些版本用ctrl-d 来结束。  
    二、阅读电子邮件  
     mail 会显示所有邮件的标题。这时,用户按回车一个一个的阅读,直到所有的邮件都阅读完毕,键入q 退出并返回到shell。  
            $ mail   
9.4    在网络上登录和拷贝  
    本节介绍了在用户使用的本地计算机上通过计算机网络对远程主机进行操作的工具软件telnet和ftp。telnet把本地计算机当成远程主机的一个仿真终端;ftp用于在本地计算机和远程主机之间传递文件。  
    telnet/ftp、远程主机、计算机网络和本地计算机的关系如下图所示:  
      
    本地计算机        TCPIP协议                远程主机  
    (telnet/ftp客户机)...............................................................................................(telnet/ftp服务器)  
    远程主机一般是指装有UNIX操作系统的计算机。计算机网络可以是任何类型的网络,如LAN、WAN、Internet,网络协议采用TCP/IP协议。本地计算机可以是任何类型的计算机,如PC机,本地计算机上运行的操作系统可以是任何类型的操作系统,如DOS、WINDOWS 3.x、WINDOWS 95、WINDOWS NT、UNIX、VMS等等。  
      
    深入分析  telnet/ftp是TCP/IP协议族中的应用层协议,它们的工作方式采用客户机/服务器方式。本地计算机上运行的telnet/ftp程序,实际上是telnet/ftp的客户程序,它通过TCP/IP协议与远程主机中的服务程序相连,两者配合工作。凡是装有telnet/ftp服务器端软件的系统均可作为上面所说的远程主机。UNIX操作系统的缺省网络协议是TCP/IP,支持telnet/ftp协议,同时装有telnet/ftp的服务器端软件和客户机软件,所以UNIX主机既可以作为telnet/ftp的客户机又可以作为telnet/ftp服务器。本章只讨论远程主机是UNIX的情况。  
    一、telnet  
    telnet是通过网络远程登录UNIX的软件(tel指远程,net指network即网络),其功能是在用户使用的本地计算机上通过计算机网络登录到远程UNIX主机上,把本地计算机当成远程UNIX主机的一个仿真终端。当用户利用telnet完成与远程UNIX主机的登录后,自己的计算机似乎已经消失,完全成为对方主机的一个远程仿真终端用户,就象在UNIX主机终端上操作一样。此时用户所能够使用的功能和资源以及整个工作方式完全取决于对方的系统和登录帐号的权限。  
    telnet的一般运行格式如下:  
      
telnet IP地址或域名  
      
    以上的IP地址或域名是指远程UNIX主机的IP地址和域名。在本地计算机屏幕上就会出现信息,提示用户输入UNIX的用户名和口令,接着要求输入终端类型,最后进入UNIX系统,并出现UNIX操作系统提示符,以后的操作就象在UNIX主机终端上操作一样。 在PC兼容机上的windows下运行telnet时,终端类型最好选xterm。  
      
    [注意事项]1、 在运行telnet之前必须保证本地计算机和远程主机间的TCP/IP协议已经连通。  
    2、通常我们在WINDOWS客户端使用netterm等软件远程登录。该软件操作和显示灵活方便,易于使用,应掌握。  
      
    [例1] 在WINDOWS 95上运行telnet,远程登录SCO UNIX,假设SCO UNIX主机的IP地址为129.6.114.201。  
    telnet软件是WINDOWS 95自带的软件,只要设置好TCP/IP协议后就可运行telnet。telnet的运行过程如下:点击WINDOWS 95上的“开始”按纽,再选则“运行”菜单,出现运行框,输入:  
      
    telnet 129.6.114.201  
    点击运行框上的“确定”按纽,出现Telnet框,提示输入UNIX用户名:  
      
             UNIX System V Release 3.2 (xywsyb2.huawei.com.cn) (ttyp2)  
             login:  
      
    以后的操作就象在UNIX主机终端上操作一样。  
      
    [例2] 在WINDOWS 3.x上运行telnet,远程登录Digital UNIX,假设Digital UNIX主机的IP地址为129.6.5.2。  
    由于WINDOWS 3.x自身没有携带TCP/IP和telnet软件,在使用telnet之前必须先进行安装。这里不介绍安装过程,只介绍软件的简单设置和使用。Netterm软件是telnet的变种,完全包含telnet的功能,这里只对Netterm进行介绍。  
    Netterm的设置:先启动Netterm,在File菜单下选\"hone Directory ...\",出现\"hone Directory\"框,在\"Host Name\"项下输入一个名字(任意取名,表示UNIX主机名),在\"Host/IP\"下输入UNIX主机的IP地址\"129.6.5.2\",\"Telnet Port\"取值23,在\"Connection\"下选中TCPIP,点击\"Add\"按纽,再点击\"Ok\"按纽。  
    Netterm的运行:先启动Netterm,点击电话机图标就会出现一工作框,提示输入UNIX用户名:  
      
              Digital UNIX (xyw) (ttyp6)  
              login:  
      
    以后的操作就象在UNIX主机终端上操作一样。                              
    二、ftp  
    ftp是telnet的“近亲”。telnet允许在远程主机上登录并使用其资源,ftp允许在本地计算机与远程主机之间传递文件。ftp是File Transfer Protocal的缩写,意为文件传输协议,它可以将远程UNIX系统上的一个或多个文件拷贝到本地计算机,也可以将本地计算机上的一个或多个文件拷贝到远程UNIX系统上。  
      
    (一)基本文件类型  
    当我们使用ftp时,可简单地把文件分为两大类:文本文件和二进制文件。文本文件也称为ASCII文件,其文件内容遵循ASCII的定义,主要特征如下:ASCII文件由若干行组成;可以用操作系统显示和编辑命令来显示和编辑ASCII文件内容。二进制文件(Binary File)是指除ASCII文件以外的所有文件格式。可惜的是,不同操作系统的ASCII文件格式一般是不兼容的,ftp在不同的操作系统之间进行ASCII文件的传输时,自动进行了格式转换,而对于二进制文件来说,ftp不进行任何转换。  
    [注意事项]1、 可以将ASCII文件按二进制方式传输,但决不能将二进制文件按ASCII方式传输,否则二进制文件的内容会遭到破坏而无法使用。  
    2、我们可以用cuteftp、WS_ftp等软件进行ftp,这些ftp软件为图形界面,操作方便,易学易用,应掌握。在这些ftp软件中有auto模式,传输时自动识别二进制和文本文件。  
    (二)ftp的使用  
    ftp的一般运行格式如下:  
      
ftp IP地址或域名  
      
    以上的IP地址或域名是指远程UNIX主机的IP地址和域名。在本地计算机屏幕上就会出现信息,提示用户输入UNIX的用户名和口令,最后出现ftp提示符:  
    ftp>以后就可以在此提示符下输入ftp命令。  
    [注意事项] 在运行ftp之前必须保证本地计算机和远程主机间的TCP/IP协议已经连通。  
      
    (三)ftp常用命令  
    ftp的常用命令和解释列表如下:  
      
ftp命令    解释  
?或help [command]    命令帮助  
binary    设定以ASCII方式传送文件(缺省值)  
ascii    设定以ASCII方式传送文件  
cd [directory[    改变远程目录  
pwd    列出当前远端主机目录  
dir [r-dir] [l-file]    显示远程目录内容,r-dir表示远程目录,l-file表示本地文件。如果有本地文件,就将结果写至本地文件  
ls  [r-dir] [l-file]    同dir,只是显示格式不同  
lcd [directory]    改变本地目录  
put file1 [file2]    将本地file1文件拷贝到远程file2  
get file1 [fine2]    将远程file1文件拷贝到本地file2  
mput files    将本地多个文件files拷贝到远程  
mget files    将远程多个文件files拷贝到本地  
status    显示当前FTP状态  
!command    执行本地命令,并立即返回FTP  
open IP地址或域名    重新建立新的连接  
close    关闭远程连接  
quit或bye    退出ftp  
      
    (四)ftp实例  
        假设远程主机的IP地址为129.6.114.201,操作系统为SCO UNIX,本地计算机为PC机,操作系统为DOS,且ftp客户端程序放在C:\\FTP目录下。  
    [例1] 将本地计算机C:\\TEMP目录下的file1.zip拷贝到远程主机的/usr/abc目录下。  
        命令如下:   
c:  
cd \\ftp  
C:\\FTP>ftp 129.6.114.201  
输入用户名和口令  
ftp> binary   
ftp> lcd c:\\temp  
ftp> cd /usr/abc  
ftp> put file1.zip  
ftp> close  
ftp> quit  
C:\\FTP>  
      
    [例2] 将本地计算机C::\\TEMP目录下的所有文件拷贝到远程主机的/usr/abc目录下。  
        命令:将第1题的  
ftp> put file1.zip  
    改为:   
ftp> mput *.*  
    其它不变。  
      
    [例3] 将远程主机的/usr/abc/txt目录下的file2文本文件拷贝到本地计算机C::\\TEMP\\TXT目录下。  
    命令如下:  
c:  
cd \\ftp  
C:\\FTP>ftp 129.6.114.201  
输入用户名和口令  
ftp> ascii   或asc  
ftp> lcd c:\\temp\\txt  
ftp> cd /usr/abc/txt  
ftp> get file2  
ftp> close   或bye  
ftp> quit  
C:\\FTP>  
      
    [例4] 将远程主机的/usr/abc/txt目录下的所有文件按文本文件格式拷贝到本地计算机C::\\TEMP\\TXT目录下。  
        命令:将第3题的  
ftp> get file2  
    改为:  
    ftp> mget *.*,其它不变。  
9.5    网络、主机和路由参数设置  
    本节介绍了UNIX上的网络、主机和路由参数设置。在进行网络(主机)地址设置时一般用到/etc目录下三个文本文件:networks、hosts、gateways,分别存放网络、主机、路由列表。  
    在SCO UNIX5.X中可以用scoadmin命令,进入菜单模式:选择“network”选项进行设置。或者在GUI下进入“system administration  --->networks”下进行设置。  
    在HPUX中可以用sam命令,进入菜单模式:对网络属性进行配置。  
    一、/etc/networks文件  
    /etc/networks文件存放网络列表,一般把所用到的网络号都放到此表。此文件每行表示一个网络,由以下三个域构成:  
           
name    number    aliases  
这里,   
name    表示网络的正式名称  
number    表示网络号,把IP地址中的主机地址去掉就是网络号  
aliases    表示网络别名,若有多个别名,用空格分开  
#    表示注释  

/etc/networks内容举例:  
loopback    127      
huawei    129.9    #Huawei Tech. Co. Ltd.  
training    129.6    peixun qqsj  #Training Center  

其中,第一行,loopback是网络名,它的网络号是127(A类地址);第二行,huawei是网络名,它的网络号是“129.9”(B类地址), “#Huawei Tech. Co. Ltd.”是注释;第三行,training是网络名,它的网络号是“129.6”,它的别名有两个:peixun和qqsj,“#Training Center”是注释。  
二、/etc/hosts文件  
/etc/hosts文件存放主机列表,一般把所用到的主机号都放到此表,该主机可以不在同一个网络上。此表每行表示一个主机,由以下三个域构成:  
      
address    name    aliases  
这里,  
address    表示主机IP地址  
name    表示主机的正式名称  
aliases    表示主机别名,若有多个别名,用空格分开  
#    表示注释  

建议将hostname和node name(参见UNIX的hostname和uname命令)作为主机名或别名。  
/etc/hosts内容举例:  

127.0.0.1    localhost      
129.6.114.201    xyw01.huawei.com.cn    xyw01 intess114  
129.6.114.202    xyw02.huawei.com.cn    xyw02 intess112  
129.6.0.1    px_hw_r    #Router to huawei  
129.7.10.21    lihong    #Li Hong  
129.9.6.218    www.huawei.com.cn      

其中,第一列,“127.0.0.1”、“129.6.114.201”等是IP地址; 第二列,“localhost”、“xyw01.huawei.com.cn”、“xyw02.huawei.com.cn”等是主机名称; 其它,“xyw01”、“intess114”、“xyw02”、“intess114”是别名, “#Router”是注释。  
三、/etc/gateways文件  
/etc/gateways文件存放网关列表,每行表示一个网关参数,由以下域构成:  
      
name1    gateway name2    metric value      
这里,  
net,host    表示路由指向网络还是指向某一特定主机,net和host为关键字  
name1    目的网络名或主机名(或IP地址)  
gateway    关键字  
name2    网关名或网关IP地址  
metric    关键字  
value    表示表示到目的网络或主机的hop计数值  
passive    关键字,表示被动方式,路由器不交换路由信息  
active    关键字,表示主动方式,路由器交换路由信息  
external    关键字,表示外部方式,其它进程已安装了路由  
#    表示注释  
表示只能选net和host两个关键字中的其中一个,表示只能选其中一个关键字。  
/etc/gateways 内容举例:  
net huawei    gateway px_hw_r    metric 1    passive  
host lihong    gateway px_xx_r    metric 1    passive  

其中,huawei是目的网络名(在/etc/networks中定义),px_hw_r是路由器名,lihong是目的主机名(在/etc/hosts中定义),px_xx_r是路由器名。当然,以上所有名称均可用网络号或IP地址代替:  

net 129.9    gateway 129.6.0.1    metric 1    passive  
host 129.7.10.21    gateway 129.6.0.2    metric 1    passive  

四、设置步骤  
(1) 以root用户登录UNIX  
(2) 查看/etc目录下hosts、networks和gateways文件是否存在,若不存在创建之  
(3) 修改三文件内容,确保参数正确,注意三文件参数之间的关系  
(4) 对内核进行重新连接(对于SCO UNIX可运行sysadmsh选system->kernal->relink)  
(5) 运行reboot重新启动UNIX  

五、测试  
假设本服务器的IP地址为129.6.114.201, /etc目录下的hosts、networks和gateways文件的内容为以上1、2和3中的实例参数。这里用UNIX的ping命令进行测试。  
(一) 同一网络内测试  
ping 129.6.114.201    自身测试,查看IP协议是否已经驱动  
ping intess114    自身测试,查看hosts设置是否正确  
ping xyw02    本网络是否通  
ping px_hw_r    路由器是否连上  
(二)网间测试  
ping 129.9.6.218    测试/etc/networks和/etc/gateways,以及路由器  
ping www.huawei.com.cn    测试三文件  
     本章小结:  
         UNIX使用最广泛的原因之一就是它的联网功能。TCP/IP是UNIX的缺省网络协议。  
     用finger命令来显示正在使用UNIX系统的用户信息。  
     本章介绍了用mail命令收发电子邮件。  
     telnet和ftp用于远程登录和文件拷贝。  
     最后介绍了/etc/目录下的networks、hosts、gateways三文件的格式和设置  
   
第10章  UNX常见故障处理  
10.1  常见故障处理:  
    1、UNIX主机意外掉电如何处理?  
    系统意外掉电,会造成如下问题:  
    (1) 文件系统被破坏,造成文件丢失  
    (2) 高速缓存中的数据未写到磁盘而使数据丢失如下问题:  
    解决方法:开机后系统会自动运行fsck命令,提示是否检查/dev/root文件系统,输入y检查并修复文件系统。 修复成功后reboot,正常启动unix。  
    2、怎样挂第二个硬盘?  
       MKDEV HD   
       出现菜单,如果为SCSI硬盘,选SCSI项;  
       输入适配器的控制器号,即ID号  
       输入属于控制器的设备号,控制器一般与设备为同一物理部件,即逻辑部件号为\"0\"  
       与操作系统核心重连接  
       REBOOT  
       MKDEV HD  
    上述步骤也可用MKDEV HD ID HOST LUN格式代替  
      
    3、SCO UNIX上怎样挂CD ROM?  
      mkdev cdrom  
      mkdir cdrom  
      mount -r -f HS,lower,novers /dev/cd0 /cdrom  
      
    4、怎样增加文件系统?  
    (1)以root登录,执行“mkdev fs”命令   
    (2)add a new filesystem to system  
    (3)输入设备名  
    (4)输入文件系统的目录  
    (5)选择是否永久安装  
    (6)mount /dev/x  
    (7)用“chmod”,“chgrp”命令对mount起来的filesystem授权。  
      
    7、sco unix 上如何建立自动启动与自动关闭的任务?  
           在sybase用户下建shutdown.sql文件用于关闭SYBASE数据库:  
                                   shutdown SYB_BACKUP  
                                   go  
                                   shutdown  
                                   go  
            在/etc/rc2.d 目录下   vi s99sybase        (启动SYBASE数据库)  
                                    su - sybase  -c  ’cd install’? startserver -fRUN_SYBASE  
      
            在/etc/rc0.d 目录下 vi k01sybase           (关闭)  
      
                                    Su -  sybase -c   ’isql  -Usa -P -ishutdown.sql’?  
           启动任务文件数字越大越后启动,关闭任务文件数字越小越先关闭  
      
    8、如何用rcp 命令拷贝另一台机器下面所有的目录及文件?  
    如机器stivr下的/usr/sybase;  在另一台机器bhivr 要拷贝stivr下的 /usr/sybase目录下的目录及文件至自身的/usr/sybase下。  
        (1)、在Stivr的/etc/hosts中加一行:  
                     bhivr   132.107.65.224  
          (2)、在/etc/hosts.equiv 加一行:  
                     bhivr  
          (3)、在bhivr的/etc/hosts中加一行:  
                     stivr   132.107.65.225  
          (4)、在/etc/hosts.equiv 加一行:  
                     stivr  
          (5)、在bhivr机器中进入 /usr/sybase 目录:  
               输入  rcp -r  stivr:/usr/sybase  
               便可将/usr/sybase下的所有文件和目录拷贝好。  
      
10.2  附一、参考资料  
    [1]:杨华中编著:《UNIX应用教程》,人民邮电出版社;  
    [2]:《INTess系列产品实用资料汇编》内部光盘  ;   
    [3]:各种unix随机手册。
您需要登录后才可以回帖 登录 | 成为会员

本版积分规则

QQ|手机版|小黑屋|网站帮助|职业IT人-IT人生活圈 ( 粤ICP备12053935号-1 )|网站地图
本站文章版权归原发布者及原出处所有。内容为作者个人观点,并不代表本站赞同其观点和对其真实性负责,本站只提供参考并不构成任何投资及应用建议。本站是信息平台,网站上部分文章为转载,并不用于任何商业目的,我们已经尽可能的对作者和来源进行了通告,但是能力有限或疏忽造成漏登,请及时联系我们,我们将根据著作权人的要求立即更正或者删除有关内容。

GMT+8, 2024-5-3 21:14 , Processed in 0.168288 second(s), 20 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表