Enviar pesquisa
Carregar
Linux File system
•
10 gostaram
•
1,734 visualizações
Kenny (netman)
Seguir
Linux 檔案系統基本運作原理,LVM,Soft RAID,以及檔案系統應用。
Leia menos
Leia mais
Internet
Denunciar
Compartilhar
Denunciar
Compartilhar
1 de 107
Baixar agora
Baixar para ler offline
Recomendados
Virtual file system (VFS)
Virtual file system (VFS)
Waylin Ch
4, files & folders
4, files & folders
ted-xu
Overlayfs and VFS
Overlayfs and VFS
Hao(Robin) Dong
FAT file system implementation from scratch in boot-loader (chinese)
FAT file system implementation from scratch in boot-loader (chinese)
Sneeker Yeh
20030623 linuxbasic and-security
20030623 linuxbasic and-security
建融 黃
云存储系统设计
云存储系统设计
drewz lin
Ext4 new feature - bigalloc
Ext4 new feature - bigalloc
Hao(Robin) Dong
Ubuntu
Ubuntu
Liu Lizhi
Recomendados
Virtual file system (VFS)
Virtual file system (VFS)
Waylin Ch
4, files & folders
4, files & folders
ted-xu
Overlayfs and VFS
Overlayfs and VFS
Hao(Robin) Dong
FAT file system implementation from scratch in boot-loader (chinese)
FAT file system implementation from scratch in boot-loader (chinese)
Sneeker Yeh
20030623 linuxbasic and-security
20030623 linuxbasic and-security
建融 黃
云存储系统设计
云存储系统设计
drewz lin
Ext4 new feature - bigalloc
Ext4 new feature - bigalloc
Hao(Robin) Dong
Ubuntu
Ubuntu
Liu Lizhi
Linux学习
Linux学习
tonyhuang2008
Linux 的檔案系統格式介紹
Linux 的檔案系統格式介紹
Ma Yu-Hui
Linux 系统应用与程序设计
Linux 系统应用与程序设计
yiditushe
鏡像檔案系統 Mirror File System : MFS
鏡像檔案系統 Mirror File System : MFS
Mark Ting
Ubuntu v.s. Windows 由自由軟體重新出發
Ubuntu v.s. Windows 由自由軟體重新出發
Kang-Min Wang
20121111 linux intro
20121111 linux intro
Chang Mt
Linux必学的60个命令
Linux必学的60个命令
yiditushe
Ch8 file system management(2013 ncu-nos_nm)
Ch8 file system management(2013 ncu-nos_nm)
Kir Chou
0911 juluosdev
0911 juluosdev
Waylin Ch
[精华回顾]讲座:How To Install Linux
[精华回顾]讲座:How To Install Linux
NJU OPEN
Clonezilla tutorial.v7
Clonezilla tutorial.v7
hs1250
0911 juluosdev a_journey_of_filesystem_on_jos
0911 juluosdev a_journey_of_filesystem_on_jos
Waylin Ch
Introduction to Nand Flash interface (chinese)
Introduction to Nand Flash interface (chinese)
Sneeker Yeh
Linuxcommand
Linuxcommand
jason hu 金良胡
淺談Debian套件打包
淺談Debian套件打包
Wen Liao
Dns
Dns
Yiwei Ma
Linux 教育訓練
Linux 教育訓練
Bo-Yi Wu
鳥哥三到六章
鳥哥三到六章
Edward Yi
实习报告
实习报告
PengFan
Cat Fs Draft
Cat Fs Draft
Brian Hsu
ElasticSearch Training#2 (advanced concepts)-ESCC#1
ElasticSearch Training#2 (advanced concepts)-ESCC#1
medcl
Zh tw introduction_to_hadoop and hdfs
Zh tw introduction_to_hadoop and hdfs
TrendProgContest13
Mais conteúdo relacionado
Mais procurados
Linux学习
Linux学习
tonyhuang2008
Linux 的檔案系統格式介紹
Linux 的檔案系統格式介紹
Ma Yu-Hui
Linux 系统应用与程序设计
Linux 系统应用与程序设计
yiditushe
鏡像檔案系統 Mirror File System : MFS
鏡像檔案系統 Mirror File System : MFS
Mark Ting
Ubuntu v.s. Windows 由自由軟體重新出發
Ubuntu v.s. Windows 由自由軟體重新出發
Kang-Min Wang
20121111 linux intro
20121111 linux intro
Chang Mt
Linux必学的60个命令
Linux必学的60个命令
yiditushe
Ch8 file system management(2013 ncu-nos_nm)
Ch8 file system management(2013 ncu-nos_nm)
Kir Chou
0911 juluosdev
0911 juluosdev
Waylin Ch
[精华回顾]讲座:How To Install Linux
[精华回顾]讲座:How To Install Linux
NJU OPEN
Clonezilla tutorial.v7
Clonezilla tutorial.v7
hs1250
0911 juluosdev a_journey_of_filesystem_on_jos
0911 juluosdev a_journey_of_filesystem_on_jos
Waylin Ch
Introduction to Nand Flash interface (chinese)
Introduction to Nand Flash interface (chinese)
Sneeker Yeh
Linuxcommand
Linuxcommand
jason hu 金良胡
淺談Debian套件打包
淺談Debian套件打包
Wen Liao
Dns
Dns
Yiwei Ma
Linux 教育訓練
Linux 教育訓練
Bo-Yi Wu
鳥哥三到六章
鳥哥三到六章
Edward Yi
实习报告
实习报告
PengFan
Cat Fs Draft
Cat Fs Draft
Brian Hsu
Mais procurados
(20)
Linux学习
Linux学习
Linux 的檔案系統格式介紹
Linux 的檔案系統格式介紹
Linux 系统应用与程序设计
Linux 系统应用与程序设计
鏡像檔案系統 Mirror File System : MFS
鏡像檔案系統 Mirror File System : MFS
Ubuntu v.s. Windows 由自由軟體重新出發
Ubuntu v.s. Windows 由自由軟體重新出發
20121111 linux intro
20121111 linux intro
Linux必学的60个命令
Linux必学的60个命令
Ch8 file system management(2013 ncu-nos_nm)
Ch8 file system management(2013 ncu-nos_nm)
0911 juluosdev
0911 juluosdev
[精华回顾]讲座:How To Install Linux
[精华回顾]讲座:How To Install Linux
Clonezilla tutorial.v7
Clonezilla tutorial.v7
0911 juluosdev a_journey_of_filesystem_on_jos
0911 juluosdev a_journey_of_filesystem_on_jos
Introduction to Nand Flash interface (chinese)
Introduction to Nand Flash interface (chinese)
Linuxcommand
Linuxcommand
淺談Debian套件打包
淺談Debian套件打包
Dns
Dns
Linux 教育訓練
Linux 教育訓練
鳥哥三到六章
鳥哥三到六章
实习报告
实习报告
Cat Fs Draft
Cat Fs Draft
Semelhante a Linux File system
ElasticSearch Training#2 (advanced concepts)-ESCC#1
ElasticSearch Training#2 (advanced concepts)-ESCC#1
medcl
Zh tw introduction_to_hadoop and hdfs
Zh tw introduction_to_hadoop and hdfs
TrendProgContest13
Q con shanghai2013-[刘海锋]-[京东文件系统简介]
Q con shanghai2013-[刘海锋]-[京东文件系统简介]
Michael Zhang
Track2 -刘继伟--openstack in gamewave
Track2 -刘继伟--openstack in gamewave
OpenCity Community
5, system admin
5, system admin
ted-xu
賽門鐵克 Storage Foundation 6.0 簡報
賽門鐵克 Storage Foundation 6.0 簡報
Wales Chen
Bypat博客出品-利用cent os快速构建自己的发行版
Bypat博客出品-利用cent os快速构建自己的发行版
redhat9
2015-05-20 製造業生產歷程全方位整合查詢與探勘的規劃心法
2015-05-20 製造業生產歷程全方位整合查詢與探勘的規劃心法
Jazz Yao-Tsung Wang
20121213 foundation of software development 2 2-ktchuang
20121213 foundation of software development 2 2-ktchuang
netdbncku
Large-Scale Cluster Mangement & Kubernetes Under The Hood
Large-Scale Cluster Mangement & Kubernetes Under The Hood
Lei (Harry) Zhang
儲存三二話
儲存三二話
JacksonWang59
Docker tutorial
Docker tutorial
azole Lai
開發人員必須知道的 Kubernetes 核心技術 - Kubernetes Summit 2018
開發人員必須知道的 Kubernetes 核心技術 - Kubernetes Summit 2018
Will Huang
浅谈电商网站数据访问层(DAL)与 ORM 之适用性
浅谈电商网站数据访问层(DAL)与 ORM 之适用性
Xuefeng Zhang
3, users & groups
3, users & groups
ted-xu
hicloud PaaS 雲創平台 PHP 運行環境介紹
hicloud PaaS 雲創平台 PHP 運行環境介紹
hicloud-paas
Linuxguide4f2e
Linuxguide4f2e
tb-vertical-guide
LinuxGuide4F2E
LinuxGuide4F2E
sodabiscuit
寫出高性能的服務與應用 那些你沒想過的事
寫出高性能的服務與應用 那些你沒想過的事
Chieh (Jack) Yu
易度云查看 - 产品介绍
易度云查看 - 产品介绍
changxing qi
Semelhante a Linux File system
(20)
ElasticSearch Training#2 (advanced concepts)-ESCC#1
ElasticSearch Training#2 (advanced concepts)-ESCC#1
Zh tw introduction_to_hadoop and hdfs
Zh tw introduction_to_hadoop and hdfs
Q con shanghai2013-[刘海锋]-[京东文件系统简介]
Q con shanghai2013-[刘海锋]-[京东文件系统简介]
Track2 -刘继伟--openstack in gamewave
Track2 -刘继伟--openstack in gamewave
5, system admin
5, system admin
賽門鐵克 Storage Foundation 6.0 簡報
賽門鐵克 Storage Foundation 6.0 簡報
Bypat博客出品-利用cent os快速构建自己的发行版
Bypat博客出品-利用cent os快速构建自己的发行版
2015-05-20 製造業生產歷程全方位整合查詢與探勘的規劃心法
2015-05-20 製造業生產歷程全方位整合查詢與探勘的規劃心法
20121213 foundation of software development 2 2-ktchuang
20121213 foundation of software development 2 2-ktchuang
Large-Scale Cluster Mangement & Kubernetes Under The Hood
Large-Scale Cluster Mangement & Kubernetes Under The Hood
儲存三二話
儲存三二話
Docker tutorial
Docker tutorial
開發人員必須知道的 Kubernetes 核心技術 - Kubernetes Summit 2018
開發人員必須知道的 Kubernetes 核心技術 - Kubernetes Summit 2018
浅谈电商网站数据访问层(DAL)与 ORM 之适用性
浅谈电商网站数据访问层(DAL)与 ORM 之适用性
3, users & groups
3, users & groups
hicloud PaaS 雲創平台 PHP 運行環境介紹
hicloud PaaS 雲創平台 PHP 運行環境介紹
Linuxguide4f2e
Linuxguide4f2e
LinuxGuide4F2E
LinuxGuide4F2E
寫出高性能的服務與應用 那些你沒想過的事
寫出高性能的服務與應用 那些你沒想過的事
易度云查看 - 产品介绍
易度云查看 - 产品介绍
Mais de Kenny (netman)
rpi_audio configuration steps
rpi_audio configuration steps
Kenny (netman)
Rpi audio
Rpi audio
Kenny (netman)
Importance of linux system fundamental in technical documentation reading
Importance of linux system fundamental in technical documentation reading
Kenny (netman)
Ha opensuse
Ha opensuse
Kenny (netman)
Chap 19 web
Chap 19 web
Kenny (netman)
Chap 18 net
Chap 18 net
Kenny (netman)
Chap 17 advfs
Chap 17 advfs
Kenny (netman)
About the Course
About the Course
Kenny (netman)
Linux fundamental - Chap 16 System Rescue
Linux fundamental - Chap 16 System Rescue
Kenny (netman)
Linux fundamental - Chap 15 Job Scheduling
Linux fundamental - Chap 15 Job Scheduling
Kenny (netman)
Linux fundamental - Chap 14 shell script
Linux fundamental - Chap 14 shell script
Kenny (netman)
Linux fundamental - Chap 13 account management
Linux fundamental - Chap 13 account management
Kenny (netman)
Linux fundamental - Chap 12 Hardware Management
Linux fundamental - Chap 12 Hardware Management
Kenny (netman)
Linux fundamental - Chap 11 boot
Linux fundamental - Chap 11 boot
Kenny (netman)
Linux fundamental - Chap 10 fs
Linux fundamental - Chap 10 fs
Kenny (netman)
Linux fundamental - Chap 09 pkg
Linux fundamental - Chap 09 pkg
Kenny (netman)
Linux fundamental - Chap 08 proc
Linux fundamental - Chap 08 proc
Kenny (netman)
Linux fundamental - Chap 07 vi
Linux fundamental - Chap 07 vi
Kenny (netman)
Linux fundamental - Chap 06 regx
Linux fundamental - Chap 06 regx
Kenny (netman)
Linux fundamental - Chap 05 filter
Linux fundamental - Chap 05 filter
Kenny (netman)
Mais de Kenny (netman)
(20)
rpi_audio configuration steps
rpi_audio configuration steps
Rpi audio
Rpi audio
Importance of linux system fundamental in technical documentation reading
Importance of linux system fundamental in technical documentation reading
Ha opensuse
Ha opensuse
Chap 19 web
Chap 19 web
Chap 18 net
Chap 18 net
Chap 17 advfs
Chap 17 advfs
About the Course
About the Course
Linux fundamental - Chap 16 System Rescue
Linux fundamental - Chap 16 System Rescue
Linux fundamental - Chap 15 Job Scheduling
Linux fundamental - Chap 15 Job Scheduling
Linux fundamental - Chap 14 shell script
Linux fundamental - Chap 14 shell script
Linux fundamental - Chap 13 account management
Linux fundamental - Chap 13 account management
Linux fundamental - Chap 12 Hardware Management
Linux fundamental - Chap 12 Hardware Management
Linux fundamental - Chap 11 boot
Linux fundamental - Chap 11 boot
Linux fundamental - Chap 10 fs
Linux fundamental - Chap 10 fs
Linux fundamental - Chap 09 pkg
Linux fundamental - Chap 09 pkg
Linux fundamental - Chap 08 proc
Linux fundamental - Chap 08 proc
Linux fundamental - Chap 07 vi
Linux fundamental - Chap 07 vi
Linux fundamental - Chap 06 regx
Linux fundamental - Chap 06 regx
Linux fundamental - Chap 05 filter
Linux fundamental - Chap 05 filter
Linux File system
1.
Linux File System ©
Netman <netman@study-area.org>
2.
First thing you'll remember today: Everything is file,Everything
is file, && file is everything!file is everything!
3.
今天您還要記住另一件事: 當所學的技術不能轉換成金錢當所學的技術不能轉換成金錢 的時候,那是白學了。的時候,那是白學了。 因此,個人使用與企業應用的因此,個人使用與企業應用的 差異是非常懸殊的!差異是非常懸殊的!
4.
•Objectives 1. Linux 檔案系統種類 2.
Linux 檔案系統運作原理 3. 硬碟與分割區 4. Linux 檔案系統建置 5. Logical Volume Manager (LVM) 6. Software RAID 7. 網路檔案系統
5.
Q uestion: 甚麼是檔案系統?
6.
● 簡單來說,能夠存放檔案且更重要的是 能從裡面找回檔案的系統。 ● 檔案系統選擇考量要素: –
效能 – 容量 – 安全性 – 擴充性 – 通用性
7.
Part 1 Linux 檔案系統種類
8.
傳统(非日誌式)檔案系統 ■ ext2 已在 Linux
系統上運行非常長久一段時間,基於 inode 基礎 管理檔案。可輕鬆升級為 ext3 ■ MS-DOS/VFAT. 由 Microsoft 設計專門運行在 Windows 及 DOS 系統上的 檔案系統。主要以 FAT (File Allocation Table) 來管理檔案 ■ minix. 古老且精簡的檔案系統。目前比較常見在 RAM disk 或 Floppy 媒體中使用
9.
日誌式檔案系統 每一筆檔案變更都會被記錄在日誌中, 然後才會進行真正的修改, 修改後再更新記錄。
10.
■ ext3 為 ext2
檔安系統的延伸,主要增加了日誌功能 ■ ReiserFS 原本由 Hans Reiser 開發,採用資料庫方式來管理檔案, 以 Balanced Binary Tree 結構提供更高效能的資料存取。 ■ XFS 原本為 SGI 系統使用的高效能日誌式檔案系統。具備快速復 原能力、高彈性、大容量等優點 ■ NTFS 是微軟公司為 Windows NT 系統設計的檔案系統,及後也 應用在更新的 Windows 系統當中 日誌式檔案系統
11.
Virtual Filesystem Switch •VFS
把不同的檔案系統對上層程式隱藏 起來,以提供統一的檔案資料存取模式 •具體的檔案存取行為則交由系統核心程式 負責 •可以為不具備 Unix 屬性的檔案系統解決 類 Unix 系統的操作行為
12.
Virtual Filesystem Switch App1
App3App2 VFS VFATReiserfsEXT3EXT2
13.
Part 2 Linux 檔案系統運作原理
14.
•Linux 檔案系統中,檔案的資料 (data) 與資訊
(information) 是分開存放的 •每份檔案的資訊會被記錄在 inode (index node) 中 ... ... Inode block data block
15.
• 每份 inode
大小為 128 byte ,內容: – 檔案類別 – 檔案權限 – 連結數目 – 擁有者資訊 (user & group) – 檔案大小 – 時間戳印 (atime, mtime, ctime) – Data Block 位置指針 – 其他屬性 ...
16.
•檔案系統在建立時(格式化),會劃分出 基本的使用區塊空間 (block) ,然後再分 配為不同的使用類型: –Super
Block –Block Group Descriptor –Block Bit Map –Inode Bit Map –Inode Table –Data Block
17.
•在建立 block 的時候,一般可以指定不 同的大小: –數量的不同 –浪費程度的不同(參考下頁) –效能的不同
18.
•因為 data block
的使用基本是獨佔式的 ( 以一個 5K 大小的檔案為例 ) : –4K 大小的 block 會浪費 3K –2K 大小的 block 會浪費 1K –1K 大小的 block 會浪費 0K
19.
•由於現在的檔案系統體積非常龐大,為改 善索引效率,設計上會把 block 劃分為 block
group : group0 group1 Group2...
20.
•每個 group 的功能都是相同的 group0
group1 Group2... Super Block Group Descriptor Data Block ...Block Bit Map Inode Table Inode Bit Map
21.
■ Data Block 檔案系統的主要資源,用來存放檔案資料 (data)
內容。在比例上所佔的數量最多。 Q: 怎麼知道一份檔案的資料放哪呢? Data Block ...
22.
■ Inode Table 存放每一份檔案的
inode 資訊。這也是檔 案系統中另一主要資源,若所有 inode 都 分配出去就不能建立新檔案了。 Inode 會告 訴檔安的 data block 位置。 Q: 怎麼知道哪些 inode 跟 block 用掉了? Inode Table
23.
■ Inode Bit
Map 以 0 或 1 的狀態對照 inode table 的分 配情況。 Q: 怎麼知道 Inode Bit Map 有多大呢? Inode Bit Map
24.
■ Block Bit
Map 以 0 或 1 的狀態對照 data block 的分配 情況。 Q: 怎麼知道 Block Bit Map 有多大呢? Block Bit Map
25.
■ Group Descriptor 記錄及標識
Bit Maps, Inode Table, Data Block 等區塊範圍及尋址指針。 Q: 怎麼知道整個檔案系統的分配及使用情形呢? Group Descriptor
26.
■ Super Block 記錄整個檔案系統分配與使用狀態: –已被使用及可用的
inode 與 block 數量 –Block Group 數量及每個群組的 inode 與 block 數量 –檔案系統的使用記錄,如掛載、寫入時間等等 –其他更多關於整個檔案系統的資訊 ... –其中有個 valid bit 記錄系統掛載狀態( 0 是 已掛載、1是已卸載) Super Block
27.
•Question : 如何從一個檔案系統中找到一份檔案呢?
28.
目錄的功能 •目錄本身也是一份檔案 •內容記錄其下所索引的每一份檔案名稱及 其 inode 號碼 .
: 1234 .. : 4321 File1 : 1122 File2 : 2233 File3 : 3344 File4 : 5566 ... : ...
29.
•所有的檔案(含目錄本身)都是在目錄之 下索引的,如此就構成了所謂的路徑: –絕對路徑:從根目錄開始索引 –相對路徑:從當前目錄開始索引
30.
。。。 。。。 。。。 Directory File Name Directory Inode Data Block
31.
關於 link •Hard Link
: ln file hard.link –使用相同的 inode 索引,與原檔案地位同等 •Symbolic Link : ln -s file soft.link –使用不同的 inode ,但資料內容是路徑
32.
File Name Directory Inode Data Symbolic LinkHard
Link InodeInode Path
33.
關於 Link Counter •在
Hard Link 建立時增加 1 •在檔案刪除時減少 1 –若 Link Counter 大於 0 則單純在 Directory 中把檔案名稱移除 –若 Link Counter 等於 0 除了從 Directory 把檔案名稱移除之外,同時 把 inode & block Bit Map 中的記錄標 識為 0 (free) Q: 敏感檔案如何才能真正刪除?
34.
Ext2 檔案系統的限制 •每一檔案名稱不得超過 255
個字母 •單一路徑 ( 含 /) 不得超過 4096 個字母 •在 1K block size 的情況下,單一檔案 最大 16G 、整個檔案系統最大 2T •在 4K block size 的情況下,單一檔案 最大 2T 、整個檔案系統最大 16T
35.
Ext2 檔案系統的弱點 •空間浪費嚴重(小檔案&零碎尾巴) •Inode 數量固定不能修改 –
過多會壓縮 Data Block 的空間 – 過少容易到達極限,就算有閒置的 Data Block 也不能建立新檔案 •檔案數量過多時會導致效能下降
36.
reiserfs 檔案系統 •使用 tailing
block 減少空間浪費 •Inode 數量按需而建 •使用 Balanced Binary Tree 提高效能
37.
檔案修改的行為 •每一次檔案修改會產生兩筆 transaction –資料 (Data)
修改 –資訊 (Inode) 修改 •若只完成其中一筆 transaction 則為檔 案損毀 (curruption) 情形 ... ...
38.
系統在重開機過程 •會檢查 Super Block
的 Valid Bit 以及 掛載次數 / 天數來確認檔案損毀情形并加 以修復 •傳統非日誌式檔案系統會針對每一份檔案 作檢查,若檔案數量龐大的話這將耗費相 當多的時間! •這在企業經營中常因斷電或其他意外造成 過大的 Down Time 成本
39.
日誌式檔案系統 •每一次檔案修改之前,會先在日誌中進行記錄, 待 transaction 完成之後再更新記錄 •如此在下次開機的時候,只需檢查日誌中有登記 的檔案即可。這大幅縮減了檔案系統的檢查時間 ,為企業降低
Down Time 成本。 •雖然日誌的記錄與更新會造成輕微的額外操作, 但隨著硬體效能以及檔案系統的改良,對於檔案 數量龐大的系統來說,還是值得的。
40.
Part 3 硬碟與分割區
41.
Linux 系統的硬碟名稱 •IDE HDD/ATAPI
CDROM –1st IDE: hda, hdb –2nd IDE: hdc, hdd •SCSI HDD/SATA HDD/USB Disk –sda –sdb –sdc –...
42.
Linux 系統的分割區名稱 •IDE HDD/ATAPI
CDROM –hda1 –hda2 –hdc5 –... •SCSI HDD/SATA HDD/USB Disk –sda1 –sdb2 –sdc5 –...
43.
分割區類別 •Primary Partition –最多 4
個 –號碼從 1 到 4 ,不需連號不需按順序 •Extended Partition –從 Primary 轉換過來 –最多只能 1 個也可以不設 •Logical Partition –只能在 Extended Partition 之內建立 –必需連號(從 5 開始) –但可以不按順序
44.
4 Linux 系統的分割範例 •以 5
個分割區為例: 1 25 6 7 8 1 16 7 8 31 95 Primary 25 6 Extended Logical
45.
分割區考量因素 •內容分類 –系統檔案 –程式/原始碼 –資料文件 •檔案性質差異 –size –存取行為 •安全性 –掛載選項 •效能 •擴充性
46.
最基本分割區 •/ (root) •swap
47.
常見獨立割區 •/boot •/home •/opt •/tmp •/srv •/usr •/var
48.
Part 4 Linux 檔案系統建置
49.
檔案系統建置大致流程 1. fdisk 2. partprobe 3.
mkfs 4. mkdir 5. /etc/fstab 6. mount
50.
fdisk 命令 •修改/建立 partition
的工具 •常見參數: -l : 列出分割區資訊 •基本語法 fdisk /dev/<disk>
51.
常見 fdisk 內部命令 m 列出命令說明簡要 p 列出分割區資訊 n 建立分割區 d 刪除分割區 l 列出檔案系統識別碼 t 修改檔案系統識別碼 q 不作任何變更離開 w 儲存變更并離開
52.
•請習慣 fdisk 命令的
Q & A 操作模式 •例:
53.
partprobe 命令 •當 fdisk
命令完成分割區修改之後,系 統核心仍然使用舊有資訊 •要系統使用修改之後的新資訊,有兩個方 法: –reboot –Partprobe •檢查 /proc/partitions 可獲知當前系統 的分割區資訊
54.
檔案系統格式化 •在儲存設備上建立檔案系統 •在 linux 上使用
mkfs 命令 : mkfs -t <type> [options] <device> •以 ext3 為例: mkfs.ext3 mkfs -t ext3 mke2fs -j mkfs.ext2 -j
55.
•常見 mkfs 選項: -b
<size> •Block Size -c •檢查 bad block -i <ratio> •Inode 對 byte 的比例 -N <number> •Inode 總量(大約值) -j •啟用 journal -L <label> •設定標簽 *更多參考 man mke2fs
56.
檔案系統掛載 •Linux 檔案系統跟 Windows
不同,并 不使用磁碟代號 •所有儲存設備必需掛載 (mount) 到一個 目錄才能存取 •掛載目錄最好是空的 (empty) ,也稱為 掛載點 (Mount Point) •設備不使用時可以執行卸載 (umount)
57.
檔案系統掛載 mount
58.
mount 命令 •命令語法: mount -t
<fs_type> -o <m_opts> <device> <mount_point> •Example: mount -t iso9660 -o ro,nosuid /dev/sr0 /media/cdrom
59.
常見掛載選項: rw/ro •可否寫人 sync/async •是否同步 dev/nodev •是否可以存取設備 exec/noexec •可否執行 suid/nosuid •可否使用 suid 轉換執行身份
60.
掛載設定檔 fstab •路徑: /etc/fstab •欄位: <device> •設備路徑或識別標記 <m_point> •掛載點路徑 <fs_type> •檔案系統類別 <m_options> •掛載選項 <dump> •是否在 dump
時備份(1或0) <fsck> •是否在 fsck -a 時檢查(0或1或2)
61.
● fstab 專屬選項 auto/noauto •是否在執行
mount -a 進行掛載 user/nouser •是否允許非管理員掛載 defaults •rw,sync,dev,exec,suid,auto,nouser
62.
•檔設備設定存在於 fstab 之後,可以簡 化掛載命令: mount
<dev> mount <m_point> mount -a
63.
umount 命令 •命令語法: umount <device> umount
<mount_point> •條件 該設備目前不能被使用中
64.
Part 5 Logical Volume
Manager (LVM)
65.
問大家幾個問題: •當硬碟爆了怎辦? •分割硬碟時,有些分割區太大有些又太小怎調整? •硬碟槽插滿了,怎麼用更大的硬碟來替換? •公司生意太好了,沒幾年就要升級硬碟怎麼辦? •那些隨時在變更的資料都怎麼備份的? •...? • 這些都不是重點 ...
66.
我只問一個問題就夠了: 您打算要公司花多少 Down Time 成本在上面?!
67.
LVM 的好處 •突破過往傳統 partition
的限制,輕易組 建及擴充龐大的檔案系統空間 •輕鬆調整容量大小 •在支援熱插拔的設備上,不需要停止服務 就能替換硬碟 •可利用 striping 提高更好的存取效能 •可利用 shapshot 為某一時間點作備份, 極致化壓縮 backup window 的大小
68.
LVM 基本元件 – Physical
Volume >ID 為 x8e 的 partition 或整顆設備 PV PVPVPV
69.
– Volume Group >把一個或多個
PV 組成共同的群組 PV PVPVPV VG
70.
– Physical Extent >對
VG 重新劃分的空間單位(預設是 4M ) PV PVPVPV PE
71.
– Logical Volume >重新分配
PE 所組成的空間 PV PVPVPV VG LV LV LV
72.
– lvreduce 可以釋放
LV 中閒置未用的 PE PV PVPVPV VG LV LVLV LVM 之彈性
73.
PV PVPVPV VG LV LVLV – lvextend
可以把 VG 中游離可用的 PE 納 入 LV 以擴充容量
74.
PV – vgextend 可為
VG 在 PE 不足的時候加入 PV 進來 以擴充整個 VG 的容量 PV PVPVPV VG LV LVLV
75.
PV – pvmove 可以把
PV 中已使用的 PE 搬移到別的 PV 中 PV PVPVPV VG LV LV LV
76.
PV – vgreduce 可以把閒置的
PV 從 VG 中開除 PV PVPVPV VG LV LV LV
77.
LVM 基本建置操作 •先執行 fdisk
( 設 ID 為 x8e) 及 partprobe •運行 pvcreate : pvcreate /dev/sd{a,b}1 •運行 vgcreate : vgcreate myvg /dev/sd{a,b}1 •運行 lvcreate : lvcreate -L 500M -n mylv myvg •新建的 lv 路徑在 /dev/<vg>/<lv> ,如: /dev/myvg/mylv •再執行 mkfs, mkdir, mount 等操作
78.
LVM 擴充操作 •先執行 fdisk
(設ID為 x8e)及 partprobe •運行 pvcreate 處理新分割區或新硬碟: pvcreate /dev/sdc1 •運行 vgextend 把新 PV 納入 VG: vgextend myvg /dev/sdc1 •運行 pvmove 把舊硬碟的 PE 搬移至新硬碟: pvmove /dev/sda1 /dev/sdc1 •運行 vgreduce 卸下舊硬碟: vgreduce myvg /dev/sda1 •運行 lvextend 擴充 LV: lvexted -l +100% /dev/myvg/mylv •運行 resize2fs 擴充檔案系統: resize2fs /dev/myvg/mylv •再執行 df 確認容量大小
79.
LVM 其他操作 •關於 PV
的查詢: pvscan pvdisplay •關於 vg 的查詢: vgscan vgdisplay •關於 lv 的查詢: lvscan lvdisplay •停用或啟用 VG vgchange -a <n|y> <vg_name>
80.
•結論: 能夠用 LVM 的話, 從現在開始就用
LVM 吧! p.s. 我相信您日後會感謝我這個建議的 ...
81.
巴特 ...
82.
•LVM 也不是完美的: LVM 本身不具備容錯能力。 換句話來說,如果某一個
PV 壞掉的話, 可能整個 VG 的資料都會損毀! ... 那怎麼辦呢?
83.
Part 6 Software RAID
84.
RAID 是蝦米碗糕? •簡單來說, RAID 就是用多個儲存設備組成的陣列。
85.
RAID 的種類 •Hardware RAID –有獨立處理的硬體處理單元 –所有
RAID 的運算由硬體完成 –對系統來說,只視為單一的儲存設備,如 sda, sdb, … –效能高、功能強,但成本也高 •Software RAID –在組成 RAID 之前,系統只看到獨立的儲存設備 –組成 RAID 之後,系統以 md0, md1, … 等名稱來識別 –所有的 RAID 運算由系統完成 –效能與功能稍遜,但勝在便宜
86.
RAID 的等級 •RAID0 –也叫 striping –至少需要兩顆硬碟 –可提升存取效能 –沒有容錯能力 5 3 1 6 4 2
87.
•RAID1 –也叫 mirroring –至少需要兩顆硬碟 –具容錯能力 –但不能提升效能 3 2 1 3 2 1
88.
•RAID5 –至少需要三顆硬碟 –利用 parity 來提供容錯能力
( 只容許一顆硬 碟故障 ) –同時也能提升效能 –與 RAID2,3,4 差在運算單位之外,也避免了 parity disk 的瓶頸 p 3 1 5 p 2 6 4 p
89.
•Parity 的原理: stripA: 11001010 stripB:
11100011 Parity: 11010110
90.
•Question : 如果 RAID5
同時有兩顆硬碟故障呢?
91.
•RAID6 或更高等級 •Spare Disk –需要至少一顆閒置硬碟 –爭取最快的復原時間 p 3 1 5 p 2 6 4 p 5 p 2
92.
RAID + LVM •我們可以用
RAID 的容錯能力來解決 LVM 不能容錯的問題 –能用 Hardware RAID 是最好的 –也可以用 Software RAID1 3 2 1 3 2 1 PV 3 2 1 3 2 1 PV VG
93.
Part 7 Network File
System
94.
再問大家一個問題: •作為一個 MIS 資訊人員, 當
End User 回報系統故障的時候, 您首先想到的是甚麼?
95.
菜鳥版 : 雪特!! 千萬別在這個時候給我出槌啊 ~~~ (皮皮挫
ing ,抖。。。) OK ,我相信這不會是你啦 ...
96.
資深版 : 按~~~!! 林貝早就說過了啦! 誰叫你又手賤了是不是啊?! !@$%#^%**)_@$$#@^&^* Well, 我相信這絕對不是你的答案
...
97.
進階版 : 免驚啦~~ 有我在,馬上幫你修好! Good, 我開始欣賞你了!
98.
神級版 : 恩~~ 我得確保您的工作不會被中斷! YES!! That
is what I want to hear!
99.
那接下來 ... How to
do?
100.
Solution: 換系統而不是修系統!
101.
網路檔案系統 •由 server 端輸出
(export) 目錄 •然後 client 端透過網路掛載 (mount) Export Mount
102.
網路檔案系統方案 •NFS •SAMBA •Koda •iSCSI •NAS •SANS •etc...
103.
集中式管理
104.
Many more... – Quota –
Backup/Rsync – Content Filtering – Regular Expression – ISO/RamDisk/VM Image – ...
105.
額外參考資訊 – IBM developerWorks: >http://www-106.ibm.com/developerworks/library/l-fs.html –
Novell web site: >http://www.novell.com/products/linuxenterpriseserver/kernel_li mits.html – FHS: >http://www.pathname.com/fhs/ – ext2: >http://e2fsprogs.sureceforge.net/ – Reiserfs: >http://www.namesys.com – XFS: >http://oss.sgi.com/projects/xfs/
106.
Thank you!Thank you!
107.
Please emember: Everything is file,Everything
is file, && file is everything!file is everything!
Baixar agora