1. 程式人生 > >linux文件屬性、文件類型、linux用戶和權限、軟鏈接和硬鏈接

linux文件屬性、文件類型、linux用戶和權限、軟鏈接和硬鏈接

linux 文件 權限 鏈接


作者Georgekai

歸檔:學習筆記

2017/12/22

day12

georgekai~~習慣:操作前備份,操作後檢查

本章正題: linux文件屬性、文件類型、linux用戶和權限、軟鏈接和硬鏈接

1.1 文件屬性

1.1.1 查看文件屬性的含義

[root@georgekai ~]# ls -lhi

total 40K

791060 -rw-------. 1 root root 1.1K Dec 11 04:20 anaconda-ks.cfg

註: 791060 #是Inode號碼(類似×××號)

-rw------ #文件的權限

. #這個點與SElinux有關

1 #這個1 是硬連接的數量

root #第一個root是文件的所有所有者

root #第二個root是文件的所屬用戶組

1.1k #文件的大小,默認為字節 B

Dec 11 04:20 #文件的修改時間

anaconda-ks-.cfg #文件名 ,這一部分不是文件的屬性

1.1.2 Inodeblock的作用

1 Inode作用:inode index node 索引節點 存放的是文件的屬性信息,block的位置(Inode 號碼)、大小、時間、類型、權限 .....不包括文件名

2block作用: 塊 ,存放的是文件的內容,數據文件存放的空間。

技術分享圖片

1.1.3 Inode
block怎麽來的?

1)硬盤===>分區===>格式化===>文件系統類型===>掛載

2Inodeblock是在格式化創建文件系統的時候回誕生的。

1.1.4 Inodeblock的關系:

用戶==>文件名==>Inode==>block==>文件內容

註:用戶讀取一個文件,後臺執行的操作

1.1.5 Inodeblock特點:

1Inode 存放的是文件屬性、和block的位置

2)創建一個非空文件至少要占用一個Inode和至少一個block

3)在同一個分區中,兩個文件的Inode號碼相同了,這倆個文件互為硬鏈接

4block是存放數據的空間

5block的大小在CentOS中默認是4k,比較大的文件會占用多個block(如4k),比較小的文 件(如1k,剩余的空間無法使用

6)磁盤讀取數據是按照block為單位讀取的。

7)每讀取一個block就會消耗一次磁盤的I/O(磁盤讀寫).


1.1.6 查看Inode數量

1)查看一個文件的Inode

[root@georgekai ~]# ls -lih

2)查看系統中的Inode數量

[root@georgekai ~]# df -i

Filesystem Inodes IUsed IFree IUse% Mounted on

/dev/sda3 1250928 58342 1192586 5% /

註:Filesystem :文件系統類型

Inodes :Inode總數

IUsed :已使用的Inode

IFree : 剩余Inode數

1.1.7 查看block大小

1)查看一個文件的大小

[root@georgekai ~]# ls -lh

2)系統中block的使用情況

[root@georgekai ~]# df -h

Filesystem Size Used Avail Use% Mounted on

/dev/sda3 19G 1.6G 17G 9% /

註:-h :帶單位顯示大小

size :總大小

Used :已使用的大小

Avail :剩余的大小

Mounted :掛載點(這個分區或設備掛載到哪個目錄下了)

實例1-1 企業案例:磁盤空間滿了,No space left on device(磁盤空間不足)的二種情況!

1)模擬block滿了

dd if=/dev/zero of=/data/kai.txt bs =8k count=10

解決:mv移動走磁盤內的文件,rm刪除不用的文件

2)模擬Inode滿了

一般定時任務編寫書寫會導致產生大量的小文件時Inode用光。

touch {1..6}.txt

解決:mv移動走磁盤內的文件,rm刪除不用的文件

1.2 linux文件類型

1.2.1 擴展名

如:.log .txt .conf .avi .mp3 用來區分不同類型的文件.

windowns下 : 是系統通過擴展名區分不同文件類型的。

linux下 : 是我們人類通過擴展名來區分不同文件類型的。

1.2.2 linux常見的文件類型

1- (在ls -l中) ffile):普通文件

普通文件的類型▲純文本文件 text /etc/hosts ▲二進制文件(命令)/bin/ls

▲數據文件(data)壓縮包

查看文件的類型file /tmp/etc.tar.gz

2)d (在ls -l中) d(dri ):目錄

3l (在ls -l中) llink) :軟連接,或者叫符號連接,快捷方式

1.3 linux用戶

1.3.1 用戶基礎內容

1UID == user id == 用戶id

2GID == group id == 用戶組id

1.3.2 linux用戶分類

1root UID=0 皇帝

2)虛擬用戶 UID=1-499 傀儡

註:1. linux下面每個程序/進程都要有個對應的用戶和用戶組

2. 無法登錄系統

3)普通用戶 UID=500-60000 百姓

1.3.3 查看用戶的UID

[root@georgekai wang]# id root

uid=0(root) gid=0(root) groups=0(root)

1.3.4 對於一個文件/目錄,用戶分為幾種。

1)所有者(主人)

2)屬組 (家庭、或者說屬於哪個用戶組)

3)其他用戶 (陌生人)

1.3.5 查看用戶屬於哪個組

[root@georgekai wang]# id george

uid=500(george) gid=500(george) groups=500(george)

註:屬於哪些組,看groups後面有多少個組

1.3.6 查看組內包含哪些用戶

[root@georgekai wang]# groups george

george : kai

1.3.7 與用戶相關的配置文件

1/etc/passwd #用戶的信息

技術分享圖片

技術分享圖片

需要註意的是:nologin是虛擬用戶默認的登錄shell,不能登錄到系統。

2/etc/shadow #用戶的密碼信息

3/etc/group #用戶組的信息

4/etc/gshadow #用戶組的密碼信息

1.3.8 連接到服務器需要知道什麽條件?

1ip

2) 用戶名root

3)密碼

4)默認端口號22

如何避免被黑:1. 修改遠程連接端口號52113

2. 禁止root用戶遠程登錄系統

1.4 linux權限

1r ==> 4 ==> read 讀取

2w ==> 2 ==> write 寫入、修改

3x ==> 1 ==> executed 可執行(如:命令、腳本)

4- ==> 0 ==> 沒有權限

權限的關系:主人 家庭 陌生人

rw- r-- r--

6 4 4

例:-rw-r--r--. 1 root root 61 Dec 11 04:18 shells

註:第一位是 - :表示是一個普通文件

第一位是d : 表示是一個目錄

第一位是f :表示是一個鏈接文件

1.5 軟鏈接與硬鏈接

1.5.1 硬鏈接:

1)硬鏈接作用:用於備份,防止誤刪除,誤修改。

2)創建硬鏈接

[root@georgekai wag]# ln 123.sh 123.txt

3)在同一個分區中,Inode號碼相同的文件互為硬鏈接。

[root@georgekai wang]# ls -lhi 123.*

523296 -rw-r--r--. 2 root root 0 Dec 22 10:43 123.sh

523296 -rw-r--r--. 2 root root 0 Dec 22 10:43 123.txt

註:可以發現他們的Inode號碼一樣

1.5.2 軟連接:

1)軟鏈接作用:相當於windows快捷方式,存放的是指向源文件的位置.

2)創建軟連接

[root@georgekai wang]# ln -s 123.sh 123.sh_soft

lrwxrwxrwx. 1 root root 6 Dec 22 12:41 123.sh_soft -> 123.sh

註:軟鏈接默認的權限都是777


linux文件屬性、文件類型、linux用戶和權限、軟鏈接和硬鏈接