0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Linux文件系統(tǒng)解析

Linux愛好者 ? 來源:搜狐網(wǎng) ? 作者:搜狐網(wǎng) ? 2020-09-16 11:29 ? 次閱讀

Linux 中,最直觀、最可見的部分就是文件系統(tǒng)(file system)。下面我們就來一起探討一下關(guān)于 Linux 中國的文件系統(tǒng),系統(tǒng)調(diào)用以及文件系統(tǒng)實(shí)現(xiàn)背后的原理和思想。這些思想中有一些來源于 MULTICS,現(xiàn)在已經(jīng)被 Windows 等其他操作系統(tǒng)使用。Linux 的設(shè)計(jì)理念就是小的就是好的(Small is Beautiful)。雖然 Linux 只是使用了最簡單的機(jī)制和少量的系統(tǒng)調(diào)用,但是 Linux 卻提供了強(qiáng)大而優(yōu)雅的文件系統(tǒng)。

Linux文件系統(tǒng)基本概念

Linux 在最初的設(shè)計(jì)是 MINIX1 文件系統(tǒng),它只支持 14 字節(jié)的文件名,它的最大文件只支持到 64 MB。在 MINIX 1 之后的文件系統(tǒng)是 ext 文件系統(tǒng)。ext 系統(tǒng)相較于 MINIX 1 來說,在支持字節(jié)大小和文件大小上均有很大提升,但是 ext 的速度仍沒有 MINIX 1 快,于是,ext 2 被開發(fā)出來,它能夠支持長文件名和大文件,而且具有比 MINIX 1 更好的性能。這使他成為 Linux 的主要文件系統(tǒng)。只不過 Linux 會使用VFS曾支持多種文件系統(tǒng)。在 Linux 鏈接時(shí),用戶可以動態(tài)的將不同的文件系統(tǒng)掛載倒 VFS 上。

Linux 中的文件是一個(gè)任意長度的字節(jié)序列,Linux 中的文件可以包含任意信息,比如 ASCII 碼、二進(jìn)制文件和其他類型的文件是不加區(qū)分的。

為了方便起見,文件可以被組織在一個(gè)目錄中,目錄存儲成文件的形式在很大程度上可以作為文件處理。目錄可以有子目錄,這樣形成有層次的文件系統(tǒng),Linux 系統(tǒng)下面的根目錄是/,它通常包含了多個(gè)子目錄。字符/還用于對目錄名進(jìn)行區(qū)分,例如/usr/cxuan表示的就是根目錄下面的 usr 目錄,其中有一個(gè)叫做 cxuan 的子目錄。

下面我們介紹一下 Linux 系統(tǒng)根目錄下面的目錄名

/bin,它是重要的二進(jìn)制應(yīng)用程序,包含二進(jìn)制文件,系統(tǒng)的所有用戶使用的命令都在這里

/boot,啟動包含引導(dǎo)加載程序的相關(guān)文件

/dev,包含設(shè)備文件,終端文件,USB 或者連接到系統(tǒng)的任何設(shè)備

/etc,配置文件,啟動腳本等,包含所有程序所需要的配置文件,也包含了啟動/停止單個(gè)應(yīng)用程序的啟動和關(guān)閉 shell 腳本

/home,本地主要路徑,所有用戶用 home 目錄存儲個(gè)人信息

/lib,系統(tǒng)庫文件,包含支持位于 /bin 和 /sbin 下的二進(jìn)制庫文件

/lost+found,在根目錄下提供一個(gè)遺失+查找系統(tǒng),必須在 root 用戶下才能查看當(dāng)前目錄下的內(nèi)容

/media,掛載可移動介質(zhì)

/mnt,掛載文件系統(tǒng)

/opt,提供一個(gè)可選的應(yīng)用程序安裝目錄

/proc,特殊的動態(tài)目錄,用于維護(hù)系統(tǒng)信息和狀態(tài),包括當(dāng)前運(yùn)行中進(jìn)程信息

/root,root 用戶的主要目錄文件夾

