SCOUNIX講座

                    





                           文:Santa Cruz Operation, Inc.



            UNIX向來是強勁的作業系統,屹立多年不倒,但是,對一般使用

            個人電腦的用戶來說,確是比較陌生,有見及此,編輯部選擇了

            在個人電上也可運行自如,毋須龐大的Mainframe或甚麼大機器的

            SCU UNIX,介紹給大家,讓各位對另一廣闊無限的作業領域探首

            一下,也許玩起Internet時,會有另一番天地,別錯過這一連十

            二期的「UNIX自學篇」了。



            可能有些人會誤以為UNIX只是那些功能強勁的龐然大機方會使用

            的作業系統,誰不知道在個人電腦上,一樣可以使用,只不過所

            使用的是特別為個人電腦設計的PC UNIX,SCO UNIX就是其

            中的表表者。



            對於慣用DOS或視窗環境的朋友來說,UNIX的第一重關卡就是那

            些「敏感標號」(Sensitive Case),字母的大小寫俱有不同的

            意思,Ls、IS、LS或Is這些指令全不相同,所謂「差之毫□,謬

            之千里」,它對大小寫可是絕對敏感的。



            文件名稱



            在SCO UNIX下,建立的文件檔案名稱,可以是包含最多十四個

            字母數字字符的任意組合,既可使用下橫「□」,也可使用句號

            「。」。



            不過,文件名稱卻不能使用某些特定字符,因為它們對Shell來說

            有特定意義。這些不能用作文件名的字符,分別是「;」「|」、

            「〈」、「〉」、「』」「$」、「!」 、「%」、「(」和「

            )」,而文件名稱中也不能含有空白空格等。



            文件存取權



            每個文件都可以擁有不同的存取權限,界定其它用戶能否存取文

            件和目錄。



            每個文件分為三類所有權:文件的屬性、屬主所在小組的成員(

            即組員),可存取系統的其它用戶。用「|」的指令,就可以查

            看文件的權限。



            drwxrwx…



            好像上列的文件存取權限,第一個符號指示文件類型,減號為普

            通文件,d則表示目錄文件。接著的九個字符分成三組,分別表

            示屬主、組員和其它用戶的存取權;每組有三種存取權:「代表

            讀(Read)、w代表寫(Write)和x代表執行(Execute)。而沒

            有存取權的相應位置則會出現減號(-)代替。



            目錄存取權



            基本上,文件與目錄之間的存取權的設置大致一樣,但仍有些微

            分別。



            首先,要查看目錄的存取權限,就要在「|」之後,加一個空白

            處,再加上「-d」。如果要改變當前目錄,則用「cd」。



            改變存取權限



            要加文件或目錄的存取權限,可用「chmod」的指令,例子如下:

            $chmod g+rw filename



            g代表更改組員可以享有的存取權限,+rw就是讓組員可以讀與寫

            該文件。而u則代表文件的屬性,o代表其它用戶;減號(-)則

            代表取消某類人的某些存取權限。



            另一種更改權限的方法,就是使用八進制的數值指定存取權。每

            個符號賦與一個數值,r是4,w是2和x是1。例如組合讀與寫,其

            存取權的數值就是6。又譬如欲使文件對文件屬主、組員和其它用

            戶均具讀寫權,指令如下:

            $chmod 666 filename



            更改用戶屬主



            每當創建新檔案與目錄時,標記你是屬主,你的同組人員為組員,

            如果要把文件的使用權交給別人,只有屬主方可更改,指令如下:

            $chown owner file



            chown改變了文件的身分ID (UID)



            改變屬組要改變文件所屬的組別──文件組ID(GID),指令變

            為:

            $chgrp group file



            瀏覽文件內容



            需要求助,可按?鍵。至於,瀏覽文件內容有幾種方法,可使用

            more,顯示大文件,指令如下:

            $more filename



            按〈space bar〉,顯示正文的下一全螢幕;按〈return〉,轉往

            下一行;按q進出文件;鍵入模式前綴(/),就可鍵入需要查找

            的匹配模式,若模式找不到,則會顯示「pattern not found」的

            信息。



            按pg則逐次翻一個螢幕,而每個全螢幕後,都隨提示符(:),

            按〈return〉,看下一螢幕,鍵入+n,向前移動n個螢幕;-n,

            向後移動n個螢幕;打入$,則移到文件尾。



            如果使用Cat看文件內容,就可以在全熒幕上滾動文件內容。在任

            何位置,按<ctrl>s,文件就會停止滾動;按<ctrl>q,則會

            繼續滾動;按〈del〉則中斷不看。



            處理文件



            cp指令為複製文件,可以有多種用法。



            (一)$cp old.file new. file

            備份一個文件



            (二)$cp file 1 file 2 Test

            將file 1和file 2複製到Test目錄下



            至於,mv則為改名指令,譬如



            $mv fruit apples

            就是fruit改名為apples



            rm則是刪除文件的指令。文件一經刪除,就不能恢復它,故此,

            要加倍小心。



            $rm- i filename

            加上「-i」,刪除前,系統需要確認。







