逐個字節(jié)進(jìn)行快照

10年積累的成都網(wǎng)站建設(shè)、網(wǎng)站建設(shè)經(jīng)驗,可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識你,你也不認(rèn)識我。但先網(wǎng)站設(shè)計后付款的網(wǎng)站建設(shè)流程,更有孝感免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。
在Xen里創(chuàng)建快照的一種方法是在保存虛擬機(jī)當(dāng)前狀態(tài)后使用Linux dd。這包括以下步驟:
1.使用xm save命令禁用當(dāng)前的虛擬機(jī)狀態(tài)并將其寫入磁盤文件。這只把機(jī)器狀態(tài)寫入一個文件,不是用于Xen磁盤文件或分區(qū)的當(dāng)前狀態(tài)。使用名稱linux01這樣做,用xm save linux01 linux01.sav。注意這個命令將停止虛擬機(jī)。
2.現(xiàn)在使用dd將磁盤鏡像文件的當(dāng)前狀態(tài)轉(zhuǎn)存到一個備份文件。下面的例子將為LVM邏輯卷:
dd if=/dev/xenvols/linux01_root of=/data/xen_linux01_root.img
3.使用xm restore命令重新啟動虛擬機(jī)。
這種解決方案的主要缺點(diǎn)在于耗時。dd命令逐個字節(jié)地對虛擬機(jī)磁盤文件進(jìn)行復(fù)制,因此需要消費(fèi)大量時間。所以這種方案不是非常實用。
LVM方法
在Linux里,Logical Volume Manager(LVM)也能用于創(chuàng)建快照,它比先前的磁盤文件方法節(jié)省了許多時間。這種方法意味著你的虛擬機(jī)使用LVM邏輯卷作為存儲后端,與使用虛擬磁盤文件形成對比。由于這個邏輯卷,你接下來需要創(chuàng)建快照。這個快照是一種備份,只包含當(dāng)時進(jìn)行快照時所改變的元數(shù)據(jù)和塊。當(dāng)你通過元數(shù)據(jù)使用dd制作快照副本時,你通常在原始卷上制作原始塊的快照,不需要重新激活原始卷。通過這種方式,能大幅度減少創(chuàng)建快照的時間。步驟如下:
1.使用xm save命令保存虛擬機(jī)當(dāng)前狀態(tài),并寫入磁盤文件:
xm save linux01 linux01.sav
2.假定你已經(jīng)有一個LVM邏輯卷用來作為你虛擬機(jī)的存儲后端,使用下面的命令對這個卷進(jìn)行快照。比較好的準(zhǔn)則是使用在原始邏輯卷里所分配磁盤空間的10%作為快照卷的大小:
lvcreate -s -L 1G -n linux01-snap /dev/xenvols/linux01
3.由于現(xiàn)在你已經(jīng)在LVM快照里保存了虛擬機(jī)的狀態(tài),你能重新啟動虛擬機(jī),顯著減少虛擬機(jī)的停機(jī)時間:
xm restore linux01-sav
4.使用dd創(chuàng)建虛擬機(jī)快照并寫入一個鏡像文件。由于要使用快照復(fù)制所有虛擬機(jī)分配的磁盤塊,這將花費(fèi)很長時間:
dd if=/dev/xenvols/linux01-snap of=/data/xen01.img
5.不要忘記在最后一步移除快照。這很重要,因為快照最終將被完全覆蓋而導(dǎo)致快照不能用。這樣的問題是將阻止你從原始卷重新啟動,因此不要忘記這最后一步:
lvremove /dev/xenvols/linux01-snap
目前,沒有任何一種Linux版本提供了在開源Xen堆棧里創(chuàng)建虛擬機(jī)快照的方法,在本文中,我們學(xué)習(xí)了使用標(biāo)準(zhǔn)Linux工具,如LVM和dd命令來創(chuàng)建快照。
這樣你就學(xué)會如何用Linux命令創(chuàng)建快照了。
基本linux命令有哪些呢?
1、ls命令
就是 list 的縮寫,通過 ls 命令不僅可以查看 linux 文件夾包含的文件,而且可以查看文件權(quán)限(包括目錄、文件夾、文件權(quán)限)查看目錄信息等等。
常用參數(shù)搭配:
ls -a 列出目錄所有文件,包含以.開始的隱藏文件
ls -A 列出除.及..的其它文件
ls -r 反序排列
ls -t 以文件修改時間排序
ls -S 以文件大小排序
ls -h 以易讀大小顯示
ls -l 除了文件名之外,還將文件的權(quán)限、所有者、文件大小等信息詳細(xì)列出來
實例:
(1) 按易讀方式按時間反序排序,并顯示文件詳細(xì)信息
ls -lhrt
(2) 按大小反序顯示文件詳細(xì)信息
ls -lrS
(3)列出當(dāng)前目錄中所有以"t"開頭的目錄的詳細(xì)內(nèi)容
ls -l t*
(4) 列出文件絕對路徑(不包含隱藏文件)
ls | sed "s:^:`pwd`/:"
(5) 列出文件絕對路徑(包含隱藏文件)
find $pwd -maxdepth 1 | xargs ls -ld
2、cd 命令
cd(changeDirectory) 命令語法:
cd [目錄名]
說明:切換當(dāng)前目錄至 dirName。
實例:
(1)進(jìn)入要目錄
cd /
(2)進(jìn)入 "home" 目錄
cd ~
(3)進(jìn)入上一次工作路徑
cd -
(4)把上個命令的參數(shù)作為cd參數(shù)使用。
cd !$
3、pwd 命令
pwd 命令用于查看當(dāng)前工作目錄路徑。
實例:
(1)查看當(dāng)前路徑
pwd
(2)查看軟鏈接的實際路徑
pwd -P
4、mkdir 命令
mkdir 命令用于創(chuàng)建文件夾。
可用選項:
-m: 對新建目錄設(shè)置存取權(quán)限,也可以用 chmod 命令設(shè)置;
-p: 可以是一個路徑名稱。此時若路徑中的某些目錄尚不存在,加上此選項后,系統(tǒng)將自動建立好那些尚不在的目錄,即一次可以建立多個目錄。
實例:
(1)當(dāng)前工作目錄下創(chuàng)建名為 t的文件夾
mkdir t
(2)在 tmp 目錄下創(chuàng)建路徑為 test/t1/t 的目錄,若不存在,則創(chuàng)建:
mkdir -p /tmp/test/t1/t
5、rm 命令
刪除一個目錄中的一個或多個文件或目錄,如果沒有使用 -r 選項,則 rm 不會刪除目錄。如果使用 rm 來刪除文件,通常仍可以將該文件恢復(fù)原狀。
rm [選項] 文件…
實例:
(1)刪除任何 .log 文件,刪除前逐一詢問確認(rèn):
rm -i *.log
(2)刪除 test 子目錄及子目錄中所有檔案刪除,并且不用一一確認(rèn):
rm -rf test
(3)刪除以 -f 開頭的文件
rm -- -f*
6、rmdir 命令
從一個目錄中刪除一個或多個子目錄項,刪除某目錄時也必須具有對其父目錄的寫權(quán)限。
注意:不能刪除非空目錄
實例:
(1)當(dāng) parent 子目錄被刪除后使它也成為空目錄的話,則順便一并刪除:
rmdir -p parent/child/child11
7、mv 命令
移動文件或修改文件名,根據(jù)第二參數(shù)類型(如目錄,則移動文件;如為文件則重命令該文件)。
當(dāng)?shù)诙€參數(shù)為目錄時,第一個參數(shù)可以是多個以空格分隔的文件或目錄,然后移動第一個參數(shù)指定的多個文件到第二個參數(shù)指定的目錄中。
實例:
(1)將文件 test.log 重命名為 test1.txt
mv test.log test1.txt
(2)將文件 log1.txt,log2.txt,log3.txt 移動到根的 test3 目錄中
mv llog1.txt log2.txt log3.txt /test3
(3)將文件 file1 改名為 file2,如果 file2 已經(jīng)存在,則詢問是否覆蓋
mv -i log1.txt log2.txt
(4)移動當(dāng)前文件夾下的所有文件到上一級目錄
mv * ../
8、cp 命令
將源文件復(fù)制至目標(biāo)文件,或?qū)⒍鄠€源文件復(fù)制至目標(biāo)目錄。
注意:命令行復(fù)制,如果目標(biāo)文件已經(jīng)存在會提示是否覆蓋,而在 shell 腳本中,如果不加 -i 參數(shù),則不會提示,而是直接覆蓋!
-i 提示
-r 復(fù)制目錄及目錄內(nèi)所有項目
-a 復(fù)制的文件與原文件時間一樣
實例:
(1)復(fù)制 a.txt 到 test 目錄下,保持原文件時間,如果原文件存在提示是否覆蓋。
cp -ai a.txt test
(2)為 a.txt 建議一個鏈接(快捷方式)
cp -s a.txt link_a.txt
9、cat 命令
cat 主要有三大功能:
1.一次顯示整個文件:
cat filename
2.從鍵盤創(chuàng)建一個文件:
cat filename
只能創(chuàng)建新文件,不能編輯已有文件。
3.將幾個文件合并為一個文件:
cat file1 file2 file
-b 對非空輸出行號
-n 輸出所有行號
實例:
(1)把 log2012.log 的文件內(nèi)容加上行號后輸入 log2013.log 這個文件里
cat -n log2012.log log2013.log
(2)把 log2012.log 和 log2013.log 的文件內(nèi)容加上行號(空白行不加)之后將內(nèi)容附加到 log.log 里
cat -b log2012.log log2013.log log.log
(3)使用 here doc 生成新文件
cat log.txt EOF
Hello
World
PWD=$(pwd)
EOF
ls -l log.txt
cat log.txt
Hello
World
PWD=/opt/soft/test
(4)反向列示
tac log.txt
PWD=/opt/soft/test
World
Hello
10、more 命令
功能類似于 cat, more 會以一頁一頁的顯示方便使用者逐頁閱讀,而最基本的指令就是按空白鍵(space)就往下一頁顯示,按 b 鍵就會往回(back)一頁顯示。
命令參數(shù):
+n 從笫 n 行開始顯示
-n 定義屏幕大小為n行
+/pattern 在每個檔案顯示前搜尋該字串(pattern),然后從該字串前兩行之后開始顯示
-c 從頂部清屏,然后顯示
-d 提示“Press space to continue,’q’ to quit(按空格鍵繼續(xù),按q鍵退出)”,禁用響鈴功能
-l 忽略Ctrl+l(換頁)字符
-p 通過清除窗口而不是滾屏來對文件進(jìn)行換頁,與-c選項相似
-s 把連續(xù)的多個空行顯示為一行
-u 把文件內(nèi)容中的下畫線去掉
常用操作命令:
Enter 向下 n 行,需要定義。默認(rèn)為 1 行
Ctrl+F 向下滾動一屏
空格鍵 向下滾動一屏
Ctrl+B 返回上一屏
= 輸出當(dāng)前行的行號
:f 輸出文件名和當(dāng)前行的行號
V 調(diào)用vi編輯器
!命令 調(diào)用Shell,并執(zhí)行命令
q 退出more
實例:
(1)顯示文件中從第3行起的內(nèi)容
more +3 text.txt
(2)在所列出文件目錄詳細(xì)信息,借助管道使每次顯示 5 行
ls -l | more -5
按空格顯示下 5 行。
11、less 命令
less 與 more 類似,但使用 less 可以隨意瀏覽文件,而 more 僅能向前移動,卻不能向后移動,而且 less 在查看之前不會加載整個文件。
常用命令參數(shù):
-i 忽略搜索時的大小寫
-N 顯示每行的行號
-o 文件名 將less 輸出的內(nèi)容在指定文件中保存起來
-s 顯示連續(xù)空行為一行
/字符串:向下搜索“字符串”的功能
?字符串:向上搜索“字符串”的功能
n:重復(fù)前一個搜索(與 / 或 ? 有關(guān))
N:反向重復(fù)前一個搜索(與 / 或 ? 有關(guān))
-x 數(shù)字 將“tab”鍵顯示為規(guī)定的數(shù)字空格
b 向后翻一頁
d 向后翻半頁
h 顯示幫助界面
Q 退出less 命令
u 向前滾動半頁
y 向前滾動一行
空格鍵 滾動一行
回車鍵 滾動一頁
[pagedown]: 向下翻動一頁
[pageup]: 向上翻動一頁
實例:
(1)ps 查看進(jìn)程信息并通過 less 分頁顯示
ps -aux | less -N
(2)查看多個文件
less 1.log 2.log
可以使用 n 查看下一個,使用 p 查看前一個。
12、head 命令
head 用來顯示檔案的開頭至標(biāo)準(zhǔn)輸出中,默認(rèn) head 命令打印其相應(yīng)文件的開頭 10 行。
常用參數(shù):
-n行數(shù) 顯示的行數(shù)(行數(shù)為復(fù)數(shù)表示從最后向前數(shù))
實例:
(1)顯示 1.log 文件中前 20 行
head 1.log -n 20
(2)顯示 1.log 文件前 20 字節(jié)
head -c 20 log2014.log
(3)顯示 t.log最后 10 行
head -n -10 t.log
13、tail 命令
用于顯示指定文件末尾內(nèi)容,不指定文件時,作為輸入信息進(jìn)行處理。常用查看日志文件。
常用參數(shù):
-f 循環(huán)讀取(常用于查看遞增的日志文件)
-n行數(shù) 顯示行數(shù)(從后向前)
(1)循環(huán)讀取逐漸增加的文件內(nèi)容
ping 127.0.0.1 ping.log
后臺運(yùn)行:可使用 jobs -l 查看,也可使用 fg 將其移到前臺運(yùn)行。
tail -f ping.log
(查看日志)
14、which 命令
在 linux 要查找某個文件,但不知道放在哪里了,可以使用下面的一些命令來搜索:
which 查看可執(zhí)行文件的位置。
whereis 查看文件的位置。
locate 配合數(shù)據(jù)庫查看文件位置。
find 實際搜尋硬盤查詢文件名稱。
which 是在 PATH 就是指定的路徑中,搜索某個系統(tǒng)命令的位置,并返回第一個搜索結(jié)果。使用 which 命令,就可以看到某個系統(tǒng)命令是否存在,以及執(zhí)行的到底是哪一個位置的命令。
常用參數(shù):
-n 指定文件名長度,指定的長度必須大于或等于所有文件中最長的文件名。
實例:
(1)查看 ls 命令是否存在,執(zhí)行哪個
which ls
(2)查看 which
which which
(3)查看 cd
which cd(顯示不存在,因為 cd 是內(nèi)建命令,而 which 查找顯示是 PATH 中的命令)
查看當(dāng)前 PATH 配置:
echo $PATH
或使用 env 查看所有環(huán)境變量及對應(yīng)值
15、whereis 命令
whereis 命令只能用于程序名的搜索,而且只搜索二進(jìn)制文件(參數(shù)-b)、man說明文件(參數(shù)-m)和源代碼文件(參數(shù)-s)。如果省略參數(shù),則返回所有信息。whereis 及 locate 都是基于系統(tǒng)內(nèi)建的數(shù)據(jù)庫進(jìn)行搜索,因此效率很高,而find則是遍歷硬盤查找文件。
常用參數(shù):
-b 定位可執(zhí)行文件。
-m 定位幫助文件。
-s 定位源代碼文件。
-u 搜索默認(rèn)路徑下除可執(zhí)行文件、源代碼文件、幫助文件以外的其它文件。
實例:
(1)查找 locate 程序相關(guān)文件
whereis locate
(2)查找 locate 的源碼文件
whereis -s locate
(3)查找 lcoate 的幫助文件
whereis -m locate
方法/步驟
1
Linux作為Unix的衍生操作系統(tǒng),Linux內(nèi)建有查看當(dāng)前進(jìn)程的工具ps。這個工具能在命令行中使用PS 命令是什么
查看它的man手冊可以看到,ps命令能夠給出當(dāng)前系統(tǒng)中進(jìn)程的快照。它能捕獲系統(tǒng)在某一事件的進(jìn)程狀態(tài)。如果你想不斷更新查看的這個狀態(tài),可以使用top命令。
ps命令支持三種使用的語法格式
UNIX 風(fēng)格,選項可以組合在一起,并且選項前必須有“-”連字符 BSD 風(fēng)格,選項可以組合在一起,但是選項前不能有“-”連字符 GNU 風(fēng)格的長選項,選項前有兩個“-”連字符
我們能夠混用這幾種風(fēng)格,但是可能會發(fā)生沖突。本文使用 UNIX 風(fēng)格的ps命令。這里有在日常生活中使用較多的ps命令的例子。1. 不加參數(shù)執(zhí)行ps命令
這是一個基本的 ps 使用。在控制臺中執(zhí)行這個命令并查看結(jié)果。
2
結(jié)果默認(rèn)會顯示4列信息。
PID: 運(yùn)行著的命令(CMD)的進(jìn)程編號 TTY: 命令所運(yùn)行的位置(終端) TIME: 運(yùn)行著的該命令所占用的CPU處理時間 CMD: 該進(jìn)程所運(yùn)行的命令
這些信息在顯示時未排序。2. 顯示所有當(dāng)前進(jìn)程
使用 -a 參數(shù)。-a 代表 all。同時加上x參數(shù)會顯示沒有控制終端的進(jìn)程。
$ ps -ax
這個命令的結(jié)果或許會很長。為了便于查看,可以結(jié)合less命令和管道來使用。
$ ps -ax | less
3
3. 根據(jù)用戶過濾進(jìn)程
在需要查看特定用戶進(jìn)程的情況下,我們可以使用 -u 參數(shù)。比如我們要查看用戶'pungki'的進(jìn)程,可以通過下面的命令:
$ ps -u pungki
4
4. 通過cpu和內(nèi)存使用來過濾進(jìn)程
也許你希望把結(jié)果按照 CPU 或者內(nèi)存用量來篩選,這樣你就找到哪個進(jìn)程占用了你的資源。要做到這一點(diǎn),我們可以使用 aux 參數(shù),來顯示全面的信息:
$ ps -aux | less
5
當(dāng)結(jié)果很長時,我們可以使用管道和less命令來篩選。
默認(rèn)的結(jié)果集是未排好序的。可以通過 --sort命令來排序。
根據(jù) CPU 使用來升序排序
$ ps -aux --sort -pcpu | less
6
根據(jù) 內(nèi)存使用 來升序排序
$ ps -aux --sort -pmem | less
7
我們也可以將它們合并到一個命令,并通過管道顯示前10個結(jié)果:
$ ps -aux --sort -pcpu,+pmem | head -n 10
5. 通過進(jìn)程名和PID過濾
使用 -C 參數(shù),后面跟你要找的進(jìn)程的名字。比如想顯示一個名為getty的進(jìn)程的信息,就可以使用下面的命令:
$ ps -C getty
如果想要看到更多的細(xì)節(jié),我們可以使用-f參數(shù)來查看格式化的信息列表:
$ ps -f -C getty
6. 根據(jù)線程來過濾進(jìn)程
如果我們想知道特定進(jìn)程的線程,可以使用-L 參數(shù),后面加上特定的PID。
$ ps -L 1213
7. 樹形顯示進(jìn)程
有時候我們希望以樹形結(jié)構(gòu)顯示進(jìn)程,可以使用 -axjf 參數(shù)。
$ps -axjf
或者可以使用另一個命令。
$ pstree
8. 顯示安全信息
如果想要查看現(xiàn)在有誰登入了你的服務(wù)器。可以使用ps命令加上相關(guān)參數(shù):
$ ps -eo pid,user,args
參數(shù) -e 顯示所有進(jìn)程信息,-o 參數(shù)控制輸出。Pid,User 和 Args參數(shù)顯示PID,運(yùn)行應(yīng)用的用戶和該應(yīng)用。
能夠與-e 參數(shù) 一起使用的關(guān)鍵字是args, cmd, comm, command, fname, ucmd, ucomm, lstart, bsdstart 和 start。9. 格式化輸出root用戶(真實的或有效的UID)創(chuàng)建的進(jìn)程
系統(tǒng)管理員想要查看由root用戶運(yùn)行的進(jìn)程和這個進(jìn)程的其他相關(guān)信息時,可以通過下面的命令:
$ ps -U root -u root u
-U 參數(shù)按真實用戶ID(RUID)篩選進(jìn)程,它會從用戶列表中選擇真實用戶名或 ID。真實用戶即實際創(chuàng)建該進(jìn)程的用戶。
-u 參數(shù)用來篩選有效用戶ID(EUID)。
最后的u參數(shù)用來決定以針對用戶的格式輸出,由User, PID, %CPU, %MEM, VSZ, RSS, TTY, STAT, START, TIME 和 COMMAND這幾列組成。
這里有上面的命令的輸出結(jié)果:
10. 使用PS實時監(jiān)控進(jìn)程狀態(tài)
ps 命令會顯示你系統(tǒng)當(dāng)前的進(jìn)程狀態(tài),但是這個結(jié)果是靜態(tài)的。
當(dāng)有一種情況,我們需要像上面第四點(diǎn)中提到的通過CPU和內(nèi)存的使用率來篩選進(jìn)程,并且我們希望結(jié)果能夠每秒刷新一次。為此,我們可以將ps命令和watch命令結(jié)合起來。
$ watch -n 1 ‘ps -aux --sort -pmem, -pcpu’
如果輸出太長,我們也可以限制它,比如前20條,我們可以使用head命令來做到。
$ watch -n 1 ‘ps -aux --sort -pmem, -pcpu | head 20’
這里的動態(tài)查看并不像top或者h(yuǎn)top命令一樣。但是使用ps的好處是你能夠定義顯示的字段,你能夠選擇你想查看的字段。
舉個例子,如果你只需要看名為'pungki'用戶的信息,你可以使用下面的命令:
$ watch -n 1 ‘ps -aux -U pungki u --sort -pmem, -pcpu | head 20’
結(jié)論
你也許每天都會使用ps命令來監(jiān)控你的Linux系統(tǒng)。但是事實上,你可以通過ps命令的參數(shù)來生成各種你需要的報表。
ps命令的另一個優(yōu)勢是ps是各種 Linux系統(tǒng)都默認(rèn)安裝的,因此你只要用就行了。
不要忘了通過 man ps來查看更多的參數(shù)。(LCTT 譯注:由于 ps 命令古老而重要,所以它在不同的 UNIX、BSD、Linux 等系統(tǒng)中的參數(shù)不盡相同,因此如果你用的不是 Linux 系統(tǒng),請查閱你的文檔了解具體可用的參數(shù)。)
Btrfs 又被稱為 Butter FS、Better FS 或 B-Tree FS,是由 Oracle 于 2007 年開始設(shè)計、開發(fā)的一個現(xiàn)代文件系統(tǒng),它于 2009 年開始便被合并入 Linux 2.6.29 內(nèi)核。Btrfs 基于 GPL 許可,由于不是十分穩(wěn)定,雖然許多 Linux 發(fā)行版都對其進(jìn)行了集成,但并不作為默認(rèn)文件系統(tǒng)進(jìn)行使用。Btrfs 之所以被廣泛集成,因其支持磁盤快照、支持遞歸快照、對 RAID 的支持,支持子卷(Subvolumes),以及允許在線調(diào)整文件系統(tǒng)大小等優(yōu)秀特性。雖然目前大多 Linux 發(fā)行版都在用 Ext4 作為主要文件系統(tǒng),但將來隨時有可能被 Btrfs 所取代。Btrfs 主要被設(shè)計用于解決當(dāng)前 Linux 文件系統(tǒng)各種「弱點(diǎn)」的 COW(copy-on-write)文件系統(tǒng), 有望提供更好的可擴(kuò)展性和可靠性,其主要開發(fā)焦點(diǎn)都放在了容錯、修復(fù)和易于管理等方面。接下來我將主要向大家介紹如何使用 apt-btrfs-snapshot 將 Linux 中的 btrfs 文件系統(tǒng)快照回滾到之前的系統(tǒng)狀態(tài)。使用 apt-btrfs-snapshot 創(chuàng)建和管理文件系統(tǒng)快照就像其它 APT 操作一樣簡單,使用它我們可以輕松地恢復(fù) btrfs 文件系統(tǒng)的狀態(tài)。先決條件為了創(chuàng)建并使用 btrfs 恢復(fù)你的 Linux 文件系統(tǒng),當(dāng)然需要使用的是 btrfs 文件系統(tǒng),還需要沒有使用 Ext 文件系統(tǒng)的單獨(dú) /boot分區(qū),不然就沒法玩了。安裝Btrfs包條件滿足之后,就使用如下命令安裝 apt-btrfs-snapshot 包:apt-get install apt-btrfs-snapshot安裝完成之后使用如下 apt-btrfs-snapshot 命令檢查是否支持 btrfs 快照的創(chuàng)建:apt-btrfs-snapshot supported如果滿足 btrfs 文件系統(tǒng)的先決條件,會輸出 Supported,否則會輸出:Sorry, your system lacks support for the snapshot feature你可以使用如下命令檢查 Ubuntu 上的 btrfs 子卷的默認(rèn)布局:btrfs subvolume list使用ATP操作創(chuàng)建快照為了測試回滾操作,我們先在當(dāng)前系統(tǒng)中執(zhí)行一些 apt 操作,例如 apt-get。apt-get update apt-get upgrade按 Y 繼續(xù)執(zhí)行系統(tǒng)升級,你會看到 apt-btrfs-snapshot 已經(jīng)自動為升級之前的系統(tǒng)狀態(tài)創(chuàng)建了快照。你也可以使用如下命令查看當(dāng)前系統(tǒng)中的快照列表:btrfs subvolume list /apt-btrfs-snapshot list還原Btrfs快照例如在系統(tǒng)升級過程中遇到了問題,我們需要恢復(fù)升級之前的系統(tǒng)狀態(tài),可以將 btrfs 文件系統(tǒng) mount 到一個單獨(dú)的位置,例如/mnt 下進(jìn)行操作。mount /dev/sda1 /mnt查看 /mnt 目錄會輸出子卷:ls -l /mnt/其中的 @apt-snapshot-2016-05-24_02:18:31 是之前 apt 操作時的 root 文件系統(tǒng)快照。將當(dāng)前子卷重命名為 @ 開頭,再將 @apt-snapshot-2016-05-24_02:18:31 重命名為為當(dāng)前子卷后重啟系統(tǒng),即對快照進(jìn)行了恢復(fù)操作。刪除Btrfs快照當(dāng)快照恢復(fù)后,或需要騰出部分磁盤空間時,可以使用如下命令來刪除快照:mount /dev/sda1 /mnt/btrfs subvolume delete /mnt/@_latest-root/umount /mnt說得直白一點(diǎn),Btrfs 快照實際上就是與其它子卷進(jìn)行數(shù)據(jù)共享的子卷,其使用 Btrfs 的 copy-on-write 能力共享數(shù)據(jù)和對快照進(jìn)行修改,原始子卷并不可見。一旦快照創(chuàng)建完成,它就被視為原始文件系統(tǒng)的可替換版本。
網(wǎng)站名稱:linux查看快照命令,linux拍快照命令
鏈接URL:http://chinadenli.net/article9/dseeooh.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計公司、手機(jī)網(wǎng)站建設(shè)、App開發(fā)、動態(tài)網(wǎng)站、用戶體驗、外貿(mào)建站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)