




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第11章UNIX在當(dāng)前日益廣泛應(yīng)用的異構(gòu)型計算環(huán)境中,互操作性是很重要的。 WindowsServiceforUNIX通過提供互操作組件,提供了法,可以把Windows集成到現(xiàn)有的本章要求讀者已經(jīng)閱讀并理解了本附錄B“UNIX互操作性概念”要點本書的是在 發(fā)布Windows2000以前,當(dāng)前的ServicesforUNIX版本是WindowsNT4.0所使用的1.0版。關(guān)于如何得到這些新特征的更新信息,請?關(guān)于Windows文件權(quán)限,NTFS和KAT的信息,請參見第1卷《服務(wù)器使用指南》關(guān)于TCP/IP的信息,請參見第3卷《TCP/IP連網(wǎng)技術(shù)》中的 TCP/IP簡介”ServicesforUNIX支持下列UNIXDigitalHewlett-PackardHP-UXSunSolarisSPARCServicesforUNIX網(wǎng)絡(luò)文件系統(tǒng):對于基于WindowsNT的計算機上的用戶,NFS服務(wù)器和客戶軟件使他們可以UNIX計算機上的文件,并使UNIX用戶可以基于WindowsNT的計算機上的注 ServicesforUNIX并不提供打印服務(wù)。Windows2000提供了固有 net客戶程序和服務(wù)器可以讓用戶登錄到基于WindowsNT的口令同步:對于基于WindowsNT的計算機和基于UNIXServicesfor為其同步口令。如果對Windows口令進(jìn)行修改,則這種修改會自動擴展到基于UNIXUNIX實用程序和編碼:ServicesforUNIX提供UNIX命令和Korn外殼,用戶可以Windows和UNIX平臺上使用它們,用于自動化某些公共進(jìn)程和管理任務(wù)。網(wǎng)絡(luò)文件系統(tǒng)定義在IETF(InternetEngineeringTask ,因特網(wǎng)工程部)的RFC1094RFC1813中,這是通過網(wǎng)絡(luò)進(jìn)行文件的一組協(xié)議。例如,客戶使用NFS來服務(wù)器上的文件。NFS使用客戶/服務(wù)器模型,它是基于過程調(diào)用(RPC)協(xié)議在客戶和服務(wù)器之間交換消息的法(在RFC1831、RFC1050和RFC1057中定義,NFS還基于外部數(shù)據(jù)表示(XDR),XDR協(xié)議是在異構(gòu)型系統(tǒng)之間進(jìn)行數(shù)據(jù)翻譯的法(在RFC1832和RFC1014中定義。服務(wù)器上的文件系統(tǒng)是在客戶上地加密的。對于客戶系統(tǒng)而言,文件系統(tǒng)看起來就像是駐留在本地,并且可以使用普通的資源(如系統(tǒng)調(diào)用和程序)進(jìn)行。通過一,NFS提供了異構(gòu)型網(wǎng)絡(luò)間的互操作性。NFS提供文件服務(wù),這些特性允許主機相互NFS是一個協(xié)議,它可以減恢復(fù)系所帶的險,但它會響性能。一次之NFS請求都是冪等的,這樣子程序只需要完成一次動作,但刪除請求除外?,F(xiàn)在NFS有兩個版本:版本2(在RFC1094中描述)和版本3(在RFC1813中描述。4GB。文件大小指示符限定為32使用用戶報文協(xié)議(UDP)或傳送控制協(xié)議(TCP)NFS報文大小限定為最大8KB使用TCP或者UDP最大報文大小對UDP而言是64KB如果TCP在客戶和服務(wù)器方都受到支持的話,NFS版本3使用TCP作為它的網(wǎng)絡(luò)傳輸協(xié)議。TCP的優(yōu)點是比UDP要可靠一些,但它保持狀態(tài),所以在特定的環(huán)境中 UDP的性能要差一些ServerforServerforNFS(ServicesforUNIX1.0)是一個32位的基于Windows第11章UNIX服 程序,它是基于Windows的,被集成在WindowsNT中。在計算機、操作系統(tǒng)和網(wǎng)絡(luò)混合的環(huán)境中,ServerforNFS使用戶可以共享文件。ServerforNFS使運行Windows操作系統(tǒng)的計算機可以作為一個NFS服器。務(wù)過WindowsT接口來完成的。NFS的管理任務(wù)是通過配置實用程序完成的。ServerforNFS使用NFS協(xié)議,而該協(xié)議基于開放式網(wǎng)絡(luò)計算過程調(diào)用(ONC-RPC。來自客戶的調(diào)用看起來就像是在本地運行,而實際上它是在服務(wù)器上運行。開放式網(wǎng)絡(luò)計算外部數(shù)據(jù)表示(ONC-XD)協(xié)議保證NFS客戶和NFS服務(wù)器之間可移植的數(shù)據(jù)傳輸。NFS及其相關(guān)協(xié)議是由SunMicrosystems11-1應(yīng)用程 件安
盤緩
理程傳輸ServerforNFS
圖11-1NFS體系結(jié)文件:在把ServicesforUNIX安裝到WindowsNT服務(wù)器上以后,該服務(wù)器就可以使NFS客戶能夠Windows和文件。控制向客戶提供了四種權(quán)限:讀、讀寫、根和不允許。單個文件權(quán)限是由WindowsNT文件權(quán)限控制的。全局權(quán)限:NFS客戶可以分組。NFS共享可以使用客戶的名稱進(jìn)行控制。這是控制一組計算機的的便方法??捎玫臋?quán)限包括:不允許、只讀、讀/寫和根。安全性權(quán)限:ServerforNFS可以配置NTFS安全性權(quán)限,其中包括UNIX和用戶和組的映射:對于從UNIXWindowsNT文件而言,為了給這些文件提供安全性,ServerforNFS要求系統(tǒng)管理員把UNIX用戶或組帳號映射成WindowsNT用戶帳號或者組帳號。然后,用戶在UNIX所擁有的權(quán)限就與他們在WindowsNT下具有的權(quán)限一樣了。此外,安全性要求不太嚴(yán)格的站點就需要繞過映射過程,它們把所有的UNIX用戶都當(dāng)成用戶來對待。 信息的緩存:可以緩存包含文件屬性的索引節(jié)點和包含最近路徑的名稱查找信息。在NFS服務(wù)器上,這種緩存可以減少向服務(wù)器發(fā)出系統(tǒng)調(diào)用的次數(shù),這可以提高性能。緩存的大小可以使用ServerforNFS進(jìn)行與配置。符號:ServerforNFS經(jīng)過配置以后可以支持符號。NFS客戶的文件鎖定(建議鎖定)NFS客戶和WindowsNT用戶的文件鎖定(委托鎖定。文件名大小寫問題的解決:在NFS文件名與NTFS、文件分配表(T)或者CD-ROM文件系統(tǒng)(CDFS)文件名稱之間,由于大小寫敏感問題會引起一些,ServerforNFS經(jīng)過配置以后,可以解決這方面的問題。文件名稱可以轉(zhuǎn)化為大寫或小寫,或者忽略大小寫??梢允筓NIX字符翻譯成另一個字符序列。例如,基于Windows2000的計算機不允許文件名稱中包含冒號,但可以使用轉(zhuǎn)換文件來選擇一個合法字符的序列。在轉(zhuǎn)換過,當(dāng)基于UNIX的計算機的某個文件名稱中含有冒號時,就可以使用這個字符序列替換冒NFS版本2和版本3:ServerforNFS可以使用任意一個NFS使用TCP或者UDP的數(shù)據(jù)傳送:在缺省情況下,ServicesforUNIX使用UDP來進(jìn)行數(shù)據(jù)傳送。ServerforNFS經(jīng)過配置以后可以使用TCP,TCP更為可靠,但開銷也大一些。排錯工具:ServicesforUNIX提供了showmount和rpcinfo兩個命令,可以用于排除NFSforforNFS(ServicesforUNIX1.0)允許運行WindowsNT的計算機充當(dāng)NFS客戶,并且位于運行NFS的服務(wù)器上的和文件。NFS客戶把一個安裝在NFS服務(wù)器forNFS 導(dǎo)出選項以及文件本身的權(quán)限決定了用戶對某 安裝選項:在UNIX下,用戶或系統(tǒng)管員通發(fā)出mount命令而與文件系統(tǒng)進(jìn)行連接。取決于UNIXServicesforUNIX支持的掛裝選項主要用于確定如下一些參數(shù):安裝的類型,安裝類型共有兩種:硬安裝或軟安裝。硬安裝在服務(wù)器停止響應(yīng)或者出錯時會不停地重新發(fā)出系統(tǒng)調(diào)用,而軟安裝則不會這么做。對于那些使用讀/寫導(dǎo)出的文件系統(tǒng),或者包含可執(zhí)行文件的文件系統(tǒng),為了保證數(shù)據(jù)的一致性,這些文件系統(tǒng)需要硬安裝。在時間用完之前,RPC如果NFS服務(wù)器沒有響應(yīng),則重新發(fā)送RPC調(diào)用的數(shù)量(只對軟安裝有效文件鎖定,它允許某用戶獨占地一個文件。如果所有的NFS客戶都使用了文件鎖定,緩存NFS客戶上的讀數(shù)據(jù),它可以減少調(diào)用NFS第11第11章UNIX服 緩存NFSNFSUID。在NFS使用NIS服務(wù)器的標(biāo)準(zhǔn)UNIX驗證。對于在NIS服務(wù)器上了合法登錄和口令的用戶所提供的驗證方法。驗證。這種驗證方法使 fsd守護(hù)進(jìn)程來驗證NFS客戶計算機的登錄和口令:ServicesforUNIS允許重命名或刪符號對于 forNFS而言如果它要找到符號的目標(biāo),而該目標(biāo)所處的文件系統(tǒng)與當(dāng)前安裝的文件系統(tǒng)不同的話,則在特殊配置文件中必須存在一個項目,它可以把文件系統(tǒng)映射為那個文件系統(tǒng)的服務(wù)器名稱或者共享名稱。如果配置文件中沒有到這樣的目,則 forNFS將假定目標(biāo)文件位于同一臺計算機上。 戶可以通過Windows資源管理器瀏覽 forNFS支持改變文件上的UNIX權(quán)限文件名稱大小寫問題的解決:因為UNIXWindows雖保留大小寫但卻忽略它,所以ServicesforUNIX提供了用于解決命名的選項。ServicesforUNIX提供了showmount和rpcinfo兩個命令,可以用來診斷NFS包含七個協(xié)議層,對應(yīng)到開放系統(tǒng)互連 OSI)模型的各個層表11-OSI層和NFSOSINFS表示會話傳輸TCP、網(wǎng)絡(luò)數(shù)據(jù)鏈路以太物理以太物理層控制著數(shù)據(jù)是怎樣通過網(wǎng)絡(luò)進(jìn)行物理傳輸?shù)?。?shù)據(jù)鏈路層提供了組合到幀中的數(shù)據(jù)的傳輸。以太網(wǎng)是這兩層的標(biāo)準(zhǔn)實現(xiàn)。IP必須把報文發(fā)送到正確的目的地。它并不關(guān)心數(shù)據(jù)的可靠性和數(shù)據(jù)的順序,但它可以把太大的報文拆開,網(wǎng)際協(xié)議使用唯一的IP地址來標(biāo)傳輸層負(fù)責(zé)數(shù)據(jù)流動和數(shù)據(jù)的可靠性,它是通過使用UDP或者TCP傳送控制協(xié)議(TCP)提供了數(shù)據(jù)報文可靠的傳送,了它們的順序,它是有狀態(tài)的。TCP可以保存信息的順序,并重新發(fā)送丟失的數(shù)據(jù)。對于類似文件傳輸?shù)拈L網(wǎng)絡(luò)連接來說,該協(xié)議是最理想的。用戶數(shù)據(jù)報協(xié)議(UDP)是一個簡單的無連接協(xié)議,它并不確保數(shù)據(jù)報的順序和完整性,是的于用短。會話層負(fù)責(zé)在設(shè)備之間交換消息,NFS使用過程調(diào)用(RPC)協(xié)議表示層負(fù)責(zé)在異構(gòu)型系統(tǒng)之間交換數(shù)據(jù)類型。NFS使用外部數(shù)據(jù)表示(XDR)協(xié)議。該協(xié)議指定了在發(fā)送數(shù)據(jù)以前需要把它轉(zhuǎn)化為什么格式。一旦接收到數(shù)據(jù)以后,該數(shù)據(jù)又會被重新轉(zhuǎn)換。關(guān)于網(wǎng)絡(luò)OSI模型的信息,請參見本套書第3卷《TCP/IP連網(wǎng)技術(shù)》中的“OSI模11.2.5過程調(diào)用協(xié)過程調(diào)用(RPC)協(xié)議使計算機可以發(fā)出一個系統(tǒng)調(diào)用,而該系統(tǒng)調(diào)用將在網(wǎng)絡(luò)中的另一臺計算機上執(zhí)行。過程調(diào)用協(xié)議基客戶/服務(wù)器模型??蛻舭l(fā)出過程調(diào)用,該調(diào)用看似好像是本地的,但實際上卻是在計算機上執(zhí)行。在此過,過程調(diào)用被起來,并通過網(wǎng)絡(luò)傳送到服務(wù)器上。然后這些數(shù)在服務(wù)器上解開,并開始運行,然后再把結(jié)果好,發(fā)送回客戶,在客戶上,又把它轉(zhuǎn)化為客戶的過程調(diào)用的返回值。RPC可以使用UDP或者TCP。因為RPC調(diào)用比較短,所以UDP更好一些。正因為如此,所以RPC調(diào)用中必須包含足夠多的信息,以便可以獨立地運行,這是因為UDP并不按照順序傳送報文。此外,客戶還可以指定一個時間限制,在該時間限制以后,如果調(diào)用還沒有成功完成,則客戶可以重新發(fā)送,或者發(fā)送到另一個服務(wù)器。定義RPC服務(wù)需要用到四個值:程序編號、RPC協(xié)議的版本號、過程編號(通常是順序分配的),以及使用TCP還是UDP作傳輸協(xié)議。每個RPC服務(wù)都被賦予一個程序編號。RPC提供了一組過程調(diào)用程序。每個程序都由一個程序編號來標(biāo)識。例如,NFS這個程序的如果RPC服務(wù)是在UNIX下啟動的,它會使用portmapper守護(hù)進(jìn)程來服務(wù)。它RPC程序編號、版本號,并提供一個TCP或者UDP的端,它在該端口偵聽輸入的請求。為了顯示在特定計算機上的所 RPC程序,可以使用rpcinfo命令。通過使用或者rpcbind,可以在文件中列出任意RPC程序以及它們的IP端。第11章UNIX服 表11- 列出在特定主機上的所有RPC程-u<hostprogram>[ver]< 不論是否接收到響應(yīng),通過使用UDP和報告向目標(biāo)主機和RPC程發(fā)送null命-t<hostprogram>[ver]< 不論是否接收到響應(yīng),通過使用TCP和報告向目標(biāo)主機和RPC程發(fā)送null命-b<programversion> 對于特定的程序和版本,使用UDP發(fā)出RPC廣播,并列出所有響應(yīng)的主機rpcinfo在診斷RPC問題時非常有用。RPC問題有:服務(wù)器是否活躍,portmapper守護(hù)進(jìn)程的表11-3和表11-4列出了RPC調(diào)用,NFS客戶可以向服務(wù)器發(fā)出這表11- RPC調(diào)用名 創(chuàng)建文 獲取文件屬 創(chuàng)建到文件 查詢文件名 創(chuàng) 從文件 從符號 刪除文 重命名文 刪 設(shè)置文件屬 獲取文件系統(tǒng)的屬 創(chuàng)建符 寫文表11- RPC調(diào)用名 檢查用權(quán)創(chuàng)建文把緩沖的數(shù)據(jù)提交給穩(wěn)定設(shè)獲取文件系統(tǒng)的屬獲取文件系統(tǒng)的有關(guān)信 獲取文件的屬 創(chuàng)建到文件 查找文件名 創(chuàng)RPC調(diào)用名 創(chuàng)建特殊設(shè)備節(jié) 抽取POSIX 從文件 擴展的 從符號 刪除文 重命名文 刪 設(shè)置文件的屬 創(chuàng)建符 寫文當(dāng)為NFSServicesforUNIX服務(wù)器將產(chǎn)生一個線程,用于處理該請求。每個線程可以處理一個請求,而一個大的線程可以允許服務(wù)器并行地處理的請求。用戶設(shè)置多少線程,應(yīng)該由用戶的性能需求以及它們對運行在該系統(tǒng)上的其他應(yīng)用程序的影響來決定。在該中,processors是指NFS服務(wù)器上其他處理器的數(shù)目。通過使用這個,可以算出雙處理器的服務(wù)器一般使用20個線程。線程的最大數(shù)目是512。NFS使用PC/NFS守護(hù)進(jìn)程(PCNFSD),PCNFS是一個用戶驗證守護(hù)進(jìn)程。用戶在經(jīng)過PCNFSD的驗證以后,被分配一個用戶ID(UID)和組ID(GID個UNIXNFS服務(wù)器上UID和GID均相同,則只需要把一個服務(wù)器指定為 服務(wù)器。 FSD把戶所提供的名稱和口令與/etc/passwd文件的內(nèi)容進(jìn)行比較。如果發(fā)現(xiàn)了一個匹配,則PCNFSD服務(wù)器返回對應(yīng)的UID和GID。如果驗證沒有實現(xiàn)(就有PCNFSD,也沒有NIS,則forNFS將給用戶分配一UID“-2GID“-1NFS服務(wù)器配置了匿名,則用戶可以安裝和文件,但只能那些只讀的文件使用showmount命令查詢特定主機上的安裝守護(hù)進(jìn)程,以便從該主機查找到有關(guān)安裝了哪客戶的信息。安裝守護(hù)進(jìn)程負(fù)責(zé)從NFS客戶接收安裝請求,通過把它與/etc/exports文件中列出的導(dǎo)出文件系統(tǒng)進(jìn)行比較,來確認(rèn)該請求的。如果該請求是合法的,則為所請求的創(chuàng)第11章UNIX服 表11- 列出客戶主機名稱和安裝(主機)列出客戶所安裝顯示NFS服務(wù)器的導(dǎo)出列因為showmount命令依賴于安裝守護(hù)進(jìn)程來提供信息,在某些特定的時間,安裝的列表可能是不完全的。此外,showmount會把它的輸出進(jìn)行排序和處理,以便刪除掉重復(fù)的消息,所以可以多次安裝,但只能被列出一次。如果想了解信息,請參見ServicesforUNIX的通過理解本節(jié)將要介紹的一些NFS特征,可以幫助用戶優(yōu)化NFS的性UNIX使用索引節(jié)點來記錄有關(guān)文件的信息。索引節(jié)點有一個唯一的ID號,每個文件都有一個索引節(jié)點。一個文件可以具有多個文件名(取決于的數(shù)目),但它只能有一個索引NFS服務(wù)器在NFS客戶請求上應(yīng)用下列文件命名規(guī)則:文件名稱過255個字符|( 每個文件都會關(guān)聯(lián)一組權(quán)限,這些權(quán)限決定了誰可以該文件,以及它們可以對該(具有超級用戶權(quán)限或根權(quán)限的人可以修改分配給某文件的權(quán)限。WindowsNT和UNIX在給文件分配權(quán)限時所使用的機制是不同的。WindowsNT使用由控制列表(DACL)來給文件分配權(quán)限,而UNIX使用模式的概念。Servicesfor UNIX文 權(quán)限基于試圖執(zhí)行動作的用戶的類型(用戶、組或其他),允許用戶讀寫和執(zhí)行文件。給用戶的權(quán)限適用于文件的所有者,而給組的權(quán)限則適用于該文件所屬的用戶組的每一個成員(創(chuàng)建該文件的人的主組擁有該文件,分配給其他的權(quán)限適用于既非所有者也非該文件的組的成員那樣的用戶。表11-6文件權(quán)限的許可權(quán) 允許讀文件或者瀏 允許創(chuàng)建、修改或刪除文件執(zhí) 允許執(zhí)行一個可執(zhí)行文件,或者瀏UNIX通過用戶ID(UID)和組ID(GID)UID,具有一WindowsNT通過向DACL中加入一個控制項(ACE,把權(quán)限分配給某文件。ACE包含了授予特定用戶和組的權(quán)力。ServicesforUNIX基于文件的所有者以及相關(guān)聯(lián)的ACE,把WindowsNTDACL映射成UNIX的模式。為了完成這個工作,必須使用ServerforNFSUserManager,把UNIX用戶和組正確地映射為適當(dāng)?shù)腤indowsNT用戶和組。在基于WindowsNT的計算機上創(chuàng)建用戶johndo,并加入到Users組中。在UNIX計算機上johndo用戶將被創(chuàng)建并加入到staff組中。在ServerforNFS中,WindowsNT用戶johndo被映射為UNIX用戶johndo,而Users組也將映射為UNIX組staff。在運行ServicesforUNIX的計算機上的導(dǎo)出NFS文件系統(tǒng)上,用戶johndo將取得文件letter.doc的所有權(quán),并為自己和Users組授予FullControl權(quán)限,為Everyone組授予List權(quán)限。當(dāng)用戶johndo從基于UNIX的NFS客戶在運行ServicesforUNIX的計算機上的NFS文件系統(tǒng),并在文件letter.doc上運行l(wèi)s-l命令,則他將rwxrwxr-x1johndostaff2116Jul114:54最開頭的九個字符(三個字符為一組)表示所有者、組和其他人的讀、寫和執(zhí)行權(quán)。所有者為rwx;組為rwx而他的限為r-x,中間的一條短線表明沒有這個權(quán)限。接下來是硬連接的數(shù)目(1、用戶名稱(johndo、組名稱(staff、文件大小(2116(Jul114:54,以及文件的名稱。注意當(dāng)文件的所有者是WindowsNT組的Administrators組時,是一種比較特殊的情況。如果文件的所有者是Administrators,那么ServerforNFS把所有者映射為基于UNIX的計算機上的UID0(根。如果文件的所有者沒有通過ACE把顯式的權(quán)限授予文件,則文件列表將顯示所有者對文件沒有權(quán)限(模式0)。在ServerforNFSConfiguration框中有一個SecurityPermissions選項卡,通過使用該選項卡上的ImplicitPermissions復(fù)選框,ServerforNFS管理者可以改變以上的行為,之后ServerforNFS將把所有者所屬的所有組的權(quán)限與Everyone組當(dāng)文件是在WindowsNT中創(chuàng)建時,則該文件將會繼承它的 的權(quán)限。如果從客戶在ServicesforUNIX服務(wù)器上運行chgrp或 od命令,則ServerforNFS的缺省行為將第11章UNIX服 刪除所有現(xiàn)存的DACL項目,并把三個NFS實體(所有者、組和其他)的項目寫到everyone組。這樣一來,該文件將丟失繼承的權(quán)限。通過在SecurityPermissions選項卡中選中AugmentDACL,ServerforNFS管理員可以改變這一行為。如果選中了AugmentDACL,則ServerforNFS 符號是一個文件,它指向(也就是說,包含路徑)另一個文件或。符號可以指向網(wǎng)絡(luò)上請的任何UNIX文件系統(tǒng)上的文件或。系統(tǒng)通過讀符號找到的文件,然后再所指示的文件或。例如,當(dāng)某文件必須從多個時,符號是有符號可以指向絕對路徑或相對路徑,因為符號是以在客戶的文件系統(tǒng)上的位置來進(jìn)行解析的,所以有可能符號會指向一個客戶系統(tǒng)上不存在的文件或,或者指向尚未加密的中的文件。這樣的文件是不可的。為了確定符號的位置,可以向服務(wù)器發(fā)出RPC調(diào)用,它會返回一條路徑,該路徑在客戶上解釋,但它可能會指向客戶尚未安裝的文件系統(tǒng)。如果客戶安裝一個包含符號的 forNFS可以檢查一個本地手工組裝的配置文件,以便找到符號所指向目標(biāo)的例如,基于UNIX的NFS服務(wù)器的系統(tǒng)管理員server1創(chuàng)建了一個符號,命名為“public”, /server2。ls-l命令將會顯示如下結(jié)果:lrwxrwxrwx2rootother8Jul116:25public->/server forNFS的計算機上,或者在它允許的網(wǎng)絡(luò)文件系統(tǒng)上,系統(tǒng)管理server2—當(dāng)運 forNFS的計算機連接到server1上的導(dǎo)出文件系統(tǒng)時,它可以解析該符(public,然后創(chuàng)建 \server2:\sharename的NFS連接,這使得客戶可以瀏覽位于服務(wù)文件鎖定使得某進(jìn)程可以獨占地一個文件或者該文件的一部分。文件鎖定是在服務(wù)器和客戶上實現(xiàn)的。在某次之后,系統(tǒng)重新啟動,試圖把鎖定狀態(tài)恢復(fù)到以前的狀況。如果客戶,則服務(wù)器將釋放該鎖。然而,在客戶重新啟動以后,它有一段較長的時間可以重新定義該鎖。如果某文件被鎖定,則緩沖區(qū)高速緩存將不會為那個文件所使用。每個寫請求將會立即發(fā)送到服務(wù)器。在BSDUNIX下與系統(tǒng)VUNIXBSDUNIX和系統(tǒng)VUNIX是兩個UNIX版本,當(dāng)前大多數(shù)UNIX操作系統(tǒng)都是從它們發(fā)展而來的。BSD的文件鎖定制只適用于本地文件,而系統(tǒng)V的鎖定是從NFSRPC鎖定守護(hù)進(jìn)程lockd和一個狀態(tài)監(jiān)視守護(hù)進(jìn)程statd,statd則為NFS鎖定監(jiān)視狀態(tài)提供和恢復(fù)的功能。鎖定守護(hù)進(jìn)程在客戶和服務(wù)上運行,以處理鎖定請求和鎖定釋放。網(wǎng)絡(luò)鎖定管理器(NLM)協(xié)議定義了鎖定守文件緩存負(fù)責(zé)經(jīng)常把使用的信息在快速內(nèi)存中。UNIX緩沖區(qū)高速緩存是系統(tǒng)內(nèi)存的一部分它是為近的文本而分配。在NFS中,文件緩存用在客戶上可以減通過網(wǎng)絡(luò)進(jìn)行的RPC請求,使用在服務(wù)器上可以提高吞吐率。盡管存在著客戶方和服務(wù)器方的緩存,但NFS可以保證數(shù)據(jù)的一致性。當(dāng)打開文件準(zhǔn)備進(jìn)行讀或者讀/,NFS重定向器會使用WindowsNT系統(tǒng)緩存。當(dāng)數(shù)據(jù)寫入到文件時,它還會寫入到緩存中,將來這些數(shù)據(jù)將被刷新到重定向器中。如果在把數(shù)據(jù)傳輸?shù)椒?wù)器時發(fā)生了不可恢復(fù)的網(wǎng)絡(luò)錯誤,則寫請求將失敗。在這種情況下,用戶將會看到一條系統(tǒng)消息。WindowsNT高速緩存管理器還可以進(jìn)行預(yù)讀,預(yù)讀是指預(yù)先讀入下一個文件塊,并把它NFS重定向器支持文件鎖定,使用網(wǎng)絡(luò)鎖定管理員(NLM)協(xié)議來確保數(shù)據(jù)的一致性。如在ServerforNFS注意 Windows2000提供了 netc.exe。信息,請參見Windows2000ServerH客戶程序軟件允許計算機與計算機相連接。net服務(wù)器軟件允許net客戶連接ServicesforUNIX1.0的net服務(wù)器和客戶可以相互接受連接,并連接到對方。還可以接受來自基于UNIX的net客戶和服務(wù)器的連接,并真正與它們進(jìn)行連接。UNIX用戶可以Windows服務(wù)器,并運行基于字符的應(yīng)用程序。在ServicesforUNIXnet服務(wù)器上,可以運行UNIX外殼,例如korn外殼。系統(tǒng)管理員可以使用ServicesforUNIXnet,對Windows和Servicesfor 從Windows管理UNIX,從UNIX管理Windows,從Windows管理Windows net服務(wù)器令 在ServicesforUNIX net客戶和ServicesforUNIX VT100、VT52、 和ANSI終端仿真 netServer的Windows計算機和使用 net會話所使用的NTLM驗證。通用 第11章UNIX服 net使用在RFC854中定義的NET協(xié)議,通過網(wǎng)絡(luò)連接到運行net服務(wù)器軟件的計算機。它提供了雙向通信工具,允許終端設(shè)備和面向終端的進(jìn)程之間相互通信。net使用TCP來傳送數(shù)據(jù)以及net控制信息。net的缺省端口是TCP端口23。RFC854中:“net協(xié)議主要是基于三個思想:第一,‘網(wǎng)絡(luò)虛擬終端’的概念;第二,網(wǎng)絡(luò)虛擬終端(NVT)是基于終端的一種表示,它提供了一個標(biāo)準(zhǔn),在 NVT就允許生用戶指定的字符,它還包括一個,可以用于顯示指定的字符。客戶和服務(wù)器可以把們本地的設(shè)備映射到NVT的特征和處理規(guī)定,并假設(shè)其他服務(wù)器和客戶也會這么做使用net命令時,可以加上,也可以不加計算機名稱。如果沒有使用計算機名稱,net提供命令模式,并給用戶一個提示符。net的激活將導(dǎo)致創(chuàng)建一個到服務(wù)器的連接,以及到net守護(hù)進(jìn)程tlntsvr的連接。在連接創(chuàng)建以后,net進(jìn)入輸入模式。取決于計算機的不同,從客戶通過使用一個轉(zhuǎn)義序列,用戶可以隨時net命令模式。終端仿真程序為此提供了一個轉(zhuǎn)義序列。(ServicesforUNIXnet的轉(zhuǎn)義序列是CTRL+A)在命令行上,用戶可以設(shè)置net選項,以改變net行為。在輸入命令以后,通過在 在NVT所提供的缺省功能之外,客戶和服務(wù)器還可以加上一些附加的選項,net選項在大量的netRFC擴展中都有介紹。RFC855描述了用于指定net選項的機制,每個net選項都選項通常是在net會話開始時發(fā)出的,但也可以在會話的過申請。選項是通過交換選項代碼序列而進(jìn)行協(xié)商的。其中一方可以申請選項,而另一方則可以同意或者。協(xié)商語法WILL和DO,以及WON’T和DON’T。前兩者表示申請或者同意提供選項,而后兩者則完成相反的工作。選項的協(xié)商則潛在地導(dǎo)致一個無法終止的驗證環(huán)。ServicesforUNIX支持以 終端仿真,在終端模式中,程序允某計算機充當(dāng)個特定的終端,所支持的終端類型包括:V 、VT100、VT52以及ANSI。ServicesforUNIXUNIX驗證,它使用到UNIX登錄和口令。口令是作為明文發(fā)送的,這可能會造成安全上的在ServicesforUNIX net 和ServicesforUNIX netServer之間的NTLM驗證。NTLM使用直達(dá)式驗證,即安全性證明(、用戶名稱、散列口令)是通過域控制器傳送的,以便建立起信任域之間的連。用戶并不會提示要求給出登錄帳號和口令。這種方法是與indows安全性集成在一起的。通過使用NTLM,用戶可以使用net來連接計算機,并那個計算機上的資源。然而,如果沒有再次經(jīng)過驗證,用戶不能網(wǎng)絡(luò)上的其他資源。關(guān)于NTLM的信息,請參見本套書 2卷《部署規(guī)劃指南》中的“規(guī)劃分布式安全”ServicesforUNIX1.0口令同步功能可以用來同步運行Windows和運行UNIX的計算機之間的口令,擴展這兩個系統(tǒng)之間的互操作性??诹钔杰浖诨赪indows的計算機和基于UNIX的ServicesforUNIX的PasswordSynchronization組件允許系統(tǒng)管理員可以配置一個網(wǎng)絡(luò),該網(wǎng)絡(luò)由基于Windows的計算機和基于UNIXWindows口令作修改,則該次修改將會自動擴展到基于UNIX的計算機中的口令文件里所對應(yīng)的用戶名稱。ServicesforUNIX在經(jīng)過配置以后,可以把口令修改從基于WindowsNT的計算機發(fā)送到基于UNIX的計算機。發(fā)送的口令修改可以采取明文發(fā)送,也可以用密文發(fā)送。所有的用戶口令都必須遵守有效的Window口令規(guī)則,同時還必須遵守UNI的口令規(guī)則。所以,用戶在選擇口令時,必須使用兩個規(guī)則集合的交集。ServicesforUNIXPasswordSynchronization從Windows到UNIX使用ServicesforUNIX所提供的守護(hù)進(jìn)程的三元DES加密口令同步,在文件/etc/passwd中用于修改口令的加密密鑰,以及網(wǎng)絡(luò)信息服務(wù)(NIS)或NIS+(加密的方法。在實現(xiàn)ServicesforUNIX用戶名稱和口令:在基于Windows的計算機上和基于UNIX的計算機上,用戶名稱和口令ServicesforUNIX1.0forWindowsNT4.0,則所有的WindowsNT域控制器都需要安裝ServicesforUNIX,并同時安裝PasswordSynchronization組件。如果只在主域第11章UNIX服 控制器(PDC)上安裝了ServicesforUNIX,并且它出錯了,則后備域控制器(BDC)將被提升為PDC。如果這個域控制器沒有安裝ServicesforUNIX和PasswordSynchronization,則口令數(shù)據(jù)口令修改:在實現(xiàn)了口令同步以后,UNIX系統(tǒng)口令將不需要改變。如果改變了UNIX口令,同步方法:在一個UNIX組中的所有計算機都必須使用同一個口令同步方法。該方法可以是加密的,也可以是未加密的。UNIX組就是一組基于UNIX的計算機,其中的一臺計算機成功地從WindowsT接收到更新的口令。NIS/NIS+和口令同步:對于使用rlogin的NIS和NIS+,ServicesforUNIX不支持口令更新,所以UNIX計算機必須使用加密的口令同步化方法,它使用NIS或NIS+來管理獨立于系統(tǒng)的信息,NIS和口令修改擴散:如果把NIS域用作口令同步的模式,則ServicesforUNIXNIS/NIS+域主服務(wù)器,而該主服務(wù)器將把這次修改擴散到NIS/NIS+從服務(wù)都必須安裝ServicesforUNIX產(chǎn)品光盤所提供的ssod守護(hù)進(jìn)程。UNIX算機上的文件/etc/hosts和.rhosts,這樣rlogin就可以把passwd命令當(dāng)作根登錄來。此外,必須修改SunSparctations上的文件/etc/default/login,同時關(guān)閉console-onlyServicesforUNIX口令同步組件發(fā)送口令更新既可以采取明文的形式,也可以采取密文的形式。明文方法只有在不太注意安全性時才能使用。而密文方法則使用到本章后面將要介紹的三元DES加密。rlogin可用于改變UNIX計算機上的口令。口令同步服務(wù)使用具有根權(quán)限的登錄,以便passwd命令并更新用戶的UNIX口令。文件.rhost必須包含必需的計算機名稱、WindowsNT計算機的安全主機名稱(不是別名)/etc/hosts必須包含IP地。如SunSparcstation,則/etc/default/login,并關(guān)閉console-onlyroot注意rlogin不支持NIS和NIS+。如果用戶的網(wǎng)絡(luò)使用的是NIS或者NIS+,則必須使用加密如果選擇了密文形式,則UNIX系統(tǒng)管理員必須把ServicesforUNIX產(chǎn)品光盤上的ssod程序拷貝到基于UNIX的計算機上。該程序必須當(dāng)作守護(hù)進(jìn)程來安裝,并且配置為在計算機啟動時啟WindowsNT的計算機的口令通知。系統(tǒng)管理員必須選擇加密密鑰,并把它加入到基于UNIX的計算機以及基于WindowsNT的計算機上的文件ssod.config中,系統(tǒng)管理員可以使用WindowsNT-to-UNIXPasswordSynchronizationServiceServicesforUNIX提供了二進(jìn)制文件ssod的各種版本,有Solaris、DigtalUNIX以及HP-UX組中的每一個UNIX主機都必須使用同一個加密密鑰,加密密鑰必須滿足下列需求:特殊符號:(’@$^&_|,./)本節(jié)提供幾個UNIX文件,它們是ServicesforUNIX口令同步所使用的文件實例。login-id域包含用戶在登錄提示符下輸入的名稱。password域可以包含加密口令;如果口令在文件/etc/shadow中(該文件可以被根用戶所,則password域也可以包含一個特殊的標(biāo)記。UID域包含用戶的ID號。GID域包含用戶所屬組的ID號。user_information域主要用于提供有可能需要的其他一些有關(guān)用戶的信息。home-directory域包含用戶的主的絕對路徑,而s域則表示當(dāng)用戶登錄時運行的程序。若有必要,可以在這個域中指定特定的外殼(例如,/usr/bin/ksh用于指定Korn外殼,而/usr/bin/sh用于指定Bourne外殼文件/etc/shado中包含有關(guān)用戶口令的信息,該文件只能被超級用戶所。它有九個用冒號分開的域:login-idpasswordlastchg域包含從最一修口日之的數(shù);min域包含在兩次修改口令之間需要maxwarn域包含用戶接收到口令過期的警告inactiveexpire域則包含該登錄可以使用的最后日期,而flag域當(dāng)前還沒有使用到。group-name:password:group-ID:list-of-group-name域標(biāo)識該組。password域可以包含一個可選的加密口令。group-ID域包含組的數(shù)文件/etc/host列出了包括本機在內(nèi)的所有主機。這些主機共享網(wǎng)絡(luò),它可以用來在主機名稱和IP地址之間進(jìn)行映射。文件中的每一行都描述一個主機,它包含用空格分開的三個域:IP-addresshost-name文件/etc/host.equiv列出了一些主機和用戶,它們可以在本機上調(diào)用命令,而無提供口令(信任關(guān)系。文件.rhosts列出了用戶,它們可以在網(wǎng)絡(luò)上使用本地用戶帳號,而無需提供口令。文件.rhosts是一個隱含文件,位于用戶的主 中,必須由用戶所擁有。第11第11章UNIX服 host-nameuser-()來作通配符。在主機名稱或用戶名稱后面帶上一個加號,將從特定的主機或者特定用戶擁有帳號的所有主機把信任授予所有的用戶。通過在文件的開頭放置一個加號,將可以給網(wǎng)絡(luò)中每個主機上的每個用戶授予信任。這能必須使用。名稱被從文件中刪除了的主機或用戶將被信任。三元三元DES可以被ServicesforUNIX口令同步組件用于加密,它是數(shù)據(jù)加密標(biāo)準(zhǔn)(DES)的一UNIX實用程序和Korn外殼程通過使用UNIX實用程序和Korn外殼程序,用戶可以對WindowsNT和UNIX平臺之間的通用ServicesforUNIX1.0中包含orn外殼程序。該外殼程序是一個命令語言解釋器,可以充當(dāng)UNIX操作系統(tǒng)的接口。該外殼程序解釋命令,調(diào)用正確的程序,并返回標(biāo)準(zhǔn)的輸出。許多外殼程序還提供高級編程語言,可以與操作系統(tǒng)所提供的基本工具和功能相結(jié)合,用于完成復(fù)雜的任務(wù)。Korn外殼程序是由AT&T的DavidKorn開發(fā)的,它組合了C和Bourne外殼程序的許多必需的特征。Bourne外殼程序是由AT&T的StevenBourne開發(fā)的,它是第一個UNIX外殼程序。Bourne外殼程序提供了一個強大的編程語言。C外殼程序是另一種UNIX外殼程序,它提供了Bourne外殼程序表11-7外殼程序特C命令別XX命令歷史記XX命令行編X作業(yè)控XX外殼程編XXXUNIX操作系統(tǒng)還可以用到其他的外殼程序。Bash(BournAgainS)是Bourne外殼程序的一個擴展版本,它組合了Korn外殼程序和C外殼程序的一些特征,并常使用于Linux。Tcsh是C外殼程序的擴展版本,它包含命令完成、命令行編輯,以及擴展的歷史操作。使用KornServicesforUNIX中包含的Korn外殼程序?qū)崿F(xiàn)與標(biāo)準(zhǔn)的UNIXKorn外殼程序存在如下一些使用分號(而不是用冒號)來分隔PATHPATH中的當(dāng) 用;;或者;.;來表示,而不是用圓點 .)來表示啟動文件的名稱為profile.ksh,而不是.profile系統(tǒng)環(huán)境變量的啟動文件是 某用戶令歷史記錄的歷史文件是sh-histo文件,而不是sh-history如果系統(tǒng)管理員在netServer中把Korn外殼程序設(shè)置為缺省的外殼程序,則它將是用戶在通過netServicesforUNIX服務(wù)器時登錄進(jìn)的那個外殼程序。如果用戶想不登錄就使用Korn外殼程序,可以使用sh命令來它(ksh是標(biāo)準(zhǔn)的UNIXKorn外殼程序。環(huán)境變量一般包含名稱以及它的分配值。用戶可以定義變量,并在外殼程序中使用它們。其他變量稱為外殼程序變量,是由外殼程序設(shè)置的。變量名稱中可以包含字母、數(shù)字(但第一個字符不能是數(shù)字)以及下劃線。為了給變量賦予一個值,可以使用等號(=,但在等號兩邊export命令,令其他進(jìn)程也可以使用到該變量的值。Korn外殼程序在用戶登錄時運行配置文件file.ksh用于設(shè)置用戶指定的環(huán)境變量和終端模式(系統(tǒng)管理員也可以使用/etc/profile.ksh來為系統(tǒng)上所有用戶帳號設(shè)置系統(tǒng)范圍的變量。.profile中用到一些變量,包括PTH、HOME、VISUAL、EDITOR、SHELL、HISTSIZE、HISTFILE、PS1、PS2、CDTH。表118列出了ServicesforUNIXKorn外殼程序所使用的許多環(huán)境變量。關(guān)于如何獲取ServicesforUNIXKorn外殼程序所支持的外殼程序變量的一個完整列表,請查詢Servicefor表11-8Korn外殼程序環(huán)境變變量 擴展到上一次執(zhí)行令的參 cd命令所使用的查找路 如果設(shè)置了ENV的值,則在該值上將執(zhí)行參數(shù)替代。當(dāng)外殼程序時,命名文件首先執(zhí) 由最近出錯的子程序設(shè)置的一個 包含式,該方式定義了在文件擴展中忽略哪個文 fc命令的編輯 包含命令歷史記錄的文件(缺省值為sh_h(yuǎn)isto)的絕對路徑 在歷史記錄文件中令個數(shù)第11章UNIX服 變量 用戶 的絕對路徑,當(dāng)用戶登錄時用戶所處的當(dāng) 用作內(nèi)部域分隔符的字 外殼程序當(dāng)前正在執(zhí)行的標(biāo)準(zhǔn)輸入的行編 select語句在打印菜單時所輸出的行數(shù)。Select還向標(biāo)準(zhǔn)錯誤書寫特定的單詞 郵件的文件的絕對路徑 外殼程序查找執(zhí)行文件時需要查找 的絕對路 外殼程序中父進(jìn)程的進(jìn)程ID 外殼程序所顯示的提示符,缺省的Korn外殼程序提示符是$,當(dāng)然也存在其他選項 當(dāng)前工 的路 產(chǎn)生一個隨機 包含select語句的用戶輸 當(dāng)前外殼程序的絕對路徑,命令使用它來調(diào)用外殼程 在外殼程序終止以前它保持不活躍的秒 指定一個缺省的編輯器,覆蓋EDITORKornKorn外殼程表11-9Korn外殼程序元字 轉(zhuǎn)義字符,當(dāng)它后面緊跟著另一個字符時,該字符將會去掉它后面那個字符的真正含 通配符,可以匹配零個或多個字 通配符,可以匹配一個字 重定向標(biāo)準(zhǔn)輸入,使它可以來自指定的文件,而不是來自終 重定向標(biāo)準(zhǔn)輸出,使它可以輸出到指定的文件,而不是輸出到終 把標(biāo)準(zhǔn)輸出追加到指定文件的末 管道符。把一個命令的標(biāo)準(zhǔn)輸出連接到另一個命令的標(biāo)準(zhǔn)輸 當(dāng)出現(xiàn)在命令行中時,該符號使一個進(jìn)程在執(zhí) 表示用戶的 的路 當(dāng) 當(dāng) 的$1- 表示命令的前九個參 逐字地取字符串,允許進(jìn)行變量替 逐字地取字符串,允許進(jìn)行變量替 包含命令字符串的反引號,它讓外殼程序先運行該命令,并使用輸出來取代該字符 一起執(zhí)行的組命 分隔開一個命令行中的各個命 開始執(zhí)行命當(dāng)用戶在外殼程序提示符下輸入一個命令行,外殼程序?qū)⒎治鲈撁?,代替變量和別名,command-nameargument1argument2>file-命令還可以帶有一些選項,這些選項會改變命令的動作。例如,ls命令是列出 在用戶按下回車鍵以后,外殼程序開始處理命令。命令也可以輸入在一個命令行中,各命令之間用分號分隔開。然而,在用戶按下回車鍵以前,命令將不會執(zhí)行。當(dāng)外殼程序運行命令時,它啟動一個進(jìn)程。每個進(jìn)程都有一個進(jìn)程ID(PID,可以用于訪問進(jìn)程。進(jìn)程可以臺運行,也可以在運行,進(jìn)程還可以被中斷或取消。父進(jìn)程可以產(chǎn)生子進(jìn)程,并給它們分配自己的PID。command-name1>file-name12>file-ServicesforUNIXKorn外殼程序是一個可編程的外殼程序,它支持下列結(jié)構(gòu)命令。為了得到一個受支持外殼程序命令的完整列表,讀者可以查看ServicesforUNIX的sh信息。表11- S編程的ServiceforUNIXKorn 基于另一個變量的設(shè)置來運行命 運行一個特定令列 在中指定條 向標(biāo)準(zhǔn)錯誤寫指定的 運行一個命令列表,直到返回一個為零的 當(dāng)特定條件為真時運行一個命令列ServicesforUNIXKorn外殼程序有一些內(nèi)置令。內(nèi)置令由外殼程序自己的進(jìn)程來執(zhí)行。ServicesforUNIXKorn外殼程序可以用到的內(nèi)置命令如下表所示。關(guān)于每個命令的詳細(xì)第11章UNIX服 信息,請查詢ServicesforUNIX的表11- ServicesforUNIXKorn外殼程序內(nèi)置 在當(dāng)前環(huán)境中運行外殼程序文 擴展參數(shù),返回一個為0的退出狀態(tài)(成功 給命令分配一個新名 退出for、while或until循 改變當(dāng)前工 繼續(xù)進(jìn)行for、while或until循環(huán)的下一次迭 在標(biāo)準(zhǔn)輸出上顯示它的參 標(biāo)準(zhǔn)環(huán)境變 掃描并運行特定 在不創(chuàng)建新進(jìn)程的情況下運行指定的進(jìn) 退出外殼程 使子進(jìn)程可以使用該變量 返回退出狀態(tài)1(錯誤 從命令歷史記錄中選擇指定 分析命令行選 顯示當(dāng)前作 結(jié)束指定的作 得出表達(dá)式的 顯示外殼程序的參 顯示當(dāng)前工 從標(biāo)準(zhǔn)輸出中讀一 使變量的值為只讀的值,這樣就不能改變這 退出函 設(shè)置外殼程序標(biāo)志或者命令行參數(shù)變 外殼程序互式令和歷史記錄編 向前移動每一個命令行參數(shù)(例如$3移動到 與WindowsNT相關(guān)的Korn外殼程序的特 檢查文件、字符串和整數(shù)的屬性,并把測試的結(jié)果當(dāng)作退出值來 顯示運行時間和CPU 顯示外殼程序所累計的用戶程序時間和系統(tǒng) 指定在特定信號到來時運行什么命 返回退出狀態(tài)0(成功 以外殼程序解釋的意義標(biāo)識一個名 設(shè)置外殼程序參數(shù)的屬性 改變權(quán) 刪除別 從環(huán)境中刪除變量定 等待子進(jìn)程終whence 描述外殼程序是怎樣解釋命令名稱的(解釋成函數(shù)、外殼程序關(guān)鍵字命令、別名還是可執(zhí)行文件)命令用戶可以為命令(包括命令行選項)分配一個別名。別名也是一個名稱,常常是易于的名稱,外殼程序?qū)褎e名解釋為另一個名稱或者字符串。外殼程序?qū)⒂妹詈兔钸x項來取代用戶輸入的別名。在命令行中創(chuàng)建了別名以后,在當(dāng)前外殼程序環(huán)境中就可以使用該別名了。為了使別名成為工作環(huán)境的一部分,可以在外殼程序啟動文件(.kshrc)中加入一行并導(dǎo)出它:aliasnewname='command-option';export命令alias-xunaliasServicesforUNIXKorn外殼程序提供了一組預(yù)定義的別名。關(guān)于這個問題的信息,請參見ServicesforUNIX的alias。ServicesforUNIXKorn外殼程序提供了一個歷史記錄文件,它包括一個執(zhí)行過令的列表,其中包含令數(shù)目是預(yù)定義好的。在兩次登錄會話之間,這些命令可以在文件中編輯或保留。HISTSIZE=number;exportHISTFILE=file-name;exportHISTFILE如果用戶沒有定義這個變量,則歷史記錄文件將被命名為.sh-histo,并在主中用戶可以編輯命令歷史記錄文件中令,可以使用的編輯工具包括內(nèi)置的Korn外殼程序編輯器(如vi或emacs、內(nèi)置的fc命令,或者完整的vi編輯器。用戶可以使用這個特征來改正錯set-oVISUAL=/sfu/s/vi;export對于Korn外殼程序內(nèi)置的編輯器而言,它所提供的功能是UNIXvi編輯器所提供的功能的算術(shù)ServicesforUNIXKorn$((<arithmeticexpression>))或者$(<arithmeticexpression>)。Korn外殼程序用運算表達(dá)式的值來替代該表達(dá)式,直到得到整個表達(dá)式的結(jié)果。該過程是從最1-12列出了所有的運算符。第11章UNIX服 表11- 運算 加 減 乘 整除(舍去小數(shù)部分 取余 位左 位右 按位 邏輯 按位 邏輯 按位異 邏輯 按位 小 大 小于等 大于等 不等 等外殼程序外殼程序是一個文件,它包含一系列在一起可以執(zhí)行一個功能令。如果用戶運行的是Korn外殼程序,并具有執(zhí)行某個Korn外殼程序的權(quán)限,則通過輸入該文件的名稱,用戶可以從命令行該。如果用戶沒有運行Korn外殼程序,則通過輸入以下命令也可以運行該外殼程序:shfile-WindowsNT并不支持從命令行中只通過輸入文件名來執(zhí)行。在UNIX下,如果外殼程.sh或.ksh可以與Korn作業(yè)用戶使用作業(yè)控制可以臺運行命令,或者在運行命令,還可以暫時中斷命令。此外,還可以看到當(dāng)前正在運行令的列表。當(dāng)用戶輸入一個命令時,如果它不是內(nèi)置令,則外殼程序?qū)⑸梢粋€新進(jìn)程,在該新進(jìn)運行該命令。內(nèi)核調(diào)度該進(jìn)程,并給予它一個進(jìn)程ID號(PID。外殼程序則進(jìn)程,并給它一個任務(wù)編號。則在運行會更好一些,特別是那些需要運行很長時間令,比如說大規(guī)模的排序。用戶可以把一個進(jìn)程移到前臺或,并可以得到當(dāng)前作業(yè)的一個列表。用戶還可以臨時中斷某進(jìn)程或者終止它的運行。表11-13列出了ServicesforUNIX表11-13作業(yè)控制命 jobs 列出當(dāng)前任務(wù)。每個任務(wù)都被編號,-l選項用于顯示 在運行該命令。例如,sortfile-namenewfilekilljob-number 刪除由job-number所指定的作業(yè)。當(dāng)作業(yè)用&jobs命令時,將會顯示作業(yè)的編號UNIX實用表11-14所列UNIX實用程序是ServicesforUNIX的一部分。關(guān)于這些命令的信息,可以查看ServicesforUNIXHelp。表11-14UNIX實用UNIX命 調(diào)用Kornbsae 刪除路徑,只留下文件名稱。從字符串中刪除所有以/結(jié)束的前綴,以及后綴,并把結(jié)果打印到標(biāo)準(zhǔn)輸出 連接并顯示文 改變或者分配一個文件的權(quán)限模 改變文件的所有 拷貝文 除了字符串的最后一級路徑以外,傳送所有路徑。參見 遞歸地查 層次,查找匹配特定表達(dá)式的文 查找文件中的某個字符串,并打印出所有包含該串的 把指定文件名的前n行拷貝到標(biāo)準(zhǔn)輸n 創(chuàng)建到文件的硬。通過創(chuàng)建一個 指向目標(biāo),可以把一個文件名到 列 的內(nèi) 創(chuàng)建命 ,并為每種類型的用戶提供讀、寫和執(zhí)行的權(quán) 一個過濾器,它在終端上顯示文本文件的內(nèi)容,每次顯示一 文件名改變?yōu)槟繕?biāo)的形 中刪除文件的表 刪 流編輯器,把命名文件名稱拷貝到標(biāo)準(zhǔn)輸出,根據(jù)命令來進(jìn)行編 把所有命名文件的行進(jìn)行排序,并把結(jié)果寫到標(biāo)準(zhǔn)輸 把命名文件拷貝到標(biāo)準(zhǔn)輸出,從指定的地方開始拷 把標(biāo)準(zhǔn)輸入轉(zhuǎn)錄到標(biāo)準(zhǔn)輸出,并作文件名稱的備 更新文件的時間或修改時 報告文件中的重復(fù) 顯示文件中行的數(shù)目、單詞的數(shù)目以及字符的數(shù) 面向屏幕的可視顯示編輯器,它基于l 用于查找文本文件的一種集成的語言,它可以從這些文件中抽取出信息,并基于這些信息打印報告第11章UNIX服 使用vi編輯器是個交互式文本編輯器,可以用于創(chuàng)建和編輯ASCII文件。為了執(zhí)行一個動作,如文、除本移標(biāo),vi編輯器需要用入相應(yīng)令在使用vi時,用戶一般處于兩種方式:命令方式和輸入方式。在命令方式中,用戶可以輸入命令,以執(zhí)行刪除文本或在文件中移動光標(biāo)的動作。而在輸入方式中,用戶可以輸入或者修改文本。通過輸入特定的vi命令可以進(jìn)入輸入方式,要退出輸入方式則需要按Esc。如果讀者剛剛接觸vi的使用,這一節(jié)vi的基本方法,用戶就可以開發(fā)它的功能(該機
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2.2聲音的特性 說課稿2025年初中人教版物理八年級上冊
- 2025年黨政領(lǐng)導(dǎo)干部黨章黨規(guī)黨紀(jì)知識考試題庫及答案(共150題)
- 智能財稅綜合實訓(xùn) 上篇 課件全套 社會共享初級代理實務(wù)-社會共享企業(yè)管家
- 2025年可生物降解有機垃圾厭氧發(fā)酵裝置合作協(xié)議書
- 2025年廣東省深圳市中考一模語文試題(原卷版+解析版)
- 銀行業(yè)務(wù)流程優(yōu)化與風(fēng)險控制方案
- 網(wǎng)絡(luò)安全攻防實戰(zhàn)與防御策略
- 新能源行業(yè)光伏電站智能調(diào)度與管理方案
- 制造業(yè)智能化生產(chǎn)線升級方案
- 項目執(zhí)行階段工作總結(jié)與經(jīng)驗教訓(xùn)分享報告
- 人防工程偽裝防護(hù)技術(shù)規(guī)范
- 高中物理分層教學(xué)實施方案
- 農(nóng)貿(mào)市場建設(shè)項目可行性研究報告
- 大學(xué)英語四級閱讀理解精讀100篇
- 思想道德與法治2023版第三章繼承優(yōu)良傳統(tǒng) 弘揚中國精神專題4第1講 教學(xué)設(shè)計
- 股東損害公司債權(quán)人利益責(zé)任糾紛起訴狀(成功范文)
- 中國石油轉(zhuǎn)觀念勇?lián)?dāng)創(chuàng)一流心得體會 中國石油轉(zhuǎn)觀念勇?lián)?dāng)創(chuàng)一流心得
- 中石油職稱俄語
- 七年級歷史下冊(人教版1-5課)測試題
- 蘇州職業(yè)大學(xué)職業(yè)適應(yīng)性測試題庫2021
- 遼寧升聯(lián)生物科技有限公司年產(chǎn)1.42萬噸化學(xué)農(nóng)藥原藥智能化示范項目環(huán)境影響報告書
評論
0/150
提交評論