SCO UNIX UNIX 自學篇:第二講shell環境







                           文:Santa Cruz Operation,Inc.





          何謂shell shell是用戶與作業系統之間的交互層,用戶修改其環境,設置或

          取消shell的環境變量,迎合用戶的需要和愛好。



          shell本身就是一個電腦程序,用C語言編寫,為協助用戶與作業

          系統之間通訊而設計,管理用戶與核心(Dernel)之間對話,並

          把作業系統指令換成機器代碼,其實PC用戶常用的DOS,本身就

          是一個shell。



          sshell的用途



          shell的主要任務是:提示用戶打入指令,讀指令,轉換指令為核

          心所能理解的語言。其實,shell可以看作為指令解釋程序,提供

          一些工具,亦可以利用shell的編寫工具,構造電腦程序。



          System V shell類



          SCO System V的shell可分為四大類:Bourne shell;C shell;

          Korn Shell;和菜單驅動shell。而菜單驅動shell可再細分為三

          類,分別是Open Desktop,Sysadmsh或scoadmin和客戶應用程序。



          每個shell都有自己特定的環境文件,可以自行修改至合用,這些

          環境文件就仿如DOS的批次檔案(Batch File)。



          Bourne shell



          對普遍用戶來說,Bourne shell可以說是第一個UNIX shell ,

          它是由AT&T貝爾實驗室Stephen Bourne所編寫。默認提示(

          Prompt)是美元符($),其環境文件為profile文件,由於文件

          檔案不大,可以馬上啟動執行。



          profile是存放在主目錄下的普通正文文件(Text File),通過

          設置環境變量(Variable)和終端模式,可以使環境個人化,每

          次註冊進入系統時,shell會讀入profile文件,並執行所列出的

          指令。



          每當系統管理員創建新用戶的戶口時,系統都會自動構造一個相

          應的.profile文件;而整個系統的環境文件就放置在

          /etc/.profile中。



          用戶可以使用vi或其他正文編器修改。若要使用env命令顯示,由

          於註冊時已設置了這些變量,也不一定需要另行設置。



          C shell



          C shell是由Berkeley的Bill Joy編寫,是標準BSD(Berkeley

          System Distributou)命令解釋,其默認提示是份符(%),環境

          文件則是cshrc和.login。



          C shell采用C語言,是UNIX和XENIX系統上公共軟件的開發語

          言,提供了方便工具,快速打入,校正和再打入命令行。



          .login是C shell的註冊環境文件,負責啟動shell,註冊時執行

          一次,而.cshrc則存放常用指令如alias等指令。譬如我們要創建

          一個永久別名,把命令who|sort|more別名化為wh,在提示(%)

          後,只需要鍵入wh即可。用戶可在.cshrc□鍵入下面一行:

          alias wh 'who/sort/more'



          Korn shell



          Korn shell是AT&T貝爾實驗室David Korn所開發,是Bourne

          shell的增強版本,綜合了Bourne shell和C shell的特點和約定,

          而Korn shell則比Bourne和C shell執行得更快。



          Korn shell的默認提示與環境文件,跟其前身──Bourne shell一

          樣,同為美元符號($)和.profile文件。



          進程控制



          雖然同一時間,系統中運行許多進程,但是某一特定時刻,CPU只

          會讓一個進程使用,而CPU則在行使中的進程之間快速輪換,每

          個進程所占用的時間,稱為時間片。SCO System V為了保持、跟

          蹤或調度每個進程,會給每個進程一個進程標識號ID或PID。



          要確定那些進程正在運行,用戶可以使用ps顯示閣下的進程;或

          加上-e選項,顯示所有進程;加-f選項,則顯示的進程還包括已

          啟動指令的執行中進程;-u login顯示某註冊用戶的進程。



          在SCO UNIX System V中,如果閣下擁有Root指令的作用權,

          就更可以看到所有進程。



          當一個指令需要較長時間完成,可以在指令行後尾加入&元字符,

          該指令就會在後台執行,但對交互工作方式的指令就不適用了。



          菜單驅動shell



          菜單驅動(Menu-Driven)shell可再細分為三項:



          一、Open Desktop



          Open Desktop采用XWindow圖形用戶介面,用戶可用圖符(Icon)

          窗口和菜單操作,如Open Desktop的作業系統就是SCO UNIX

          System V/386。



          二、系統管理員Shell:Sysadmsh或scoadmin



          Sysadmsh或scoadmin則是字符介面,用戶可不用學習指令行語法

          和選項,就可以執行大批指令。大多數系統管理任務僅由系統管

          理處理,系統管理員則有特定的根口令(Root Password)。



          三、客戶應用程序



          某些用戶為了存取內部郵件、字處理或報表等應用程序時,方會

          使用SCO System V,系統管理員可以裝上這些程序,令它們在注

          冊時呈現。



          許多程序提供一個菜單選項,用簡單打鍵選取一個選項,用戶毋

          須記著指令和指令選項,亦能操控。







--



第三講vi editor







                           文:Santa Cruz Operation,Inc



            任何用戶最常做的事要數創建和編輯文件,包括文檔、報告和文

            字,vi(Visual Editor)是一個有效而相對簡單的全熒幕編輯,

            使用vi,只要記著少量基本指令,就可以開始起步,再學習其他

            更複雜的指令,而系統管理員則使用vi管理和維護系統。



            vi是包含在SCO System V作業系統中的全熒幕編輯,其實,vi不

            獨存在於SCO UNIX內,而是UNIX內相當普及的文件編輯。開

            啟文件



            無論是開啟新檔或修改舊文件,都可以使用vi,所需指令為:



            $ vi filemane



            如果文件是新的,就會在熒幕底部看到一個信息,告訴用戶正在

            創建新文件。如果文件早已存在,vi則會顯示文件的首廿四行,

            用戶可再用游標(cursor)移動文件。



            This is what vi looks like.



            ∼



            ∼



            上面是一個經vi開啟的模擬文件,一行開始處的波折號(∼)表

            示文件的結尾。指令態與插入態



            vi使用了兩種狀態,一是指令態(Command Mode),另一是插入

            態(Insert Mode)。當vi處於指令態時,打入的內容會視作指令

            來解釋;另一方面,當vi處於插入態時,就可以打入正文(text)

            給文件。



            大多數vi指令是單字符,由插入態改變為指令態,指〈Esc〉鍵;

            而由命令態轉為插入態,則可以使用下面的插入令,直接打入,

            無需再按〈Return〉鍵。



            —指令i在游標處插入正文



            —指令I在一行開始處插入正文



            —指令a在游標後追加正文



            —指令A在行尾追加正文



            —指令o在游標下面新開一行



            —指令O在游標上面新開一行



            要記著一點,在插入態處,不能打入指令,必需先按〈Esc〉鍵,

            返回指令態。假若戶不知身處何態,也可以按〈Esc〉鍵,不管處

            於何態,都會返回指令態。



            存檔及退出



            在修改文件時,如何存檔及退出指定文件都非常重要。在vi內,

            行使存檔或退出的指令時,要先按冒號(:),改變為指令態,用

            戶就可以看見在熒幕左下方,出現冒號(:),顯示vi已經改為指

            令態,可以進行存檔或退出等工作。



            下面就是一些這方面常用的指令。



            :q!放棄任何改動而退出vi,也就是強行退出



            :w存檔



            :wq存檔並退出vi



            :x與wq的工作一樣



            :zz與wq的工作一樣刪除正文



            刪除或修改正文都是利用插入態,故此,下面所提及的指令只需

            在插入態內,直接選入指令即行。



            —x刪除游標處字符(Character)



            —nx刪除游標處後n個字符



            —nX刪除游標處前n個字符



            —ndw刪除游標處下n個單詞(word)



            —dd刪除整行



            —d$或D刪除由游標至該行最末



            —u恢復前一次所做的刪除



            修改正文



            當使用vi修改正文,加減字符時,就會采用另一組在插入態操作

            的指令。



            — r char由char代替游標處的字符



            —Rtext〈Esc〉由text代替游標處的字符



            —cwtext〈Esc〉由text取代游標處的單詞



            —Ctext〈Esc〉由text取代游標處至該行結尾處



            —cc使整行空白,但保留游標位置,讓你開始打入



            —如刪除指令一樣,在指令前打入的數,表示執行該指令多少次。

            正文模式檢索



            要檢索文件,必需在指令態下進行。所謂「模式」,就是一個特

            定字符串,其中可含空格符。



            —/str〈Return〉向前搜尋str直至文件結尾處



            —?str〈Return〉往後搜尋str直至文件開首處



            —n同一方向上重複檢索



            —N相反方向上重複檢索



            —vi纏繞整個文件,不斷檢索,直至找到與模式相匹配的下一個

            出現。其他



            如果要在 vi執行期間,轉到shell執行,使用驚歎號(!)執行系

            統指令,例如在vi期間,列出當前目錄內容,可以打入



            :!If



            另一方面,用戶可以在主目錄中創建.exrc環境文件,用set打入

            選項,每次調用vi時,就會讀入.exrc中的指令與設置。下面是

            .exrc環境文件的實例:



            set wrapmarging=8



            set showmode



            set autoindent



            set number





