1. 程式人生 > >Linux檔案系統之hard link&symbol link

Linux檔案系統之hard link&symbol link

引自:https://www.ibm.com/developerworks/cn/linux/l-cn-hardandsymb-links/


這個圖很清楚的表示出硬連結和軟連結的方式。

1.硬連結:

基本定義:硬連結是有著相同inode號的僅檔名不同的檔案(該檔名包含路徑資訊)。

理解:如圖,hard link和原始file通過同一個inode實現連結。在使用stat/ls -li檢視這兩個檔名的時候,可以看到他們的inode號是一樣的。

特性:

檔案有相同的inode和data block

只能對已存在的檔案進行建立hard link

不能交叉檔案系統進行建立

不能對目錄進行建立,只能對檔案建立

刪除一個hard link檔案並不影響其他有相同inode 號的檔案,並且該檔案也不會被刪除,只有等到所有的硬連結都刪除了,才刪除該inode及其相關data block的資訊

2.軟連結:

基本定義:某檔案的資料塊中存放的內容是另一檔案的路徑名的指向(通過實驗發現,省去了相同的路徑部分)。則該檔案就是symbol link。symbol link 有著自己的inode號以及使用者資料塊。

理解:如圖,symbol link有自己的inode,但是其資料塊中的內容是所連結的檔案的檔名。

特性:

  • 軟連結有自己的檔案屬性及許可權等;
  • 可對不存在的檔案或目錄建立軟連結;
  • 軟連結可交叉檔案系統;
  • 軟連結可對檔案或目錄建立;
  • 建立軟連結時,連結計數 i_nlink 不會增加;
  • 刪除軟連結並不影響被指向的檔案,但若被指向的原檔案被刪除,則相關軟連線被稱為死連結(即 dyling link,若被指向路徑檔案被重新建立,死連結可恢復為正常的軟連結)。
相關操作: 建立硬連結: ln 原始檔案 硬連結檔案 ln -s 原始檔案 軟連結檔案 stat或者ls -li 檔名 檢視inode號等資訊 find 起始目錄 -inum 1000 :從起始目錄開始查詢inode號為1000的檔案

相關推薦

Linux檔案系統hard link&symbol link

引自:https://www.ibm.com/developerworks/cn/linux/l-cn-hardandsymb-links/ 這個圖很清楚的表示出硬連結和軟連結的方式。 1.硬連結:

linux 檔案系統superblock

為了實際測試這個pagecache和對裸盤操作的區別,我一不小心敲錯命令,將一個磁碟的super_block給抹掉了,全是0, dd if =/dev/zero of=/dev/sda2 bs=4096 count=1 seek=2234789 2234789是我的某個測試檔案的

Linux檔案系統許可權體系

目錄 ①檔案屬性mode 什麼是檔案的許可權: >>>Linux一切皆檔案,多個使用者登入作業系統,系統有預設檔案,root檔案,每個使用者也有自己的檔案,此時需要對檔案系統進行       

Linux檔案系統使用者與組管理

目錄 ①使用者與組管理之重要檔案 (1)/etc/passwd (2)/etc/shadow (3)/etc/login.defs (4)/etc/skel (目錄) (5)/etc/de

Linux檔案系統壓縮資料&歸檔資料(打包)

目錄 ①Linux檔案壓縮工具 工具 檔案拓展名 gzip .gz bzip2 .bz2 zip

Linux檔案系統FHS