/sbin,重要的二進(jìn)制系統(tǒng)文件

/tmp, 系統(tǒng)和用戶創(chuàng)建的臨時(shí)文件,系統(tǒng)重啟時(shí),這個(gè)目錄下的文件都會被刪除

/usr,包含絕大多數(shù)用戶都能訪問的應(yīng)用程序和文件

/var,經(jīng)常變化的文件,諸如日志文件或數(shù)據(jù)庫等

在 Linux 中,有兩種路徑,一種是絕對路徑(absolute path),絕對路徑告訴你從根目錄下查找文件,絕對路徑的缺點(diǎn)是太長而且不太方便。還有一種是相對路徑(relative path),相對路徑所在的目錄也叫做工作目錄(working directory)。

如果/usr/local/books是工作目錄,那么 shell 命令

cpbooksbooks-replica

就表示的是相對路徑,而

cp/usr/local/books/books/usr/local/books/books-replica

則表示的是絕對路徑。

在 Linux 中經(jīng)常出現(xiàn)一個(gè)用戶使用另一個(gè)用戶的文件或者使用文件樹結(jié)構(gòu)中的文件。兩個(gè)用戶共享同一個(gè)文件,這個(gè)文件位于某個(gè)用戶的目錄結(jié)構(gòu)中,另一個(gè)用戶需要使用這個(gè)文件時(shí),必須通過絕對路徑才能引用到他。如果絕對路徑很長,那么每次輸入起來會變的非常麻煩,所以 Linux 提供了一種鏈接(link)機(jī)制。

舉個(gè)例子,下面是一個(gè)使用鏈接之前的圖

以上所示,比如有兩個(gè)工作賬戶 jianshe 和 cxuan,jianshe 想要使用 cxuan 賬戶下的 A 目錄,那么它可能會輸入/usr/cxuan/A,這是一種未使用鏈接之后的圖。

使用鏈接后的示意如下

現(xiàn)在,jianshe 可以創(chuàng)建一個(gè)鏈接來使用 cxuan 下面的目錄了?!?/p>

當(dāng)一個(gè)目錄被創(chuàng)建出來后,有兩個(gè)目錄項(xiàng)也同時(shí)被創(chuàng)建出來,它們就是.和..,前者代表工作目錄自身,后者代表該目錄的父目錄,也就是該目錄所在的目錄。這樣一來,在 /usr/jianshe 中訪問 cxuan 中的目錄就是../cxuan/xxx

Linux 文件系統(tǒng)不區(qū)分磁盤的,這是什么意思呢?一般來說,一個(gè)磁盤中的文件系統(tǒng)相互之間保持獨(dú)立,如果一個(gè)文件系統(tǒng)目錄想要訪問另一個(gè)磁盤中的文件系統(tǒng),在 Windows 中你可以像下面這樣。

兩個(gè)文件系統(tǒng)分別在不同的磁盤中,彼此保持獨(dú)立。

而在 Linux 中,是支持掛載的,它允許一個(gè)磁盤掛在到另外一個(gè)磁盤上,那么上面的關(guān)系會變成下面這樣

掛在之后,兩個(gè)文件系統(tǒng)就不再需要關(guān)心文件系統(tǒng)在哪個(gè)磁盤上了,兩個(gè)文件系統(tǒng)彼此可見。

Linux 文件系統(tǒng)的另外一個(gè)特性是支持加鎖(locking)。在一些應(yīng)用中會出現(xiàn)兩個(gè)或者更多的進(jìn)程同時(shí)使用同一個(gè)文件的情況,這樣很可能會導(dǎo)致競爭條件(race condition)。一種解決方法是對其進(jìn)行加不同粒度的鎖,就是為了防止某一個(gè)進(jìn)程只修改某一行記錄從而導(dǎo)致整個(gè)文件都不能使用的情況。

