常你可能會把數據放在一個分區上,有時候可能需要對該設備或者上面的一個分區進行備份。 -- Jarret
本文導航
-dcfldd 工具 …… 04%
-備份分區 …… 23%
-恢復分區 …… 48%
-驗證數據 …… 69%
-分割鏡像 …… 79%
編譯自: https://www.linuxforum.com/threads/partition-backup.3638/作者: Jarret
譯者: ictlyh
通常你可能會把數據放在一個分區上,有時候可能需要對該設備或者上面的一個分區進行備份。樹莓派用戶為了可引導 SD 卡當然有這個需求。其它小體積計算機的用戶也會發現這非常有用。有時候設備看起來要出現故障時最好快速做個備份。
進行本文中的實驗你需要一個叫 dcfldd 的工具。
該工具是 coreutils 軟件包中 dd 工具的增強版。dcfldd 是 Nicholas Harbour 在美國國防部計算機取證實驗室(DCFL)工作期間研發的。該工具的名字也基于他工作的地方 - dcfldd。
對于仍然在使用 CoreUtils 8.23 或更低版本的系統,并沒有一個可以輕松查看正在創建副本的進度的選項。有時候看起來就像什么都沒有發生,以至于你就想取消掉備份。
注意:如果你使用 8.24 或更新版本的 dd 工具,你就不需要使用 dcfldd,只需要用 dd 替換 dcfldd 即可。所有其它參數仍然適用。
在 Debian 系統上你只需要在 Package Manager 中搜索 dcfldd。你也可以打開一個終端然后輸入下面的命令:
sudo apt-get install dcfldd
對于 Red Hat 系統,可以用下面的命令:
cd /tmpwget dl.fedoraproject.org/pub/epel/6/i386/dcfldd-1.3.4.1-4.el6.i686.rpm
sudo yum install dcfldd-1.3.4.1-4.el6.i686.rpm
dcfldd --version
注意: 上面的命令安裝的是 32 位版本。對于 64 位版本,使用下面的命令:
cd /tmpwget dl.fedoraproject.org/pub/epel/6/x86_64/dcfldd-1.3.4.1-4.el6.x86_64.rpm
sudo yum install dcfldd-1.3.4.1-4.el6.x86_64.rpm
dcfldd --version
每組命令中的最后一個語句會列出 dcfldd 的版本并顯示該命令文件已經被加載。
注意:確保你以 root 用戶執行 dd 或者 dcfldd 命令。
安裝完該工具后你就可以繼續使用它備份和恢復分區。
備份設備的時候可以備份整個設備也可以只是其中的一個分區。如果設備有多個分區,我們可以分別備份每個分區。
在進行備份之前,先讓我們來看一下設備和分區的區別。假設我們有一個已經被格式化為一個大磁盤的 SD 卡。這個 SD 卡只有一個分區。如果空間被切分使得 SD 卡看起來是兩個設備,那么它就有兩個分區。
假設我們有一個樹莓派中的 SD 卡。SD 卡容量為 8 GB,有兩個分區。第一個分區存放 BerryBoot 啟動引導器。第二個分區存放 Kali(LCTT 譯注:Kali Linux 是一個 Debian 派生的 Linux 發行版)。現在已經沒有可用的空間用來安裝第二個操作系統。我們使用大小為 16 GB 的第二個 SD 卡,但拷貝到第二個 SD 卡之前,第一個 SD 卡必須先備份。
要備份第一個 SD 卡我們需要備份設備 /dev/sdc。進行備份的命令如下所示:
dcfldd if=/dev/sdc of=/tmp/SD-Card-Backup.img
備份包括輸入文件(if)以及被設置為 /tmp 目錄下名為 SD-Card-Backup.img 的輸出文件(of)。
dd 和 dcfldd 默認都是每次讀寫文件中的一個塊。通過上述命令,它可以一次默認讀寫 512 個字節。記住,該復制是一個精準的拷貝 - 逐位逐字節。
默認的 512 個字節可以通過塊大小參數 - bs=更改。例如,要每次讀寫 1 兆字節,參數為 bs=1M。使用以下所用的縮寫可以設置不同大小:
b – 512 字節
KB – 1000 字節
K – 1024 字節
MB – 1000x1000 字節
M – 1024x1024 字節
GB – 1000x1000x1000 字節
G – 1024x1024x1024 字節
你也可以單獨指定讀和寫的塊大小。要指定讀塊的大小使用 ibs=。要指定寫塊的大小使用 obs=。
我使用三種不同的塊大小做了一個 120 MB 分區的備份測試。第一次使用默認的 512 字節,它用了 7 秒鐘。第二次塊大小為 1024 K,它用時 2 秒。第三次塊大小是 2048 K,它用時 3 秒。用時會隨系統以及其它硬件實現的不同而變化,但通常來說更大的塊大小會比默認的稍微快一點。
完成備份后,你還需要知道如何把數據恢復到設備中。
現在我們已經有了一個備份點,假設數據可能被損毀了或者由于某些原因需要進行恢復。
命令和備份時相同,只是源和目標相反。對于上面的例子,命令會變為:
dcfldd of=/dev/sdc if=/tmp/SD-Card-Backup.img
這里,鏡像文件被用作輸入文件(if)而設備(sdc)被用作輸出文件(of)。
注意: 要記住輸出設備會被重寫,它上面的所有數據都會丟失。通常來說在恢復數據之前最好用 GParted 刪除 SD 卡上的所有分區。
假如你在使用多個 SD 卡,例如多個樹莓派主板,你可以一次性寫多塊 SD 卡。為了做到這點,你需要知道系統中卡的 ID。例如,假設我們想把鏡像 BerryBoot.img 拷貝到兩個 SD 卡。SD 卡分別是 /dev/sdc 和 /dev/sdd。下面的命令在顯示進度時每次讀寫 1 MB 的塊。命令如下:
dcfldd if=BerryBoot.img bs=1M status=progress | tee >(dcfldd of=/dev/sdc) | dcfldd of=/dev/sdd
在這個命令中,第一個 dcfldd 指定輸入文件并把塊大小設置為 1 MB。status 參數被設置為顯示進度。然后輸入通過管道 |傳輸給命令 tee。tee 用于將輸入分發到多個地方。第一個輸出是到命令 dcfldd of=/dev/sdc。命令被放到小括號內被作為一個命令執行。我們還需要最后一個管道 |,否則命令 tee 會把信息發送到 stdout (屏幕)。因此,最后的輸出是被發送到命令 dcfldd of=/dev/sdd。如果你有第三個 SD 卡,甚至更多,只需要添加另外的重定向和命令,類似 >(dcfldd of=/dev/sde。
注意:記住最后一個命令必須在管道 | 后面。
必須驗證寫的數據確保數據是正確的。
一旦創建了一個鏡像或者恢復了一個備份,你可以驗證這些寫入的數據。要驗證數據,你會使用名為 diff 的另一個不同程序。
使用 diff ,你需要指定鏡像文件的位置以及系統中拷貝自或寫入的物理媒介。你可以在創建備份或者恢復了一個鏡像之后使用 diff 命令。
該命令有兩個參數。第一個是物理媒介,第二個是鏡像文件名稱。
對于例子 dcfldd of=/dev/sdc if=/tmp/SD-Card-Backup.img,對應的 diff 命令是:
diff /dev/sdc /tmp/SD-Card-Backup.img
如果鏡像和物理設備有任何的不同,你會被告知。如果沒有顯示任何信息,那么數據就驗證為完全相同。
確保數據完全一致是驗證備份和恢復完整性的關鍵。進行備份時需要注意的一個主要問題是鏡像大小。
假設你想要備份一個 16GB 的 SD 卡。鏡像文件大小會大概相同。如果你只能把它備份到 FAT32 分區會怎樣呢?FAT32 最大文件大小限制是 4 GB。
必須做的是文件必須被切分為 4 GB 的分片。通過管道 | 將數據傳輸給 split 命令可以切分正在被寫的鏡像文件。
創建備份的方法相同,但命令會包括管道和切分命令。示例備份命令為 dcfldd if=/dev/sdc of=/tmp/SD-Card-Backup.img ,其切分文件的新命令如下:
dcfldd if=/dev/sdc | split -b 4000MB - /tmp/SD-Card-Backup.img
注意: 大小后綴和對 dd 及 dcfldd 命令的意義相同。 split 命令中的破折號用于將通過管道從 dcfldd 命令傳輸過來的數據填充到輸入文件。
文件會被保存為 SD-Card-Backup.imgaa 和 SD-Card-Backup.imgab,如此類推。如果你擔心文件大小太接近 4 GB 的限制,可以試著用 3500MB。
將文件恢復到設備也很簡單。你使用 cat 命令將它們連接起來然后像下面這樣用 dcfldd 寫輸出:
cat /tmp/SD-Card-Backup.img* | dcfldd of=/dev/sdc
你可以在命令中 dcfldd 部分包含任何需要的參數。
我希望你了解并能執行任何需要的數據備份和恢復,正如 SD 卡和類似設備所需的那樣。
(題圖:Pixabay, CC0)
via: https://www.linuxforum.com/threads/partition-backup.3638/
作者:Jarret[1] 譯者:ictlyh 校對:jasminepeng
本文由 LCTT 原創編譯,Linux中國 榮譽推出
[1]: Jarret - https://www.linuxforum.com/members/jarret.268/
多電腦新手用戶都會有這類疑問:電腦原裝硬盤能分幾個區?分區越多越好嗎?如何創建分區?本篇我們就一起來了解一下吧!
磁盤分區的作用在于方便用戶將系統、軟件程序、資料等數據分開存放管理,還能在系統崩潰或重裝時起到備份的作用,但分區過多可能會導致分區錯位、開機加載時間變長等問題!
所以,一般建議小容量固態硬盤不分區,大容量的少分區。
對于容量500GB-1TB 固態硬盤,創建1 個系統分區、1-2個軟件/數據分區,就能滿足大部分電腦用戶的需求,而250G及以下的不建議分區,避免影響到系統垃圾回收機制!
至于內置1塊固態硬盤+1機械硬盤的大容量筆記本電腦,固態可以不分區,用來安裝系統和應用程序;機械硬盤用來存放數據,按個人使用習慣及硬盤容量大小進行分區。
當然啦,如果你用的是小容量機型,擔心不能滿足未來的存儲需求,還可以加裝1塊硬盤,搭配優越者硬盤盒一起用,無需拆裝機,直連電腦即可擴容備份!
新買的電腦一般只有1個系統分區,即C盤,如何創建更多的分區呢?以 win11為例,分享一下磁盤分區操作步驟!
1、首先打開【磁盤管理】,右鍵點擊需要分區的磁盤,選擇【壓縮卷】,輸入壓縮空間數值,點擊【壓縮】,就有未分配的空間啦!
2、然后右鍵點擊未分配的空間,選擇新建簡單卷,按向導提示,指定卷的容量大小,并選擇盤符和磁盤格式,新的分區就創建好啦。
要注意的是,Windows10/11系統分區建議至少預留100-200GB空間,確保系統有足夠的空間運行和更新,而硬盤剩余的空間可以按需再分配。
此外,分區時還需注意文件系統格式。常見的文件系統格式有FAT32、NTFS和exFAT等,其中,NTFS是Windows系統默認采用的文件系統格式,具有穩定性好、安全性高,支持大容量文件和超大分區等特點,適合于安裝操作系統和存儲大容量文件。
以上就是今天的分享了,如果大家對于電腦原裝硬盤磁盤分區還有其他建議,歡迎在評論區留言探討!
了部新筆記本電腦,開機以后最煩的事情是什么?或許就是硬盤分區完全不對路了。
不少筆記本出廠默認分區設置甚至可以稱得上是腦殘,例如一個小容量SSD給分了四五個分區,又例如一個大容量硬盤竟然只有一個分區!這非常不符合使用習慣。
硬盤分區太多,空間利用率低,怎么合并?
分區太少,沒有安全感,怎么拆開?
于是問題來了,我們買筆記本的時候沒法定制分區設置,電腦到手要如何調整分區?
其實完全不需要第三方工具,利用Windows 10的自身功能,就可以做到!一起來看看吧。
Win10調整硬盤分區功能在哪里?
Win10擁有一個功能實在的磁盤管理工具,利用它我們就能夠重新調整硬盤分區。
要打開這一功能,最簡單的方法就是通過搜索欄尋找“計算機管理”,并打開。
然后在計算機管理的窗口當中,找到“存儲”下的“磁盤管理”,即可看到硬盤、分區的各種情況,例如當前有多少塊硬盤、每個硬盤有多少容量、多少分區等等。
分區太多怎么辦?輕松合并
先來說分區太多的情況。四五個硬盤分區實在是太多了,浪費空間且拖慢性能,要怎樣合并成只有C盤、D盤兩個分區?具體步驟如下。
首先,我們先刪除多余的分區,其實這里可以將除了C盤之外的分區都刪除掉,調整更加自由。
注意!刪除分區會導致數據丟失!因此調整分區這一步驟,最好在筆記本電腦買回來后,各分區都沒有什么數據的時候進行。如果你已經裝了數據,那么進行分區調整前請備份。
右鍵點擊不想要的分區,點擊“刪除卷”。
右擊某個分區,點擊“刪除卷”
之后,會有清除數據等提示,一一確認即可。如果分區在使用中,那么刪除時可能會耗費更多的時間,耐心等待鼠標的圈圈轉完。
“刪除卷”會導致原先分區的數據被清除
把分區刪除后,磁盤管理當中會顯示有“未分配的空間”,這時候我們就可以重新分區了。
分區被刪除后,留下“未分配空間”,我們可以利用這些空間重新分區
右鍵點擊“未分配空間”,選擇“新建簡單卷”。
在“未分配空間”右擊,點擊“新建簡單卷”
然后填寫新建分區的大小、驅動器號(命名為D盤、E盤或者其他什么盤)、文件系統(推薦NTFS)、卷標(可以不填)等信息,按照提示點擊“下一步”,一個新的硬盤分區就建好了。
填入新建分區的大小
分配新分區盤符
設置新分區文件系統
下圖是筆者將幾個小分區合并成為一個D盤的效果,還是相當不錯的,要比原先順眼多了!
最后結果,幾個分區合并變成D盤了
分區太大怎么辦?輕松分割
再說說分區太少、太大的情況。有些筆記本電腦只保留了一個分區,雖然這能提高硬盤容量的利用率,但不符合很多用戶長年累月的使用習慣。
要怎么將一個大分區縮小,乃至拆分為多個分區?例如C盤有500G,想要讓它縮減成150G左右、分出來的容量變成D盤,要怎么做?具體步驟如下。
在磁盤管理當中右鍵點擊想要調整的分區,例如C盤,選擇“壓縮卷”。
“壓縮卷”可以從已有分區中,劃分容量成為“未分配空間”,這一操作并不會丟失數據,但分出來的容量不能大于分區的空余容量。
右擊需要縮小的分區,點擊“壓縮卷”
填寫需要壓縮的容量后,點擊“壓縮”,即可看到原有分區縮小、并多出來“未分配空間”了。
設置分割出去的容量的大小
壓縮卷后,可以看到“未分配”的容量
接著,在“未分配空間”中點擊右鍵,點按“新建簡單卷”,按上文提到過的步驟新建分區即可。
右擊未分配容量,新建卷即可
分區太小怎么辦?輕松擴展
有的筆記本電腦預設的C盤空間太小,或者你就喜歡硬盤上只弄一個分區,那么又該怎樣調整?方法并不難,具體步驟如下。
首先騰出“未分配空間”,可以通過“刪除卷”或者“壓縮卷”來實現,具體方法上文已經提過,這里就不再重復了。
再次強調,“刪除卷”操作會清除對應分區的數據,請謹慎操作。
接著,右鍵點擊想要擴大的分區,點按“擴展卷”。
確保對應硬盤有未分配容量,然后在需要擴大的分區右擊,點擊“擴展卷”
然后選擇想要將分區擴展多少容量,能擴展的最大容量,就是當前“未分配空間”的容量。
填寫需要擴大多少容量
按照提示點擊“下一步”,即可擴展完成,擴展的分區原有數據并不會丟失。
總結
可見,Windows 10自帶的磁盤管理工具的確非常方便,用來調整硬盤分區數量、大小不成問題。
如果你也有這方面的需求,不妨嘗試一下吧。