2010-04-12 99 views
1

是否有腳本可以用來複制硬盤的某些特定扇區?複製扇區?

我實際上有兩個分區,A和B,在我的硬盤上。兩者尺寸相同。我要的是運行的開始直到結束扇區被複制到B.

的結束扇區尋找可能的解決辦法複製從A到B的起始扇區的起始扇區數據的程序...

非常感謝

+0

這可能屬於對SuperUser.com,不StackOverflow上。 – Amber 2010-04-12 09:49:10

+0

我需要對此行爲進行編程,以便使它屬於stackoverflow,我猜。 :) – baltoro 2010-04-12 09:50:18

+0

然後,如果這是一個linux/unix系統,可以查看'dd'命令:http://en.wikipedia.org/wiki/Dd_(Unix) - 請注意該頁面上的示例,特別是使用它將一個分區複製到另一個分區。 – Amber 2010-04-12 09:57:03

回答

8

有關使用dd如何?從SDA到SDB分區拷貝1024個塊(512字節大小,通常爲扇區大小),其中有4096個塊偏移:

dd if=/dev/sda1 of=/dev/sdb1 bs=512 count=1024 skip=4096 

PS。我也想它應該是超級用戶或者更確切地說是ServerFault問題。

+0

這非常接近,但我沒有分區信息。這就像某些數據隱藏在Harddisk的未分配區域,我想將某些扇區從未分配區域複製到同一未分配區域中的其他地方。對我而言,只有通過指定扇區進行復制纔有可能。對此有何想法? – baltoro 2010-04-12 10:10:45

+2

磁盤也是一個塊設備,所以你可以用它作爲'if ='和'= ='的參數。 'if =/dev/sda of =/tmp/any_file' – 2010-04-12 11:44:52

+0

如果你使用磁盤本身(例如'/ dev/sda'),並使用'bs = 512',那麼'count'和'skip'會被有效地解決爲LBA。 – caf 2010-04-13 05:12:02

1

我不知道,如果你正在尋找的是一個partion複印機。 如果這就是你的意思,請嘗試clonezilla。
(它會告訴你它使用什麼確切的語句,因此可以用來找出如何做到這一點的腳本之後)

+0

Nah。我其實需要複製一些特定的部門。 「分區」只是一個例子。我需要複製指定扇區的東西。 – baltoro 2010-04-12 10:00:26

+0

janneb發佈了一個很好的答案,顯示瞭如何通過數字尋找特定的部門。所以如果你知道你設置的信息。如果你只知道一個文件名就可以完成,但超出了這個問題的範圍。 Hennie對於首先關注分區是正確的。我使用'dd',但其他人使用CloneZilla,正如Hennie所建議的。 – SDsolar 2018-01-10 18:38:57

4

如果您想要直接訪問硬盤驅動器,而不是通過分區,那麼就這麼做。類似於

dd if=/dev/sda of=/dev/sda bs=512 count=1024 skip=XX seek=YY 

應該將從扇區XX開始的1024扇區複製到扇區YY-> YY + 1024。當然,如果部門範圍重疊,結果可能不會很好。

(就個人而言,我不會不首先考慮磁盤的備份嘗試這一點,但情況因人而異)

+0

(你的里程可能會有所不同) – Ben 2013-07-22 08:12:56

+0

我完全同意在試圖拔出它的部分之前使用dd來複制整個分區。另外,OP討論了關於扇區的問題,但我懷疑整個問題都是關於文件的,這意味着需要做更多的工作來確定特定文件在磁盤上的存儲方式。所以是的,事實上,你的里程可能會有所不同,如本說。 – SDsolar 2018-01-10 18:45:13