書-Linux命令行與shell腳本編程大全(第3版)
我會把使用者名稱遮住,因為要保護個人隱私(・ω・)v
●指令-chmod
○指令-chown
●用戶共享資料夾
○Linux-文件系統(歷史) //都是文字(不要睡著了)୧☉□☉୨
●ext文件系統
○ext2文件系統
●ext3文件系統
○ext4文件系統
●Reiser文件系統
○JFS文件系統
●XFS文件系統
○寫時複製文件系統
●ZFS文件系統
○Btrf文件系統
指令-chmod
用來改變權限的,就跟上個筆記講的rwx三個加起來就是7。
$chmod 777 a
指令-chown
改變文件的擁有者跟組。
$sudo chown key a
也可以同時改擁有者跟組,如果只想要改組。
$sudo chown abc.she a
只改組。
$sudo chown abc.key a
用戶共享資料夾
我這邊大概講一下概念,先用mkdir創一個目錄那可以用預設的umask或是chmod把權限改成067,0=就是其他用戶不能更改,6=在組裡面的用戶可以讀寫但是不能刪除,7=擁有者可以有任何動作,
只要把用戶加入組裡就可以一起去存取資料了。
ext文件系統
最早的文件系統,稱擴展文件系統(extended filesystem,ext),以虛擬目錄來操作硬體設備,用塊來儲存資料,以'索引節點'來存放在虛擬目錄中的文件資料。索引節點有一個表稱為'索引節點表',每個'物理設備'都有單獨的表來儲存資料。
物理設備:這應該是大陸的用法,到後面就知道了。
1.名稱
2.大小
3.擁有者
4.件組
5.訪問權限
6.鏈結
系統文件創建文件時,會給一個叫做'索引編號',用來識別文件。
ext2文件系統
因為第一代的文件大小不能超過2G所以產生出第二代,就是第一代的擴展,'索引節點表'多了更多資訊,當然文件大小擴展為2TB(後期版擴展為32TB),可以容納資料庫這種大文件,第一代寫入資料時會有一個問題叫做'碎片化(fragmentation)'就是每個硬碟儲存資料時分散在各個地方,所以要花更多時間去尋找,而ext2以'資料分組'的方式減少碎片化的產生。缺點就是只要在存放過程中系統崩潰、關機都會造成文件的損壞。
日誌文件系統
算是用來'記錄'索引結點更新到哪裡,以防系統崩潰,關機時所造成的損壞。
3種方法:
1.數據模式-把索引節點、文件寫入日誌,效能不好。
2.有序模式-只有索引節點寫入,成功後刪除,這是性能與安全性的折中辦法。
3.回寫模式-只有索引節點寫入,不控制文件何時寫入,丟失文件風險高,比沒用好。
ext3文件系統
第三代(2001),每個儲存設備都有單獨的日誌,都是先寫入日誌在寫到儲存設備,完成後刪除日誌內容,也有缺點的就是誤刪沒有回溯功能、不能壓縮、不支持加密。
ext4文件系統
第四代(2008),大多數默認的文件系統,支持壓縮、加密,多了一個稱為'區段(extent)'的特性,儲存時以塊分配空間,索引節點表中只保留起始塊的位置,更省空間。還加入了塊預分配技術(block preallocation),就是預留空間,會以0填滿。
Reiser文件系統
2001年Hans Reiser為了Linux所創,只支持回寫模式,只把索引節點表寫入日誌,是最快的日誌文件系統之一。
1.可以調整文件系統的大小。
2.尾部壓縮(tailpacking)-就是將數據填入另一個文件的空白空間中。
JFS文件系統
最老的日誌之一,1990年,JFS(Journaled File System,日誌化文件系統),是IBM為Unix衍生版AIX開發,第2板被移植到Linux中。為有序日誌,以區段分配減少'碎片化'。
XFS文件系統
回寫日誌,高性能但風險高,因為並沒有寫入資料到日誌中,所以可以更改大小,只能擴大不能縮小。
寫時複製文件系統
一種叫寫時複製(copy-on-write,COW)的技術,COW兼顧性能與安全性,如果修改數據會被複製到另一個文件,更新完也不會消失(可是這樣不會很耗空間嗎?)。
ZFS文件系統
Sun公司(被Oracel公司併購)穩定的系統,沒有使用GPL(底下有網址介紹)許可,因為沒有GPL許可,所以沒有成為Linux默認系統。
Btrf文件系統
Oracel公司(甲骨文),稱B樹文件系統。穩定性、易用性、動調整以掛載系統大小,這並不是默認文件系統。
下級待續
http://inspiregate.com/internet/trends/74-comparison-of-five-kinds-of-standard-open-source-license-bsd-apache-gpl-lgpl-mit.html GPL介紹