1. 程式人生 > >【Centos7筆記六】檔案系統與磁碟操作

【Centos7筆記六】檔案系統與磁碟操作

1. redhat檔案系統結構
目錄名稱	應放置檔案的內容
/boot	開機所需檔案——核心,開機選單及所需配置檔案等
/dev	任何裝置與介面都以檔案形式存放在此目錄
/etc	配置檔案
/home	使用者主目錄
/bin	單使用者維護模式下還能夠被操作的命令
/lib	開機時用到的函式庫及/bin與/sbin下面命令要呼叫的函式
/sbin	開機過程中需要的
/media	一般掛載或刪除的裝置
/opt	放置第三方的軟體
/root	系統管理員的主資料夾
/srv	一些網路服務的資料目錄
/tmp	任何人均可使用的“共享”臨時目錄
/proc	虛擬檔案系統,例如系統核心,程序,外部裝置及網路狀態等
/usr/local	使用者自行安裝的軟體
/usr/sbin	非系統開機時需要的軟體/命令/指令碼
/usr/share	幫助與說明檔案,也可放置共享檔案。
/var	主要存放經常變化的檔案,如日誌。
/lost+found	當檔案系統發生錯誤時,將一些丟失的檔案片段存放在這裡

2. 裝置命名規則:
系統核心的udev裝置管理器會自動將硬體名稱規範起來
udev服務會一直以守護程序的形式執行並偵聽來自核心發出的訊號來管理/dev目錄下的裝置檔案
硬體裝置	檔名稱
IDE裝置	/dev/hd[a-d]
SCSI/SATA/U盤	/dev/sd[a-p]
軟碟機	/dev/fd[0-1]
印表機	/dev/lp[0-15]
光碟機	/dev/cdrom
滑鼠	/dev/mouse
磁帶機	/dev/st0或/dev/ht0(IDE裝置)
分割槽:主分割槽或擴充套件分割槽的編號從1開始至4結束。
邏輯分割槽從編號5開始。
3. 硬碟基礎知識
硬碟裝置則是由大量的扇區組成的,其中第一個扇區最重要,它裡面儲存著主引導記錄與分割槽表資訊。單個扇區容量為512bytes組成,主引導記錄需要佔用446bytes,分割槽表的為64bytes,結束符佔用2bytes,而其中每記錄一個分割槽資訊需要16bytes,這最多四個能有幸被寫到第一個扇區中的分割槽資訊就叫做主分割槽,扇區的資訊寫入如圖6-3所示。
第6章 儲存結構與磁碟劃分。第6章 儲存結構與磁碟劃分。
一般會選擇用3個主分割槽加1個擴充套件分割槽的方法,然後在擴充套件分割槽中創建出數個邏輯分割槽,

 
上圖是2個主分割槽,2個擴充套件分割槽的做法

4. 檔案系統:使用者在硬體儲存裝置上面正常建立檔案、寫入,讀取,修改,轉存檔案與控制檔案等等操作都是依靠了檔案系統來完成的,檔案系統的作用是將硬碟合理的規劃,保證使用者正常的使用需求
Ext4 可以稱為是Ext3的後繼版本,作為RHEL6系統中的預設檔案管理系統,它支援更大的檔案系統到1EB(1EB=1,073,741,824GB且能夠有無限多的子目錄),另外Ext4檔案系統能夠批量分配block塊並作"Extents"極大的提高了讀寫效率。
XFS 作為最新RHEL7中預設的檔案管理系統,它的日誌型檔案管理系統的優勢在意外宕機後尤其明顯,可以快速的恢復可能被破壞的檔案,另外經過優化後日志功能對硬碟效能影響非常小,同時最大支援18EB的儲存容量滿足了幾乎所有需求。
一塊新的硬碟儲存裝置之後首先要分割槽,然後格式化檔案系統最後才能掛載正常的使用
###################*******************##############
日常中在硬碟要儲存的資料實在太多了,因此就要有個叫super block的“硬碟地圖”,並不是把資料直接寫入到這個“大地圖”裡面,而是在上面記錄著整個檔案系統的資訊,因為如果把所有的資訊都寫入到這裡面的話,就一定會導致它的體積變的很大,查詢與寫入速度會變的很慢,於是每個檔案的許可權與屬性都會記錄在inode中(每個檔案都會佔用一個獨立的inode表格,預設為128bytes),記錄著:
該檔案的訪問許可權(read,write,execute)
該檔案的所屬主與組(owner,group)
該檔案的大小(size)
該檔案的建立或狀態修改時間(ctime)
該檔案的最後一次訪問時間(atime)
該檔案的修改時間(mtime)
檔案的特殊許可權(SUID,SGID,SBIT)
該檔案的真實資料地址(point)
而檔案的實際資料內容則儲存在block塊中(大小可以是1K、2K或4K),一個inode大小僅為128bytes(Ext3),記錄一個block消耗4bytes,一般當把inode寫滿後就會取出一個block用於號碼記錄而不再是儲存實際的檔案系統。下面的說明中,我們以4K為例。
情況一:檔案體積很小(1K),那麼依然會佔用一個block,潛在的浪費3K。
情況二:檔案體積很大(5K),那麼會佔用兩個(5K-4K剩下的1K也要佔用一個block)。