--



SCO第四講:系統管理







                         文:Santa Cruz Operation, Inc.





  今次要談的系統管理員負責管理SCO UNIX的系統,擁有獨特的

  註冊名──root,能夠讀取任何文件,寫入和刪除任何文件,執

  行任何實用程序和指令,亦可以執行和終止任何用戶程序。

  系統管理員的工作包括系統控制的任務,例如後援加鎖和解鎖終

  端和記帳號、增加、隱退和撤消用戶。亦可以給用戶一些特權,

  讓他們實現特權系統任務。



  基本指令



  shell指令的基本數據結構是文件,因此,基本指令和操作包含以

  下功能:



  -顯示及管理文件中的指令



  -管理目錄的指令



  -輸入輸出重新定向和管道,重定向標準I/O,並執行組合指令$

  W|grep 'john'〉john,file



  -輸出重定向符(>)把標準輸出重新定向輸出到文件



  ──輸入重定向符(<)把標準輸入重定向從文件輸入



  -管道符(|)把標準輸出重定向輸出到別一指令



  尋找文件



  find(c)指令可以在層次目錄中查找文件,例如:



  $find/-name filename -exec rm {};



  -name filename指定filename



  -exec rm表示在所找的文件中執行rm移動這個指令



  另外,用戶亦可以加入,-print表達式,顯示找到文件的全路徑

  名。



  除此之外,find(c)也可以用來找出特定用戶或用戶組所持有的

  文件,譬如:



  $find/-user bin -print



  $find/-group mmdf -print



  又或者,用find(c)重新定向過濾程序,輸出錯誤信息,例如:



  $find/-name motd -print 2〉/dev/null



  SCO shell



  使用SCO shell,可以讓用戶從單個菜單中選出應用程序,管理

  文件和目錄,運行系統實用程序,要調用SCO shell,可鍵入:



  $scosh



  可以利用空格條鍵〈Space Bar〉或箭頭鍵〈Pointer〉移動光標,

  加亮所選的菜單項



  -按〈Esc〉



  回到上一級,或放棄當前操作



  -按〈F3〉



  顯示所在字段中可用選項表



  -按〈Ctrl〉v 在字段選項表中選出每一項



  -按〈F1〉



  顯示求助信息



  -按Quit或打入q 退出SCO shell



  系統管理shell



  需要調用系統管理員shell,應該打入:



  $sysadmsh或$scoadmin



  雖然每個用戶都可以調用sysadmsh,但是,只有實權的用戶才可

  執行有關特權管理任務。



  基本上,使用方法與SCO shell差不了多少,只是多了幾個功能

  鍵(Function Key),例如〈F5〉搜索,〈F6〉改變目綠和〈F7〉

  執行格式。而且,scoadmin更可以在XWindow的圖形環境下執行,

  用戶在圖符(lcon)上找到不同的管理任務。



  多重註冊螢幕



  控制台上,可以允許用戶最多具有十二個不同註冊期的螢幕。多

  重螢幕令系統管理員可以同時執行幾個任務。



  系統啟動時,控制台上的多重螢幕就會自動活動起來。同時按〈

  Alt〉鍵與〈F1〉至〈F12〉功能鍵,實現螢幕之間轉換。



  至於,在終端上,啟動多重註冊螢幕,則可用mscreen實用程序,

  為正確工作,mscreen要求為tty。例如啟動兩個螢,應該打入



  $mscreen-n2



  然後按〈Shift〉鍵與〈F1〉或〈F2〉鍵,在兩個螢幕之間轉換,

  當註銷時,確保所有螢幕註銷。





--



SCO第五講:電子郵件







                         文:Santa Cruz Operation,Inc.





         在SCO System V下,每個用戶都有一個系統維護的私人郵箱,

         用戶能夠與系統任何用戶或用戶組之間收發電子郵件,所收發的

         信息可以保留在郵箱內或作獨立文件處理。 發送郵件



         打入mail指令,後跟收件人註冊名,就可發送郵件。假如發送郵

         件給多個收件人,名字用空格符〈space〉分隔,而不是逗號。收

         件人可以是一個單獨註冊名或一個別名,別名代表用戶組,例如:



         $mail peter amy



         接著,螢幕上會出現subject:的提示符,用戶即可打入簡短的信

         息說明,完成後,按〈Return〉鍵,然後,就可以編寫郵件內容。



         需要校正錯誤,就該使用空格符或左箭頭鍵,用不當的空格符或

         不合適的箭頭鍵,即使在螢幕上看起來對,但是收件人可能只收

         到不可讀和篡改了的信息。請記著,mail內的內容編寫,不是「

         所見即所得」(What You See is What You Get)。



         假若需要取消整個信息,按〈del〉鍵兩次。寫完郵件內容,按〈

         Return〉鍵,取得新行後,按〈Ctrl〉d,發送郵件。d就是done(

         完成)的縮寫。



         閱讀郵件



         每次註冊進入系統時,系統都會通知閣下,在閣下的郵箱中可有

         郵件,需要翻閱郵件,打入



         $mail



         若有郵件,每每郵件都會顯示出相應的信息標題,包括信息數,

         送件人及發送日期。下面是郵件範例:



         $mail



         SCO System V mail(Versin 3.2)Type? for Help



         "/usr/spool/mail/joesco":2 messages/new/unread



         u2 mary Sun Aug 05 23:48 47/2109 level 2500



         n1 paul Fri Aug 03 08:01 23/6332 Tardy reports!



         要閱讀來件,可以使用箭頭鍵移動選取,按〈Return〉鍵閱讀,

         或在提示處,直接按入來件編號。若已讀到郵箱中最後一批信息,

         mail在螢幕上會顯示"Can't go beyond last message" 。



         處理mail



         當打入一個無效指令時,mail會回答一個問號,或"What" 的信息,

         顯示指令不清。假若用戶想顯示mail指令表,可以打入?;或打

         入h,顯示郵牛標題表;打入l,則會發送信息至打印機。另有一

         些常用的指令,協助處理mail:



         一、保留郵件



         "s filename"按普通正文文件保存整個信息至filename內,連同

         郵件的標題信息,一並送入文件內。



         "w filename"撇除郵件標題後,保存信息到filename內。



         二、刪除郵件



         "d x" 刪除信息x這個信息號數



         "u x"恢復被刪除的x信息



         三、覆件



         "r"發信回答給送件人



         "R"發送回答給To:和Cc:表上的所有用戶



         四、轉發郵件



         "f login"轉發信息,予其它用戶,並分送來件正文(Original

         Message);login乃用作的注名



         "F login"只轉發信息,不分送來件正文



         五、退出郵件



         "q"退出mail程序,並更新所有改變



         "x"退出mail程序,但不作任何改動



         其它處理郵件的方法



         除了以上所提到的基本指令處理郵件外,SCO UNIX尚有其他較

         複雜的指令可整理郵件。在mail內,所有指令前都要加上波折號∼

         v,調用vi編輯,一旦完成編輯信息,通過vi的指令,例如保存和

         退出指令:wq,就可返回mail程序;按〈Ctrl〉d,就可以直接發

         送郵件信息。



         其它mail的增強指令如下



         -∼m messate-no.把郵箱中指定信息



         (message-no.)放到所編寫的信息中



         -∼r filename讀入指定文件(filename),送到當前信息中



         -∼p察看信息中的當前內容



         -∼?求助



         為了方便mail通訊,系統管理員能夠定義不同的特定單用戶或組

         別名,通過這些單個組、別名或名字,就可以把郵件信息發送給

         全組用戶。發送給別名成員,可鍵入如下指令:



         $mail aliasname



         如果要限制組員和其它用戶的私人郵件的存取權限,可以使用

         chmod指令,例子如下:



         $chmod 600mbox



         在普通電子郵件提示處打入set,可以控制選項,改變讀和發送郵

         件,這些選項可以由系統管理員為用戶自動建立,也可以自己修

         改這些設置,例如:



         set page═10



         mailrc環境文件



         mail的環境文件叫做mailrc,負責保存所要文件的永久記錄。



         與其它環境文件一樣,mailrc必需放在主目錄中,它是正文文件,

         包涵有效的mail指令,mailrc通常包括set指令和alias 定義。



         不過,運行mail程序,倒不一定要有.mailrc文件。如要查看

         .mailrc,可以打入more .mailrc,下面是.mailrc的一個實例:



         cd



         -在mail內,改變主目錄nset autombox



         刪除自動把所讀件轉送到私人郵箱



         set page═20



         -若信息大於二十行,用more顯示



         alias crew john wanda frank



         -發送給crew的郵件轉發給表中列出的用戶



         set EDITOR═/us/lib/word



         -把word作為mail默認編輯unset chron



         -顯示當前最新郵件 上述的.mailrc例的□面,當打入$mail crew,

         就能夠把郵件發送給john,wanda和frank。



         監視mbox是默認設置,如果不想設置的話,應該使用unset

         autombox,而當mbox的內容很快增長時,通常會刪去舊信息。如

         果要讀mbox中的郵件,可以使用如下指令:$mail -f mbox







