磁盤存儲和文件系統

I/O Ports: I/O設備地址
一切皆文件:open(), read(), write(), close()
設備類型:
塊設備:block,存取單位「塊」,磁盤
字符設備:char,存取單位「字符」,鍵盤
設備文件:關聯至一個設備驅動程序,進而可以跟與之對應硬件設備進行通訊
設備號碼:
主設備號:major number, 標識設備類型
次設備號:minor number, 標識同一類型下的不一樣設備node

硬盤接口類型

 

機械硬盤和固態硬盤

機械硬盤(HDD):Hard Disk Drive,便是傳統普通硬盤,主要由:盤片,磁頭,盤片轉軸及控制電機,磁頭控制器,數據轉換器,接口,緩存等幾個部分組成。機械硬盤中全部的盤片都裝在一個旋轉軸上,每張盤片之間是平行的,在每一個盤片的存儲面上有一個磁頭,磁頭與盤片之間的距離比頭髮絲的直徑還小,全部的磁頭聯在一個磁頭控制器上,由磁頭控制器負責各個磁頭的運動。磁頭可沿盤片的半徑方向運動,加上盤片每分鐘幾千轉的高速旋轉,磁頭就能夠定位在盤片的指定位置上進行數據的讀寫操做。數據經過磁頭由電磁流來改變極性方式被電磁流寫到磁盤上,也能夠經過相反方式讀取。硬盤爲精密設備,進入硬盤的空氣必須過濾
固態硬盤(SSD):Solid State Drive,用固態電子存儲芯片陣列而製成的硬盤,由控制單元和存儲單元(FLASH芯片、DRAM芯片)組成。固態硬盤在接口的規範和定義、功能及使用方法上與普通硬盤的徹底相同,在產品外形和尺寸上也與普通硬盤一致
相較於HDD,SSD在防震抗摔、傳輸速率、功耗、重量、噪音上有明顯優點,SSD傳輸速率性能是HDD的2倍
相較於SSD,HDD在價格、容量佔有絕對優點
硬盤有價,數據無價,目前SSD不能徹底取代HHDcentos

設備文件

磁盤設備的設備文件命名:/dev/DEV_FILE
SCSI, SATA, SAS, IDE,USB: /dev/sd
虛擬磁盤:/dev/vd 、/dev/xvd
不一樣磁盤標識:a-z,aa,ab…
/dev/sda, /dev/sdb, ...
同一設備上的不一樣分區:1,2, ...
/dev/sda1, /dev/sda5
硬盤存儲術語
head:磁頭
track:磁道
cylinder:柱面
sector:扇區,512bytes緩存

機械硬盤結構

機械硬盤結構

固態硬盤(SSD)和機械硬盤(HDD)

硬盤存儲術語

區位記錄磁盤扇區結構

ZBR(Zoned Bit Recording)安全

CHS和LBA

CHS
採用24bit位尋址
其中前10位表示cylinder,中間8位表示head,後面6位表示sector
最大尋址空間8GB
LBA(logical block addressing)
LBA是一個整數,經過轉換成CHS格式完成磁盤具體尋址
ATA-1規範中定義了28位尋址模式,以每扇區512位組來計算,ATA-1所定義的28位LBA上限達到128 GiB。2002年ATA-6規範採用48位LBA,一樣以每扇區512位組計算容量上限可達128 Petabytes
因爲CHS尋址方式的尋址空間在大概8GB之內,因此在磁盤容量小於大概8GB時,可使用CHS尋址方式或是LBA尋址方式;在磁盤容量大於大概8GB時,則只能使用LBA尋址方式網絡

使用分區空間

設備識別
設備分區
建立文件系統
標記文件系統
在/etc/fstab文件中建立條目
掛載新的文件系統數據結構

磁盤分區

爲何分區
優化I/O性能
實現磁盤空間配額限制
提升修復速度
隔離系統和程序
安裝多個OS
採用不一樣文件系統oracle

分區