5. 掛載硬體裝置
mount命令用於掛載檔案系統,格式為:“mount 檔案系統 掛載目錄”。
引數	作用
-a	掛載所有在/etc/fstab中定義的檔案系統
-t	指定檔案系統的型別
將裝置"/dev/sdb2"掛載到"/backup"目錄:mount /dev/sdb2 /backup
如果您想讓硬體裝置和目錄永久的進行自動關聯,就必須將掛載資訊按照指定的格式寫入到/etc/fstab檔案中。這個檔案中包含著諸多掛載所需的資訊專案,一旦配置好之後就會永久的為咱們服務啦
填寫格式如下:“裝置檔案 掛載目錄 格式型別 許可權選項 自檢 優先順序”
裝置檔案:一般為裝置的路徑+裝置名稱,也可以寫UUID值。
掛載目錄:指定要掛載到的目錄,需掛載前建立好。
格式型別:即指定檔案系統的格式,比如有ext3/ext4/xfs/swap/iso9660(此為光碟裝置)等等。
許可權選項:預設為defaults(rw,suid,dev,exec,auto,nouser,async),可指定acl或quota等。
自檢:若為1則開機後進行磁碟自檢,0為不自檢。
優先順序:若“自檢”為1,則可對多塊硬碟進行優先順序設定。

umount命令用於撤銷已經掛載的裝置檔案,格式為:“umount [掛載點/裝置檔案]”  :[
[email protected]
~]# umount /dev/sdb2 5. 操作硬碟(分割槽,格式化等) 5.1 fdisk命令用於管理磁碟分割槽,格式為:“fdisk [磁碟名稱]” 引數 作用 m 檢視全部可用的引數 n 新增新的分割槽 d 刪除某個分割槽資訊 l 列出所有可用的分割槽型別 t 改變某個分割槽的型別 p 檢視分割槽表資訊 w 儲存並退出 q 不儲存直接退出 5.2 格式化:在Linux系統中用於格式化的是mkfs命令 [[email protected] ~]# mkfs // press TAB two times mkfs mkfs.btrfs mkfs.cramfs mkfs.ext2 mkfs.ext3 mkfs.ext4 mkfs.minix mkfs.xfs 5.3 du命令用於檢視檔案的資料佔用量,格式為:“ du [選項] [檔案]” :看一個或多個檔案佔用了多大的硬碟空間 5.4 df 命令的功能是用來檢查linux伺服器的檔案系統的磁碟空間佔用情況。可以利用該命令來獲取硬碟被佔用了多少空間,目前還剩下多少空間等資訊 5.4 新建的儲存分割槽使用SWAP交換分割槽專用的格式化mkswap命令進行格式化操作: [
[email protected]
~]# mkswap /dev/sdb2 Setting up swapspace version 1, size = 5242876 KiB no label, UUID=2972f9cb-17f0-4113-84c6-c64b97c40c75 使用swapon命令將準備好的SWAP交換分割槽裝置正式的掛載到系統中: [[email protected] ~]# swapon /dev/sdb2 6.對使用者進行磁碟容量分配: quota服務做磁碟配額可以限制使用者的硬碟可用量或最大建立檔案數量,並且還有軟、硬限制的功能: 軟限制:當達到軟限制時會提示使用者,但允許使用者在規定額度內繼續使用。 硬限制:當達到硬限制時會提示使用者,且強制終止使用者的操作。 6.1 配置:開啟quota服務 [
[email protected]
~]# vim /etc/fstab # # /etc/fstab # Created by anaconda on Wed May 4 19:26:23 2016 # # Accessible filesystems, by reference, are maintained under '/dev/disk' # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info # /dev/mapper/rhel-root / xfs defaults 1 1 UUID=812b1f7c-8b5b-43da-8c06-b9999e0fe48b /boot xfs defaults,uquota 1 2 6.2 xfs_quota命令用於管理XFS檔案系統的quota硬碟配額,格式為:“quota [引數] 配額 檔案系統” 用xfs_quota命令設定tom使用者對/boot目錄的磁碟配額吧,具體的限額控制包括有硬碟使用軟限制為3M,硬碟使用硬限制為6M,建立檔案數量軟限制為3個,建立檔案硬限制為6個。 [[email protected] ~]# xfs_quota -x -c 'limit bsoft=3m bhard=6m isoft=3 ihard=6 tom' /boot [[email protected] ~]# xfs_quota -x -c report /boot User quota on /boot (/dev/sda1) Blocks User ID Used Soft Hard Warn/Grace ---------- -------------------------------------------------- root 95084 0 0 00 [--------] tom 0 3072 6144 00 [--------] 6.3 edquota命令用於編輯使用者的quota配額限制,格式為:“edquota [引數] [使用者]” 其中-u引數代表要針對那個使用者進行的設定,-g引數則代表要針對那個使用者組進行的設定 7. 軟硬方式連線 硬連結(hard link)可以被理解為一個“指向原始檔案inode的指標”,系統不為它分配獨立的inode與檔案,所以實際上來講硬連結檔案與原始檔案其實是同一個檔案,只是名字不同。於是每新增一個硬連結,該檔案的inode連線數就會增加1,直到該檔案的inode連線數歸0才是徹底刪除。也就是說因為硬連結實際就是指向原檔案inode的指標,即便原始檔案被刪除依然可以通過連結檔案訪問,但是由於技術的侷限性而不能跨檔案系統也不能連結目錄檔案。 軟連結也稱為符號連結(symbolic link)即“僅僅包含它所要連結檔案的路徑名”因此能做目錄連結也可以跨越檔案系統,但原始檔案被刪除後連結檔案也將失效,性質上和Windows™系統中的“快捷方式”是一樣的。 ln命令用於建立連結檔案,格式為:“ln [選項] 目標”。 引數 作用 -s 建立"符號連結"(預設是硬連結) -f 強制建立檔案或目錄的連結 -i 覆蓋前先詢問 -v 顯示建立連結的過程 ln -s src.file dest.file