第六講:後援複製 Santa Cruz Operation,Inc.











         電腦系統內,數據可是相當重要的一環。貯存數據的方法,可以

         經軟盤、硬盤或盒式帶(Cartridge),盒式帶通常為大量數據提

         供後援(Backup)。



         複製目錄



         在安裝的文件系統中,把一個目錄內容複製到另一個目錄中,用

         copy 指令:



         $copy source> destination>



         #copy -mor source> destination>



         轉換並複製文件



         使用 dd(c)指令,可以把一個文件轉換成另一個文件,也可以選擇

         文件的一部份傳輸,在傳輸的數據中,也可以交換字節順序。



         $dd if=/dev/fd0 of=/temp/save skip=5 count=86 bs=5k



         上面的指令〞/dev/fd0〞 是指電腦上的軟盤,〞skip=n〞代表在

         複製到輸出文件之前,跳過輸入文件上的幾個記錄。〞bs=n〞則

         表示設置輸入輸出字節塊長度,用 k 表示 1024 字節。〞count=n〞

         只複製輸入記錄的指定數。



         同時,也可以利用 dd 指令檢查歸檔(archive)情況,指令如下:



         $dd if=dev/fd0 of=/dev/null bs=1k



         1200+0 record read in



         1200+0 record read out



         歸檔文件:tar(c)



         tar 是對非特權用戶最易用和最可靠的實用程序(utility),從

         歸檔介質上保留和恢覆文件,亦能從多文件歸檔中抽取單個文件。

         tar 歸檔使用文件和目錄的相對或絕對路徑名。



         打入 tar,即會顯示所有變量選項;」cv」是創建歸檔;」cv#」

         用於來自 /etc/default/tar 的設備號 #;」rv」追加已有歸檔;」

         uv」更新在已有歸檔上的文件;」tv」顯示歸檔內容表;」xv」

         從歸檔中抽取文件;」f」從指定文件中讀入或寫出;」L」使 tar

         跟隨符號連接繼續追查下去,默認情況下則會忽略符號連接。



         譬如要歸檔指定文件,而覆蓋盤上的已有數據,指令如下:



         $cd pub



         $tar cv6 ascii greek



         volume end at 1199k, block factor=5k



         seek=0k a ascii 3k



         seek=3k a greek 1k



         要列出 tar 歸納的內容:



         $tar tv6



         rw-r--r-- 2/22114 Jan 2 13:41 1996 ascii



         rw-r--r-- 2/2475 Jan 2 13:41 1996 greek



         創建 tar 歸檔,使用相對路徑名,否則,恢復另一系統就會蓋寫

         其他系統的文件。



         #tar cv6 /etc/motd



         #cd /tmp



         #tar xv6



         x /etc/motd, 943 bytes,2k



         歸納文件



         當需要後援指定設備、後援空設備與使用匹配符的時候,就不能

         使用操作容易的 tar,而需要轉用比較複雜的 cpio,用以歸納文件。



         譬如,需要選取文件建立歸檔,指令如下:



         $find /u/bill -print| cpio -oB -O /dev/fd0



         20 blocks



         又例如,需要抽取 cpio 歸檔文件名時:



         $cpio -idmuBv -I /dev/fd0



         .profile



         ascii



         eqnchar



         greek



         20 blocks



         cpio 主要選項為:



         -v 顯示工作



         -i 讀歸檔



         -o 寫入歸檔



         -t 內容表



         -d 創建目錄



         -m 保留原修改日期



         -U 無條複製



         -B 分割因子置為 5k



         -Cn 分割因子置為 n



         -Kn 介質長度置為 n



         後援複製



         後援就是要平衡運行一般後援的代價與損失數據的代價,確定要

         歸檔的數據類,並確定要用何級實現,以及確定所要求磁帶的盤

         數和帶的容量,多久存儲一次後援等等問題。



         一般來說,後援複製可在 sysadminsh 或 scoadmin 執行。



         所謂增量後援(Incremental Backup Levels),就是只需要以上

         次歸檔後發生改變的那部分數據後援。當實現調度後援時,在

         /usr/lib/sysadmin/last/中,將文件記錄下來,可以透

         過使用後援級來實現。



         後援級的 0 級就是後援文件系統上全部文件;1 級則後援以上次

         0 級後援以來改變的文件:2 級,後援以上次 0 級或 1 級後援以

         來改變的文件;3 級,後援以上級 0級、1 級或 2 級後援以後改變

         文件。



         經定義後援工具後,後援調度(Backup Schedule)就可以更方便

         地執行,配置檔案則會被安置在 /usr/lib/sysadmin/schedule 中。



         假若在緊急關頭或特殊情況下,用戶亦可以使用非調度放援,進

         行緊急後援。







--