兩種分區方式:MBR,GPT
MBR: Master Boot Record,1982年,使用32位表示扇區數,分區不超過2T
如何分區:按柱面
0磁道0扇區:512bytes
446bytes: boot loader
64bytes:分區表,其中每16bytes標識一個分區
2bytes: 55AA
MBR分區中一塊硬盤最多有4個主分區,也能夠3主分區+1擴展(N個邏輯分區)app

MBR分區結構

MBR分區結構

硬盤主引導記錄MBR由4個部分組成
主引導程序(偏移地址0000H--0088H),它負責從活動分區中裝載,並運行系統引導程序
出錯信息數據區,偏移地址0089H--00E1H爲出錯信息,00E2H--01BDH全爲0字節
分區表(DPT,Disk Partition Table)含4個分區項,偏移地址01BEH--01FDH,每一個分區表項長16個字節,共64字節爲分區項一、分區項二、分區項三、分區項4
結束標誌字,偏移地址01FE--01FF的2個字節值爲結束標誌55AAdom

MBR結構

MBR中DPT結構

GPT分區

GPT:GUID(Globals Unique Identifiers) partition table 支持128個分區,使用64位,支持8Z( 512Byte/block )64Z ( 4096Byte/block)
使用128位UUID(Universally Unique Identifier) 表示磁盤和分區 GPT分區表自動備份在頭和尾兩份,並有CRC校驗位
UEFI (Unified Extensible Firmware Interface 統一可擴展固件接口)硬件支持GPT,使操做系統啓動異步

GPT分區結構

BIOS+MBR與UEFI+GPT

管理分區

列出塊設備
•lsblk
建立分區使用:
•fdisk 建立MBR分區
•gdisk 建立GPT分區
•parted 高級分區操做
從新設置內存中的內核分區表版本

•partprobe

parted命令

parted的操做都是實時生效的,當心使用
用法:parted [選項]... [設備 [命令 [參數]...]...]
parted /dev/sdb mklabel gpt|msdos
parted /dev/sdb print
parted /dev/sdb mkpart primary 1 200 (默認M)
parted /dev/sdb rm 1
parted –l 列出分區信息

 

 

分區有兩種類型:一種是mbr分區表,一種是gpt分區表;兩者區別
是mbr分區表只支持單個分區最大空間爲2TB,可劃分爲4個主分區或3個

主分區和1個擴展分區,擴展分區可有多個邏輯分區。而gpt分區則無4個主分區限制。

分區工具fdisk

分區工具gdisk

四種查看磁盤設備分區信息

1.         lsblk

2.         cat /proc/partitions(基於內存查看)

3.         ls /dev/sdc*

4.         fdisk -l /dev/sdc

 

gdisk /dev/sdb 類fdisk 的GPT分區工具
fdisk -l [-u] [device...] 查看分區
fdisk /dev/sdb 管理分區
子命令:
p 分區列表
t 更改分區類型
n 建立新分區
d 刪除分區
v 校驗分區
u 轉換單位
w 保存並退出
q 不保存並退出

同步分區表

查看內核是否已經識別新的分區
cat /proc/partations
centos6通知內核從新讀取硬盤分區表
新增分區用
partx -a /dev/DEVICE
kpartx -a /dev/DEVICE -f: force
刪除分區用
partx -d --nr M-N /dev/DEVICE
CentOS 5,7: 使用partprobe
partprobe [/dev/DEVICE]

同步
centos6
加分區:partx -a /dev/sda
刪除分區: partx -d --nr 5-7 /dev/sda
centos5,7
partprobe

文件系統

刪除磁盤設備上的全部分區信息

文件系統

文件系統是操做系統用於明確存儲設備或分區上的文件的方法和數據結構;即在存儲設備上組織文件的方法。操做系統中負責管理和存儲文件信息的軟件結構稱爲文件管理系統,簡稱文件系統
從系統角度來看,文件系統是對文件存儲設備的空間進行組織和分配,負責文件存儲並對存入的文件進行保護和檢索的系統。具體地說,它負責爲用戶創建文件,存入、讀出、修改、轉儲文件,控制文件的存取,安全控制,日誌,壓縮,加密等
支持的文件系統:/lib/modules/`uname –r`/kernel/fs
各類文件系統:
https://en.wikipedia.org/wiki/Comparison_of_file_systems

