《Linux文件管理》word版_第1頁
《Linux文件管理》word版_第2頁
《Linux文件管理》word版_第3頁
《Linux文件管理》word版_第4頁
《Linux文件管理》word版_第5頁
已閱讀5頁,還剩9頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、.Linux文件管理Linux文件管理2020-05-29 12:20說明:關于Linux系統(tǒng)中文件管理的概念我認為是很重要的所謂的命令操作都是很簡單的不值得一提摘要:本講介紹Linux系統(tǒng)中文件管理的概念,包括常用命令格式、文件類型、目錄構造、文件系統(tǒng)及其安裝。眾所周知,我們上機時是通過用戶界面與計算機打交道。用戶界面定義了用戶與計算機交流的不同方式,常見的有圖形界面、命令界面及程序界面。每個人喜歡什么樣的用戶界面取決于教育背景及經歷。Linux提供了幾種不同的用戶界面,其中,命令界面是Linux系統(tǒng)下最簡單、但也是功能最強的用戶界面。我們經常要利用文件來存放信息和數據、創(chuàng)立/刪除文件、翻開

2、/關閉文件、讀/寫文件等,用戶最常用的操作幾乎都與文件相關。常用命令格式Linux提供了幾百條命令,雖然這些命令的功能不同,但它們的使用方式和規(guī)那么都是統(tǒng)一的。Linux命令的一般格式是:命令名選項參數1參數2命令名由小寫的英文字母構成,往往是表示相應功能的英文單詞或單詞的縮寫。例如,date表示日期;who表示誰在系統(tǒng)中;cp是copy的縮寫,表示拷貝文件等。方括號中的部分說明對命令行來講不是必須的,即可有可無。例如,可以直接在提示符后面輸入命令date,顯示當前的日期和時間;也可以在date命令名后面帶有選項和參數,如date-s 15:30:00,設置系統(tǒng)時間為下午3點30分。選項是對命

3、令的特別定義,以-開場,多個選項可用一個-連起來,如ls-l-a與ls-la一樣。命令行的參數提供命令運行的信息,或者是命令執(zhí)行過程中所使用的文件名。通常參數是一些文件名,告訴命令從哪里可以得到輸入,以及把輸出送到什么地方。假如命令行中沒有提供參數,命令將從標準輸入文件即鍵盤承受數據,輸出結果顯示在標準輸出文件即顯示器上,而錯誤信息那么顯示在標準錯誤輸出文件即顯示器上??墒褂弥囟ㄏ蚬δ軐@些文件進展重定向。命令在正常執(zhí)行后返回一個0值,表示執(zhí)行成功;假如命令執(zhí)行過程中出錯,沒有完成全部工作,那么返回一個非零值在Shell中可用變量$?查看。在Shell腳本中,可用命令返回值作為控制邏輯的一部分

4、。Linux操作系統(tǒng)的聯(lián)機幫助對每個命令的準確語法都做了說明,可以使用命令man來獲取相應命令的聯(lián)機說明,如man ls。文件系統(tǒng)概念磁盤上的文件系統(tǒng)是層次構造的,由假設干目錄和其子目錄組成,最上層的目錄稱作根root目錄,用/表示。1.文件與目錄的定義文件系統(tǒng)是磁盤上有特定格式的一片區(qū)域,操作系統(tǒng)通過文件系統(tǒng)可以方便地查尋和訪問其中所包含的磁盤塊。文件文件系統(tǒng)中存儲數據的一個命名的對象。一個文件可以是空文件即沒有包含用戶數據,但是它仍然為操作系統(tǒng)提供了其它信息。目錄目錄文件中包含許多文件的目錄項,每個目錄項包含相應文件的名字和I節(jié)點號。在I節(jié)點中存放該文件的控制管理信息。目錄支持文件系統(tǒng)的層

5、次構造。文件系統(tǒng)中的每個文件都登記在一個或多個目錄中。子目錄被包含在另一個目錄中的目錄。包含子目錄的目錄稱作父目錄。除了root目錄以外,所有的目錄都是子目錄,并且有它們的父目錄。root目錄就作為自己的父目錄。文件名用來標識文件的字符串,它保存在一個文件目錄項中。途徑名通過斜線字符/結合在一起的一個或多個文件名的集合。途徑名指定一個文件在分層樹型構造即文件系統(tǒng)中的位置。當前工作目錄查看文件系統(tǒng)要使用一個參考點目錄,它就稱作當前工作目錄。用ls命令可以列出當前工作目錄中所包含的文件和子目錄的名字,這是默認方式。文件名按照ASCII碼順序列出,以數字開頭的文件名列在前面,然后是以大寫字母開頭的文

