亚洲熟女综合色一区二区三区,亚洲精品中文字幕无码蜜桃,亚洲va欧美va日韩va成人网,亚洲av无码国产一区二区三区,亚洲精品无码久久久久久久

Linux文件系統(tǒng)有哪些必備知識?【Linux每日一個知識點第76期】

在Linux中,一切皆文件。作為Linux系統(tǒng)學習的基礎知識,掌握這項內容是對Linux運維工程師的基本要求。今天我們整理了一些相關的文件系統(tǒng)內容,希望通過較高的層次來對文件系統(tǒng)進行解析,幫助大家更加深入的理解。


【Linux每日一個知識點第76期】Linux文件系統(tǒng)有哪些必備知識?

1.Linux磁盤分區(qū)和目錄

??Linux發(fā)行版本之間的差別很少,差別主要表現(xiàn)在系統(tǒng)管理的特色工具以及軟件包管理方式的不同。目錄結構基本上都是一樣的。?Windows的文件結構是多個并列的樹狀結構,最頂部的是不同的磁盤(分區(qū)),如:C,D,E,F(xiàn)等。

Linux的文件結構是單個的樹狀結構.可以用tree進行展示。?在Ubuntu下安裝tree(sudo apt-get install tree),并可通過命令來查看。

每次安裝系統(tǒng)的時候我們都會進行分區(qū),Linux下磁盤分區(qū)和目錄的關系如下:

–??????任何一個分區(qū)都必須掛載到某個目錄上。

–??????目錄是邏輯上的區(qū)分。分區(qū)是物理上的區(qū)分。

–??????磁盤Linux分區(qū)都必須掛載到目錄樹中的某個具體的目錄上才能進行讀寫操作。

–??????根目錄是所有Linux的文件和目錄所在的地方,需要掛載上一個磁盤分區(qū)。

以下是我們可能存在的一種目錄和分區(qū)關系:

Linux文件系統(tǒng)有哪些必備知識?【Linux每日一個知識點第76期】

?圖1:目錄和分區(qū)關系

Q:如何查看分區(qū)和目錄及使用情況?

–??????fdisk查看硬盤分區(qū)表

–??????df:查看分區(qū)使用情況

–??????du:?查看文件占用空間情況

Q:?為什么要分區(qū),如何分區(qū)?

–??????可以把不同資料,分別放入不同分區(qū)中管理,降低風險。

–??????大硬盤搜索范圍大,效率低

–??????磁盤配合只能對分區(qū)做設定

–??????/home /var /usr/local經(jīng)常是單獨分區(qū),因為經(jīng)常會操作,容易產(chǎn)生碎片

2.Mount掛載和NFS簡介

掛載的概念?:當要使用某個設備時,例如要讀取硬盤中的一個格式化好的分區(qū)、光盤或軟件等設備時,必須先把這些設備對應到某個目錄上,而這個目錄就稱為“掛載點(mount point)”,這樣才可以讀取這些設備,而這些對應的動作就是“掛載”。?將物理分區(qū)細節(jié)屏蔽掉。用戶只有統(tǒng)一的邏輯概念。所有的東西都是文件。Mount命令可以實現(xiàn)掛載:

mount [-fnrsvw] [-t vfstype] [-o options] device dir

Q:所有的磁盤分區(qū)都必須被掛載上才能使用,那么我們機器上的硬盤分區(qū)是如何被掛載的?

A:這主要是它利用了/etc/fstab文件。每次內核加載它知道從這里開始mount文件系統(tǒng)。每次系統(tǒng)啟動會根據(jù)該文件定義自動掛載。若沒有被自動掛載,分區(qū)將不能使用。?如下是我的/etc/fstab的定義,主要是根據(jù)裝機的分區(qū)來的:

# <file system> <mount point>???<type>??<options>???????<dump>??<pass>

proc????????????/proc???????????proc????defaults????????0???????0

#/dev/sda1被自動掛載到??/

UUID=cb1934d0-4b72-4bbf-9fad-885d2a8eeeb1 /???????????????ext3????relatime,errors=remount-ro 0???????1

# /dev/sda5?被自動掛載到分區(qū)/home

UUID=c40f813b-bb0e-463e-aa85-5092a17c9b94 /home???????????ext3????relatime????????0???????2

#/dev/sda7?被自動掛載到/work

UUID=0f918e7e-721a-41c6-af82-f92352a568af /work???????????ext3????relatime????????0???????2

#分區(qū)?/dev/sda6被自動掛載到swap

UUID=2f8bdd05-6f8e-4a6b-b166-12bb52591a1f none????????????swap????sw??????????????0???????0

Q:移動硬盤如何掛載?如何掛載一個新的分區(qū)?

移動硬盤有驅動模塊會自動掛載,如果有個新硬盤,要先進行分區(qū),并通過mount命令掛載到某個文件夾。如果要自動掛載則可以修改/etc/fstab文件.

NFS簡介:NFS相信在很多地方都有廣泛使用,是一個非常好的文件共享方式。我們公司所使用的上傳服務就是把文件上傳到某臺網(wǎng)絡服務器上,中間就是通過NFS實現(xiàn)。