文件系統類型

Linux文件系統:
ext2(Extended file system) :適用於那些分區容量不是太大,更新也不頻繁的狀況,例如 /boot 分區
ext3:是 ext2 的改進版本,其支持日誌功能,可以幫助系統從非正常關機致使的異常中恢復。它一般被用做通用的文件系統
ext4:是 ext 文件系統的最新版。提供了不少新的特性,包括納秒級時間戳、建立和使用巨型文件(16TB)、最大1EB的文件系統,以及速度的提高
xfs:SGI,支持最大8EB的文件系統
btrfs(Oracle), reiserfs, jfs(AIX), swap
光盤:iso9660
Windows:FAT32, exFAT,NTFS
Unix: FFS(fast), UFS(unix), JFS2
網絡文件系統:NFS, CIFS
集羣文件系統:GFS2, OCFS2(oracle)
分佈式文件系統: fastdfs,ceph, moosefs, mogilefs, glusterfs, Lustre
RAW:未經處理或者未經格式化產生的文件系統

文件系統分類

根據其是否支持"journal"功能:
日誌型文件系統: ext3, ext4, xfs, ...
非日誌型文件系統: ext2, vfat
文件系統的組成部分:
內核中的模塊:ext4, xfs, vfat
用戶空間的管理工具:mkfs.ext4, mkfs.xfs,mkfs.vfat
Linux的虛擬文件系統:VFS
查前支持的文件系統:cat /proc/filesystems

VFS

文件系統選擇

 建立文件系統

mkfs命令:
(1) mkfs.FS_TYPE /dev/DEVICE
ext4
xfs
btrfs
vfat
(2) mkfs -t FS_TYPE /dev/DEVICE
-L 'LABEL' 設定卷標

建立ext文件系統

mke2fs:ext系列文件系統專用管理工具
-t {ext2|ext3|ext4} 指定文件系統類型
-b {1024|2048|4096} 指定塊大小
-L ‘LABEL’ 設置卷標
-j 至關於 -t ext3
mkfs.ext3 = mkfs -t ext3 = mke2fs -j = mke2fs -t ext3
-i # 爲數據空間中每多少個字節建立一個inode;不該該小於block大小
-N # 指定分區中建立多少個inode
-I 一個inode記錄佔用的磁盤空間大小,128---4096
-m # 默認5%,爲管理人員預留空間佔總空間的百分比
-O FEATURE[,...] 啓用指定特性
-O ^FEATURE 關閉指定特性

描述一個磁盤設備有三種方式

1.     磁盤設備名稱

2.    磁盤設備名稱的卷標名稱

3.    磁盤設備名稱的UUID(惟一性,建議使用UUID描述磁盤設備)

文件系統標籤

指向設備的另外一種方法
與設備無關
blkid:塊設備屬性信息查看
blkid [OPTION]... [DEVICE]
-U UUID 根據指定的UUID來查找對應的設備
-L LABEL 根據指定的LABEL來查找對應的設備
e2label:管理ext系列文件系統的LABEL
e2label DEVICE [LABEL]
findfs :查找分區
findfs [options] LABEL=<label>
findfs [options] UUID=<uuid>

tune2fs

tune2fs:從新設定ext系列文件系統可調整參數的值
-l 查看指定文件系統超級塊信息;super block
-L 'LABEL’ 修改卷標
-m # 修預留給管理員的空間百分比
-j 將ext2升級爲ext3
-O 文件系統屬性啓用或禁用, –O ^has_journal
-o 調整文件系統的默認掛載選項,–o ^acl
-U UUID 修改UUID號
dumpe2fs:
將磁盤塊分組管理
-h:查看超級塊信息,不顯示分組信息

