linux lvm快照的正確mount掛載實(shí)現(xiàn)方式
linux lvm快照的正確mount掛載
由于 LVM 快照的特殊性 ,普通的 mount
方式可能不適用。
以下是更深入的分析和解決方案:
1. 檢查快照是否正確創(chuàng)建
首先確認(rèn)快照是否成功創(chuàng)建:
lvs # 查看 temp_snap 是否存在,并檢查屬性
如果 Origin
指向 mysql_data
,說(shuō)明快照創(chuàng)建成功。
2. 確??煺找鸭せ?/h3>
lvchange -ay /dev/vg00/temp_snap # 強(qiáng)制激活快照
lvchange -ay /dev/vg00/temp_snap # 強(qiáng)制激活快照
3. 嘗試直接掛載(不指定文件系統(tǒng)類(lèi)型)
mount /dev/vg00/temp_snap /mnt/snap
如果報(bào)錯(cuò) bad fs type
,說(shuō)明內(nèi)核無(wú)法自動(dòng)識(shí)別文件系統(tǒng)。
4. 顯式指定文件系統(tǒng)類(lèi)型(關(guān)鍵步驟)
- 如果是 ext4/ext3/ext2
mount -t ext4 -o ro,nouuid /dev/vg00/temp_snap /mnt/snap
- 如果是 XFS
mount -t xfs -o ro,nouuid /dev/vg00/temp_snap /mnt/snap
關(guān)鍵選項(xiàng)說(shuō)明:
-o ro
:以只讀方式掛載(快照必須只讀)-o nouuid
:忽略 UUID 沖突(快照和原卷 UUID 相同,必須忽略)
5. 如果仍然失?。簷z查文件系統(tǒng)一致性
- EXT4 文件系統(tǒng)
fsck -f /dev/vg00/temp_snap # 強(qiáng)制檢查
- XFS 文件系統(tǒng)
xfs_repair /dev/vg00/temp_snap
6. 最終修正版?zhèn)浞菽_本
#!/bin/bash # 1. 創(chuàng)建快照(必須足夠大) lvcreate -s -n temp_snap -L 20G /dev/vg00/mysql_data # 2. 激活快照 lvchange -ay /dev/vg00/temp_snap # 3. 獲取文件系統(tǒng)類(lèi)型 FS_TYPE=$(blkid -o value -s TYPE /dev/vg00/temp_snap) [ -z "$FS_TYPE" ] && FS_TYPE="ext4" # 默認(rèn)類(lèi)型 # 4. 掛載快照(關(guān)鍵步驟) mkdir -p /mnt/snap if mount -t $FS_TYPE -o ro,nouuid /dev/vg00/temp_snap /mnt/snap; then # 5. 備份數(shù)據(jù) rsync -a /mnt/snap/ backup-server:/mysql_backups/ # 6. 卸載并刪除 umount /mnt/snap lvremove -f /dev/vg00/temp_snap else echo "掛載失??!請(qǐng)檢查:" echo "1. 快照大小是否足夠(lvdisplay /dev/vg00/temp_snap)" echo "2. 文件系統(tǒng)是否損壞(fsck/xfs_repair)" exit 1 fi
常見(jiàn)根本原因
1.未使用 -o ro,nouuid
LVM 快照必須只讀掛載,且必須忽略 UUID 沖突。
2.快照空間不足
如果原卷在備份期間變化量超過(guò) 20G,快照會(huì)失效。
3.文件系統(tǒng)未正確關(guān)閉
原卷 mysql_data
可能需要先 sync
再創(chuàng)建快照。
如何驗(yàn)證問(wèn)題
# 查看快照狀態(tài) lvdisplay /dev/vg00/temp_snap | grep -E "Allocated|Snapshot" # 查看掛載錯(cuò)誤詳情 dmesg | tail
如果仍有問(wèn)題,請(qǐng)?zhí)峁?/p>
lvdisplay /dev/vg00/mysql_data
和lvdisplay /dev/vg00/temp_snap
的輸出mount
命令的完整錯(cuò)誤信息blkid /dev/vg00/temp_snap
的結(jié)果
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
解決ssh遠(yuǎn)程登陸linux顯示-bash-4.1$的問(wèn)題
下面小編就為大家?guī)?lái)一篇解決ssh遠(yuǎn)程登陸linux顯示-bash-4.1$的問(wèn)題。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-12-12深入解讀Linux進(jìn)程函數(shù)fork(),vfork(),execX()
這篇文章主要介紹了深入解讀Linux進(jìn)程函數(shù)fork(),vfork(),execX(),分享了相關(guān)代碼示例,小編覺(jué)得還是挺不錯(cuò)的,具有一定借鑒價(jià)值,需要的朋友可以參考下2018-01-01CentOS7安裝PHP7 Redis擴(kuò)展的方法步驟
這篇文章主要介紹了CentOS7安裝PHP7 Redis擴(kuò)展的方法步驟,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-04-04Linux利用firewalld和iptables實(shí)現(xiàn)IP端口限制與開(kāi)放
在服務(wù)器管理中,防火墻是保護(hù)系統(tǒng)安全的重要工具,通常,我們可能會(huì)關(guān)閉firewalld,但在某些情況下,我們需要利用firewalld或iptables來(lái)限制IP請(qǐng)求,本文將詳細(xì)介紹如何使用firewalld和iptables來(lái)實(shí)現(xiàn)IP端口限制與開(kāi)放,需要的朋友可以參考下2025-02-02Centos系統(tǒng)中用mock構(gòu)建rpm的方法
這篇文章主要給大家介紹了在Centos系統(tǒng)中用mock構(gòu)建rpm的方法,文中給出了詳細(xì)的命令代碼,相信對(duì)大家的理解和學(xué)習(xí)具有一定的參考借鑒家價(jià)值,有需要的朋友們下面來(lái)一起看看吧。2016-12-12Linux中Curl參數(shù)詳解實(shí)踐應(yīng)用
在現(xiàn)代網(wǎng)絡(luò)開(kāi)發(fā)和運(yùn)維工作中,curl 命令是一個(gè)不可或缺的工具,它是一個(gè)利用 URL 語(yǔ)法在命令行下工作的文件傳輸工具,支持多種協(xié)議,如 HTTP、HTTPS、FTP 等,本文給大家介紹了Linux中Curl參數(shù)詳解實(shí)踐應(yīng)用,需要的朋友可以參考下2025-01-01在Centos上搭建Maven中央倉(cāng)庫(kù)的方法
這篇文章主要介紹了在Centos上搭建Maven中央倉(cāng)庫(kù)的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-04-04詳細(xì)介紹linux動(dòng)態(tài)網(wǎng)絡(luò)和靜態(tài)網(wǎng)絡(luò)和克隆后的網(wǎng)絡(luò)配置
這篇文章主要介紹了詳細(xì)介紹linux動(dòng)態(tài)網(wǎng)絡(luò)和靜態(tài)網(wǎng)絡(luò)和克隆后的網(wǎng)絡(luò)配置,具有一定的學(xué)習(xí)價(jià)值,有需要的可以了解一下。2016-11-11Linux下使用pip安裝SpeechRecognition連接超時(shí)解決辦法
這篇文章主要介紹了Linux下使用pip安裝SpeechRecognition連接超時(shí)解決辦法,如果遇到此問(wèn)題,可以借鑒閱讀本文2023-03-03