POSIX 提供了一種靈活的、不同粒度級別的鎖機(jī)制,允許一個(gè)進(jìn)程使用一個(gè)不可分割的操作對一個(gè)字節(jié)或者整個(gè)文件進(jìn)行加鎖。加鎖機(jī)制要求嘗試加鎖的進(jìn)程指定其要加鎖的文件,開始位置以及要加鎖的字節(jié)

Linux 系統(tǒng)提供了兩種鎖:共享鎖和互斥鎖。如果文件的一部分已經(jīng)加上了共享鎖,那么再加排他鎖是不會成功的;如果文件系統(tǒng)的一部分已經(jīng)被加了互斥鎖,那么在互斥鎖解除之前的任何加鎖都不會成功。為了成功加鎖、請求加鎖的部分的所有字節(jié)都必須是可用的。

在加鎖階段,進(jìn)程需要設(shè)計(jì)好加鎖失敗后的情況,也就是判斷加鎖失敗后是否選擇阻塞,如果選擇阻塞式,那么當(dāng)已經(jīng)加鎖的進(jìn)程中的鎖被刪除時(shí),這個(gè)進(jìn)程會解除阻塞并替換鎖。如果進(jìn)程選擇非阻塞式的,那么就不會替換這個(gè)鎖,會立刻從系統(tǒng)調(diào)用中返回,標(biāo)記狀態(tài)碼表示是否加鎖成功,然后進(jìn)程會選擇下一個(gè)時(shí)間再次嘗試。

加鎖區(qū)域是可以重疊的。下面我們演示了三種不同條件的加鎖區(qū)域。

如上圖所示,A 的共享鎖在第四字節(jié)到第八字節(jié)進(jìn)行加鎖

如上圖所示,進(jìn)程在 A 和 B 上同時(shí)加了共享鎖,其中 6 - 8 字節(jié)是重疊鎖

如上圖所示,進(jìn)程 A 和 B 和 C 同時(shí)加了共享鎖,那么第六字節(jié)和第七字節(jié)是共享鎖。

如果此時(shí)一個(gè)進(jìn)程嘗試在第 6 個(gè)字節(jié)處加鎖,此時(shí)會設(shè)置失敗并阻塞,由于該區(qū)域被 A B C 同時(shí)加鎖,那么只有等到 A B C 都釋放鎖后,進(jìn)程才能加鎖成功。

Linux 文件系統(tǒng)調(diào)用

許多系統(tǒng)調(diào)用都會和文件與文件系統(tǒng)有關(guān)。我們首先先看一下對單個(gè)文件的系統(tǒng)調(diào)用,然后再來看一下對整個(gè)目錄和文件的系統(tǒng)調(diào)用。

為了創(chuàng)建一個(gè)新的文件,會使用到creat方法,注意沒有e。

這里說一個(gè)小插曲,曾經(jīng)有人問 UNIX 創(chuàng)始人 Ken Thompson,如果有機(jī)會重新寫 UNIX ,你會怎么辦,他回答自己要把 creat 改成 create ,哈哈哈哈。

這個(gè)系統(tǒng)調(diào)用的兩個(gè)參數(shù)是文件名和保護(hù)模式

fd=creat("aaa",mode);

這段命令會創(chuàng)建一個(gè)名為 aaa 的文件,并根據(jù) mode 設(shè)置文件的保護(hù)位。這些位決定了哪個(gè)用戶可能訪問文件、如何訪問。

creat 系統(tǒng)調(diào)用不僅僅創(chuàng)建了一個(gè)名為 aaa 的文件,還會打開這個(gè)文件。為了允許后續(xù)的系統(tǒng)調(diào)用訪問這個(gè)文件,這個(gè) creat 系統(tǒng)調(diào)用會返回一個(gè)非負(fù)整數(shù), 這個(gè)就叫做文件描述符(file descriptor),也就是上面的 fd。

如果在已經(jīng)存在的文件上調(diào)用了 creat 系統(tǒng)調(diào)用,那么該文件中的內(nèi)容會被清除,從 0 開始。通過設(shè)置合適的參數(shù),open系統(tǒng)調(diào)用也能夠創(chuàng)建文件。