Unix自學篇:stepl……step8……







                         文:Santa Cruz Operation,Inc.



        第七講:用戶管理



        系統管理員的用戶理工作包括:為系統中所有用戶建立帳號;以

        及當改變用戶環境、口令與組別時,進行維護。



        分析用戶需求



        每當需要增加用戶時,系統管理員都會先分析用戶需求,對每個

        帳號成分,通過使用默認選項來滿足用戶需求。要從sysadmsh中

        查看默認記帳選項時,可以使用以下選擇。



        Accounts□□〉Defaults



        或scoadmin□□〉Account Manager



        當建立帳號時,評估用戶需求,查看是否需要修改記帳成分。若

        用戶僅用一個應用程序,編輯用戶的.profile文件,在用戶註冊

        時,每次均執行此文件。



        默認值建立用戶帳號(Default Parameter)



        首先,打入用戶註冊名,小寫與三至八個字符;填寫注解欄時,

        應包含標識信息,如用戶全名、單位、電話號碼等。另外,指出

        是否願意用系統默認方式建立帳號,抑或對帳號修改默認值,若

        使用默認方法,則選No。確定你要增加的用戶後,給出創建後的

        文件和目錄,再執行/tcb/lib/useshell指令,建立用戶帳號,

        不過,在UNIX系統指令中,要通過sysadmsh或scoadmin才能運行

        此指令。



        若決定改變用戶記帳默認方式,則在建立帳號時選Yes,那麼就需

        要填寫每欄,在合適位置上,按〈F3〉或〈Esc〉,下面是關於非

        默認的設定。



        指定用戶組



        每個用戶必須至少屬於一個組。默認情況下,用戶註冊組是group。

        在一個組內還包括讀、寫和執行文件的權限,附加用戶權限給那

        個組,作為指定組員的存取權限集。如要改變成組別,可用newgrp(

        c)指令。



        增加用戶時,可以創建一個新組,或附加到一個已存在的組內。

        有關組別的信息則存放在/etc/group中。凡增加用戶創建新組

        時,組名會自動遞加到/etc/group文件內。



        組ID能夠由系統產生或人工指定,但必須在100到60,000範圍內,

        100號以下的ID留給子系統和其他默認組用。當管理一個網絡系統

        時,常需要指定GID(Group ID,組ID),避免混同各網絡結點,

        所以,最好先選用默認組ID。



        指定邏輯shell



        要知道用戶打算選用哪個shell工作,SCO系統可選用以下幾種不

        同的shell工作:



        csh: C shell。



        ksh:Korn shell,組合了Bourne shell和C shell的特點以及指

        令行編輯。



        rksh:加限制的Korn shell。



        rsh:加限制的Bourne shell。



        scosh:SCO shell(圖型化桌面)。



        sh:Bourne shell。



        uucp:UNIX到UNIX拷貝功能,它本身不是shell,而是成功注

        冊後運行的程序。



        默認shell在/etc/default/authsh中指定,從/usr/lib/

        mkuser目錄結構內文件中,取到可采用的註冊shell表。



        指定主目錄



        默認主目錄在/etc/default/authsh中定義,從/usr/lib/

        mkuser/homepaths文件中,取到可采用主目錄的選擇。以及為用

        戶創建一個新的主目錄。



        指定用戶ID(UID)必須是在200到60000範圍內,指定在/etc/

        default/authsh文件中,UID必須是獨一無二的,防止在網絡上

        有相同的UID,而且,UID一旦設置,永不改變。



        指定用戶類



        另外,還需要為用戶設立他們的類別,種類如下:



        -individual:個人記帳類。



        -pseudo-usr:為各子系統任務設置帳號,註冊時個人不應給

        pseudo□usr記帳類,Operator、security officer和

        administrator記帳類是pseudo□usr的其他名字。



        -不能設置superuser和retired記帳類。



        如果要能使用su(C)(所變用戶身分命令),該用戶必需被指定

        為用戶類individual,才能取用此域,為了用su另外記帳,用戶

        必須有su授權,知道帳號口令。low、traditional和improved為

        安全默認值,被賦予su授權。在high 安全默認值下,則不賦予su授

        權。



        賦予用戶被始口令



        當創建新用戶帳號時,就需要為用戶設立或不選擇不設立初始口

        令。



        -New:現在賦予口令,用戶在註冊時必需打入這個口令。



        -Later:現在不賦予口令,在賦予口令前,用戶不能註冊。



        -Blank:賦予空口令,用戶能註冊,但在註冊時,強迫用戶給出

        一個口令。



        -Remove:不賦予口令,用戶能不用口令註冊。



        -Force Password Change:決定在用戶首次註冊時是否要用戶強

        迫改變口令。



        在high安全性下,必須為每個用戶產生一個口令。若賦予初始口

        令,就應該告訴用戶他的口令,希望他在首次註冊時,立即修改

        這個口令,修改口令時,不要選用別人能夠輕易猜出來的口令,

        如姓名或生日日期等,最好在口令中,加有一個非字符。



        系統安全保護:修改用戶默認帳號



        為了防止被人濫用別人的用戶帳號註冊進入系統內,保障系統的

        完整性,系統管理員需要修改一些用戶的默認帳號,以及檢查用

        戶的註冊情況。



        首先,管理員會設定不成功註冊最大次數,計算使用不正確口令

        註冊的次數;當不成功註冊超過最大次數,就設定加鎖用戶帳號

        和終端。如果在完成註冊時間之內,仍未能設置口令,也可加鎖

        用戶的系統,甚至根戶用也一樣。在成功註冊後,希望享受優先

        CPU調度,則可以用nice(C)值,給用戶she ll及由它啟動的進

        程,以調整優先級。設定值會存放在/etc/system/default中。









