>轉載請注明來源:飄零的代碼piao2010’sblog,謝謝!^_^>>本文鏈接地址:Linuxcpmvrmln命令對于inode和dentry的影響在看《unix環境高級編程》文件系統一節的時候,發現自己對文件系統相關的概念不是很清晰。首先介紹兩個基本概念:第一個重要概念inode(中文名:索引節點),包含文件的大部分信息:*文件的字節數*文件擁有者的UserID*文件的GroupID*文件的讀、寫、執行權限*文件的時間戳,共有三個:ctime指in" />

亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

Linux cp mv rm ln 命令對于 inode 和 dentry

系統 2062 0

? ? ? ? ? ? ? ? ? ? ? ? ?>>轉載請注明來源: 飄零的代碼 piao2010 ’s blog ,謝謝!^_^
>>本文鏈接地址: Linux cp mv rm ln 命令對于 inode 和 dentry 的影響

在看《unix環境高級編程》文件系統一節的時候,發現自己對文件系統相關的概念不是很清晰。
首先介紹兩個基本概念:
第一個重要概念 inode (中文名:索引節點) ,包含文件的大部分信息:
  * 文件的字節數
  * 文件擁有者的User ID
  * 文件的Group ID
  * 文件的讀、寫、執行權限
  * 文件的時間戳,共有三個:ctime指inode上一次變動的時間,mtime指文件內容上一次變動的時間,atime指文件上一次打開的時間。
  * 鏈接數, 即有多少目錄項指向這個inode
  * 文件數據block的位置

通過stat命令可以很方便地查看文件inode。

第二個重要概念 dentry (中文名:目錄項) ,它包含文件名和指向inode的指針等信息,也就是說 通過dentry可以找到對應的inode,再通過inode找到文件存儲的block位置 。

如果要更加深入學習文件系統,可以參考 這篇文章

接下來步入正題:分析 Linux cp mv rm ln 命令對于 inode 和 dentry 的影響。
實驗方法也很簡單,只要有一臺linux主機就行,分別用cp mv rm ln 命令對文件操作,然后利用 ls -il 查看文件inode號,stat查看inode信息。

我直接給出測試結論:

cp命令:
1)分配一個未使用的inode號,在inode 表中添加一個新項目;(注意:如果是cp到一個 已經存在的文件,則inode號采用被覆蓋之前的目標文件的inode號 ,如果你對運行中的apache 共享模塊so文件進行這種操作,就會出現 Segmentation fault
2)在目錄中新建一個目錄項,并指向步驟1)中的inode;
3)把數據復制到block中。

mv命令:
a. 如果mv命令的目標和源文件所在的文件系統相同:
1)使用新文件名建立目錄項;
2)刪除帶有原來文件名的目錄項;
備注:該操作對inode表沒有影響(除時間戳),對數據的位置也沒有影響,不移動任何數據。(即使是mv到一個 已經存在的 目標文件,新目錄項指源文件inode,會先刪除目標文件的目錄項,所以如果你對運行中的apache的共享模塊so文件進行這種操作的話不會有問題,新的so文件 inode號變了

b. 如果目標和源文件所在文件系統不相同,就是cp和rm;

rm命令:
1)減少鏈接數量,如果鏈接數為0釋放inode(inode號碼可以被重新使用);
2)如果inode被釋放,則數據塊放到可用空間列表中;
3)刪除目錄中的目錄項

ln命令:
a. 硬鏈接 ln 文件名 鏈接名
多個目錄項指向同一個inode號;
用rm來刪除硬鏈接文件:
1)僅僅是減少鏈接數量;
2)只要有一個鏈接存在文件就存在;
3)當鏈接數為零,文件就被刪除了。

b. 軟鏈接(符號鏈接) ln -s 文件名 鏈接名
符號鏈接的內容就是它所指向的文件名;
符號鏈接文件有自己的inode;
rm刪除的話只是刪除這個鏈接文件。

參考資料:
http://blog.csdn.net/rstevens/article/details/1824785
http://iminmin.blog.51cto.com/689308/402660
《unix環境高級編程》

Linux cp mv rm ln 命令對于 inode 和 dentry 的影響


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦?。?!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 久久精品亚洲欧美日韩久久 | 99ri国产 | 七月婷婷精品视频在线观看 | 欧美一区二区三区视频 | 天天夜夜狠狠 | 天天操天天干天天摸 | 五月综合激情视频在线观看 | 黄色影院在线观看视频 | 神马影院在线观看我不卡 | 四虎影视永久免费观看网址 | 亚州成人| 国产成人免费手机在线观看视频 | 久久精品国产一区二区 | 手机在线看片国产 | 四虎成人影视 | 色激情综合网 | 亚洲激情在线观看 | 欧美视频第一区 | 男人猛桶女人下面视频国产 | 狠狠操天天操夜夜操 | 综合另类小说色区色噜噜 | 成人网在线看 | 99视频精品全部免费免费观 | 亚洲欧洲国产经精品香蕉网 | 国产成人毛片视频不卡在线 | 日韩美女一级毛片 | 久久青 | 全免费a级毛片免费看不卡 全免费a级毛片免费看视频免 | 毛片一级在线观看 | 天天操天天摸天天爽 | 日日骚 | 欧美综合亚洲 | 九草在线免费观看 | 久久手机在线视频 | 热re66久久精品国产99re | 在线免费观看一区二区三区 | 日本中文字幕在线看 | 日韩经典中文字幕 | 久久精品国产亚洲 | 99热网站| 久久精品青草社区 |