超級塊和INODE TABLE

 

 

 

文件系統檢測和修復

文件系統夾故障常發生於死機或者非正常關機以後,掛載爲文件系統標記爲「no clean」
注意:必定不要在掛載狀態下執行下面命令修復
fsck: File System Check
fsck.FS_TYPE
fsck -t FS_TYPE
注意:FS_TYPE 必定要與分區上已經文件類型相同
-a 自動修復
-r 交互式修復錯誤
e2fsck:ext系列文件專用的檢測修復工具
-y 自動回答爲yes
-f 強制修復
-p 自動進行安全的修復文件系統問題
xfs_repair:xfs文件系統專用檢測修復工具
-f 修復文件,而設備
-n 只檢查
-d 容許修復只讀的掛載設備,在單用戶下修復 / 時使用,而後當即reboot

掛載mount

掛載:將額外文件系統與根文件系統某現存的目錄創建起關聯關係,進而使得此目錄作爲其它文件訪問入口的行爲
卸載:爲解除此關聯關係的過程
把設備關聯掛載點:mount Point
mount
卸載時:可以使用設備,也可使用掛載點
umount 設備名|掛載點
掛載點下原有文件在掛載完成後會被臨時隱藏
掛載點目錄通常爲空

用mount命令掛載文件系統

掛載方法:mount DEVICE MOUNT_POINT
mount:經過查看/etc/mtab文件顯示當前已掛載的全部設備
mount [-fnrsvw] [-t vfstype] [-o options] device dir
device:指明要掛載的設備;
(1) 設備文件:例如/dev/sda5
(2) 卷標:-L 'LABEL', 例如 -L 'MYDATA'
(3) UUID, -U 'UUID':例如 -U '0c50523c-43f1-45e7-85c0-a126711d406e'
(4) 僞文件系統名稱:proc, sysfs, devtmpfs, configfs
dir:掛載點
事先存在,建議使用空目錄
進程正在使用中的設備沒法被卸載

mount經常使用命令選項

t vsftype 指定要掛載的設備上的文件系統類型
-r readonly,只讀掛載
-w read and write, 讀寫掛載
-n 不更新/etc/mtab,mount不可見
-a 自動掛載全部支持自動掛載的設備(定義在了/etc/fstab文件中,且掛載選項中有auto功能)
-L 'LABEL' 以卷標指定掛載設備
-U 'UUID' 以UUID指定要掛載的設備
-B, --bind 綁定目錄到另外一個目錄上
查看內核追蹤到的已掛載的全部設備
cat /proc/mounts

mount經常使用命令選項

o options:(掛載文件系統的選項),多個選項使用逗號分隔

async 異步模式 sync 同步模式,內存更改時,同時寫磁盤
atime/noatime 包含目錄和文件
diratime/nodiratime 目錄的訪問時間戳
auto/noauto 是否支持自動掛載,是否支持-a選項
exec/noexec 是否支持將文件系統上運行應用程序
dev/nodev 是否支持在此文件系統上使用設備文件
suid/nosuid 是否支持suid和sgid權限
remount 從新掛載
ro 只讀 rw 讀寫
user/nouser 是否容許普通用戶掛載此設備,/etc/fstab使用
acl 啓用此文件系統上的acl功能
loop 使用loop設備
defaults:至關於rw, suid, dev, exec, auto, nouser, async

配置開機⾃動掛載

掛載完成後,記住要寫在/etc/fstab配置⽂件⾥,使其新增磁盤分區在開機後能⾃動掛載。

卸載命令

查看掛載狀況
findmnt MOUNT_POINT|device
查看正在訪問指定文件系統的進程
lsof MOUNT_POINT
fuser -v MOUNT_POINT
終止全部在正訪問指定的文件系統的進程
fuser -km MOUNT_POINT
卸載
umount DEVICE
umount MOUNT_POINT

給分區類型爲swap建立文件系統命令

mkswap 磁盤設備名稱

nkswap /dev/sdc3

掛載點和/etc/fstab