Unix自學篇──第八講:監視進程管理







                         文:Santa Gruz Operation, Inc.



        程序是一個可執行文件(Process)是正在運行程序一個實例。

        SCO UNIX System V支持許多進程同時運行,各種系統通過調

        用可用進程去創建新進程,與其他進程通訊,以及終止其他進程。



        進程族系



        新進程創建時,內核會分配一個進程標識號(PID)給它,並對

        進程表中添加說明訊息。



        由一個進程創建另一新進程,老進程為父進程,新進程為子進程。

        用戶Shell執行的大多數指令又是它的子進程,子進程則運行指令。

        而父進程允許有多個子進程來實現任務等,待子進程完成。一個

        父進程可以有多個子進程,但是,一個子進程只有一個父進程。



        前台及後台進程



        在Shell提示處打入指令後,創建一子進程運行命令,Shell等待

        命令退出,然回到對用戶提出提示符,這道指令與Shell同步運行,

        即在前台運行。



        在Shell提示 處打入的指令,若隨一個&,Shell創建的子進程運行

        此指令,但不等待指令退出,而直接返回到對用戶提出提示。這

        道指令與Shell同步運行,即在台運行。



        $ sleep 10 &



        精靈進程



        精靈進程是一個進程,它與終端和用戶都無聯繫,也有人喜歡稱

        他為管家婆。精靈完成一些周期性的事,平時它睡眠。用ps (C)

        指令可看到精靈,它在tty區域中帶有問號(?)。



        -Sched:PID 0,它完成進程的程序在存儲局和盤交換局之間交

        換工作。



        -init:PID 1,系統自動建的第一用戶進程,它負責初始化引

        導和註冊過程,也就是所有非系統進程的祖先。它會在終端口上,

        啟動getty (M)進程。



        -vhand:PID 2,頁面精靈,它頻繁地把儲頁面內容送往交換區。



        -bdfush:PID 3,定期刷新高速緩到盤(默認情況,每13秒刷

        新一次)



        -logger:歸檔系統出錯訊息。



        -cron:在調度時運行作業。



        -Ipsched:脫機打印精靈。



        孩兒進程



        孤兒進程在父進程終止仍舊活動,由init (M)認它為乾兒子。

        僵□進程則是進程已終止,但進程還未撤消,因為父進程並未「

        等待」它,進程表仍保留著這□體,進程表的□體是僵□進程所

        消耗的資源。



        隨著新進程的創建,出現大量□體,但總數是有限制的,因此影

        響新進程的產生。而孩兒進程與僵□進程不同,並不會影響系統

        效率。



        通常,在父進程死去時,才會移去僵□進程。若他們還未移去,

        應由init (M)繼承並移去它。



        監視進程



        監視進程監註冊戶的數量,用以記系統的性能;亦會監視用戶進

        程,包括掛起進程;以及裝載均值等系統性能問題。



        要顯示進程信息,可以利ps (C)指令報告,進程狀態。在默認

        情況下,僅會報告與當前終端有聯繫的有關訊息。若用戶沒有root權

        限,ps僅限以說明運行進程,報告用戶的進程訊息。若用戶有root權

        限,則會報告在所有終端上所有用戶的進程訊息。



        $ ps-u joana



        --u 〈username〉選項顯示指定用戶的訊息。



        --t 〈ttynamt〉選項顯示指定終端有關的進程訊息。



        而ps -elf指令則提供了需有F、S、C、PRI、NI、TIME字段的

        使用訊息。



        -F是標記,指示進程位置,20表示在內存,0表示交換在盤上,

        31是系統進程。



        -S是狀態訊息,指示進程狀態,睡眠還是正在運行。



        -C是進程占有CPU的百分率



        -TIME是花費CPU的總時間。



        -PRI是進程當前優先數



        -NI是進程的nice (ADM)菜單



        如何創建進程



        當進程分岔一個子進程,自己就會進入睡眠狀態。開始時,子進

        程運行父進程的同一程序,由內核分配一個新的PID。當子進程

        再去執行新的程序,保持新分配的PDI,新程序就會替代子進程

        的原先程序。



        當子進程完成後,內核會把它從系統中移去,再喚醒父進程,子

        進程就會退出。



        監視系統裝載



        uptime(C)指令顯示裝載均值(一分鐘、五分鐘和十五分鐘),

        即在預定時間上,排隊運行進程的平均數:$uptime



        W(C)指令產生如uptime(C)一樣的裝載均值訊息,並顯示誰在

        系統上做甚麼,若用戶擁有root權限,W報告所有用戶的有關訊 息。

        若沒有 ,僅顯示與用戶進程有關竹的訊息。



        PCPU(Process CPU,進程CPU時間 )顯示某道特定指令已運

        行多久了。對控制不了的進程,這種檢查是很有用的。JCPU(

        Joint CPU,連合CPI時間),顯示一個終端所涉的所有進程的

        總時間。



        sar (ADM)指令是一個系統活動報告程序,顯示系統資源累積

        利用率。為指示系統瓶頸口(Bottleneck),sar 是非常好的實

        用程序,指令語法如下:$sar〔-option〕 〔

        sample-interval-samples〕



        例如:$sar-u120



        -u選項顯示CPU利用情況。如果%idle一致地低,使用效能是上升,

        不過,運行的進程偷不到未用的CPU周期。



        又例如使用-q選項顯示進程吞吐量。假若%swpocc大於20,就發生

        交換(Swapping),可以使用大內存能減少交換 /請負活動。





--



UNIX自學篇:第九講:管理進程







                         文:Santa Cruz Operation, Inc.



         用低優先級運行進程



         nice(C)指令用於以較低的調度優先級執行命令,每個進程都有

         一個 nice 值,用於計算它的優先級。nice 值在 0 到 39 範圍內,

         高值獲得低優先級,不給實參的默認情況是 nice 值 20。超級用戶

         可指定負值,以提高優先級。



         在註銷進程後進程繼續執行



         後台啟動的進程,默認情況下,當註銷後就不再存在,但是,可

         以使用 nohup(c)指令,讓進程不受掛起和註銷影響,得以繼續

         運行,例如:



         $ nohup sort bigfile>sortfile &



         4567



         $ exit



         當用戶註銷時,用戶未用輸出改向,輸出將送到當前目錄下的

         nohup.out 文件中,如果當前目錄不可寫,則輸出改向到

         $HOME/nohup.out。



         重新啟動安全級精靈進程



         根據 C2 安全級要求,某些精靈進程用 LUID (Login User

         Identifier)標記運行,如此只能用 sd(ADM)實用程序重新啟

         動他們。



         如果 LUID 限制有效的話(高安全級),只能用 sd(ADM),例

         如 cron(C)這樣的精靈,在高安全級下要 sd 重新啟動它。



         進程終止實用程序



         需要終止實用程序時,可以通過發信息給進程,使它自殺,通常

         會用在終止一些已掛起的或是運行的進程。



         語法如下:



         $ kill [-signal]



         例如



         $ kill 4411



         4411:terminated



         這樣,只能終止運行優先級大於 25 的進程,小於 25 優先級的進

         程只能在重新引導系統中撤注它。



         調度單個作業執行



         at(C)指令使得在某指定時間執行一組命令一次,主要用於在系統

         活動較少的情況下,在預定時限(例如在半夜後或每日固定時間)

         內運行指令。



         要重新定向,可以使用標準輸入,或可文件輸入;在打入完整的

         at 指令後,就會顯示出將要運行的作業號與時間。



         語法如下:



         $ at time [date] [increment] < [filename]



         任何用戶都能運行一個 at 作業,但必須給予授權。



         指定單個作業調度時間



         時間格式為 hr:min 或 min,hr ,用 a.m 或 p.m 指定上午或下午,

         有效時間包括 no on,midnight 和 now,指定日期則用「月日

         〔年〕」格式,例如 Feb14。一星期那一天也可用 monday、

         mon、today 或 tomorrow 代替。



         .at 指令從標準輸入中,讀入打算在以後某一時刻所執行的命令:



         $ at 14:00 Jan



         sort /u/user1/file



         /u/user1/sort



         ctrl>d



         job 61202778.a at Thu Jan 4 14:00:00 1996



         記著使用時,要用全路徑名指定文件。指令輸出以電子郵件發送

         給用戶,也可輸出改向到文件或終端。



         列出單個調度作業



         使用命令



         $ at -1



         job 612027780.a at Wed Jan 24 08:43:00 1996



         job 612027900.a at Wed Jan 24 08:43:00 1996



         若指定 jod_id,一般用戶會得到一張自己所有作業的表,根用戶

         則能取得全部作業的表。



         撤消單個調度作業



         使用以下指令撤消作業:



         $ at -r



         可以使用匹配符撤銷多個作業。at 的作業存放在

         usr/spool/cron/atjobs



         在一般數據庫上調度作業



         用 crontab (C)指令,從指定文件或標準輸入拷貝或編輯成用戶

         的 crontab 文件,該文規定了在指定日期和時間調度運行一些指

         令。



         crontab 指令提供了對 cron 系統精靈要執行的作業,清理 /tmp ,

         撤銷在一般數據上日記文件或不想要的文件,以及檢查空間,郵

         寄警告予用戶等。



         /usr/lib/cron/cron.allow 文件列出了能使用 cron 的用戶,

         /usr/lib/cron/cron.deny 文件列出了拒絕存取 cron 的用戶,僅

         當 cron.allow 文件不存在時,cron.deny 文件才起作用。



         指定作業及其調度時間



         作業可能是單個指令或包含多道指令的 shell 腳本,指令輸出郵

         寄給用戶,也可輸出改向到文件或終端。在文件中打入作業及運

         行時間,以運行此作業。文件可取任何名字,但是,不允許包括

         首尾部和空白行,而且,最好取 .cronfile ,這種取名反映其功

         能,易記易理解。.cronfile 文件可用正文編輯或 vi 創建。



         每個用戶僅提供一個 .cronfile文件,每當執行 crontab 指令時,

         新文件會蓋寫原先文件。編輯已存在的 .cronfile 文件,增加或

         修改一個作業,然後用 crontab 重新提交 .cronfile 。而每個用

         戶的登記項會存放在/usr/spool/crontabs/。



         列出或修改 cron 作業



         要列出當前提供的 cron 作業,可以打入:



         $ crontab -1



         修改 cron 項,使用指令:



         $ crontab -1 >.cronfile



         $ vi .cronfile



         $ crontab .cronfile



         如要撤銷 cron 作業,則打入:



         $ crontab -r



         但有一樣,請留意,根用戶沒有 .cronfile 文件。