相關推薦

Centos7筆記檔案系統磁碟操作

1. redhat檔案系統結構 目錄名稱 應放置檔案的內容 /boot 開機所需檔案——核心,開機選單及所需配置檔案等 /dev 任何裝置與介面都以檔案形式存放在此目錄 /etc 配置檔案 /home 使用者主目錄 /bin 單使用者維護模式下還能夠被操作的命令 /lib

Centos7筆記使用者及檔案許可權管理

1.useradd命令用於建立新的使用者,格式為:“useradd [選項] 使用者名稱” 引數 作用 -d 指定使用者的家目錄(預設為/home/username) -e 帳號有效截至日期,格式:YYYY-MM-DD. -u 指定該使用者的預設UID -g 指定一個初始

Linux學習二檔案系統

環境  虛擬機器:VMware 10   Linux版本:CentOS-6.5-x86_64   客戶端:Xshell4  FTP:Xftp4 一、檔案系統 一切皆檔案Filesystem Hierarchy Standard(檔案系統層次化標準)/boot: 系統啟動相關的檔案,如核心、initrd,以及

I/O流檔案輸入輸出(Scanner)& Scanner和io流讀寫有何區別?(待填坑)

對檔案進行讀取,僅需要用File物件構造一個Scanner物件Scanner in= new Scanner(Paths.get("myfile.tet"),"UTF-8");如果檔名中含反斜槓符號,需要在每個反斜槓之前加一個額外的反斜槓如:“c:\\mydirectory\

caffe筆記2win10系統中caffe的matlab介面配置

在【caffe筆記1】的基礎上, (1)首先,caffe-master/windows下的CommonSettings.props中<MatlabSupport>要改成true <

軟體安全學習筆記(5):FAT32檔案系統資料恢復

一、FAT32檔案系統結構 1、引導扇區:描述分割槽大小、簇的大小、FAT表個數與大小、分割槽載入程式等。 2、FAT(檔案分配表)FAT1+FAT2:記錄資料儲存區每一個簇的使用情況,形成每個檔案的簇連結串列 3、資料儲存區: 儲存兩類資料:目錄項、檔案資料 二、幾個概

Java基本概念-檔案系統操作

一 file類的介紹    1 檔案系統主要由磁碟分割槽、目錄檔案和檔案組成    2 檔案:流的容器,用file表示    3 流:檔案的內容,用stream表示    考慮跨平臺,用file表示磁碟、目錄、檔案    4 file類的主要常用方法:    

