Linux下檔案屬性詳解

2021-08-14 03:45:24 字數 2841 閱讀 8592

[root@localhost ~]# ls

-l總計 160

-rw-r--r-- 2 root root 762 07-29 18:19 aexit

-rw-r--r-- 2 root root 762 07-29 18:19 exit

此時exit 和aexit稱為互為硬鏈結。同指向乙個檔案,無論是修改哪乙個檔案,另乙個裡也做相應的變化,即同一檔案的不同檔名

互為硬鏈結的檔案具有相同的檔案節點。

[root@localhost ~]# ls -i aexit exit

162302 aexit 162302 exit

軟鏈結設定格式:

ln –s 原始檔 目標鏈結檔案

# ln -s exit bexit

# ls -l

lrwxrwxrwx 1 root root 4 08-03 08:27 bexit -> exit

-rw-r--r-- 1 root root 762 07-29 18:19 exit

注意:軟鏈結時檔案節點號不一樣;

[root@localhost ~]# ls -i bexit exit

161765 bexit 162302 exit

如果知道乙個檔案有多個檔名(鏈結檔案)如何查詢他的其他檔名的路徑?

使用ls -i 獲得其節點號,find查詢。

[root@localhost ~]# ls -i /etc/sysconfig/network-scripts/ifcfg-eth0

452946 /etc/sysconfig/network-scripts/ifcfg-eth0 #節點號為 452946

[root@localhost ~]# find /etc -inum 452946

/etc/sysconfig/network-scripts/ifcfg-eth0

第2欄位: 鏈結占用的節點

lrwxrwxrwx 1 root root 4 08-03 08:27 bexit -> exit

該欄位檔案占用乙個節點,屬於軟鏈結(符號鏈結)

如果是目錄,則第2欄位表示該目錄所含子目錄的個數

新建空目錄,此目錄的第二字段就是2,表示該目錄下有兩個子目錄。

因為每乙個目錄都有乙個指向它本身的子目錄"." 和指向它上級目錄的子目錄"..",此預設子目錄是隱藏的。

每次在目錄下新建乙個子目錄,該目錄第2欄位的值就增1,但是新建乙個普通檔案該字段值不增加。

第3欄位:檔案(目錄)擁有者

lrwxrwxrwx 1 root root 4 08-03 08:27 bexit -> exit

該欄位表示該檔案擁有者是誰。只有檔案的擁有者才具有改動檔案屬性的權利。root具有改動任何檔案屬性的權利。對於目錄,只有擁有該目錄的使用者,或者具有寫許可權的使用者才有在目錄下建立檔案的權利。

如果某一使用者被刪除,而該使用者家目錄還存在,ls -l 檢視該檔案將顯示乙個代表使用者存在前id號的數字。

建立使用者test,將其加入wang使用者組,su切換:

[root@localhost ~]# useradd test

[root@localhost ~]# usermod -g wang test #建立使用者test,並將其加入到使用者組wang中

[root@localhost ~]# su test

[test@localhost root]$ cd /home/test

[test@localhost ~]$ touch testing

[test@localhost ~]$ ls -l testing

-rw-r--r-- 1 test wang 0 08-03 18:02 testing #最後用ls -l 看到第三欄位的檔案擁有者為test

[test@localhost ~]$ su root #刪除使用者test

[root@localhost ~]# userdel test

[root@localhost ~]# cd /home/test #進入test的家目錄,檢視剛剛建立的檔案testing。

[root@localhost test]# ls -l

總計 4

-rw-r--r-- 1 504 wang 0 08-03 18:02 testing

第三字段變成數字,此數字是原使用者test的id號。因為檔案系統對每個檔案記錄檔案所有者的id,而非使用者名稱。

第4欄位:檔案(目錄)擁有者所在的組

lrwxrwxrwx 1 root root 4 08-03 08:27 bexit -> exit

乙個使用者可以加入很多個組,但是其中有乙個是主組,就是顯示在第4欄位的名稱。

useradd -g指定該使用者所在的主組,-g指定其他組

useradd –g 組名 使用者名稱

第5欄位: 檔案所占用的空間(以位元組為單位)

lrwxrwxrwx 1 root root 4 08-03 08:27 bexit -> exit

第5欄位表示檔案大小,如果是目錄,表示該目錄大小。注意是目錄本身大小,而非目錄及其下面的檔案的總大小。

第6欄位:檔案(目錄)最近訪問(修改)時間

lrwxrwxrwx 1 root root 4 08-03 08:27 bexit -> exit

可通過touch修改建立時間 # touch exit

把exit建立時間修改當前時間,檔案還有最後訪問時間,最後修改時間等屬性。

可以用ls其它引數顯示出來。

第7欄位:檔名

lrwxrwxrwx 1 root root 4 08-03 08:27 bexit -> exit

如果是符號鏈結,會有"->"符號,跟著它指向的檔名

linux檔案屬性詳解

linux 檔案或目錄的屬性主要包括 檔案或目錄的節點 種類 許可權模式 鏈結數量 所歸屬的使用者和使用者組 最近訪問或修改的時間等內容 具體情況如下 命令 ls lih 輸出 root localhost test ls lih 總計 316k 2095120 lrwxrwxrwx 1 root ...

Linux 檔案屬性詳解

linux 檔案或目錄的屬性主要包括 檔案或目錄的節點 種類 許可權模式 鏈結數量 所歸屬的使用者和使用者組 最近訪問或修改的時間等內容 具體情況如下 命令 ls lih 輸出 root localhost test ls lih 總計 316k 2095120 lrwxrwxrwx 1 root ...

linux檔案屬性詳解

在linux的命令列模式下輸入 ls al,得到的內容如下,各項內容都代表什麼呢?各列對應的分別為 屬性 連線 擁有者 使用者組 檔案大小 修改日期 檔名 1.第1列對應的是檔案的屬性,這一列其實共有10個屬性 第乙個屬性表示這個檔案是 目錄 檔案或連線檔案等 接下來的屬性中,3個為一組,且均為 r...