6、件名,最后是以小寫字母開頭的文件名。2.文件構造文件是Linux操作系統(tǒng)處理信息的根本單位。所有軟件都組織成文件。1文件的成分無論文件是一個程序、一個文檔、一個數據庫,或者是一個目錄,操作系統(tǒng)都會賦予它如下所示的同樣的構造:索引節(jié)點又稱I節(jié)點,在文件系統(tǒng)構造中,包含有關相應文件的信息的一個記錄,這些信息包括文件權限、文件主、文件大小、存放位置、建立日期等。數據文件的實際內容,它可以是空的,也可以非常大,并且有自己的構造。2命名文件文件名保存在目錄文件中。Linux的文件名幾乎可以由ASC字符的任意組合構成,文件名最長可多達255個字符某些較老的文件系統(tǒng)類型把文件名長度限制為14個字符。下面的慣

7、例會使管理文件更加方便。文件名應盡量簡單,并且應反映出文件的內容。文件名幾乎沒有必要超過14個字符。除斜線/和空字符ASCII字符以外,文件名可以包含任意的ASC字符,因為那兩個字符被操作系統(tǒng)當作表示途徑名的特殊字符來解釋。習慣上允許使用下線符_和句點.來區(qū)別文件的類型,使文件名更易讀。但是應防止使用以下字符,因為對系統(tǒng)的Shell來說,它們有特殊的含義。這些字符是:;、|、$、!、%、&、*、?、。文件名應防止使用空格、制表符或其它控制字符。同類文件應使用同樣的后綴或擴展名。Linux系統(tǒng)區(qū)分文件名的大小寫,例如,名為letter的文件與名為Letter的文件不是同一個文件。以圓點.

8、開頭的文件名是隱含文件,默認方式下使用ls命令并不能把它們在屏幕上顯示出來。同樣,在默認情況下,Shell通配符并不匹配這類文件名。3文件名通配符為了能一次處理多個文件,Shell提供了幾個特別字符,稱為文件名通配符也稱作擴展字符。通過使用通配符可以讓Shell查詢與特別格式相符的文件名;用作命令參數的文件或目錄的縮寫;以簡短的標記訪問長文件名;可以用于任意的命令行。主要的文件名通配符有:星號*與0個或多個任意的字符相匹配,例如,le*可以代表letter、lease或le。星號匹配的是當前目錄下的所有文件,但以點.開頭的隱含文件除外。.*只與隱含文件匹配。問號?問號只與一個任意的字符匹配,可

9、以使用多個問號。例如,file?與文件file1、file2匹配,但不與file、file10匹配;而name.?與文件name.abc、name.xyz匹配,但不與文件name.ab匹配。方括號與問號相似,只與一個字符匹配。它們的區(qū)別在于,問號與任意一個字符匹配,而方括號只與括號中列出的字符之一匹配。例如letter123只與文件letter1、letter2或letter3匹配,但不與文件letter12匹配。可以用短橫線代表一個范圍內的字符,而不用將它們一一列出。例如,letter1-3是letter123的簡寫形式。但是,要注意范圍內的字符都按升序排列,即A-Z是有效的,而Z-A是無效

10、的。方括號中可以列出多個范圍,如A-Za-z可以和任意大寫或小寫的字符相匹配。方括號中假如以驚嘆號!開場,表示不與驚嘆號后的字符匹配。上面介紹的所有符號都可以混和使用,例如,!A-Z*.?代表所有不以大寫字母開頭,但倒數第二個位置是.的文件名。文件類型Linux操作系統(tǒng)支持普通文件、目錄文件、特別文件及符號鏈接文件等文件類型。1.普通文件普通文件也稱作常規(guī)文件,包含各種長度的字節(jié)串。核心對這些數據沒有進展構造化,只是作為有序的字節(jié)序列把它提交給應用程序。應用程序自己組織和解釋這些數據,通常把它們歸并為下述類型之一:文本文件,由ASCII字符構成。例如,信件、報告和稱作腳本Script的命令文本