Unix自學篇第十講:打印管理







                           Santa Cruz Operation, Inc.



        打印假脫機(Spooler)程序在系統引導時自動啟動,負責打印服

        務的安裝、配置和管理,在指定打印機上,將用戶打印請求進行

        排隊,能在不丟失排隊打印請求下暫停打印。



        打印機隊列



        打印機會被分組,每組共同存取一個隊列(class)。而打印請求

        可以送入一個 class ,也可送往指定打印機上。



        在一個 class 中,可隨時移去或增加打印機,用 sysadmsh 菜單或

        scoadmin 的 Print Manager,可以增加打印機往已有的 class 中,

        又或增加一個新 class。



        打印機過濾程序



        使用打印機過濾程序,可以轉換用戶文件或數據流,在給定打印

        機上,合適地打印出來;處理兩邊打印,草圖或高質量文字打印

        等;如發現打印失敗,會通知打印服務,然後告訴用戶使用上出

        現問題。



        打印機過濾程序又稱為打印機定義的接口腳本,存放在

        /usr/spool/lp/bin。



        安裝和配置打印機



        要把打印機接到並行埠(Parallel Port)上,SCO UNIX

        System V 支持兩個物理並行設備(/dev/lp[0-2])。當用主並行

        埠時,用 LP0 或 LP1,中斷向量為 7。第二個並行埠,/dev/lp2,

        中斷向量同為 7。



        要把打印機接在串行埠(Serial Port)上,最好接上智能卡工作,

        打印機能用任意有效串行埠名聯繫。若不要求硬件流控制,可以

        使用非調製解調器控制埠名。



        另一方面,可以從終端輔助埠上做局部打印,指令 lprint (C)

        使用戶從附在終端上的打印機上打印。



        安裝打印機



        要安裝打印機,先找一個未用的串行線路接上打印機,連好導線,

        打開打印機開關,檢查硬件連接。



        然後,調用 sysadmsh 菜單或 Print Manager 上,加入打印機,用

        合適的信息填好格式,指定打印機的 Class,若所指定的不存在,

        就建立一新 Class,包含接口腳本路徑名。許多打印機都能用

        standard 接口腳本。



        打印機管理



        修改打印機配置時,可以增加或撤消目的地;改變打印機接口腳

        本、設備等;以及改變默認打印機目的地。



        管理打印機調度時,有幾種選項需要注意:



        -Stop:為實現某種打印機維護,必需將假脫打印機轉換成 off。



        -Begin:假脫機轉換成 on。



        -Accept :允許把打印請求送往打印機或 class 中。



        -Reject:阻止請求假脫機打印。



        -Enable:允許從打印機或 class 上打印。



        -Disable:阻止打印,但允許假脫機出現。



        每個打印請求都會賦予一個優先數,決定何時打印,優先數據取

        值範圍為 0(最高)到 39 (最低)。默認優先數值同樣是 20。



        所有打印請求或單個打印請求都能移到不同的隊列或打印機上,

        若打印機的隊列阻塞或打印機不能用,就要移去打印請求;打印

        機要維護,也要移去打印請求。如果已移去了所有請求,這個打

        印機就不再接受新請求,直到打印機啟用為止。



        要清理打印機請求,先要指出打印機或請求 ID ,若指定了打印機,

        則當前正在打印的作業也被清除,但是,不能使用通配符去匹配

        清理打印請求。