配置文件系統體系
被mount、fsck和其它程序使用
系統重啓時保留文件系統體系
能夠在設備欄使用文件系統卷標
使用mount -a 命令掛載/etc/fstab中的全部文件系統

文件掛載配置文件

/etc/fstab每行定義一個要掛載的文件系統
一、要掛載的設備或僞文件系統
設備文件
LABEL:LABEL=""
UUID:UUID=""
僞文件系統名稱:proc, sysfs
二、掛載點
三、文件系統類型:ext4,xfs,iso9660,nfs,none
四、掛載選項:defaults ,acl,bind
五、轉儲頻率:0:不作備份 1:天天轉儲 2:每隔一天轉儲
六、fsck檢查的文件系統的順序:容許的數字是0 1 2
0:不自檢
1:首先自檢;通常只有rootfs才用
2:非rootfs使用

處理交換文件和分區

swap交換分區是系統RAM的補充,Swap 分區支持虛擬內存。當沒有足夠的 RAM 保存系統處理的數據時會將數據寫入 swap 分區
當系統缺少 swap 空間時,內核會因 RAM 內存耗盡而終止進程。配置過多 swap 空間會形成存儲設備處於分配狀態但閒置,形成浪費,過多 swap 空間還會掩蓋內存泄露
推薦系統 swap 空間

掛載交換分區

基本設置包括:
•建立交換分區或者文件
•使用mkswap寫入特殊簽名
•在/etc/fstab文件中添加適當的條目
•使用swapon -a 激活交換空間
啓用:swapon
swapon [OPTION]... [DEVICE]
-a:激活全部的交換分區
-p PRIORITY:指定優先級
/etc/fstab 在第4列中:pri=value
禁用:swapoff [OPTION]... [DEVICE]

SWAP的優先級

能夠指定swap分區0到32767的優先級,值越大優先級越高
若是用戶沒有指定,那麼核心會自動給swap指定一個優先級,這個優先級從-1開始,每加入一個新的沒有用戶指定優先級的swap,會給這個優先級減一
先添加的swap的缺省優先級比較高,除非用戶本身指定一個優先級,而用戶指定的優先級(是正數)永遠高於核心缺省指定的優先級(是負數)
優化性能:分佈存放,高性能磁盤存放

移動介質

掛載意味着使外來的文件系統看起來如同是主目錄樹的一部分
訪問前,介質必須被掛載
摘除時,介質必須被卸載
按照默認設置,非根用戶只能掛載某些設備(光盤、DVD、軟盤、USB等等)
掛載點一般在/media 或/mnt下

使用光盤

在圖形環境下自動啓動掛載/run/media/<user>/<label>
不然就必須被手工掛載
mount /dev/cdrom /mnt/
操做光盤:
eject 彈出光盤
eject -t 彈入光盤
建立ISO文件
cp /dev/cdrom /root/centos.iso
mkisofs -r -o /root/etc.iso /etc
刻錄光盤
wodim –v –eject centos.iso

掛載USB介質

查看USB設備是否識別
•lsusb
被內核探測爲SCSI設備
•/dev/sdaX、/dev/sdbX或相似的設備文件
在圖形環境中自動掛載
•圖標在[計算機]窗口中建立
•掛載在/run/media/<user>/<label>
手動掛載
•mount /dev/sdb1 /mnt

常見工具

文件系統空間佔用等信息的查看工具
df [OPTION]... [FILE]...
-H 以10爲單位
-T 文件系統類型
-h human-readable
-i inodes instead of blocks
-P 以Posix兼容的格式輸出
查看某目錄整體空間佔用狀態
du [OPTION]... DIR
-h human-readable
-s summary
--max-depth=# 指定最大目錄層級

工具dd