11、文件,后者由shell解釋執(zhí)行。數據文件,由來自應用程序的數字型和文本型數據構成。例如,電子表格、數據庫,以及字處理文檔??蓤?zhí)行的二進制程序,由機器指令和數據構成。例如,上面所說的系統(tǒng)提供的命令。使用file命令可以確定指定文件的類型。該命令可以將任意多個文件名當做參數,其一般使用格式是:file文件名文件名.2.目錄目錄是一類特殊的文件,利用它可以構成文件系統(tǒng)的分層樹型構造。如同普通文件那樣,目錄文件也包含數據;但目錄文件與普通文件的差異是,核心對這些數據加以構造化,它是由成對的I節(jié)點號/文件名構成的列表。I節(jié)點號是檢索I節(jié)點表的下標,I節(jié)點中存放有文件的狀態(tài)信息。文件名是給一個文件分配的文

12、本形式的字符串,用來標識該文件。在一個指定的目錄中,任何兩項都不能有同樣的名字。每個目錄的第一項都表示目錄本身,并以.作為它的文件名。每個目錄的第二項的名字是.,表示該目錄的父目錄。應注意:以.開頭的文件名表示隱含文件,使用帶-a選項的ls命令可以列出它們。當把文件添加到一個目錄中的時候,該目錄的大小會增長,以便包容新文件名。當刪除文件時,目錄的尺寸并不減少,而是核心對該目錄項做上特殊標記,以便下次添加一個文件時重新使用它。ls命令不會列出這些未被使用的項。3.設備文件在Linux系統(tǒng)中,所有設備都作為一類特別文件對待,用戶像使用普通文件那樣對設備進展操作,從而實現(xiàn)設備無關性。但是,設備文件除

13、了存放在文件I節(jié)點中的信息外,它們不包含任何數據。系統(tǒng)利用它們來標識各個設備驅動器,核心使用它們與硬件設備通信。有兩類特別設備文件,它們對應不同類型的設備驅動器:字符設備最常用的設備類型,允許I/O傳送任意大小的數據,取決于設備本身的容量。使用這種接口的設備包括終端、打印機及鼠標。塊設備這類設備利用核心緩沖區(qū)的自動緩存機制,緩沖區(qū)進展I/O傳送總是以1KB為單位。使用這種接口的設備包括硬盤、軟盤和RAM盤。設備文件的一個例如是當前正在使用的終端,tty命令可以顯示出這個文件名。例如:$tty/dev/tty01通常,設備文件在/dev目錄之下。目錄及其操作命令在Linux系統(tǒng)中,除根目錄roo

14、t以外,所有文件和目錄都包含在相應的目錄文件中。下面介紹Linux系統(tǒng)的目錄構造及主要的操作命令。1.目錄構造Linux文件系統(tǒng)采用帶鏈接的樹形目錄構造,即只有一個根目錄通常用/表示,其中含有下級子目錄或文件的信息;子目錄中又可含有更下級的子目錄或者文件的信息。這樣一層一層地延伸下去,構成一棵倒置的樹,如圖1所示。圖1 Linux樹型目錄構造在目錄樹中,根節(jié)點和中間節(jié)點用圓圈表示都必須是目錄,而普通文件和特別文件只能作為葉子出現(xiàn)。當然,目錄也可以作為葉子。1用戶主目錄當注冊進入系統(tǒng)時,主目錄就是當前工作目錄。主目錄往往位于/home目錄之下,并且與注冊名一樣,例如,/home/mengqc。通

15、常主目錄包含子目錄、數據文件,以及用于注冊環(huán)境的配置文件。2途徑名迄今為止,所看到的文件僅是主目錄下的文件。其實,還可以利用處徑名訪問在層次構造文件系統(tǒng)中任何地方的文件和目錄。為了訪問文件,必須告訴系統(tǒng)文件在什么地方,即保存在哪個目錄下。途徑名描繪了文件系統(tǒng)中通向任意文件的途徑。有絕對途徑和相對途徑兩種途徑名。當為命令指定文件途徑名時,需要指定兩種途徑形式的一種,不管它有多長或有多復雜。絕對途徑名在Linux操作系統(tǒng)中,每一個文件有惟一的絕對途徑名,它是沿著層次樹、從根目錄開場、到達相應文件的所有目錄名連接而成,各目錄名之間以斜線字符/隔開。例如,/home/mengqc/lib/func/f

