ฉันจะคัดลอกไดรฟ์ข้อมูล Mac โดยใช้ cp ได้อย่างไร


13

ฉันค้นคว้ามานานหลายชั่วโมงแล้ว ในโหมดผู้ใช้คนเดียวฉันใช้:

cp -Rpvn /* /Volumes/MyBackup

ติดตั้ง USB ภายนอกของฉันแล้ว /Volumes/MyBackup

อย่างไรก็ตามปัญหาคือหลังจาก 24 ชั่วโมงก็ยังไม่หยุดคัดลอกข้อมูล 300GB ไปยังไดรฟ์ USB ภายนอก ฉันคิดว่ามันมีปัญหากับลิงค์สัญลักษณ์เช่น/Volumes/MacHDไดรฟ์ข้อมูลที่มี/Volumes/MacHDและ/Volumes/MyBackupฉันไม่แน่ใจเกี่ยวกับเรื่องนี้

ฉันจะคัดลอกไดรฟ์ข้อมูล Mac โดยใช้ได้cpอย่างไร คือcp -Rpvn /* /Volumes/MyBackup ถูกต้องหรือไม่


2
คุณใช้ cp เช่นนี้ แต่ไม่ใช่เครื่องมือที่ถูกต้องสำหรับงาน คุณต้องการ rsync สำหรับสิ่งนี้
CousinCocaine

1
คุณมีความเป็นไปได้ที่จะเรียกใช้ mac ในโหมดดิสก์เป้าหมายหรือไม่? หรืออาจเพิ่งเปิดตัว HD
CousinCocaine

ฉันไม่สามารถทำโหมดเป้าหมายได้เนื่องจากฉันไม่มีแม็คตัวที่สอง ฉันหวังว่าจะมีตัวเลือกที่มีความเสี่ยงน้อยกว่าการขับออกไป
ermSO

rsync อาจเป็นตัวเลือกที่ดีที่สุดของคุณที่นี่ แต่ฉันคิดว่าคุณสามารถใช้ddเพื่อทำสำเนาไบต์ของ HDD ของ Mac ของคุณ
thibmaek

1
ddเป็นวิธีในการสำรองข้อมูลแยกตามเซกเตอร์ซึ่งดูเหมือนว่าคุณกำลังทำอะไรที่นี่ (แต่ต้องระวังให้ดีเพื่อให้แน่ใจว่าสิ่งที่คุณเขียนทับจริง ๆ แล้วเป็นสิ่งที่คุณต้องการเขียนทับ) rsyncเป็นวิธีที่จะไปทำสำเนาที่ซับซ้อนหรือมีขนาดใหญ่ cpเหมาะสำหรับไฟล์แต่ละไฟล์ แต่ไม่ดีสำหรับการทำงานขนาดใหญ่
cpast

คำตอบ:


25

ใช้rsyncเพื่อจุดประสงค์นี้เนื่องจากcpไม่สามารถทำซ้ำไฟล์ทั้งหมดที่มีอยู่ใน OS X ได้อย่างแท้จริงประโยชน์ของการใช้rsyncเกินdittoและcpคือ:

  • การถ่ายโอนขัดจังหวะสามารถเริ่มต้นใหม่ได้อย่างง่ายดายด้วยค่าใช้จ่ายที่น้อยมาก
  • รีสตาร์ทแม้จะทำต่อในส่วนของไฟล์ขนาดใหญ่
  • การแยกไฟล์และ --dry-run ช่วยให้ทดสอบได้ง่าย

วิธีที่ง่ายที่สุดในการใช้rsyncและเก็บรักษาสิ่งต่าง ๆ (สิทธิ์, symlink, วันที่แก้ไข ฯลฯ ) คือการใช้-aหรือ--archiveตั้งค่าสถานะเพื่อเก็บถาวร เพื่อดูความคืบหน้าของคุณใช้-Pหรือ--progress

Rsync ทำงานเป็น:

rsync options source destination

ในกรณีของคุณฉันจะแนะนำต่อไปนี้:

rsync --archive --verbose --one-file-system --human-readable --progress /from/ /to

หรือในระยะสั้น:

rsync -avxhP /from/ /to

ระวังการขาดการต่อท้ายเฉือนใน /toตำแหน่ง

ดูความคิดเห็นสำหรับธงที่มีประโยชน์มากขึ้น


6
นอกจากนี้คุณยังต้องการแฟล็ก -x เพื่อหลีกเลี่ยงการไปยังดิสก์ที่ติดตั้งซึ่งไม่ได้อยู่ในโวลุ่มเดียวกัน
Kent

kudo สำหรับ bmike ทำให้โพสต์นี้อ่านง่ายขึ้น
CousinCocaine

2
-Pเทียบเท่ากับทั้งจริง--progressและ--partialรวมกัน ดูหน้าคน
kirb

1
ฉันจะข้าม--compress(มันมีประโยชน์สำหรับการถ่ายโอนเครือข่ายเท่านั้น) และเพิ่ม-E(สงวนคุณลักษณะเพิ่มเติมและส้อมทรัพยากร)
Gordon Davisson

5

cpหากคุณต้องการที่จะทำสำเนาซื่อสัตย์ของเนื้อหาระบบแฟ้มหลีกเลี่ยงการใช้ ให้ใช้ditto(1)คำสั่งซึ่งจะเก็บฮาร์ดลิงก์สิทธิ์การใช้ไฟล์ส้อมทรัพยากรและเมตาดาต้า HFS แทน ซึ่งแตกต่างจากcp,dittoจะหมายถึงการรักษาเท่าของข้อมูลที่เป็นไปได้โดยเริ่มต้นที่

มันเป็นเพียงเรื่องของการทำงานsudo ditto src dest


แก้ไขให้ถูกต้องหากฉันผิด แต่ฉันค่อนข้างมั่นใจว่าcpได้รับการอัปเดตเพื่อคัดลอกข้อมูลเมตาของไฟล์ใน 10.4
NobodyNada - Reinstate Monica

มันเป็น แต่dittoก็ยังเป็นตัวเลือกที่ดีกว่า
juandesant

1
และrsyncเป็นตัวเลือกที่ดีที่สุด
CousinCocaine

2

คุณลืมที่จะสร้างรายการแยกไฟล์และมีแนวโน้มที่จะคัดลอกสิ่งที่ไม่สามารถ / ไม่ควรคัดลอกรวมถึงไฟล์ที่ไม่มีก้นเช่น / dev / สุ่ม

ในขณะที่ cp สามารถทำงานได้มีเครื่องมือที่ดีกว่า Rsync เป็นหนึ่ง, Carbon Copy Cloner หรือ SuperDuper เป็นอีกหนึ่ง ในการใช้การเปรียบเทียบครัวคุณกำลังใช้มีดเพื่อเปิดกระป๋อง Rsync เป็นตัวเปิดกระป๋อง Carbon Copy Cloner เป็นตัวเปิดกระป๋องไฟฟ้า ฉันใช้ rsync เป็นประจำ แต่การตั้งค่าที่จำเป็นในการคัดลอกระบบปฏิบัติการที่ทำงานนั้นซับซ้อนพอสมควรฉันไม่เคยใส่ใจที่จะทำทุกอย่างด้วยตัวเอง

 cp -Rpvn /* /Volumes/MyBackup 

ดูเหมือนว่าทั้งหมดที่คุณต้องการทำคือการสำรองข้อมูล Mac ของคุณมี Time Machine อย่างชัดเจนเพื่อจุดประสงค์นี้ เปิดการตั้งค่าระบบ -> Time Machine เลือกดิสก์ภายนอกเปิดใช้แล้วปล่อยไว้ตามลำพัง มันใช้งานได้ดีมากและใช้เวลาไม่ถึงนาที


ฉันไม่สามารถเข้าถึง GUI ได้ ทั้งหมดที่ฉันสามารถทำงานได้คือโหมดผู้ใช้คนเดียวดังนั้นเวลา CCC, superduper และ Time Machine จึงไม่ใช่ตัวเลือก การตั้งค่าใดที่คุณจะใช้กับ rsync เป็นการดีที่ฉันต้องการสำเนาที่สามารถบูตได้ ฉันไม่สามารถทำงานได้
ermSO

1
@ermSO เนื่องจากเห็นได้ชัดว่าคุณมีไดรฟ์ภายนอกติดตั้งระบบปฏิบัติการใหม่บนภายนอกแล้วบูตจากนั้น Macs ปัจจุบันทั้งหมดสามารถบู๊ตจาก firewire หรือ USB ได้ จากนั้นคุณสามารถสำรองข้อมูลแฟ้มผู้ใช้ของคุณได้อย่างเหมาะสมและซ่อมแซมไดรฟ์ภายในของคุณ ฉันมักจะทำการลบอย่างสมบูรณ์ในกรณีเหล่านี้กำจัดปัญหาไดเรกทอรีที่เหลือ
พอล

ddจะทำสำเนาเซกเตอร์ต่อบรรทัดบนบรรทัดคำสั่งและเป็นตัวเลือกที่ดีสำหรับการคัดลอกโวลุ่มทั้งหมดไปยังโวลุ่มอื่นทั้งหมดในขณะที่ลบโวลุ่มที่สองทั้งหมด
cpast

คุณแน่ใจหรือว่าต้องการ-Rตัวเลือก? ซึ่งหมายความว่าหากคุณมีลิงก์สัญลักษณ์ไปยังโฟลเดอร์เดียวในหลาย ๆ ที่คุณจะทำซ้ำเนื้อหา นั่นอาจอธิบายถึงเวลาที่ใช้ไป หากคุณใช้dittoแทนคุณจะได้รับสิ่งที่คุณต้องการด้วยการตั้งค่าเริ่มต้น
juandesant

1
@Jandesant มันเป็นคำสั่งของเขาไม่ใช่ของฉัน ฉันจะไม่ใช้ cp เลย
paul

0

คุณสามารถสร้างการสำรองข้อมูล Time Machine จากบรรทัดคำสั่งด้วยtmutilยูทิลิตี้ Time Machine คุณสามารถกำหนดปลายทางแล้วสั่งการสำรองข้อมูลด้วยตนเอง

วิธีตั้งค่าโวลุ่มการสำรองข้อมูล Time Machine:

sudo tmutil setdestination / Volumes / MyBackup

จากนั้นเริ่มการสำรองข้อมูล:

tmutil startbackup - อัตโนมัติ

การ--autoตั้งค่าสถานะจะพยายามถือว่าเป็นเวลาสำรองตามกำหนดการปกติ

เมื่อคุณมีการสำรองข้อมูล Time Machine ของคุณคุณสามารถติดตั้ง OS X อีกครั้งบน Mac ของคุณแล้วนำเข้าไฟล์ทั้งหมดของคุณจากการสำรองข้อมูล Time Machine

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.