dd 命令:convert and copy a file
用法:
dd if=/PATH/FROM/SRC of=/PATH/TO/DEST bs=# count=#
if=file 從所命名文件讀取而不是從標準輸入
of=file 寫到所命名的文件而不是到標準輸出
ibs=size 一次讀size個byte
obs=size 一次寫size個byte
bs=size block size, 指定塊大小(既是是ibs也是obs)
cbs=size 一次轉化size個byte
skip=blocks 從開頭忽略blocks個ibs大小的塊
seek=blocks 從開頭忽略blocks個obs大小的塊
count=n 複製n個bs

conv=conversion[,conversion...] 用指定的參數轉換文件
轉換參數:
ascii 轉換 EBCDIC 爲 ASCII
ebcdic 轉換 ASCII 爲 EBCDIC
lcase 把大寫字符轉換爲小寫字符
ucase 把小寫字符轉換爲大寫字符
nocreat 不建立輸出文件
noerror 出錯時不中止
notrunc 不截短輸出文件
sync 把每一個輸入塊填充到ibs個字節,不足部分用空(NUL)字符補齊
fdatasync 寫完成前,物理寫入輸出文件

備份MBR
dd if=/dev/sda of=/tmp/mbr.bak bs=512 count=1
破壞MBR中的bootloader
dd if=/dev/zero of=/dev/sda bs=64 count=1 seek=446
有一個大與2K的二進制文件fileA。如今想從第64個字節位置開始讀取,須要讀取的大小是128Byts。又有fileB, 想把上面讀取到的128Bytes寫到第32個字節開始的位置,替換128Bytes,實現以下
dd if=fileA of=fileB bs=1 count=128 skip=63 seek=31 conv=notrunc

備份:
dd if=/dev/sdx of=/dev/sdy
將本地的/dev/sdx整盤備份到/dev/sdy
dd if=/dev/sdx of=/path/to/image
將/dev/sdx全盤數據備份到指定路徑的image文件
dd if=/dev/sdx | gzip >/path/to/image.gz
備份/dev/sdx全盤數據,並利用gzip壓縮,保存到指定路徑
恢復:
dd if=/path/to/image of=/dev/sdx
將備份文件恢復到指定盤
gzip -dc /path/to/image.gz | dd of=/dev/sdx
將壓縮的備份文件恢復到指定盤

拷貝內存資料到硬盤
dd if=/dev/mem of=/root/mem.bin bs=1024
將內存裏的數據拷貝到root目錄下的mem.bin文件
從光盤拷貝iso鏡像
dd if=/dev/cdrom of=/root/cd.iso
拷貝光盤數據到root文件夾下,並保存爲cd.iso文件
銷燬磁盤數據
dd if=/dev/urandom of=/dev/sda1
利用隨機的數據填充硬盤,在某些必要的場合能夠用來銷燬數據,執行此操做之後,/dev/sda1將沒法掛載,建立和拷貝操做沒法執行

邏輯卷管理器(LVM)

容許對捲進行方便操做的抽象層,包括從新設定文件系統的大小                                                
容許在多個物理設備間從新組織文件系統
•將設備指定爲物理卷
•用一個或者多個物理捲來建立一個卷組
•物理卷是用固定大小的物理區域(Physical Extent,PE)來定義的
•在物理捲上建立的邏輯卷
是由物理區域(PE)組成
•能夠在邏輯捲上建立文件系統                

LVM介紹

LVM: Logical Volume Manager, Version 2
dm: device mapper,將一個或多個底層塊設備組織成一個邏輯設備的模塊
設備名:/dev/dm-#
軟連接:
/dev/mapper/VG_NAME-LV_NAME
/dev/mapper/vol0-root
/dev/VG_NAME/LV_NAME
/dev/vol0/root

LVM更改文件系統的容量

LVM能夠彈性的更改LVM的容量
經過交換PE來進行資料的轉換,將原來LV內的PE轉移到其餘的設備中以下降LV的容量,或將其餘設備中的PE加到LV中以加大容量

 

 

pv管理工具

顯示pv信息
pvs:簡要pv信息顯示
pvdisplay
建立pv
pvcreate /dev/DEVICE
刪除pv
pvremove /dev/DEVICE

vg管理工具

