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 Inode與block的作用
1) Inode作用:inode index node 索引節點 存放的是文件的屬性信息,block的位置(Inode 號碼)、大小、時間、類型、權限 .....不包括文件名。
2) block作用: 塊 ,存放的是文件的內容,數據文件存放的空間。
1.1.3 Inode和 block怎麽來的?
1)硬盤===>分區===>格式化===>文件系統類型===>掛載
2)Inode和block是在格式化創建文件系統的時候回誕生的。
1.1.4 Inode與block的關系:
用戶==>文件名==>Inode==>block==>文件內容
註:用戶讀取一個文件,後臺執行的操作
1.1.5 Inode和block特點:
1)Inode 存放的是文件屬性、和block的位置
2)創建一個非空文件至少要占用一個Inode和至少一個block
3)在同一個分區中,兩個文件的Inode號碼相同了,這倆個文件互為硬鏈接。
4)block是存放數據的空間
5)block的大小在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中) f(file):普通文件
普通文件的類型:▲純文本文件 text /etc/hosts ▲二進制文件(命令)/bin/ls
▲數據文件(data)壓縮包
查看文件的類型:file /tmp/etc.tar.gz
2)d (在ls -l中) d(dri ):目錄
3)l (在ls -l中) l(link) :軟連接,或者叫符號連接,快捷方式
1.3 linux用戶
1.3.1 用戶基礎內容
1)UID == user id == 用戶id
2)GID == group id == 用戶組id
1.3.2 linux用戶分類
1)root 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 連接到服務器需要知道什麽條件?
1)ip
2) 用戶名root
3)密碼
4)默認端口號22
如何避免被黑:1. 修改遠程連接端口號52113
2. 禁止root用戶遠程登錄系統
1.4 linux權限
1)r ==> 4 ==> read 讀取
2)w ==> 2 ==> write 寫入、修改
3)x ==> 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用戶和權限、軟鏈接和硬鏈接