>轉載請注明來源:飄零的代碼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條評論
主站蜘蛛池模板: 亚洲精品中文字幕一区在线 | 美女视频黄视大全视频免费网址 | 国产精品欧美一区二区三区 | 激情综合色综合啪啪开心 | 青青青国产手机免费视频 | 91精品国产免费久久国语麻豆 | 国产福利免费看 | 欧美另类日韩中文色综合 | a毛片免费全部播放完整成 a毛片免费全部在线播放毛 | a级毛片免费 | 离线枕边人在线观看 | 一本色道久久爱88a 一本色道久久爱88av俺来也 | 操人网站| 久久伊人免费视频 | 天天操夜夜添 | 99在线视频观看 | 特级毛片s级全部免费 | 免费中文字幕在线 | 99热国产这里只有精品 | 五月亚洲 | 精品视频在线观看免费 | 日韩视频欧美视频 | 成年美女 | 欧美日韩视频在线 | 欧美特级毛片aaaa | 久久亚洲国产成人精品性色 | 狼人伊人干 | 久久美女网 | 国产精品国产三级国产a | 欧美色v | 国产一级视频 | 中文字幕亚洲综合久久 | 久久最近最新中文字幕大全 | 欧美一级毛片视频 | 亚洲最色 | 天天射天天色天天干 | 国产一区二区三区四区在线观看 | 免费看美女隐私的网站 | 亚洲精品不卡在线 | 他也色在线| 99热精品6 |