下面讓我們看一看主要的系統(tǒng)調(diào)用,如下表所示

為了對一個(gè)文件進(jìn)行讀寫的前提是先需要打開文件,必須使用 creat 或者 open 打開,參數(shù)是打開文件的方式,是只讀、可讀寫還是只寫。open 系統(tǒng)調(diào)用也會返回文件描述符。打開文件后,需要使用close系統(tǒng)調(diào)用進(jìn)行關(guān)閉。close 和 open 返回的 fd 總是未被使用的最小數(shù)量。

什么是文件描述符?文件描述符就是一個(gè)數(shù)字,這個(gè)數(shù)字標(biāo)示了計(jì)算機(jī)操作系統(tǒng)中打開的文件。它描述了數(shù)據(jù)資源,以及訪問資源的方式。

當(dāng)程序要求打開一個(gè)文件時(shí),內(nèi)核會進(jìn)行如下操作

授予訪問權(quán)限

在全局文件表(global file table)中創(chuàng)建一個(gè)條目(entry)

向軟件提供條目的位置

文件描述符由唯一的非負(fù)整數(shù)組成,系統(tǒng)上每個(gè)打開的文件至少存在一個(gè)文件描述符。文件描述符最初在 Unix 中使用,并且被包括 Linux,macOS 和 BSD 在內(nèi)的現(xiàn)代操作系統(tǒng)所使用。

當(dāng)一個(gè)進(jìn)程成功訪問一個(gè)打開的文件時(shí),內(nèi)核會返回一個(gè)文件描述符,這個(gè)文件描述符指向全局文件表的 entry 項(xiàng)。這個(gè)文件表項(xiàng)包含文件的 inode 信息,字節(jié)位移,訪問限制等。例如下圖所示

默認(rèn)情況下,前三個(gè)文件描述符為STDIN(標(biāo)準(zhǔn)輸入)、STDOUT(標(biāo)準(zhǔn)輸出)、STDERR(標(biāo)準(zhǔn)錯(cuò)誤)。

標(biāo)準(zhǔn)輸入的文件描述符是 0 ,在終端中,默認(rèn)為用戶的鍵盤輸入

標(biāo)準(zhǔn)輸出的文件描述符是 1 ,在終端中,默認(rèn)為用戶的屏幕

與錯(cuò)誤有關(guān)的默認(rèn)數(shù)據(jù)流是 2,在終端中,默認(rèn)為用戶的屏幕。

在簡單聊了一下文件描述符后,我們繼續(xù)回到文件系統(tǒng)調(diào)用的探討。

在文件系統(tǒng)調(diào)用中,開銷最大的就是 read 和 write 了。read 和 write 都有三個(gè)參數(shù)

文件描述符:告訴需要對哪一個(gè)打開文件進(jìn)行讀取和寫入

緩沖區(qū)地址:告訴數(shù)據(jù)需要從哪里讀取和寫入哪里

統(tǒng)計(jì):告訴需要傳輸多少字節(jié)

這就是所有的參數(shù)了,這個(gè)設(shè)計(jì)非常簡單輕巧。

雖然幾乎所有程序都按順序讀取和寫入文件,但是某些程序需要能夠隨機(jī)訪問文件的任何部分。與每個(gè)文件相關(guān)聯(lián)的是一個(gè)指針,該指針指示文件中的當(dāng)前位置。順序讀?。ɑ?qū)懭耄r(shí),它通常指向要讀?。▽懭耄┑南乱粋€(gè)字節(jié)。如果指針在讀取 1024 個(gè)字節(jié)之前位于 4096 的位置,則它將在成功讀取系統(tǒng)調(diào)用后自動移至 5120 的位置。

Lseek系統(tǒng)調(diào)用會更改指針位置的值,以便后續(xù)對 read 或 write 的調(diào)用可以在文件中的任何位置開始,甚至可以超出文件末尾。

lseek = Lseek ,段首大寫。