16、ile1。絕對途徑名總是以斜線字符/開頭,它表示根目錄。假如要訪問的文件在當前工作目錄之上,那么,使用絕對途徑名往往是最簡便的方法。絕對途徑名也稱作全途徑名,使用pwd命令可以在屏幕上顯示出當前工作目錄的絕對途徑名。例如:$pwd/home/mengqc圖2途徑名類型圖2示出途徑名的類型。絕對途徑名為/home/mengqc/lib/func/file1;相對途徑名當前目錄是/home/mengqc/lib為func/file1。相對途徑名相對途徑名利用相對當前工作目錄的途徑指定一個文件。為了訪問當前工作目錄或其任意子目錄中的文件,可以使用相對途徑名。例如,假如工作目錄是/home/mengq

17、c/lib,為了列出目錄/home/mengqc/lib/func中的文件file1,可以使用下述命令:ls-l func/file1注意,相對途徑名不能以斜線字符/開頭。為了訪問在當前工作目錄中和當前工作目錄之上的文件,可以在相對途徑名中使用特殊目錄名.和.。.目錄表示本目錄自身,而.目錄代表該目錄的父目錄。例如,當前工作目錄是/home/mengqc/lib,想列出/home/liu目錄的內容,可使用命令:ls././liu提醒注意,在每個目錄中都有.目錄文件。在上面例如中,/home/mengqc/lib的父目錄是/home/mengqc,后者的父目錄是/home。也可以連續(xù)使用./形式

18、表示父目錄,直至根目錄。所以,系統(tǒng)中的每個文件都可以利用相對途徑名來命名。3正確使用處徑名什么情況下使用絕對途徑名,什么情況下使用相對途徑名,取決于哪種方式涉及到的目錄更少。途徑短,不僅鍵盤輸入少,而且節(jié)省系統(tǒng)搜索途徑的時間,進步執(zhí)行效率。例如,當前的工作目錄是/etc/conf/cf.d,假如需要訪問系統(tǒng)口令文件/etc/passwd,那么使用絕對途徑名是/etc/passwd,使用相對途徑名是././passwd。絕對途徑名/etc/passwd涉及的目錄有2個,而相對途徑名././passwd涉及的目錄卻是3個。此時,使用絕對途徑名更有效。但是,假如當前工作目錄是/home/mengqc

19、/lib,要訪問在func目錄之下的file1文件,那么使用絕對途徑名是/home/mengqc/lib/func/file1,使用相對途徑名是func/file1。絕對途徑名/home/mengqc/lib/func/file1涉及的目錄有5個,而相對途徑名涉及的目錄只有2個。此時,使用相對途徑名更有效。假如不清楚當前工作目錄與其它目錄之間的關系,那么最好使用絕對途徑名。2.鏈接文件Linux具有為一個文件起多個名字的功能,稱為鏈接。被鏈接的文件可以存放在一樣的或不同的目錄下。假如在同一目錄下,二者必須有不同的文件名,而不用在硬盤上為同樣的數據重復備份;假如在不同的目錄下,那么被鏈接的文件可

20、以與原文件同名,只要對一個目錄下的該文件進展修改,就可以完成對所有目錄下同名鏈接文件的修改。對于某文件的各個鏈接文件,我們可以給它們指定不同的存取權限,以控制對信息的共享和增強平安性。文件鏈接分為硬鏈接和符號鏈接兩種形式。1硬鏈接建立硬鏈接時,是在另外的目錄或本目錄中增加目的文件的一個目錄項,這樣,一個文件就登記在多個目錄中。圖3中所示的m2.c文件就在目錄mub1和liu中都建立了目錄項。圖3文件鏈接創(chuàng)立硬鏈接后,已經存在的文件的I節(jié)點號inode會被多個目錄文件項使用。一個文件的硬鏈接數可以在目錄的長列表格式的第二列中看到,無額外鏈接的文件的鏈接數為1。ln命令用來創(chuàng)立鏈接。默認情況下,l

