這是一篇極爲基礎的linnx文件操作和目錄相關設置的文章。爲什麼要寫還要寫呢!很簡單,只是想對自己這兩天讀書的成果記錄下,加深下印象罷了!若能幫到和我一樣的初學者小菜鳥。那純屬意外的收穫了。哈哈~
查看文件權限:ls -al 具體的意思可以自己嘗試下哦。別人給的不一定是最好的!
如何改變文件的屬性和權限:
chgrp :改變文件所述用戶組 chgrp [-R] 組名稱 文件或目錄 (-R進行遞歸更改,即連同子目錄下的所有文件和目錄都修改)
chown 改變文件所有者 chown [-R] 賬號名稱 文件和目錄 或 chown [-R] 賬號名:組名 文件或目錄
chmod 改變文件的權限 chmod [-R] xyz 文件和目錄
例如:
chgrp users test.log
chown root:root install.log
chmod -R 0777 ./test
chmod +gx ./init.sh
chmod u=rwx,go=rw .bashrc
chmod a+w .bashrc
chmod a-x .bashrc
數字和符號權限對照:
Linux 文件的基本權限有9個分別是owner 、group 、ohers三種身份各有自己的read、write、execute 權限,這9個權限是三個三個一組的。例如一個文件的權限可以表示爲:
0755 或 -rwxr-xr-x
難麼上面的數字表示形式和字符表示形式是怎樣計算的呢!
r:4
w:2
x:1
那麼每種身份各自的權限分別需要累加得到的數字表現形式:
owner = rwx = 4+2+1 =7
group = r-x = 4+0+1 =5
others=r-x = 4+0+1 =5
Linux的文件中類:
1.普通文件
普通文件就是一般意義上的文件,它們作爲數據存儲在系統磁盤中,可以隨機訪問文件的內容。Linux系統中的文件是面向字節的,文
件的內容以字節爲單位進行存儲與訪問。包括普通文件,純文本文件,二進制文件,數據格式文件
2.目錄
在Linux系統中,目錄也是一種特殊的文件,它們用來包含文件,文件一定在某個目錄下。
3.管道
管道是Linux系統中一種進程通信的機制。通常,一個進程寫一些數據到管道中,這些數據就可以被另一個進程從這個管道中讀取出來。管道可以分爲兩種類型:無名管道與命名管道。 >.無名管道由進程在使用時創建,讀寫結束關閉文件後消失。之所以成爲無名管道,是因爲它們並不存在於文件系統中,沒有文件名稱。>.命名管道在形式上就是文件系統中的一個文件,雖然並不佔用存儲文件內容的磁盤空間,但有自己的文件名。命名管道 通常稱爲FIFO。
4.設備文件
設備文件形式上也是文件系統中的文件,與普通文件不同的是,它沒有具體的內容,對設備文件的讀寫操作實際上是與某個設備的 輸入輸出操作關聯在一起。設備文件有兩種類型:字符設備文件與塊設備文件。>.字符設備能夠以字符(一個字節)爲單位進行輸入輸出操作,內核不會對設備輸入輸出的數據進行緩衝和排序。>.塊設備的輸入輸出以塊爲單位,每個塊有固定的字節數(一般爲512字節的整數倍)並且有唯一的地址,可以進行隨機訪問。塊設備的最大特點就是可以容納一個文件系統,有文件系統的塊設備可以被掛載到某個目錄中。對塊設備的訪問將被內核緩衝並且有可能重新編排訪問請求的順序,以提高數據的讀寫效率。
5.符號鏈接
符號鏈接是一種特殊的文件,它的內容是指向另一個文件的路徑。當對符號鏈接進行操作時,系統根據情況會對這個操作轉移到它所指向的文件上去,而不是對它本身進行操作。例如,讀一個符號鏈接時,實際讀到的是它所指向的文件的內容。
6.socket
socket(或稱套接字)也是一種進程間通信的方式。與管道不同的是,它們可以在不同主機上的進程間通信,實際上就是網絡通信。socket在Linux系統上也是以文件的方式進行操作的。
一、FHS針對目錄樹架構定義出三層目錄下放置數據:
1. / (root,根目錄):與開機系統有關
2. /usr (UNIX software resourse):與軟件安裝/執行有關
3. /var (variable):與系統運作過程有關
二、與根目錄放在同一個分區的文件
1. /etc 配置文件
2. /bin 重要執行文件
3. /dev 所需要的設備文件
4. /lib 執行文件所需的函數庫與內核所需的模塊
5. /sbin 重要的系統執行文件