lseek 避免叫做 seek 的原因就是 seek 已經(jīng)在之前 16 位的計(jì)算機(jī)上用于搜素功能了。

Lseek有三個(gè)參數(shù):第一個(gè)是文件的文件描述符,第二個(gè)是文件的位置;第三個(gè)告訴文件位置是相對于文件的開頭,當(dāng)前位置還是文件的結(jié)尾

lseek(intfildes,off_toffset,intwhence);

lseek 的返回值是更改文件指針后文件中的絕對位置。lseek 是唯一從來不會造成真正磁盤查找的系統(tǒng)調(diào)用,它只是更新當(dāng)前的文件位置,這個(gè)文件位置就是內(nèi)存中的數(shù)字。

對于每個(gè)文件,Linux 都會跟蹤文件模式(常規(guī),目錄,特殊文件),大小,最后修改時(shí)間以及其他信息。程序能夠通過stat系統(tǒng)調(diào)用看到這些信息。第一個(gè)參數(shù)就是文件名,第二個(gè)是指向要放置請求信息結(jié)構(gòu)的指針。這些結(jié)構(gòu)的屬性如下圖所示。

fstat調(diào)用和stat相同,只有一點(diǎn)區(qū)別,fstat 可以對打開文件進(jìn)行操作,而 stat 只能對路徑進(jìn)行操作。

pipe文件系統(tǒng)調(diào)用被用來創(chuàng)建 shell 管道。它會創(chuàng)建一系列的偽文件,來緩沖和管道組件之間的數(shù)據(jù),并且返回讀取或者寫入緩沖區(qū)的文件描述符。在管道中,像是如下操作

sort

sort 進(jìn)程將會輸出到文件描述符1,也就是標(biāo)準(zhǔn)輸出,寫入管道中,而 head 進(jìn)程將從管道中讀入。在這種方式中,sort 只是從文件描述符 0 中讀取并寫入到文件描述符 1 (管道)中,甚至不知道它們已經(jīng)被重定向了。如果沒有重定向的話,sort 會自動的從鍵盤讀入并輸出到屏幕中。

最后一個(gè)系統(tǒng)調(diào)用是fcntl,它用來鎖定和解鎖文件,應(yīng)用共享鎖和互斥鎖,或者是執(zhí)行一些文件相關(guān)的其他操作。

現(xiàn)在我們來關(guān)心一下和整體目錄和文件系統(tǒng)相關(guān)的系統(tǒng)調(diào)用,而不是把精力放在單個(gè)的文件上,下面列出了這些系統(tǒng)調(diào)用,我們一起來看一下。

可以使用 mkdir 和 rmdir 創(chuàng)建和刪除目錄。但是需要注意,只有目錄為空時(shí)才可以刪除。

創(chuàng)建一個(gè)指向已有文件的鏈接時(shí)會創(chuàng)建一個(gè)目錄項(xiàng)(directory entry)。系統(tǒng)調(diào)用 link 來創(chuàng)建鏈接,oldpath 代表已有的路徑,newpath 代表需要鏈接的路徑,使用unlink可以刪除目錄項(xiàng)。當(dāng)文件的最后一個(gè)鏈接被刪除時(shí),這個(gè)文件會被自動刪除。

使用chdir系統(tǒng)調(diào)用可以改變工作目錄。

最后四個(gè)系統(tǒng)調(diào)用是用于讀取目錄的。和普通文件類似,他們可以被打開、關(guān)閉和讀取。每次調(diào)用readdir都會以固定的格式返回一個(gè)目錄項(xiàng)。用戶不能對目錄執(zhí)行寫操作,但是可以使用 creat 或者 link 在文件夾中創(chuàng)建一個(gè)目錄,或使用 unlink 刪除一個(gè)目錄。用戶不能在目錄中查找某個(gè)特定文件,但是可以使用rewindir作用于一個(gè)打開的目錄,使他能在此從頭開始讀取。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11161

    瀏覽量

    208460
  • 文件系統(tǒng)
    +關(guān)注

    關(guān)注

    0

    文章

    283

    瀏覽量

    19860