21、n命令創(chuàng)立硬鏈接。ln命令會增加鏈接數,rm命令會減少鏈接數。一個文件除非鏈接數為0,否那么不會物理地從文件系統(tǒng)中被刪除。對硬鏈接有如下限制:不能對目錄文件做硬鏈接。不能在不同的文件系統(tǒng)之間做硬鏈接。也就是說,鏈接文件和被鏈接文件必須位于同一個文件系統(tǒng)中。2符號鏈接符號鏈接也稱軟鏈接,是將一個途徑名鏈接到一個文件。這些文件是一種特別類型的文件。事實上,它只是一個小文本文件如圖3中的abc文件,其中包含它所鏈接的目的文件的絕對途徑名,如圖3中虛線箭頭所示。被鏈接文件是實際上包含所有數據的文件。所有讀寫文件的命令,當它們涉及符號鏈接文件時,將沿著鏈接方向前進,找到實際的文件。和硬鏈接不同的是,符號

22、鏈接確實是一個新文件,它具有與目的文件不同的I節(jié)點號;而硬鏈接并沒有建立新文件。符號鏈接沒有硬鏈接的限制,可以對目錄文件做符號鏈接,也可以在不同文件系統(tǒng)之間做符號鏈接。用ln-s命令建立符號鏈接時,最好源文件用絕對途徑名,這樣可以在任何工作目錄下進展符號鏈接。當源文件用相對途徑時,假如當前的工作途徑和你要創(chuàng)立的符號鏈接文件所在途徑不同時,就不能進展鏈接。請注意,符號鏈接與源文件或目錄之間的區(qū)別:刪除源文件或目錄時,只刪除了數據,不會刪除鏈接。一旦以同樣文件名創(chuàng)立了源文件,鏈接將繼續(xù)指向該文件的新數據。在目錄長列表中,符號鏈接作為一種特殊的文件類型顯示出來,其第一個字母是l。符號鏈接的大小是其鏈

23、接文件的途徑名中的字節(jié)數。當用ls-l命令列出文件時,可以看到符號鏈接名后有一個箭頭指向源文件或目錄,例如:lrwxrwxrwx.14 Jun 20 10:20/etc/motd-/original_file上面代碼中,表示文件大小的數字14恰好表示源文件名/original_file由14個字符構成。ln命令的一般格式:ln選項源文件目的文件鏈接的對象可以是文件,也可以是目錄。假如鏈接指向目錄,用戶就可以利用該鏈接直接進入被鏈接的目錄,而不用給出到達該目錄的一長串途徑。這樣,即使刪除這個鏈接,也不會破壞原來的目錄。選項-s表示建立符號鏈接,而不是硬鏈接。注意,符號鏈接文件不是一個獨立的文件,

24、它的許多屬性依賴于原文件,所以給一個符號鏈接文件設置存取權限是沒有意義的。3例如將目錄/home/mengqc/mub1下的文件m2.c鏈接到目錄/home/liu下的文件a2.c:$cd/home/mengqc$ln mub1/m2.c/home/liu/a2.c在執(zhí)行l(wèi)n命令之前,目錄/home/liu中不存在a2.c文件。執(zhí)行l(wèi)n之后,在/home/liu目錄中才有a2.c這一項,說明m2.c和a2.c已經鏈接起來。注意,二者在物理上是同一個文件。利用ls-l命令可以看到鏈接數的變化。在目錄/home/liu下建立一個符號鏈接文件abc,使它指向目錄/home/mengqc/mub1:$

25、ln-s/home/mengqc/mub1/home/liu/abc執(zhí)行該命令后,/home/mengqc/mub1代表的途徑將存放在名為/home/liu/abc的文件中。3.文件或目錄的存取權限使用文件命令對文件進展操作的前提是擁有相應的權限。下面我們介紹如何控制這些權限。1用戶和權限Linux為每個文件都分配了一個文件所有者,稱為文件主,并賦予文件主惟一的注冊名。對文件的控制取決于文件主或超級用戶root。文件或目錄的創(chuàng)立者對創(chuàng)立的文件或目錄擁有特別使用權。文件的所有關系是可以改變的,可以將文件或目錄的所有權轉讓給其它用戶,但只有文件主或root用戶才有權改變文件的所有關系。文件的所有權

