導航:首頁 > 版本升級 > linuxdd復制文件夾

linuxdd復制文件夾

發布時間:2023-09-26 22:07:15

linux系統下的硬碟復制方法

linux系統下的硬碟復制方法
首先將要復制和被復制的硬碟均連接到linux系統,然後

用fdisk -l查看當前所有分區信息(記得用root,否則執行了啥也看不到),如:
Device Boot Start End Blocks Id System

/dev/sdb1 2048 1002047 500000 83 Linux

/dev/sdb2 1002048 12002047 5500000 83 Linux

/dev/sdb3 12002048 13002047 500000 83 Linux

/dev/sdb4 13002048 15002047 1000000 83 Linux

上面是我為了方便寫文檔而做的分區,可以看到Blocks十分工整,那是故意而為之的。

全盤拷貝的命令:
dd if=/dev/sdb of=/dev/sdc

分區拷貝:
dd bs=512 count=[fdisk命令中最大的end數+1] if=/dev/sdb of=name.img

以上為例:
dd bs=512 count=15002048 if=/dev/sdb of=ghost_linux_latelee.img

由於ghost_linux_latelee.img會很大,可以在拷貝時將其壓縮:
dd bs=512 count=15002048 if=/dev/sdb | gzip -9 > ghost_linux_latelee.img.gz

上面所做的,就是傳說的系統「備份」,或叫「系統克隆」。

對應的,有系統恢復的操作。命令如下:
dd if=ghost_linux_latelee.img of=/dev/sda

如果是壓縮包,則命令為:

gzip -c -d ghost_linux_latelee.img.gz | dd of=/dev/sda

在上面的拷貝過程中,並不知道拷貝了多少,只有最終結束時才顯示出時間、拷貝速度。為了查看進度,可以在另一個終端輸入(記得用root):

watch -n 5 killall -USR1 dd

(註:killall並不是傳說中把進程kill掉,而是發送一個指定的信號到指定的進程)

之後,就能執行dd的終端看到進度了,如:

58299+0 records in
58298+0 records out
29848576 bytes (30 MB) copied, 4.67728 s, 6.4 MB/s
161403+0 records in
161402+0 records out
82637824 bytes (83 MB) copied, 9.69359 s, 8.5 MB/s
238651+0 records in
238650+0 records out
122188800 bytes (122 MB) copied, 14.7105 s, 8.3 MB/s

備註:

用dd的方式,得到的鏡像文件十分龐大——取決於所要做的系統的大小。比如,拷貝4GB的分區,真的就是拷貝4GB,即使是用gzip壓縮,也壓縮不了多少,文件依然很大。

另外dd的方式也消除了我之前的擔心,因為現在的Linux發行版的分區使用硬碟uuid作為標識,而不是/dev/sda1這種格式,據說uuid更好。但用dd拷貝,竟然連硬碟的uuid也一一拷貝,毫無變化,這的確讓我吃驚。不過,目前看沒什麼時間研究dd了。

PS:使用dd命令,可以讀取硬碟的mbr扇區,示例如下:
dd if=/dev/sdb of=mbr.bin bs=512 count=1

② 在linux 中,復制文件到文件夾及子目錄下。

這個應該只能一級一級的復制,要麼就寫腳本執行。
cp a.txt aa/bb
cp a.txt aa/cc
cp a.txt aa/dd
cp a.txt aa/bb/bb
cp a.txt aa/cc/cc
cp a.txt aa/dd/dd

③ 如何使用linux下dd命令將我正在使用的系統(ubuntu)拷貝至CF卡上

命令行 sudo dd if=/* of=/xxx/xxx(你CF的路徑)
沒有試過整一個系統靠過去的 不過原理是這樣 試試吧

④ 如何使用Linux的dd命令

建議在bash下運行man dd 或者 dd --help.
以下請參考:
linux創建文件命令:dd命令
把指定的輸入文件拷貝到指定的輸出文件中,並且在拷貝的過程中可以進行格式轉換。語法:
CODE:[Copy to clipboard]dd 〔選項〕
QUOTE:
if =輸入文件(或設備名稱)。
of =輸出文件(或設備名稱)。
ibs = bytes 一次讀取bytes位元組,即讀入緩沖區的位元組數。
skip = blocks 跳過讀入緩沖區開頭的ibs*blocks塊。
obs = bytes 一次寫入bytes位元組,即寫 入緩沖區的位元組數。
bs = bytes 同時設置讀/寫緩沖區的位元組數(等於設置obs和obs)。
cbs = bytes 一次轉換bytes位元組。
count = blocks 只拷貝輸入的blocks塊。
conv = ASCII 把EBCDIC碼轉換為ASCII碼。
conv = ebcdic 把ASCII碼轉換為EBCDIC碼。
conv = ibm 把ASCII碼轉換為alternate EBCDIC碼。
conv = blick 把變動位轉換成固定字元。
conv = ublock 把固定們轉換成變動位
conv = ucase 把字母由小寫變為大寫。
conv = lcase 把字母由大寫變為小寫。
conv = notrunc 不截短輸出文件。
conv = swab 交換每一對輸入位元組。
conv = noerror 出錯時不停止處理。
conv = sync 把每個輸入記錄的大小都調到ibs的大小(用ibs填充)。
fdformat命令
低級格式化軟盤。
實例:
創建一個100M的空文件
dd if=/dev/zero of=hello.txt bs=100M count=1

以上是linux創建文件命令:dd的用法。

閱讀全文

與linuxdd復制文件夾相關的資料

熱點內容
數據標注語音和2d哪個好 瀏覽:145
保存excel文件的方法 瀏覽:655
手機上看不到電腦上的文件 瀏覽:626
關於ps的微信公眾號 瀏覽:612
矩陣論教程 瀏覽:971
字體文件分系統嗎 瀏覽:921
編程一級考試要帶什麼證件 瀏覽:923
extjs表格修改前數據 瀏覽:612
什麼是資料庫的函數 瀏覽:722
oppo手機怎麼用數據線連接電腦 瀏覽:247
恆智天成備份文件在哪裡 瀏覽:976
電腦沒聯網怎麼拷貝文件 瀏覽:224
wps工具欄怎麼換成中文 瀏覽:338
win7和xp共享文件 瀏覽:883
蘋果4代音量鍵沒反應 瀏覽:827
怎樣打開tif文件 瀏覽:153
java下載文件zip 瀏覽:440
qq瀏覽器壓縮文件怎麼設密碼 瀏覽:526
黃埔數控編程哪裡好 瀏覽:406
mac109升級1010 瀏覽:691

友情鏈接