原文標(biāo)題:文件系統(tǒng):隱匿在 Linux 背后的機(jī)制

文章出處:【微信號:LinuxHub,微信公眾號:Linux愛好者】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    Linux文件系統(tǒng)的掛載過程

    Linux文件系統(tǒng)(rootfs)是Linux系統(tǒng)中所有其他文件系統(tǒng)和目錄的起點(diǎn),它是內(nèi)核啟動時(shí)掛載的第一個(gè)
    的頭像 發(fā)表于 10-05 16:50 ?145次閱讀

    如何構(gòu)建Linux文件系統(tǒng)

    構(gòu)建Linux文件系統(tǒng)是一個(gè)涉及多個(gè)步驟和概念的過程,它對于Linux系統(tǒng)的啟動和運(yùn)行至關(guān)重要。
    的頭像 發(fā)表于 10-05 16:47 ?147次閱讀

    服務(wù)器數(shù)據(jù)恢復(fù)—xfs文件系統(tǒng)服務(wù)器數(shù)據(jù)恢復(fù)案例

    某公司一臺服務(wù)器,連接了一臺存儲。該服務(wù)器安裝linux操作系統(tǒng),文件系統(tǒng)為xfs。 在運(yùn)行過程中該服務(wù)器出現(xiàn)故障,管理員使用xfs_repair工具試圖對xfs文件系統(tǒng)進(jìn)行修復(fù)但失
    的頭像 發(fā)表于 08-19 10:49 ?199次閱讀

    如何更改Linux文件系統(tǒng)終端顯示顏色

    自己制作的簡單 Linux 文件系統(tǒng),你會發(fā)現(xiàn)終端顯示為黑白色,很不好看
    的頭像 發(fā)表于 08-12 17:29 ?283次閱讀
    如何更改<b class='flag-5'>Linux</b><b class='flag-5'>文件系統(tǒng)</b>終端顯示顏色

    如何修改buildroot和debian文件系統(tǒng)

    本文檔主要介紹在沒有編譯環(huán)境的情況下,如何修改buildroot和debian文件系統(tǒng)方法,如在buildroot文件系統(tǒng)中添加文件、修改目錄等文件操作,在debian
    的頭像 發(fā)表于 07-22 17:46 ?353次閱讀
    如何修改buildroot和debian<b class='flag-5'>文件系統(tǒng)</b>

    Linux高級文件系統(tǒng)管理詳解

    階的文件系統(tǒng)就得要學(xué)習(xí),本章我們會介紹磁盤陣列 (RAID),及邏輯卷軸文件系統(tǒng) (LVM),這些工具都可以幫助你管理與維護(hù)使用者可用的磁盤容量.
    的頭像 發(fā)表于 07-16 16:31 ?276次閱讀

    linux--sysfs文件系統(tǒng)

    sysfs文件系統(tǒng) sysfs,全稱為System Filesystem,是一個(gè)由Linux內(nèi)核實(shí)現(xiàn)的虛擬文件系統(tǒng)。它扮演著一個(gè)橋梁的角色,將內(nèi)核中的設(shè)備和驅(qū)動程序信息以文件的形式呈現(xiàn)
    的頭像 發(fā)表于 07-08 11:37 ?590次閱讀
    <b class='flag-5'>linux</b>--sysfs<b class='flag-5'>文件系統(tǒng)</b>

    Linux系統(tǒng)如何擴(kuò)展文件系統(tǒng)

    當(dāng)數(shù)據(jù)盤沒有創(chuàng)建分區(qū),只在設(shè)備上創(chuàng)建了文件系統(tǒng)?;蛘吒袷交擞脖P,就直接mount上系統(tǒng)使用。
    的頭像 發(fā)表于 02-21 09:53 ?757次閱讀

    鴻蒙輕內(nèi)核源碼分析:虛擬文件系統(tǒng) VFS

    VFS(Virtual File System)是文件系統(tǒng)的虛擬層,它不是一個(gè)實(shí)際的文件系統(tǒng),而是一個(gè)異構(gòu)文件系統(tǒng)之上的軟件粘合層,為用戶提供統(tǒng)一的類 Unix 文件操作接口。由于不同
    的頭像 發(fā)表于 02-18 14:50 ?698次閱讀

    如何使用squashfs只讀文件系統(tǒng)制作Linux系統(tǒng)文件

    在 Colibri iMX6 的 eMMC 上我們將使用以下分區(qū)規(guī)劃。BootFS 為 FAT32 格式,該分區(qū)上包含 Linux 內(nèi)核文件,device tree 等啟動文件,如果是 iMX8,則還包含一些其他固件
    發(fā)表于 01-09 11:43 ?1563次閱讀
    如何使用squashfs只讀<b class='flag-5'>文件系統(tǒng)</b>制作<b class='flag-5'>Linux</b><b class='flag-5'>系統(tǒng)</b><b class='flag-5'>文件</b>

    如何配置只讀屬性的文件系統(tǒng)(Colibri iMX7為例)

    由于存儲介質(zhì)不同,Nand Flash 上通常采用如 jffs2、UBI 等格式文件系統(tǒng)。Toradex 的 Linux 系統(tǒng)使用 UBI 文件系統(tǒng)。
    的頭像 發(fā)表于 12-07 09:31 ?957次閱讀
    如何配置只讀屬性的<b class='flag-5'>文件系統(tǒng)</b>(Colibri iMX7為例)

    服務(wù)器數(shù)據(jù)恢復(fù)—ocfs2文件系統(tǒng)被誤格式化為Ext4文件系統(tǒng)的數(shù)據(jù)恢復(fù)案例

    由于工作人員的誤操作,將Ext4文件系統(tǒng)誤裝入到存儲中Ocfs2文件系統(tǒng)數(shù)據(jù)卷上,導(dǎo)致原Ocfs2文件系統(tǒng)被格式化為Ext4文件系統(tǒng)。 由于Ext4
    的頭像 發(fā)表于 12-04 10:49 ?386次閱讀
    服務(wù)器數(shù)據(jù)恢復(fù)—ocfs2<b class='flag-5'>文件系統(tǒng)</b>被誤格式化為Ext4<b class='flag-5'>文件系統(tǒng)</b>的數(shù)據(jù)恢復(fù)案例

    Linux文件系統(tǒng)層的主要結(jié)構(gòu)

    Linux 文件系統(tǒng)體系結(jié)構(gòu)是一個(gè)對復(fù)雜系統(tǒng)進(jìn)行抽象化的有趣例子。通過使用一組通用的 API 函數(shù),Linux 可以在許多種存儲設(shè)備上支持許多種文件
    的頭像 發(fā)表于 11-10 10:37 ?508次閱讀
    <b class='flag-5'>Linux</b><b class='flag-5'>文件系統(tǒng)</b>層的主要結(jié)構(gòu)

    Linux文件系統(tǒng)特點(diǎn)

    Linux文件系統(tǒng)特點(diǎn) 文件系統(tǒng)要有嚴(yán)格的組織形式,使得文件能夠以塊為單位進(jìn)行存儲。 文件系統(tǒng)中也要有索引區(qū),用來方便查找一個(gè)
    的頭像 發(fā)表于 11-09 14:48 ?1040次閱讀
    <b class='flag-5'>Linux</b>的<b class='flag-5'>文件系統(tǒng)</b>特點(diǎn)

    如何把文件系統(tǒng)燒到EMMC并從EMMC加載

    如何下載并從SD卡加載文件系統(tǒng),提到過可以從EMMC引導(dǎo)系統(tǒng),本篇將為您介紹如何把文件系統(tǒng)燒到EMMC,并從EMMC加載。
    的頭像 發(fā)表于 10-30 16:06 ?2611次閱讀
    如何把<b class='flag-5'>文件系統(tǒng)</b>燒到EMMC并從EMMC加載