第十一講:TCP/IP 管理







                           Santa Cruz Operation,Inc.



        IP(Internet Protocol)地址是 TCP/IP 網上為主機之間數據

        選擇路徑(交換)的基礎,但是,用戶通常不甚喜歡使用由數字

        組成的 IP 地址,而比較喜歡使用多由英文字母組成的主機名字──

        URL(Uniform Resource Location)。



        不過,主機名字必需映像到 IP 地址,而方法就是通過 /etc/hosts

        文件完成。



        配置 /etc/hosts



        /etc/hosts 的格式是:地址──名字──別名。



        例如:



        127.0.0.1 localhost localhost



        132.147.18.1 vision vision.sco.com



        IP 地址必需是一行上的第一項,在它前面不應有任何字符,例如

        空格符或製表符;名字是簡單的主機名字;別名則在很多情況下

        都不需要,但是,全限主機名字、簡單主機名字和轄區名字都歸

        入別名之列。



        檢測 TCP/IP 配置



        TCP/IP 協議的軟件部份包括 TCP/IP 協議層架的頂三級,即

        應用級(Application Protocol)、傳送級(Transport Protocol)

        和網際網級(Internet Protocol)。特定的主機名字」Localhost」

        是特殊網絡」loopback」上的本地主機的別名。



        要檢測 TCP/IP 協議層架的軟件部份,使用 ping 指令:



        #ping localhost



        如果 Ping localhost 失敗,則使用 netstat -i[n],檢查網絡接

        口的狀況,顯示網絡接口上分組傳輸的統計訊息,指令如下:



        #netstat -i[n]



        n 選項強行顯示編號,而不是名字。netstat 查看自環驅動器 lo0 ,

        如果 lo0 失敗,則在 /etc/tcp 中」ifconfig lo0」行指示壞了或

        有錯誤。



        檢測 TCP/IP 硬件



        審核引導過程中,會對所職別的網絡接口產生的配置報告,而

        TCP/IP 協議的硬件部分包括 TCP/IP 協議層架的底兩級,即

        網絡接口級和物理/硬件級。



        對網上另一主機的任何通訊都是在「物理」網絡接口上傳輸,並

        不會引起數據傳輸到「自環」網絡上。



        使用 ping 指令檢測 TCP/IP 協議層架的硬件部份。



        #ping hostname



        或



        #ping IP-address



        如果 ping 指令失敗,則改用 netstat -i[n] 審核網絡接口。



        了解 netstat -i 的輸出



        如果遠地主機上使用 ping 之後,Opkts 和 Ipkts 仍然是零,那麼,

        網絡接口大概使用了不同的中斷(Interrupt),而不是它的設備

        驅動程序。



        如果 Ipkts 不是零,而 Opkts 等於 Oerrs,那麼,網卡的 I/O 地址

        可能不正確。如果 Ipkts 是零,而 Opkts 等於 Oerrs ,那麼,可

        能是網絡電纜連接的不合格。



        通過用 Opkts 除 Cloois ,再用 100 乘所得的結果,計算沖突的百

        份比。如果沖突的百份比少於百份之五到十,那麼,所有網絡接

        口是有效運行。



        如果 ping 失敗,並查出網絡接口有問題,那麼,就該驗證網絡介

        質操作。



        調整 TCP/IP 的核心參數



        沒有足夠的流資源(Stream Parameter),網絡程序是不能進行

        通訊;流資源不充份的話,經常會導致較慢的吞吐率。



        要核查流資源,使用 netstat -m ;也可以使用 crash 指令考察流

        資源,在出現 crash 發出的提示符』>」時,打入」strstat」。



        如果在 FAIL 列的下面有不等於零的項目,那麼,同一行中的

        ITEM 的項目可能需要調整。如果 FAIL 列下的數目大於或等於

        TOTAL 列中數目的百份之十,該資源每次應增加一或二,但不

        能將該數目加倍。



        由於流資源使用 RAM,當增加流資源時,應加倍小心。用戶亦可

        以使用 configure 或 sysadmsh 增加特定的流資源,重新連接核心

        或重新引導。



        限制通過 ftp 訪問系統的權限



        對於不想令其使用 ftp 跨網訪問系統的人,可以通過建立

        /etc/ftpusers 文件和設立系統帳戶名字的方法,阻止他獲得利

        用 ftp 訪問系統的權限。



        如果 /etc/ftpusers 不存在的話,先要建立。在單獨的行上,加

        上系統帳戶的名字,表明不能從網中其它系統使用 ftp 訪問該系

        統,在安全系統中,不允許 ftp 訪問用戶權和 uucp ,列出任何其

        限制使用 ftp 的用戶名字。







--



第十二講:使用 TCP/IP







                           Santa Cruz Operation,Inc.



        向遠地註冊的能力非常有用,它讓我們不用到遠地系統所在處,

        就能運行遠地主機上的程序,執行遠地系統管理,有兩道指令可

        用於遠地主機註冊,就是 rlogin 和 telnet。



        使用 rlogin 向遠地主機註冊



        rlogin 允許向具有 UNIX 作業系統和 TCP/IP 協議的任何系統

        註冊,而 rlogin 只能註冊到 UNIX 作業系統環境,指令如下:



        $rlogin remot-host-name



        要避免 rlogin 因沒有提供遠地主機上的同名帳戶,可以使用下述

        指令:



        $rolgin remote-host-name -1 remote-user-name



        -1 選項用於指出遠地用戶帳戶。



        要中止 rlogin ,則要打入 ~.,並按 Enter/Return>鍵;亦可使用

        logout 或 exit 指令。



        使用 Telnet 向遠地主機註冊



        不管其作業系統類型,只要能支援 TCP/IP 協議,都可以使用

        Telnet 指令,允許註冊。



        $telnet hostname



        或



        $telnet ip-address



        使用 ftp 複製或傳送文件



        ftp(File Transfer Protocol)允許用戶對遠地主機複製文件,

        用戶毋須考慮作業系統類型,即能向或從任何具有 TCP/IP 的系

        統複製文件。



        ftp指令允許複製目錄中的一個文件或所有文件,但不能複製多層

        次目錄。使用 ftp時,必需在遠地主機上設有帳戶。



        當 ftp 註冊到遠地系統時,並未得到 shell ,而是通過 ftp 指令

        解釋程序同遠地主機進行通訊。



        $ftp remote-host-name



        或



        $ftp remote-host-ip-address



        一旦註冊成功,就會出現 ftp 指令解釋程序的提示。



        ftp>



        用戶可以在此,使用打開指令連接主機。



        ftp>open remote-host-name



        複製某一文件回自己的系統中,則用:



        ftp>get filename



        如果只想傳送某一文件往遠地主機,則用:



        ftp>put filename



        需要複製遠地主機的全部文件進入自己的系統內,可以使用如下

        指令:



        ftp>mget *



        相反,如果想傳送自己的文件往遠地主機,則使用如下指令:



        ftp>mput *



        rcmd



        rcmd 允許用戶不必向遠地主機註冊,而直接運行該主機上的指令,

        實際上,也要進行註冊,只不過用戶毋須作其它操作。當使用 rcmd

        在遠地主機上運行任何指令時,其輸出的默認設備就會被更改為

        終端。



        $rcmd remote-host-name man sh



        請求特殊終端處理的指令,將不含設備自身的功能,因為對遠地

        指令沒有定義終端的類型,要求在遠地主機上配置受托訪問。



        要列表輸出遠地主機上磁盤的利用情況,則使用下述指令:



        $rcmd remote-host-name df



        要列表輸出遠地主機上的目錄,使用如下指令:



        $rcmd remote-host-name ls /usr/games



        要把遠地主機上的文件備份到遠地主機上的袖珍磁帶內時,指令

        如下:



        #rcmd remote-host-name tar cvf /dev/rct0/usr



        或



        #rcmd remote-host-name "find /usr -depth -print|cpio -oc

        > /dev/rct0



        要把本地系統上的文件備份到遠地主機上的袖珍磁帶內時,使用

        下述指令:



        #tar cvf -/usr|rcmd remote-host-name dd of=/dev/rct0



        或



        #find /usr -depth -print|cpio -oc|rcmd remote-host-name

        dd of=/dev/rct0



        另一方面,如果要把遠地主機上的文件備份到本地系統上的袖珍

        磁帶內時,可以使用如下指令:



        #rcmd remote-host-name "tar cvf -/usr" > /dev/rct0



        或



        #rcmd remote-host-name "find /usr -depth -print|cpio -oc"

        > /dev/rct0