一、FSH簡介     FHS是Filesystem Hierarchy Standard的縮寫,目前絕大多數Linux版本採用這種檔案組織形式 二 、FSH下的標準目錄簡介     1./boot:引導檔案存放目錄,核心檔案(vmlinuz)、引導載入器(b

linux檔案系統mount流程分析

本質上,Ext3 mount的過程實際上是inode被替代的過程。例如,/dev/sdb塊裝置被mount到/mnt/alan目錄。那麼mount這個過程所需要解決的問題就是將/mnt/alan的dentry目錄項所指向的inode遮蔽掉,然後重新定位到/dev/sdb所

Linux檔案系統元資料

日誌檔案系統(journaling file systems)可防止系統崩潰時導致的資料不一致問題。對檔案系統元資料(metadata)的更改都被儲存在一份單獨的日誌裡,當發生系統崩潰時可以根據日誌正確地恢復資料。除此

linux檔案系統Inode

檔名 -> inode -> device block  轉自:http://www.cnblogs.com/itech/archive/2012/05/15/2502284.html 一、inode是什麼? 理解inode,要從檔案儲存說起。 檔

Linux檔案系統aufs

aufs的全稱是advanced multi-layered unification filesystem,主要功能是把多個資料夾的內容合併到一起,提供一個統一的檢視,主要用於各個Linux發行版的livecd中,以及docker裡面用來組織image。 據說由於auf

linux檔案系統i節點詳解

0塊:引導塊,每塊1024B 1塊:超級塊 2塊:i節點點陣圖 3塊:邏輯塊點陣圖 4...18:i節點區塊 19塊:資料塊,剛好和Linux檔案系統分析之二中提到的資料塊開始於第19塊吻合。 下面分析第一個i節點,它位於塊號為4的塊中,即是第五塊了。 00001000h: ED 41 00 00 80

Linux 檔案系統入門必看!

在 Linux 中,最直觀、最可見的部分就是 `檔案系統(file system)`。下面我們就來一起探討一下關於 Linux 中國的檔案系統,系統呼叫以及檔案系統實現背後的原理和思想。這些思想中有一些來源於 MULTICS,現在已經被 Windows 等其他作業系統使用。Linux 的設計理念就是 `小的就

Linux系統"皮毛系列"(二) Linux檔案系統的簡介

一、Linux檔案系統 1、檔案系統簡介 Linux系統的理念是:一切都是檔案。 其實這個是Unix系統的哲學思想,而Linux是由Unix系統而來,所以也繼承了這個思想: Unix系統把一切資源都看作是檔案,包括硬體裝置。硬體所形成的檔案,通常稱為裝置檔案。這樣使用者

Linux檔案系統分析二(超級塊,i節點點陣圖和邏輯塊點陣圖)

第二個扇區和第一個扇區一樣屬於引導塊,這裡就不列舉出其內容了,這裡的一塊是兩個扇區即1024B。接下來的一塊就是大名鼎鼎的超級塊了。其內容如下:00000400h: E0 01 A0 05 01 00 01 00 13 00 00 00 00 1C 08 10 ; ??..

Linux---cifs檔案系統samba的安裝配置及共享目錄

CIFS是一種通用網路檔案系統,主要用於網路裝置之間的檔案共享。CIFS可以在linux系統和windows系統之間共享檔案,因此這種檔案系統主要用於客戶端是windows系統。提供CIFS的服務是SAMBA,下文將介紹SAMBA服務的一些配置以及用法。

linux記憶體檔案系統指南

記憶體檔案系統使用及示例:ramdisk, ramfs, tmpfs  第一部分 在Linux中可以將一部分記憶體mount為分割槽來使用,通常稱之為RamDisk。  RamDisk有三種實現方式:  第一種就是傳統意義上的,可以格式化,然後載入。  這在Linux核心2.0/2.2就已經支援,其不足之

Linux檔案系統(五)---三大緩衝區buffer塊緩衝區

在檔案系統中,有三大緩衝為了提升效率:inode緩衝區、dentry緩衝區、塊緩衝。 (核心:2.4.37) 二、塊buffer緩衝區 0、整體來說,Linux 檔案緩衝區分為page cache和buffer cache,每一個 page cache 包含若

Linux檔案系統學習(四)read open系統呼叫

open的執行過程:v2.6.30  Open Sys_open |do_sys_open() |get_unused_fd_flags ()//得到一個可用的檔案描述符;通過該函式,可知檔案描述符                                      

Linux 核心/sys 檔案系統sysfs 屬性檔案

屬性檔案分為:匯流排屬性檔案,CLASS屬性檔案,裝置屬性檔案,驅動屬性檔案 DEVICE_ATTR 巨集宣告有四個引數,分別是名稱、許可權位、讀函式、寫函式 28 struct attribute { 29 const char *name; //設定該檔案的名字 30

Linux監控系統Nagios

系統管理 common smtp 是否 config xinetd 狀態信息 ima 進程 Linux監控系統之Nagios Nagios工作原理 Nagios的功能是監控服務和主機,但是其自身並不包括這部分功能,所有的監控、檢測功能都是聽過各種插件去完成的。在啟動Nagi