使用NFS客戶端可以透明的地訪問服務器端的文件。NFS也是通過mount來實現(xiàn),底層是通過NFS通信協(xié)議實現(xiàn)?;驹恚?/span>

Linux文件系統(tǒng)有哪些必備知識?【Linux每日一個知識點第76期】

圖2:NFS基本原理

Ubuntu下面Ubuntu下的例子

服務端:

$apt-get install nfs-kernel-server

vi /etc/exports?添加nfs目錄: /personal/nfs_share

10.1.60.34(rw,sync,no_root_squash)

$sudo exportfs -r

$sudo /etc/init.d/portmap start

$sudo /etc/init.d/nfs-kernel-server start

客戶端:

$sudo apt-get install nfs-common

$sudo mount 10.19.34.76:/personal/nfs_share ~/nfsshare例子:

3.文件類型

Linux下面的文件類型主要有:

  1. a)普通文件:C語言元代碼、SHELL腳本、二進制的可執(zhí)行文件等。分為純文本和二進制。
  2. b)目錄文件:目錄,存儲文件的唯一地方。
  3. c)鏈接文件:指向同一個文件或目錄的的文件。
  4. d)特殊文件:與系統(tǒng)外設相關的,通常在/dev下面。分為塊設備和字符設備。

可以通過ls –l, file, stat幾個命令來查看文件的類型等相關信息。

4.文件存儲結構

Linux正統(tǒng)的文件系統(tǒng)(如ext2、ext3)一個文件由目錄項、inode和數(shù)據(jù)塊組成。

目錄項:包括文件名和inode節(jié)點號。

Inode:又稱文件索引節(jié)點,是文件基本信息的存放地和數(shù)據(jù)塊指針存放地。

數(shù)據(jù)塊:文件的具體內容存放地。

Linux正統(tǒng)的文件系統(tǒng)(如ext2、3等)將硬盤分區(qū)時會劃分出目錄塊、inode Table區(qū)塊和data block數(shù)據(jù)區(qū)域。一個文件由一個目錄項、inode和數(shù)據(jù)區(qū)域塊組成。Inode包含文件的屬性(如讀寫屬性、owner等,以及指向數(shù)據(jù)塊的指針),數(shù)據(jù)區(qū)域塊則是文件內容。當查看某個文件時,會先從inode table中查出文件屬性及數(shù)據(jù)存放點,再從數(shù)據(jù)塊中讀取數(shù)據(jù)。

站在2w英尺視圖,文件存儲結構大概如下:

Linux文件系統(tǒng)有哪些必備知識?【Linux每日一個知識點第76期】

圖3:文件存儲結構2w英尺視圖

其中目錄項的結構如下(每個文件的目錄項存儲在改文件所屬目錄的文件內容里):

Linux文件系統(tǒng)有哪些必備知識?【Linux每日一個知識點第76期】
?圖4:目錄項結構?

其中文件的inode結構如下(inode里所包含的文件信息可以通過stat filename查看得到):

?Linux文件系統(tǒng)有哪些必備知識?【Linux每日一個知識點第76期】

圖5:inode結構

以上只反映大體的結構,Linux文件系統(tǒng)本身在不斷發(fā)展。但是以上概念基本是不變的。且如ext2、ext3、ext4文件系統(tǒng)也存在很大差別,如果要了解可以查看專門的文件系統(tǒng)介紹。

5.軟連接、硬鏈接

軟鏈接和硬鏈接是我們常見的兩種概念:

硬連接:是給文件一個副本,同時建立兩者之間的連接關系。修改其中一個,與其連接的文件同時被修改。如果刪除其中[color=red]任意一個[/color]其余的文件將不受影響。

軟連接:也叫符號連接,他只是對源文件在新的位置建立一個“快捷(借用一下wondows常用詞)”,所以,當源文件刪除時,符號連接的文件將成為無源之水->僅僅剩下個文件名了,當然刪除這個連接,也不會影響到源文件,但對連接文件的使用、引用都是直接調用源文件的。

具體關系可以看下圖:

Linux文件系統(tǒng)有哪些必備知識?【Linux每日一個知識點第76期】

圖5:軟鏈接和硬鏈接

從圖上可以看出硬鏈接和軟鏈接的區(qū)別:

1:硬鏈接原文件和新文件的inode編號一致。而軟鏈接不一樣。

2:對原文件刪除,會導致軟鏈接不可用,而硬鏈接不受影響。

3:對原文件的修改,軟、硬鏈接文件內容也一樣的修改,因為都是指向同一個文件內容的。


《Linux學習每日一個知識點》欄目是馬哥教育Linux云計算年薪20萬+的學員社群特別發(fā)起,分享Linux工具、Linux語法、Linux項目等知識點,幫助大家快速的了解Linux學習,快速步入Linux高薪的快車道。

http://www.vfuj.cn/74163.html

相關新聞

歷經(jīng)多年發(fā)展,已成為國內好評如潮的Linux云計算運維、SRE、Devops、網(wǎng)絡安全、云原生、Go、Python開發(fā)專業(yè)人才培訓機構!