題:
有沒有更快的方法將時間機器文件從一個磁盤複製到另一個磁盤?
milesmeow
2012-01-01 01:37:22 UTC
view on stackexchange narkive permalink

我正在嘗試將我的時間機器備份文件都在Backups.backupdb下移動到另一個驅動器。我一夜之間開始了文件複製(B / C我發現OSX花費了很多時間準備複製...它基本上是在數小時內計算文件)。早上,我看到只有某些備份(帶有日期的文件夾)被複製了。然後,我嘗試複製那些沒有被複製的文件...但是操作系統不允許我這樣做。我收到一個錯誤消息:“操作無法完成,因為備份項目無法修改。”因此,我的計劃是刪除新驅動器上的不完整副本,然後嘗試再次復制Backups.backupdb文件夾。

非常令人沮喪。是否可以通過終端命令更快地複制這些文件,以使其不執行所有文件計數準備工作?

我可能可以將整個文件夾壓縮後再進行複制,但是會會干擾任何文件權限等?這種方法的一件事是,我的tar源卷上沒有更多空間。

更新

我已經嘗試過人們在下面建議了一些方法,特別是使用磁盤工具的還原功能,它給了我一些錯誤消息和意外的結果(至少對我來說)。我嘗試了兩種還原方法:

  • 選中“擦除目標”:每次(我已經嘗試了兩次),還原完成後,我會看到一條消息“無法還原-無效操作”和“無法還原-無效參數”。但是,我的目標磁盤確實獲得了我的TM文件的副本。奇怪的是,我的目標磁盤與源磁盤完全一樣……甚至大小。我的目標磁盤實際上是1 TB,但是在還原後,當我從finder中獲取信息時,它顯示為200 GB。但是在“磁盤工具”中,它顯示了一個1 TB的分區!

然後我嘗試驗證/修復磁盤並得到:

無效的B樹節點大小HFS Plus音量。無效的B樹節點大小
卷修復完成。根據需要更新卷的啟動支持分區。錯誤:磁盤工具無法修復該磁盤。備份盡可能多的文件,重新格式化磁盤,然後還原備份的文件。

甚至不知道我是否想驗證/修復TM磁盤...

  • 未選中“擦除目標”:還原永遠不會開始,我得到:
無法還原-不允許操作
可能是[從Time Capsule中獲取數據並傳輸到外部驅動器的最快方法是什麼?](http://apple.stackexchange.com/questions/30225/whats-the-fastest-way-to-get-data-關閉時間膠囊並進入外部驅動器)
我認為這很好-另一個問題解決了複製硬鏈接的IO負載,但是包裹在時間囊的網絡和外殼中,因此這是此處所問的一般問題的特例。
如果可以升級到MacOS 10.13.4+,則已修復了阻止別名/硬鏈接在Finder中復制的錯誤。我自己嘗試將備份的Time Machine磁盤複製到另一個磁盤,它工作得很好(而且速度也很快)。此處提供更多信息:https://apple.stackexchange.com/a/323691/261070。
八 答案:
mmmmmm
2012-01-01 17:09:30 UTC
view on stackexchange narkive permalink

普通副本(或通過rsync或ditto進行的複制)不會完全複製Time Machine,因為它將將鏈接在一起的兩個目錄(如在連續的TM備份中發生的,但沒有變化)轉換為兩個單獨的目錄。

最好的方法是使用“磁盤工具”或 Carbon Copy Cloner的塊複製部分複制整個磁盤,並且在 SuperDuper上可能類似。

從ditto手冊頁中:“ ditto保留源目錄中存在的文件硬鏈接(但不保留目錄硬鏈接)”,所以這裡沒有幫助。它既可以是Disk Utility,也可以是SuperDuper或CCC之類的工具。
@patrix謝謝-Web手冊頁上什麼都沒說-CCC使用ditto或rsync進行複制,因此僅當它進行塊複製時才會這樣做http://help.bombich.com/kb/troubleshooting/cloning-a-time-機器備份
我的源磁盤僅包含Time Machine備份。我的目標磁盤包含其他文件。我不想複製我的源磁盤。我只想將Time Machine文件複製到目標磁盤。
由於使用了硬鏈接,因此無法在不顯著增加所需磁盤空間的情況下簡單地(unix級)精確複製TM備份。如果您只想將最新的備份存儲在另一個驅動器上,我建議您將“ rsync”(或“ ditto”)存儲在“ Backups.backupdb”中的“ latest”文件夾中。
根據@Mark再次查看Disk Utility之後。我基本上已經決定將目標驅動器上當前的文件移動到另一個驅動器上。現在,我基本上是在使用磁盤工具的還原功能來擦除目標驅動器的內容,並將其替換為源驅動器的內容。
為此,我使用磁盤工具的還原功能遇到問題。可能會嘗試多次並不斷顯示“無法還原-不允許操作”。 http://njmac.blogspot.com/2008/11/move-time-machine-backups-to-new-volume.html似乎表明SuperDuper是唯一真正可將Time Machine備份從一個驅動器複製到一個驅動器的驅動器。另一個。接下來將嘗試一下。
我可以使用SuperDuper將TM文件複製到目標驅動器上,而無需將驅動器重新分區到較小的分區嗎?關鍵是將我的TM文件移動到具有更多空間以備將來備份的驅動器上。
在多次嘗試將我的TM文件複製到新磁盤後,“磁盤工具”和“ Carbon Copy Cloner”都無法解決問題。 SuperDuper在第一次運行時就完美地做到了,並且沒有減小目標分區的大小!
SuperDuper的另一票!這裡。v3.2.4成功地將大型Time Machine備份文件夾複製到了macOS 10.14.2 Mojave下的新磁盤上,而沒有佔用更多空間。(哪個Finder不能*做不到...)Time Machine高興地繼續使用新磁盤,就像舊磁盤一樣。
andrew
2018-11-27 17:33:19 UTC
view on stackexchange narkive permalink

在macOS 10.14上將完整的3TB Time Machine加密驅動器遷移到新的8TB驅動器時,我遇到了各種各樣的問題。嘗試在“磁盤工具”中進行還原時出錯,並顯示“無法驗證源”或“不允許操作”。嘗試本文中的其他建議以及其他建議,我能夠獲得令人振奮的新錯誤消息,例如“圖像/卷上的目錄文件碎片太嚴重”,但沒有副本。

最終在終端上起作用了

  1. 使用“磁盤工具”擦除新磁盤,使其與源驅動器的格式匹配:MacOS擴展(日誌式,加密式)
  2. 在終端中使用 diskutil cs list 來獲取舊驅動器上邏輯卷的確切字節大小,新邏輯卷的GUID以及兩者的磁盤號,例如 disk4
  3. 使用步驟2中的確切字節大小作為新卷的大小。以我的3TB硬盤為例,它是2,999,772,905,472字節:

      sudo diskutil cs resizeVolume $ new_lv_guid 2999772905472
     
  4. 使用自製軟件中的 pv 命令,對磁盤進行低級塊複製。這與使用 dd 非常相似,不同之處在於您可以使用ETA獲得進度表。

    您需要從 diskutil cs列表輸出中獲取磁盤號。小心。 很容易用這裡的新空白驅動器意外覆蓋完整的備份驅動器。

      sudo sh -c“ $(其中pv)--buffer-size 50M -s 2999772905472 < / dev / rdisk $ {source} > / dev / rdisk $ {target}”
     

    如果在這裡出現“拒絕權限/不允許操作”錯誤,請進入“安全性&隱私首選項”並為Terminal.app添加“全盤訪問”。

    對我來說,這大約花了10個小時-我讓它運行了一整夜-但是,有了 pv ,至少您可以獲得帶有ETA的進度表。

  5. 現在,擴展音量以佔用驅動器上的所有剩餘空間:

      sudo diskutil cs resizeVolume $ new_lv_guid 0
     

    這花了我3個小時左右的時間,大約備份了5年。大部分時間都花在了macOS fsck ing上。

  6. ol>

    現在,您可以享受新的,更寬敞的Time Machine驅動器了。您可以重新調整舊驅動器的用途,或將其存放在安全的地方,以防新驅動器發生故障。


    調整大小步驟似乎很重要;跳過它們會產生10小時的文件副本,該副本會產生一個8TB的捲,其中包含3TB的文件系統,我不知道如何調整大小。


    UPDATE這種方法的一個潛在缺點是,因為它是逐位複制的,所以舊磁盤和新磁盤之間的標識符相同。如果我連接了舊的完整磁盤,Time Machine會認為它是新磁盤,然後嘗試備份,並開始刪除舊備份以為新備份騰出空間。將數據移到較大的磁盤上似乎是一種好方法,然後將擦除較舊的較小磁盤。

你好安德魯!感謝您抽出寶貴的時間來輸入此分步指南(我希望將其用於將我的1TB備份傳輸到4TB磁盤,到目前為止,由於Finder複製的文件夾和文件,該磁盤尚未成功在新磁盤上佔用的空間比原始磁盤要大得多)。我對您的問題是:是否可以在不啟用`cs` a.k.a. corestorage的情況下執行這些步驟?啟用核心存儲似乎是[潛在的不必要的PITA](https://discussions.apple.com/thread/7977508),但是由於有指導性的第3步,因此可能有必要。
FileVault強烈建議使用@MichaelDautermann核心存儲,強烈建議將其用於備份驅動器,以在丟失,被盜或處置不當的情況下保護您的隱私。
我想補充一點,就是我無法使用上述方法進行複制。原因是系統提示此“不允許操作”。簡短搜索後,我發現我需要關閉所有SIP功能。這可以通過按住Command + R重啟macOS並打開終端來完成。 在這裡,您需要通過鍵入“ csrutil disable”來禁用。下次重啟時,我能夠複製TM備份
@andrew我的版本是10.14.6,我完全理解您提到的風險。但是,我無法在不關閉SIP的情況下對TimeMachine進行dd或PV備份。如果有另一種方式,我很樂意聽到。
我一直收到99%的“ PV:寫入失敗:輸入/輸出錯誤”(30小時後,經過3次嘗試-實際上是90小時)。磁盤已卸載。SIP功能已禁用。谷歌搜索錯誤沒有提出任何東西。與原始情況類似(3TB-> 8TB)。sudo sh -c“ $(pv)--buffer-size 50M -s 3000249008128 / dev / rdisk5”-先前已成功將8tb的大小調整為“將核心存儲邏輯卷的大小調整為3,000,249,008,128字節”。
儘管顯示錯誤消息,但是在斷開目標磁盤並重新連接之後,目標磁盤是否會隨後實際安裝?這很可能是正常的。
chaseholden
2014-03-24 03:01:24 UTC
view on stackexchange narkive permalink

為什麼不只使用終端:

  cp -RnpP Backups.backupdb  
  • -R 遞歸
  • -n 不會覆蓋(如果先前嘗試保留了現有的副本殘留)
  • -p 保留ACL,權限,創建/ mod日期等。
  • -P 保留硬鏈接,請勿遵循任何硬鏈接或符號鏈接。
這不是真的。閱讀macOS的`man cp`。macOS附帶的常規`cp`命令**不**複製-P的硬鏈接。手冊頁實際上說:“請注意,cp將硬鏈接的文件複製為單獨的文件。如果需要保留硬鏈接,請考慮使用tar(1),cpio(1)或pax(1)。”
Harv
2012-01-02 00:12:22 UTC
view on stackexchange narkive permalink

rsync是一個很好的實用程序,可用於此類操作。我通常將它用於這樣的事情。在這種情況下,我可能會使用-aP標誌。我認為-a(“歸檔”)的一部分還用於保留權限,ACL等,但是我不確定。

IIRC,還有一個--delete選項,允許您刪除成功複製到目標文件後,將其複製到源文件。我會謹慎使用它-通常我會在沒有--delete選項的情況下執行完整的鏡像,然後我將使用-c和--delete選項重新運行命令。 -c是校驗和,因此它會通過校驗和與源文件上的所有文件進行比較,檢查所有已下載的文件,如果匹配則將其刪除,否則視情況重新復製或恢復複製。

編輯:在這種情況下,請根據註釋使用-H標誌,以保留硬鏈接。

rsync不會在目錄上維護硬鏈接。複製一會兒TM備份將復制很多目錄
@patrix-我可以確認這一點。我已經試過了目錄硬鏈接幾乎是HFS +所獨有的,而rsync無法理解它們。
-H,--hard-links保留硬鏈接
hanz
2014-07-14 19:37:49 UTC
view on stackexchange narkive permalink

這個答案不會很快完成,但是我發現這是一種在保留重複數據刪除(硬鏈接)和權限的同時正確複製數據的方法。作為額外的好處,我用它來製作最終產品的壓縮dmg以進行存檔。

  1. 使用磁盤實用工具,製作一個大於Backups.backupdb目錄的磁盤映像。我還建議您將稀疏捆綁軟件磁盤映像用於映像格式,將硬盤用於分區。掛載該映像後,獲取有關它的信息,然後取消選擇“忽略此卷上的所有權”。

  2. 現在關閉Time Machine,然後使用查找器將Backups.backupdb文件夾複製到已安裝的映像。查找程序將詢問您超級用戶權限以復制數據。喝一杯或做點其他事情。

  3. 複製完成後,請確保一切正常,然後卸載映像。在“磁盤工具”中,選擇“轉換”,然後將稀疏捆綁包映像轉換為壓縮映像。同樣,這可能需要一段時間。

  4. ol>

    您應該最終獲得Time Machine備份的兩個副本,您可以刪除稀疏捆綁軟件版本,並將dmg作為及時存檔保存在安全的地方。

    我沒有嘗試過的一件事是從dmg進行系統還原,但是我懷疑它應該可以工作,我的目標更多是歸檔時間機器增量更改並保留硬鏈接結構體。

    我也嘗試過rsync和cp,但是它們似乎並沒有保留硬鏈接結構,硬鏈接結構最終的大小是x的兩倍,x是您過去的日期量。該方法效果很好,但可能無法再次獲得塊複製解決方案的速度。

David Andreoletti
2014-12-12 18:59:28 UTC
view on stackexchange narkive permalink

Apple為此提供了一個官方教程:“ Time Machine:如何將備份從當前備份驅動器轉移到新備份驅動器”。

高級步驟在該頁面上:

  1. 檢查新備份驅動器的格式
  2. 設置新備份驅動器的權限
  3. 臨時打開Time Machine關閉
  4. 將備份數據從原始驅動器複製到新驅動器
  5. 將Time Machine設置為使用新驅動器
  6. ol>

該頁面建議您執行以下複製步驟:

將備份數據從原始驅動器複製到新驅動器

  1. 打開新的Finder窗口。在Finder邊欄中,單擊原始備份驅動器的圖標。
  2. 打開一個新的Finder窗口。在Finder邊欄中,單擊新備份驅動器的圖標。
  3. 將文件夾“ Backups.backupdb”從原始備份驅動器拖到新備份驅動器的頂層。
  4. 輸入管理員名稱和密碼,然後單擊確定以開始復製過程。
  5. ol>

    複製備份數據可能需要一些時間才能完成,具體取決於備份的大小。

我之所以正在研究這個問題,是因為遵循了該教程(建議使用Finder複製備份文件夾)並使其在一夜之間運行,它在復制約500 / 940gb的權限問題上結束了。然後我昨晚做了一個`sudo rsync`,但是今天早上在flist_expand [sender]中發現了“ ERROR:out of memory”,我的副本現在是〜600gb。我還沒有決定下一步該怎麼做,但是懷疑大多數閱讀本書的人已經知道了官方教程。
@PeterT我也剛剛嘗試過Tuto,並遇到了與您相同的問題。我不確定是否有人對本教程有所了解,否則有人會在這裡提及該教程及其後續結果。現在,人們知道這不值得嘗試。
使用finder複製文件夾需要花費一些時間來建立文件列表,然後由於磁盤空間不足而失敗,因此必須進行錯誤的計算。
那正是我的問題。原來的TM容量為550GB,新的容量為600GB。Mojave仍然抱怨卷上的空間不足。我現在正在使用SuperDuper!在“備份-所有文件”模式下。
儘管此鏈接可以回答問題,但最好在此處包括答案的基本部分,並提供鏈接以供參考。如果鏈接的頁面發生更改,僅鏈接的答案可能會失效。
在macOS Mojave 10.14.2中,Apple的教程對我而言“失敗”。我試圖將3TB備份存檔複製到8TB驅動器;Finder花了近5天的時間進行複制(大部分時間都說“還剩5秒”),然後放棄並抱怨驅動器已滿!即使是,它只複製了大約2/3的備份。顯然,它不是保留硬鏈接,而是創建每個硬鏈接的新副本。因此,此答案當前不正確。
Paracetamol
2019-12-03 14:36:29 UTC
view on stackexchange narkive permalink

+1對於磁盤實用程序,太長了,無法發表評論:

評估了

12.250.329個文件,複製了10.408.594個文件。有效複製速度為8,68 MB / s。

用於通過SuperDuper克隆具有幾年備份功能的2TB磁性備份驅動器!今年。

這總共花費了63小時(SuperDuper每24小時重置一次時鐘,因此最後顯示15:04:43),而不是我在大約4天和四分之一的文件後取消的Finder副本。

很顯然,磁盤並不是花費這麼長時間的原因。Finder複製在長時間運行的備份磁盤上停頓的原因是未更改文件上級聯符號鏈接的數量過多,尤其是對於許多小文件(如Git索引)。

Jake Thomas
2013-07-19 01:50:42 UTC
view on stackexchange narkive permalink

對於硬盤驅動器,當您從一個驅動器中移動多個文件時,讀取器來回移動會發出可怕的咔嗒聲,並且會大大降低傳輸速率,例如,一個USB 2.0的文件在我的計算機上以30 mbps的速度移動計算機從2個外部硬盤驅動器上移動,但是2個文件以11 mbps的速度移動。和3個文件以6 mbps的速度移動。等等。zip文件的移動速度將比文件快。

這如何回答OP的問題?


該問答將自動從英語翻譯而來。原始內容可在stackexchange上找到,我們感謝它分發的cc by-sa 3.0許可。
Loading...