จะรัน fsck บนไดรฟ์ภายนอกด้วย OS X ได้อย่างไร


21

ฉันได้รับข้อผิดพลาดนี้เมื่อพยายามแบ่งพาร์ติชันภายนอก: ""

ฉันต้องการรันfsck -fyบนไดรฟ์ แต่ไม่รู้จักไวยากรณ์ที่เหมาะสมสำหรับการทำบนไดรฟ์ภายนอกใช่หรือไม่

ใครสามารถช่วยฉันแก้ปัญหานี้ได้บ้าง

คำตอบ:


34

จริงๆแล้วคุณต้องการทำ:

% sudo fsck_hfs -fy /dev/disk1s1 (ขึ้นอยู่กับพาร์ติชั่นที่คุณต้องการตรวจสอบ)

มันจะไม่ทำงานเมื่อfsckคุณต้องใส่fsck_hfsคำสั่งเพื่อเรียกใช้


3
นี่คือคำตอบที่ดีที่สุด ก่อนที่คุณจะรันรายการดิสก์ทั้งหมดของคุณด้วยdiskutil list การ์ด SD ของฉันคือ disk2 จากนั้นคุณต้องการค้นหาหมายเลขพาร์ติชันจึงทำเช่นls /dev/disk2*นั้น disk2s1ซึ่งจะส่งผล sudo fsck_hfs -f /dev/disk2s1ดังนั้นคำสั่งสุดท้ายผมทำงานนี้ หมายเหตุ: ฉันฟอร์แมตการ์ด SD ของฉันโดยตั้งใจเป็น hfs โดยปกติแล้วพวกเขากำลังใช้เช่นไขมันหรือบางสิ่งบางอย่าง
portforwardpodcast

8

ฉันได้รับข้อผิดพลาดนี้เมื่อพยายามแบ่งพาร์ติชันภายนอก: ""

นั่นเป็นข้อผิดพลาดที่สื่อความหมายอย่างแน่นอน


ในการใช้งานfsckไดรฟ์ภายนอกคุณต้องทราบรหัสของไดรฟ์ก่อน เรียกใช้diskutil listและตรวจสอบชื่อของไดรฟ์ข้อมูลที่แสดงไว้ด้านล่างIDENTIFIER- disk3s4ตัวอย่างเช่น

fsckใช้ชื่อที่จะเรียกใช้ นอกจากนี้คุณยังสามารถส่ง-fตัวเลือกเพื่อบังคับให้ตรวจสอบระบบไฟล์ที่สะอาด

sudo fsck /dev/disk3s4

fsck มีชวเลขสำหรับประเภทระบบไฟล์ที่หลากหลาย:

  • fsck_hfsสำหรับ HFS ​​ให้ใช้-fตัวเลือกเพื่อบังคับให้ตรวจสอบระบบที่ถูกเจอร์นัล
  • fsck_exfatสำหรับ ExFAT (ไม่มี-fตัวเลือกที่นี่)
  • fsck_msdosสำหรับ FAT (ไม่มี-fตัวเลือกที่นี่)

ที่จริงแล้วดูเหมือนเป็น 10.9 คุณไม่สามารถใช้งานได้fsckหากไม่มีการตั้งค่าสถานะบางประเภท การใช้คำสั่งที่ให้ไว้ที่นี่จะส่งผลให้เกิดความช่วยเหลือ / การใช้งานเอาท์พุท
เรย์

ดูคำตอบของพอล - fsck_hfsคุณต้องใช้
Zev Eisenberg

2

ฉันต้องทำงานด้วยแฟล็ก -l:

diskutil list # find your identifier
/sbin/fsck_hfs -l -f /dev/disk16

-lธงบอก fsck เพื่อตรวจสอบไดรฟ์ในโหมดอ่านอย่างเดียว


1

นี่ไม่ใช่คำตอบที่ตรงกับคำถามต้นฉบับ แต่เกี่ยวข้องกันอย่างใกล้ชิด

อีกทางเลือกหนึ่งคือใช้ diskutil เพื่อตรวจสอบหรือซ่อมแซมไดรฟ์ภายนอก
ฉันไม่แน่ใจว่าเปรียบเทียบกับ fsck ได้อย่างไร แต่แก้ไขไดรฟ์ภายนอกของฉันที่ไม่ได้ติดตั้งหลังจากที่ฉันเสียบทิ้งโดยไม่ได้ตั้งใจในระหว่างการรีสตาร์ทเพื่ออัปเดตระบบ

diskutil list  # to find the IDENTIFIER
  (some internal disks listed first)
  /dev/disk2 (external, physical):                                              
    #:                    TYPE NAME                    SIZE       IDENTIFIER
    0:   GUID_partition_scheme                        *500.1 GB   disk2     
    1:                     EFI EFI                     209.7 MB   disk2s1   
    2:               Apple_HFS FreeAgent GoFlex Drive  499.8 GB   disk2s2   

จากนั้นคำสั่งเช่น

diskutil verifyDisk disk2
diskutil verifyVolume disk2s1
diskutil verifyVolume disk2s2

ด้วยเหตุผลบางอย่างเพียงแค่เรียกใช้คำสั่งตรวจสอบแก้ปัญหาของฉัน แต่ถ้าคุณต้องการที่จะไปต่อไปนอกจากนี้ยังมีการซ่อมแซมคำสั่ง

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