顯示卷組
vgs
vgdisplay
建立卷組
vgcreate [-s #[kKmMgGtTpPeE]] VolumeGroupName PhysicalDevicePath [PhysicalDevicePath...]
管理卷組
vgextend VolumeGroupName PhysicalDevicePath [PhysicalDevicePath...]
vgreduce VolumeGroupName PhysicalDevicePath [PhysicalDevicePath...]
刪除卷組
先作pvmove,再作vgremove

lv管理工具

顯示邏輯卷
lvs
Lvdisplay
建立邏輯卷
lvcreate -L #[mMgGtT] -n NAME VolumeGroup
lvcreate -l 60%VG -n mylv testvg
lvcreate -l 100%FREE -n yourlv testvg
刪除邏輯卷
lvremove /dev/VG_NAME/LV_NAME
重設文件系統大小
fsadm [options] resize device [new_size[BKMGTEP]]
resize2fs [-f] [-F] [-M] [-P] [-p] device [new_size]
xfs_growfs /mountpoint

擴展和縮減邏輯卷

擴展邏輯卷:
lvextend -L [+]#[mMgGtT] /dev/VG_NAME/LV_NAME
resize2fs /dev/VG_NAME/LV_NAME
lvresize -r -l +100%FREE /dev/VG_NAME/LV_NAME
縮減邏輯卷:
umount /dev/VG_NAME/LV_NAME
e2fsck -f /dev/VG_NAME/LV_NAME
resize2fs /dev/VG_NAME/LV_NAME #[mMgGtT]
lvreduce -L [-]#[mMgGtT] /dev/VG_NAME/LV_NAME
mount

建立邏輯卷示例

建立物理卷
pvcreate /dev/sda3
爲卷組分配物理卷
vgcreate vg0 /dev/sda3
從卷組建立邏輯卷
lvcreate -L 256M -n data vg0
mkfs.xfs /dev/vg0/data
 掛載
mount /dev/vg0/data /mnt/data

跨主機遷移卷組

源計算機上
1 在舊系統中,umount全部卷組上的邏輯卷
2 禁用卷組
vgchange –a n vg0
lvdisplay
3 導出卷組
vgexport vg0
pvscan
vgdisplay
拆下舊硬盤
在目標計算機上
4 在新系統中安裝舊硬盤,並導入卷組:vgimport vg0
5 vgchange –ay vg0 啓用
6 mount全部卷組上的邏輯卷

邏輯卷管理器快照

快照是特殊的邏輯卷,它是在生成快照時存在的邏輯卷的準確拷貝
對於須要備份或者複製的現有數據臨時拷貝以及其它操做來講,快照是最合適的選擇
快照只有在它們和原來的邏輯卷不一樣時纔會消耗空間
在生成快照時會分配給它必定的空間,但只有在原來的邏輯卷或者快照有所改變纔會使用這些空間
當原來的邏輯卷中有所改變時,會將舊的數據複製到快照中
快照中只含有原來的邏輯卷中更改的數據或者自生成快照後的快照中更改的數據
創建快照的卷大小小於等於原始邏輯卷,也可使用lvextend擴展快照

邏輯卷管理器快照

快照就是將當時的系統信息記錄下來,就好像照相通常,若未來有任何數據改動了,則原始數據會被移動到快照區,沒有改動的區域則由快照區和文件系統共享

 

因爲快照區與本來的LV共用不少PE的區塊,所以快照與被快照的LV必須在同一個VG中.系統恢復的時候的文件數量不能高於快照區的實際容量

使用LVM快照

爲現有邏輯卷建立快照lvcreate -l 64 -s -n data-snapshot -p r /dev/vg0/data掛載快照mkdir -p /mnt/snapmount -o ro /dev/vg0/data-snapshot /mnt/snap恢復快照umount /dev/vg0/data-snapshotumount /dev/vg0/datalvconvert --merge /dev/vg0/data-snapshot刪除快照umount /mnt/databackuplvremove /dev/vg0/databackup

相關文章
相關標籤/搜索