26、的標志是用戶IDUID。利用chown命令可以更改某個文件或目錄的所有權。例如,超級用戶把自己的一個文件myfile拷貝給用戶xu。為了讓用戶xu可以存取這個文件,超級用戶root應該把這個文件的屬主設為xu,否那么,用戶xu無法存取這個文件,命令如下:chown xu myfile假如改變了文件或目錄的所有權,原文件主將不再擁有該文件或目錄的權限。系統(tǒng)管理員經常使用chown命令,以便將文件拷貝到另一個用戶的目錄下以后,讓該用戶擁有使用該文件的權限。2用戶組在Linux下,每個文件又同時屬于一個用戶組。當創(chuàng)立一個文件或目錄時,系統(tǒng)會賦予它一個用戶組關系,用戶組的所有成員都可以使用此文件或目錄

27、。文件用戶組關系的標志是GID。文件的GID只能由文件主或超級用戶root來修改。chgrp命令可以改變文件的GID。3用戶和權限Linux系統(tǒng)中的每個文件和目錄都有存取答應權限,用它來確定誰可以通過何種方式對文件和目錄進展訪問和操作。Linux系統(tǒng)中規(guī)定了四種不同類型的用戶,即文件主owner、同組用戶group、可以訪問系統(tǒng)的其它用戶others、超級用戶root,具有管理系統(tǒng)的特權。存取權限規(guī)定三種訪問文件或目錄的方式:讀r、寫w、可執(zhí)行或查找x。當用ls-l命令顯示文件或目錄的詳細信息時,最左邊的一列為文件的存取權限,其中各位的含義如圖4所示。圖4文件權限表示文件的存取權限讀權限r表示

28、只允許指定用戶讀取相應文件的內容,而制止對它做任何的更改操作。將所訪問的文件的內容作為輸入的命令都需要有讀的權限。例如cat、more等。寫權限w表示允許指定用戶翻開并修改文件。例如命令vi、cp等。執(zhí)行權限x表示允許指定用戶將該文件作為一個程序執(zhí)行。目錄的存取權限在ls命令后加上-d選項,可以理解目錄文件的使用權限。讀權限r表示可以列出存儲在該目錄下的文件,即讀目錄內容列表。這一權限允許Shell使用文件擴展名列出相匹配的文件名。寫權限w表示允許用戶從目錄中刪除或添加新的文件,通常只有文件主才有寫權限。執(zhí)行權限x表示允許用戶在目錄中查找,并能用cd命令將工作目錄改到該目錄。4chmod命令c

29、hmod命令用于改變或設置文件或目錄的存取權限。只有文件主或超級用戶root才有權用chmod改變文件或目錄的存取權限。根據表示權限的方式不同,該命令有以符號形式改變權限和以絕對方式改變權限兩種用法。以符號形式改變權限chmod命令的一般格式是:chmod key文件名其中,key由以下各項組成:who操作符號mode操作對象who可以是下述字母中的任一個或它們的組合:u表示用戶user,即文件或目錄的所有者。g表示同組group用戶,即與文件屬主有一樣組ID的所有用戶。o表示其它others用戶。a表示所有all用戶,它是系統(tǒng)默認值。操作符號可以是下述符號:+添加某個權限。-取消某個權限。=

30、賦予給定權限并取消其他所有權限假如有的話。mode所表示的權限可用下述字母的任意組合:r表示可讀。w表示可寫。x表示可執(zhí)行。X表示只有目的文件對某些用戶是可執(zhí)行的,或者該目的文件是目錄時才追加x可執(zhí)行屬性。s在文件執(zhí)行時把進程的屬主或組ID置為該文件的文件屬主。方式u+s設置文件的用戶ID位,g+s設置組ID位。t保存程序的文本到交換設備上。u與文件屬主擁有一樣的權限。g擁有與文件屬主同組用戶一樣的權限。o與其它用戶擁有一樣的權限。上面這三部分必須按順序輸入,可以用多個key,但必須以逗號隔開。例如:$chmod a+x ex1上面代碼表示將文件ex1的權限改為所有用戶都有執(zhí)行權限。$chmo

