9 文件系統管理

9.1 回顧分區和文件系統

分區類型

主分區:總共最多只能分四個

擴展分區:只能有一個,主分區加擴展分區最多有四個必須再劃分成邏輯分區才能使用。

邏輯分區:在擴展分區中劃分的

? ? IDE硬盤最多支持59個邏輯分區

? ? SCSI硬盤最多支持11個邏輯分區

?

—————————————————————————————————————————————————

?

分區表示方法

主分區1 ???/dev/sda1

主分區2 ???/dev/sda2

主分區3 ???/dev/sda3

擴展分區 ??/dev/sda4

????邏輯分區1 ???/dev/sda5

????邏輯分區2 ???/dev/sda6

????邏輯分區3 ???/dev/sda7

.

.

.

?

主分區1 ???/dev/sda1

擴展分區 ??/dev/sda2

????邏輯分區1 ???/dev/sda5

????邏輯分區2 ???/dev/sda6

????邏輯分區3 ???/dev/sda7

.

.

.

?

—————————————————————————————————————————————————

?

文件系統

ext2

ext文件系統的升級版本,Red Hat Linux7.2版本以前的系統默認都是ext2文件系統。

1993年發布,最大支持16TB的分區和最大2TB的文件(1TB=1024GB=1024*1024KB

?

ext3

ext3文件系統是ext2文件系統的升級版本,最大的區別就是帶日志功能

以在系統突然停止時提高文件系統的可靠性。支持最大16TB的分區和最大2TB的文件。

?

ext4

它是ext3文件系統的升級版。ext4在性能、伸縮性、可靠性方面進行了大量改進。

ext4的變化可以說是翻天覆地的,比如向下兼容ext3、最大1EB文件系統和16TB文件,無限數量子目錄,Extents連續數據塊概念、多塊分配、延遲分配、持久預分配、快速FSCK、日志校驗、無日志模式、在線碎片整理、inode增強、默認啟用barrier等。是CentOS6.3的默認文件系統

1EB=1024PB=1024*1024TB

?

—————————————————————————————————————————————————

?

9.2 文件系統常用命令

9.2.1 df du dumpe2fs

文件系統查看命令df

df ?#可以看到所有分區

df 選項 掛載點 ???report file system disk space usage

-a 顯示所有的文件系統信息,包括特殊文件系統,如/proc/sysfs

-h 使用習慣單位顯示容量,如KBMBGB

-T 顯示文件系統類型

-m MB為單位顯示容量

-k KB為單位顯示容量。默認就是以KB為單位

?

—————————————————————————————————————————————————

?

統計目錄或文件大小

du 選項 目錄或文件名 ?estimate file space usage

-a 顯示每個子文件的磁盤占用量。默認只統計子目錄的磁盤占用量

-h 使用習慣單位顯示磁盤占用量,如KBMBGB

-s 統計總占用量,而不列出子目錄和子文件的占用量

?

du更慢,更耗費資源

?

du命令和df命令的區別

du用于看文件大小

df用于看剩余空間

df命令是從文件系統考慮的,不光要考慮文件占用的空間,還要統計被命令或程序占用的空間(最常見的就是文件已經刪除,但是程序并沒有釋放空間)

du命令是面向文件的,只會計算文件或目錄占用的空間

?

Linux服務器應該定期重啟,以釋放程序占用的磁盤空間

游戲、下載、在線電影等高負載服務器應每周重啟一次

網站應每個月重啟一次

—————————————————————————————————————————————————

?

文件系統修復命令fsck ???check and repair a Linux file system

fsck 選項 分區設備文件名

-a 不用顯示用戶提示,自動修復文件系統

-y 自動修復。和-a作用一致,不過有些文件系統只支持-y

?

此命令是底層修復命令,系統會自動執行,知道作用就好,不需要自己操作,可能崩潰

—————————————————————————————————————————————————

?

顯示磁盤狀態命令dumpe2fs ???dump ext2/ext3/ext4 filesystem information

dumpe2fs 分區設備文件名

可以查看分區的數據塊有多大

?

dumpe2fs /dev/sda1

—————————————————————————————————————————————————

?

9.2.2 掛載命令

1、查詢與自動掛載

mount -l

#查詢系統中已經掛載的設備,-l會顯示卷標名稱

/proc ?/sys 是內存

?

mount -a

#依據配置文件/etc/fstab的內容,自動掛載

—————————————————————————————————————————————————

?

2、掛載命令格式

mount ?[-t 文件系統] ?[-L 卷標名] ?[-o 特殊選項] 設備文件名 掛載點

-t 文件系統:加入文件系統類型來指定掛載的類型,可以是ext3ext4iso9660等文件系統

-L 卷標名:掛載指定卷標的分區,而不是安裝設備文件名掛載。卷標相當于別名

-o 特殊選項:可以指定掛載的額外選項。針對分區

?

atime/noatime

更新訪問時間/不更新訪問時間。

訪問分區時,是否更新文件的訪問時間,默認更新

?

async/sync

異步/同步

默認為異步

?

auto/noauto

自動/手動

mount -a命令執行時,是否會自動安裝/etc/fstab文件內容掛載,默認為自動

?

defaults

定義默認值,相當于rw suid dev exec auto nouser async 這七個選項

?

exec/noexec

執行/不執行

設定是否允許在文件系統中執行可執行文件,默認exec允許

如果是文件服務器,可以設置為noexec

?

remount

重新掛載已經掛載的文件系統,一般用于指定修改特殊權限

?

rw/ro

讀寫/只讀

文件系統掛載時,是否具有讀寫權限,默認是rw

?

suid/nosuid

具有/不具有SUID權限

設定文件系統是否具有SUIDSGID的權限,默認是具有

?

user/nouser

允許/不允許普通用戶掛載

設定文件系統是否具有SUIDSGID的權限,默認是具有

?

usrquota

寫入代表文件系統支持用戶磁盤配額

默認不支持

?

grpquota

寫入代表文件系統支持組磁盤配額

默認不支持

?

?

例子:

mount -o remount,noexec /home

#重新掛載/home分區,并使用noexec權限

cd /home

vi hello.sh ???

chmod 755 hello.sh

./hello/sh #提示權限不夠

mount -o remount,exec /home

—————————————————————————————————————————————————

?

9.2.3 掛載光盤與U

掛載光盤

1、建立掛載點

mkdir /mnt/cdrom/

?

2、掛載光盤,兩個可選命令

mount -t iso9660 /dev/cdrom /mnt/cdrom/

mount /dev/sr0 /mnt/cdrom

#/dev下,cdromsr0的軟連接方式

?

?

卸載命令

umount 設備文件名或掛載點

?

例子:

umount /mnt/cdrom

—————————————————————————————————————————————————

?

掛載U

1、查看U盤設備文件名

fdisk -l

?

2、掛載U

mount -t vfat /dev/sdb1 /mnt/usb

?

FAT16識別為FAT

FAT32識別為VFAT

注意:Linux默認是不支持NTFS文件系統的

—————————————————————————————————————————————————

?

9.2.4 掛載NTFS文件系統

兩種方法:

1、內核編譯,將NTFS的驅動加入進來,用的極少

2、第三方軟件

???下載NTFS-3G插件

???http://www.tuxera.com/community/ntfs-3g-download/

?

tar -zxvf ntfs-3g_ntfsprogs-2014.2.15.tgz

cd ntfs-3g_ntfsprogs-2014.2.15

./configure

make

make install

mount -t ntfs-3g 分區設備文件名 掛載點

—————————————————————————————————————————————————

?

9.3 fdisk分區

Partition table manipulator for Linux

手工分區命令

?

fdisk命令分區過程

1、添加新硬盤

2、查看新硬盤

fdisk -l

Linux通過ID的方式來識別分區

83 Linux的標準分區

82 swap分區

5 ?Extended分區

?

3、使用fdisk命令分區

fdisk /dev/sdb

?

a 設置可引導標記

b 編輯bsd磁盤標簽

c 設置DOS操作系統兼容標記

d 刪除一個分區

l 顯示已知的文件系統類型。82Linux swap分區,83Linux分區

m 顯示幫助菜單

n 新建分區

o 建立空白DOS分區表

p 顯示分區列表

q 不保存退出

s 新建空白SUN磁盤標簽

t 改變一個分區的系統ID

u 改變顯示記錄單位

v 驗證分區表

w 保存退出

x 附加功能(僅專家)

?

4、重新讀取分區表信息

partprobe ?#避免重啟

?

5、格式化分區 ?build a Linux file system

mkfs -t ext4 /dev/sdb1

#不能格式化擴展分區

6、建立掛載點并掛載

mkdir /disk1

mount /dev/sdb1 /disk1

?

此時,每次啟動都要手動掛載硬盤分區

—————————————————————————————————————————————————

分區自動掛載與fstab文件修復

?

1/etc/fstab文件

第一字段:分區設備文件名或UUID(硬盤通用唯一識別碼)

第二字段:掛載點

第三字段:文件系統名稱

第四字段:掛載參數

第五字段:指定分區是否被dump備份,0代表不備份,1代表每天備份,2代表不定期備份

第六字段:指定分區是否被fsck檢測,0代表不檢測,其他數字代表檢測的優先級,那么當然1的優先級比2高(手動添加的分區應小于等于2

?

查看UUID命令

dumpe2fs -h /dev/sdb1

?

每個分區都有lost+found目錄用于備份

?

?

2、分區自動掛載

/dev/sdb1 ?/disk1 ?ext4 ?defaults ?1 2

?

mount -a

#依據配置文件/etc/fstab的內容,自動掛載

?

?

3/etc/fstab文件修復

mount -o remount,rw /

#重新掛載根分區為讀寫權限

然后修改fstab配置

—————————————————————————————————————————————————

?

新建swap分區

?

1、新建swap分區

fdisk /dev/sdb

#將分區ID改為82

?

2、格式化

mkswap /dev/sdb6 ???#mkswap ??set up a Linux swap area

?

3、加入swap分區

swapon /dev/sdb6

?

swapoff /dev/sdb6

#取消swap分區

?

4swap分區開機自動掛載

vi /etc/fstab

?

/dev/sdb6 ?swap ?swap ?defaults 0 0

?

5free命令

#查看內存與swap分區使用情況

cached(緩存):

把讀出來的數據保存在內存當中,當再次讀取時,不用讀取硬盤而直接從內存當中讀取

加速了數據的讀取過程

?

buffers(緩沖):

在寫入數據時,先分散的寫入操作保存到內存中,當達到一定程度再集中寫入硬盤

減少了磁盤碎片和硬盤的反復尋道,加速了數據的寫入過程

?

?

?

?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/387286.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/387286.shtml
英文地址,請注明出處:http://en.pswp.cn/news/387286.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Linux 桌面玩家指南:09. X Window 的奧秘

Linux 桌面玩家指南:09. X Window 的奧秘 原文:Linux 桌面玩家指南:09. X Window 的奧秘特別說明:要在我的隨筆后寫評論的小伙伴們請注意了,我的博客開啟了 MathJax 數學公式支持,MathJax 使用$標記數學公式的開始和結…

Storm教程1理論介紹

流式計算的歷史: 早在7、8年前諸如UC伯克利、斯坦福等大學就開始了對流式數據處理的研究,但是由于更多的關注于金融行業的業務場景或者互聯網流量監控的業務場景,以及當時互聯網數據場景的限制,造成了研究多是基于對傳統數據庫處理的流式化&…

梯度下降原理及Python實現

梯度下降算法是一個很基本的算法,在機器學習和優化中有著非常重要的作用,本文首先介紹了梯度下降的基本概念,然后使用python實現了一個基本的梯度下降算法。梯度下降有很多的變種,本文只介紹最基礎的梯度下降,也就是批…

dagger2的初次使用

一、使用前準備 1、打開app的build.gradle文件: 頂部停用apt插件: //添加如下代碼,應用apt插件 apply plugin: com.neenbedankt.android-apt dependencies中添加依賴: //Dagger2compile com.google.dagger:dagger:2.4apt com.goog…

Storm教程2安裝部署

Storm 安裝部署 部署Storm集群需要依次完成的安裝步驟: 1.安裝jdk6及以上版本;   2. 搭建Zookeeper集群;   3. 安裝Storm依賴庫;   4. 下載并解壓Storm發布版本;   5. 修改storm.yaml配置文件;   6…

matplotlib一些常用知識點的整理,

本文作為學習過程中對matplotlib一些常用知識點的整理,方便查找。 強烈推薦ipython 無論你工作在什么項目上,IPython都是值得推薦的。利用ipython --pylab,可以進入PyLab模式,已經導入了matplotlib庫與相關軟件包(例如…

JAVA課程09

package 月份輸出;import java.util.*;public class 月份輸出 {public static void main(String[] args) {// TODO Auto-generated method stubScanner sc new Scanner(System.in);int s sc.nextInt();String a[] {"January","February","March&q…

Storm教程3編程接口

Spouts Spout是Stream的消息產生源,Spout組件的實現可以通過繼承BaseRichSpout類或者其他Spout類來完成,也可以通過實現IRichSpout接口來實現。 需要根據情況實現Spout類中重要的幾個方法有: open方法 當一個Task被初始化的時候會調用此…

梳理操作系統概論

1、用一張圖總結操作系統的結構、功能特征、采用的技術和提供服務方式等。 2、用一張圖描述CPU的工作原理。 3、用一張圖描述系統程序與應用程序、特權指令與非特權指令、CPU狀態、PSW及中斷是如何協同工作的? 轉載于:https://www.cnblogs.com/ljgljg/p/10503190.ht…

機器學習01簡介

Machine Learning 是人工智能的核心,主要使用歸納、綜合而不是演繹。 讓計算機模擬人類行為,以獲取新的知識或技能 重新組織已有的知識結構使之不斷改善自身性能 一個程序能從經驗 E 中學習,解決任務 T,達到性能度量值P&#xf…

位置指紋法的實現(KNN)

基本原理 位置指紋法可以看作是分類或回歸問題(特征是RSS向量,標簽是位置),監督式機器學習方法可以從數據中訓練出一個從特征到標簽的映射關系模型。kNN是一種很簡單的監督式機器學習算法,可以用來做分類或回歸。 對于…

室內定位系列 ——WiFi位置指紋(譯)

摘要 GPS難以解決室內環境下的一些定位問題,大部分室內環境下都存在WiFi,因此利用WiFi進行定位無需額外部署硬件設備,是一個非常節省成本的方法。然而WiFi并不是專門為定位而設計的,傳統的基于時間和角度的定位方法并不適用于WiFi…

機器學習02線性回歸、多項式回歸、正規方程

單變量線性回歸(Linear Regression with One Variable) 預測器表達式: 選擇合適的參數(parameters)θ0 和 θ1,其決定了直線相對于訓練集的準確程度。 建模誤差(modeling error)&a…

最大乘積

給定一個無序數組,包含正數、負數和0,要求從中找出3個數的乘積,使得乘積最大,要求時間復雜度:O(n),空間復雜度:O(1) def solve():n input()a input().split()for i in range(len(a)):a[i] in…

機器學習03Logistic回歸

邏輯回歸 (Logistic Regression) 目前最流行,使用最廣泛的一種學習算法。 分類問題,要預測的變量 y 是離散的值。 邏輯回歸算法的性質是:它的輸出值永遠在 0 到 1 之間。 邏輯回歸模型的假設是: 其中&a…

基礎架構系列匯總

為了方便查找,把基礎架構系統文章按時間正序整理了一下,記錄如下: 1. 基礎架構之日志管理平臺搭建及java&net使用 2. 基礎架構之日志管理平臺及釘釘&郵件告警通知 3. 基礎架構之分布式配置中心 4. 基礎架構之分布式任務平臺 5. 基礎架…

CNN理解比較好的文章

什么是卷積神經網絡?為什么它們很重要? 卷積神經網絡(ConvNets 或者 CNNs)屬于神經網絡的范疇,已經在諸如圖像識別和分類的領域證明了其高效的能力。卷積神經網絡可以成功識別人臉、物體和交通信號,從而為機…

Windows 安裝Angular CLI

1、安裝nvm npm cnpm nrm(onenote筆記上有記錄) 參考:https://blog.csdn.net/tyro_java/article/details/51232458 提示:如果發現配置完后,出現類似“npm不是內部命令……”等信息。 可采取如下措施進行解決—— 檢查環…

機器學習04正則化

正則化(Regularization) 過擬合問題(Overfitting): 如果有非常多的特征,通過學習得到的假設可能能夠非常好地適應訓練集 :代價函數可能幾乎為 0), 但是可能會不能推廣到…

Adaboost算法

概述 一句話概述Adaboost算法的話就是:把多個簡單的分類器結合起來形成個復雜的分類器。也就是“三個臭皮匠頂一個諸葛亮”的道理。 可能僅看上面這句話還沒什么概念,那下面我引用個例子。 如下圖所示: 在D1這個數據集中有兩類數據“”和“-”…