linux 文件或目錄的權限和屬性

1、windows 和linux文件類型的區別

windows 裏是通過擴展名來區分文件類型的;linux裏文件擴展名和文件類型沒有關係,爲了容易區分和箭筒用戶使用的windows的習慣,我們也會用擴展名來表示linux文件類型,linux 系統中,一切皆文件。

2、linux系統查看文件類型

[root@backup ~]# ls  -l
總用量 72556
-rw-------. 1 root root     1104 7月   6 00:51 anaconda-ks.cfg
-rw-r--r--  1 root root     1083 5月  15 2015 epel-6.repo
-rw-r--r--. 1 root root    22179 7月   6 00:51 install.log
-rw-r--r--. 1 root root     5890 7月   6 00:50 install.log.syslog

其中-rw-r--r--  開頭的第一個“-”表示文件的類型

3、文件權限位介紹

的文件或目錄的權限和用戶及用戶組的關係很大,linux系統中每個文件或目錄都有一組共9個基礎權限位,每三個字符被分爲一組,分別是屬主權限位,屬組權限位和其他用戶權限位。

下邊的圖可以很直接的介紹出九個權限位。

wKiom1gG2lKBn_jCAACS_7aAyFs373.png-wh_50

3、linux中常見的系統文件類型

wKiom1gG2G6DGHYnAACWvQhzqYw840.png-wh_50

4、inode節點與block介紹

磁盤==》分區==》格式化(創建文件系統)==》掛載    只用經過這四個步驟硬盤纔可以正常使用

磁盤在進行分區格式化的是,會生成兩部分,一部分是inode節點(很多個),另一部分是block(很多個)

inode:

inode 就是用來儲存這些數據屬性信息的(ls –l 的結果),inode包含的文件屬性信息有大小、數組、歸屬的用戶組、讀寫權限、文件類型和修改時間,還包含指向文件實體的指針的功能(inode 節點—block 的對應關係)等,但是inode唯獨不包含文件名,inode 存儲空間: 256字節/每個

block:

block就是存儲空間,是存儲真正存放數據的,例如:照片,視頻等普通文件數據。

inode 相當於目錄,block 相當於書的內容,整本書相當於磁盤。

inode 除了記錄文件屬性以外,還會爲每個文件建立信息索引,所以就有了inode數值。操作系統根據指令,即可通過inode的值最快的找到相對應的文件實體,文件、inode、block之間的關係可以用下圖來表示:

wKiom1gG4PTgOK2YAAEltveW-eA283.png-wh_50

5、查看inode節點和block信息

使用dumpefs 查看:

1、查看inode節點
[root@oldboy ~]# dumpe2fs /dev/sda3 | grep -i "blocksize" 
dumpe2fs 1.41.12 (17-May-2010)
Block size:               4096
[root@oldboy ~]# dumpe2fs /dev/sda3 |grep -i "inode size"
dumpe2fs 1.41.12 (17-May-2010)
Inode size:               256

使用df 查看:
[root@oldboy ~]# df -i
Filesystem     Inodes IUsed  IFree IUse% Mounted on
/dev/sda3      593344 55847 537497   10% /
tmpfs          125596     1 125595   1% /dev/shm
/dev/sda1       51200   38  51162    1% /boot

查看inode節點號
[root@backup ~]# ls -lhi
總用量 71M
927186 -rw-------. 1 root root 1.1K 7月   6 00:51 anaconda-ks.cfg
915719 -rw-r--r--  1 root root 1.1K 5月  15 2015 epel-6.repo
915714 -rw-r--r--. 1 root root  22K 7月   6 00:51 install.log
915715 -rw-r--r--. 1 root root 5.8K 7月   6 00:50 install.log.syslog

2、查看block 的大小
[root@oldboy~]# df -h
Filesystem      Size Used Avail Use% Mounted on
/dev/sda3       8.8G 1.5G  7.0G  17% /
tmpfs           491M     0 491M   0% /dev/shm
/dev/sda1       190M  36M  145M  20% /boot

inode小結:

1)磁盤分區格式化ext4文件系統後會生成一定數量的inodeblock

2inode是索引節點,作用是存放文件的屬性信息以及作爲文件的索引(指向文件的實體)

3ext3  ext4 文件系統的block存放的是文件對的實際內容

4inode是一塊存儲空間,C6非啓動分區inode默認大小256字節。C5128字節

5inode是一串數字,不同的文件對用的inode(一串數字)在文件系統裏是唯一的

6inode相同的文件,互爲硬鏈接文件(一個文件的兩個入口)

7)一個文件被創建後至少要佔用一個inode和一個block

8block的大小一般有1k,2k,4k幾種。其中引導分區等爲1K,其他普通分區爲4k(C6)

9)如果一個文件很大,可能佔多個block,如果文件很小,至少佔一個block,並且剩餘空間浪費了。

10)inode大小和總量查看

[root@oldboy/]# dumpe2fs  /dev/sda3|egrep -i"block size|Inode size"

[root@oldboy/]# dumpe2fs  /dev/sda3|egrep -i"block count|Inode count"   

11) 查看inode的總量和使用量命令

df -i

12)如何生成及指定inode大小

格式化命令:mkfs.ext4 -b 2048 -I 256 /dev/sdb

block小結:

1)磁盤讀取數據是按block爲單位讀取的

2)一個文件可能佔用多個block,沒讀取一個block就會消耗一次IO

3)如果要提升IO的性能,那麼就要儘可能一次性讀取數據儘量多

4)一個block只能該存放一個文件的內容,無論內容有多少,如果block 4K,那存放1K的文件,就剩餘3K浪費了

5block 並非越大越好,block太大對於小文件存放就會浪費磁盤空間。例如:1000K的文件,block4K,佔用250blockblock1K,佔用1000block,訪問效率誰更高,消耗IO分爲爲250次和1000

6)根據也無需求,確定默認的block大小,如果是大文件(大於16K )一般設置block大一點,小文件(小於1k)一般設置block小一點

7block太大,例如4K,文件都是1K的,大大的浪費了磁盤空間,但是訪問性能高

8block太小,例如:1K,文件都是100K,消耗大量的IO

9block大小設置也是格式化分區時候確定的,命令mkfs.ext4 -b 2048 -I 256 /dev/sdb

10)企業裏文件都會比較大(一般都會大於4Kblock設置大一些會提升磁盤的訪問效率

11ext3/ext4 文件系統(centos 5 6 ),一般都設置爲4K


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章