Linux筆記(001) -- centos7 系統目錄結構文件

符號鏈接 srv tro 是否 文件內容 目錄下的文件 write 設備文件 讀數 一、目錄結構與用途:   /boot:系統引導文件、內核   /bin:用戶的基本命令   /dev:設備文件   /etc:配置文件   /home:用戶目錄   /roo

PHP筆記檔案系統處理

檔案處理函式: 一、檔案操作 二、目錄操作 三、檔案上傳 四、多檔案上傳 五、檔案下載 六、檔案上傳下載系統 檔案測試函式: filetype(); //檔案型別 is_dir(); //判斷是否是目錄 is_file(); //判斷是否是檔案 file_exists(); //檔案或目

親測centos7下掛載ntfs檔案系統型別的行動硬碟

【親測】centos7下掛載ntfs檔案系統型別的行動硬碟 【參考】 【流程】 2.解壓,配置,編譯,安裝 $tar zxvf ntfs-3g_ntfsprogs-2017.3.23.tgz $ cdntfs-3g_ntfsprogs-2017.3.23/

python下使用OpenCV實現計算機視覺讀書筆記2圖像字節的變換

ng- == color and pytho avi data- imwrite center import cv2 import numpy import os # Make an array of 120,000 ran

計算機系統基礎(2)四五

div 效果 width https 存儲 wid fifo ima .com 第四周:高速緩存概述 第一講: 第二講: 第三講:Cache的映射過程 #tag前還有一位v標記是否放入有效塊 行數 = Cache數據區容量 / block 容量 第四講: 命中

面向物件林老師版:繼承派生(

一、初識繼承 1、什麼是繼承 繼承指的是類與類之間的關係,是一種什麼“是”什麼的關係,繼承的功能之一就是用來解決程式碼重用問題 繼承是一種建立新類的方式,在python中,新建的類可以繼承一個或多個父類,父類又可以成為基類或超類,新建的類稱為派生類或子類 2、python中類的繼承分為:單繼承和多繼承

大話資料結構04 棧佇列 筆記

《大話資料結構》 ——程傑 共463頁 筆記圈點主要內容,也請多多支援大話資料結構該書作者。 第 4 章 棧與佇列 111頁_定義 棧是限定在表尾進行插入和刪除操作的線性表。 佇列是隻允

unix學習檔案系統資訊和檔案許可權

檔案系統資訊和檔案許可權 cpuinfo cpu的資訊 總核數 = 物理CPU個數 X 每顆物理CPU的核數 總邏輯CPU數 = 物理CPU個數 X 每顆物理CPU的核數 X 超執行緒數 檢視物理CPU個數 cat /proc/cpuinfo|

HTML筆記瀏覽者互動,表單標籤

一、使用表單標籤,與使用者互動 網站怎樣與使用者進行互動?答案是使用HTML表單(form)。表單是可以把瀏覽者輸入的資料傳送到伺服器端,這樣伺服器端程式就可以處理表單傳過來的資料。 語法:

python初識檔案儲存異常

檔案儲存與異常 1、開啟關閉檔案 import os if os.path.exists('sketch.txt'): the_file = open('sketch.txt') pri

資料探勘筆記挖掘頻繁模式、關聯和相關性:基本概念和方法

6.挖掘頻繁模式、關聯和相關性:基本概念和方法 頻繁模式(frequent pattern)是頻繁地出現在資料集中的模式。 6.1 基本概念 頻繁模式挖掘搜尋給定資料集中反覆出現的聯絡,旨在發現大型事務或關係資料集中項之間有趣的關聯或相關性,其典型例子就是購物籃分析。 購物

windows核心驅動開發檔案系統微過濾驅動Minifilter——繫結指定的卷(磁碟分割槽)

【我的】檔案系統微過濾驅動Minifilter——繫結指定的卷(磁碟分割槽) 作者:zcr214 時間:2016/4/21 在編寫檔案系統微過濾驅動minifilter的時候,很有可能我們只對某一個特定的磁碟分割槽感興趣,而其他的如系統盤的很多IRP對於我們要編寫的驅動可

windows核心驅動開發檔案系統微過濾驅動Minifilter——獲取程序資訊

【我的】檔案系統微過濾驅動Minifilter——獲取程序資訊 作者:zcr214 時間:2016/4/22 在編寫檔案系統微過濾驅動minifilter的時候,除了繫結指定的磁碟分卷,對於指定的檔案很可能還會有指定的應用程式,例如txt檔案可以有很多編輯器可以使用,如w