31、d u=r,ug=x ex1上面這行代碼表示將文件ex1的權限重新設置為文件主可以讀和執(zhí)行,組用戶可以執(zhí)行,其它用戶無權訪問。以絕對方式改變權限以絕對方式改變權限一般格式是:chmod mode文件名用絕對方式設置或改變文件的存取權限就是用數字1和0表示圖4中所示的9個權限位,置為1表示有相應權限,置為0表示沒有相應權限。例如,某個文件的存取權限是文件主有讀、寫和執(zhí)行的權限,組用戶有讀和執(zhí)行的權限,其它用戶僅有讀的權限。用符號形式表示就是rwxr-xr-,用二進制數字表示就是111101100。為了方便記憶和表示,通常將這9位二進制數用等價的3個從0到7的八進制數表示,即從右到左3個二進制數換

32、成一個八進制數。這樣,上述二進制數就等價于八進制數754。也就是說,mode是以3位八進制數字出現(xiàn)的,最左位表示文件主權限,中間位表示組用戶權限,最右位表示其它用戶權限。例如,chmod 664 ex1使文件ex1的文件主和同組用戶具有讀寫權限,但其它用戶只可讀。umask命令umask命令用來設置限制新建文件權限的掩碼。其一般格式是:umask mode當新文件被創(chuàng)立時,其最初的權限由文件創(chuàng)立掩碼決定。用戶每次注冊進入系統(tǒng)時,umask命令都被執(zhí)行,并自動設置掩碼mode來限制新文件的權限。用戶可以通過再次執(zhí)行umask來改變默認值,新的權限將會把舊的覆蓋掉。利用umask命令可以指定哪些權

33、限將在新文件的默認權限中被刪除。例如,可以使用下面的命令創(chuàng)立掩碼,取消組用戶的寫權限以及其他用戶的讀、寫和執(zhí)行權限:umask u=,g=w,o=rwx執(zhí)行該命令以后,下面所建新文件的文件主權限未作任何改變,而組用戶沒有寫權限,其它用戶的所有權限都被取消。應注意,在umask命令和chmod命令中,操作符=的作用恰恰相反。在chmod中,利用它來設置指定的權限,而其余權限都被取消;但是在umask命令中,它將在原有權限的根底上把指定的權限刪除。不能直接利用umask創(chuàng)立一個可執(zhí)行的文件,用戶只能在其后利用chmod命令使它具有執(zhí)行權限。假設執(zhí)行了下面命令:umask u=,g=w,o=rwx雖

34、然在命令行中,文件主和組用戶的執(zhí)行權限沒有被刪去,但默認的文件權限還是640即rw-r-,而不是750rwxr-x-。但是,假如創(chuàng)立的是目錄,或者通過編譯程序創(chuàng)立一個可執(zhí)行文件,將不受此限制。在這種情況下,文件的執(zhí)行權限會被設置。此外,也可以使用八進制數值來設置mode。在umask中所指定的權限表示要刪除的權限,所以,假如一個文件原來的初始權限是777,那么執(zhí)行命令umask 022以后,那么該文件的權限將變?yōu)?55;假如該文件原來的初始權限是666,那么該文件的權限將變?yōu)?44。使用下面的命令可以檢查新創(chuàng)立文件的默認權限:umask-s上面命令中,選項-s表示以字符形式顯示當前的掩碼。假如

35、直接輸入umask命令,不帶任何參數,那么將以八進制形式顯示當前的掩碼。系統(tǒng)默認的掩碼是0022。文件系統(tǒng)及其安裝一個硬盤上可以同時存在多個文件系統(tǒng),每個文件系統(tǒng)占據硬盤的一個獨立分區(qū)。Linux文件系統(tǒng)可以根據需要隨時裝卸,從而實現(xiàn)文件存儲空間的動態(tài)擴大和信息平安。在系統(tǒng)初啟時,往往只有一個文件系統(tǒng)被安裝上,即根文件系統(tǒng),其上的文件主要是保證系統(tǒng)正常運行的操作系統(tǒng)的代碼文件,以及假設干語言編譯程序、命令解釋程序和相應的命令處理程序等構成的文件,此外,還有大量的用戶文件空間。根文件系統(tǒng)一旦安裝上,那么在整個系統(tǒng)運行過程中是不能卸下的,它是系統(tǒng)的根本部分。其它的文件系統(tǒng)例如,由軟盤構成的文件系統(tǒng)可以根據需要如從硬盤向軟盤復制文件,作為子系統(tǒng)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論