จะตรวจสอบว่าไฟล์ใดบ้างที่อยู่บน SSD บน Fusion Drive?


27

คำถามของฉันคือ:

ฉันจะทราบได้อย่างไรว่าไฟล์ใดบ้างที่อยู่ใน "พาร์ติชั่น" SSD บน Fusion Drive?

ฉันมี iMac ที่มี 1TB Fusion Drive และเป็นการดีที่จะทราบว่าแอพหรือข้อมูลใดอยู่ในพาร์ติชันใด

ข้อมูลเหล่านี้รวมอยู่ในข้อมูลไฟล์หรือฉันต้องดูที่ไหน?

เทอร์มินัลไม่มีปัญหาดังนั้นฉันไม่ได้ค้นหาคำตอบง่ายๆ

แก้ไข: diskutil listแสดงพาร์ติชันของฉันให้ฉันดู แต่ฉันไม่สามารถนำทาง / Volumes / ... ไปยังพาร์ติชัน SSD เฉพาะได้ ต้องมีวิธีนำทางในแต่ละพาร์ติชันใช่มั้ย

OS X ทำเช่นเดียวกัน


2
นี่ไม่ใช่คำตอบ แต่คุ้มค่าที่จะดูแน่นอน: anandtech.com/show/6679/a-month-with-apples-fusion-drive ผู้เขียนใช้iStat Menus 4เพื่อดูกิจกรรมดิสก์ของอุปกรณ์แต่ละตัวคุณสามารถเห็น พวกเขาในหน้า 3 "Under The Hood"
da4

คำตอบ:


27

เนื่องจากไดรฟ์ฟิวชั่นเป็นโลจิคัลวอลุ่มหนึ่งจึงไม่มี "พาร์ติชัน" แยกต่างหากเพื่อเรียกดูเพื่อตรวจสอบสิ่งนี้ อย่างไรก็ตามคุณสามารถตรวจสอบไดรฟ์ไฟล์ที่กำหนดที่จัดเก็บไว้ในยูทิลิตี้บรรทัดคำสั่งบางอย่าง

กำหนดการตั้งค่าไดรฟ์ของคุณ

ก่อนอื่นเราต้องหาวิธีการระบุส่วนของ SSD และ HD ของไดรฟ์ Fusion ในระบบของคุณ

  1. ทำงานdiskutil listใน Terminal
  2. คุณจะเห็นผลลัพธ์คล้ายกับสิ่งนี้:

    #: TYPE NAME SIZE IDENTIFIER
    0: GUID_partition_scheme *121.3 GB disk0
    1: EFI 209.7 MB disk0s1
    2: Apple_CoreStorage 121.0 GB disk0s2
    3: Apple_Boot Boot OS X 134.2 MB disk0s3
    /dev/disk1
    #: TYPE NAME SIZE IDENTIFIER
    0: GUID_partition_scheme *1.0 TB disk1
    1: EFI 209.7 MB disk1s1
    2: Apple_CoreStorage 999.3 GB disk1s2
    3: Apple_Boot Recovery HD 650.0 MB disk1s3
    /dev/disk2
    #: TYPE NAME SIZE IDENTIFIER
    0: Apple_HFS Macintosh HD *1.1 TB disk2
    
  3. จดบันทึกฉลากของดิสก์ด้วยGUID_partition_schemeบรรทัด ในกรณีนี้ที่และdisk0 disk1นี่เป็นดิสก์ฟิสิคัลสองแผ่นและเราสามารถเห็นได้ตามขนาดส่วนที่เล็กกว่า ( disk0) คือ SSD หมายถึงdisk1HD ในขณะที่disk2เป็นโลจิคัลวอลุ่ม

ตรวจสอบกิจกรรมของดิสก์

ตอนนี้เราต้องการวิธีการตรวจสอบกิจกรรมของดิสก์สำหรับแต่ละอุปกรณ์

  1. เปิดเทอร์มิป้อนiostat -d disk0 disk1 1, เปลี่ยนหมายเลขดิสก์กับคนที่คุณพบในข้างต้น
  2. เรียกใช้คำสั่งและเปิดหน้าต่างเทอร์มินัลทิ้งไว้ คุณจะเห็นผลลัพธ์คล้ายกับสิ่งนี้:

           disk0           disk1 
     KB/t tps  MB/s     KB/t tps  MB/s 
     26.52  13  0.33     9.35   0  0.00 
     0.00   0  0.00     0.00   0  0.00 
     0.00   0  0.00     0.00   0  0.00 
     0.00   0  0.00     0.00   0  0.00 
    

    สิ่งนี้แสดงกิจกรรมของดิสก์ตามอุปกรณ์ที่อัปเดตทุกวินาที คอลัมน์ MB / s มีความเกี่ยวข้องมากที่สุด

อ่านไฟล์

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

  1. dd if='/path/to/some/file' of=/dev/nullเปิดหน้าต่างเทอร์มิวินาทีและวิ่ง แทนที่พา ธ ด้วยพา ธ ที่เหมาะสมไปยังไฟล์ (ตรวจสอบให้แน่ใจว่ามีการอ้างอิงถ้ามันมีช่องว่างที่ไม่ใช้ Escape หรืออักขระพิเศษอื่น ๆ )
  2. ในหน้าต่างเทอร์มินัลกำลังทำงานiostatให้ดูเพื่อดูว่าดิสก์ใดแสดงกิจกรรมบางอย่างเมื่อddทำงาน นั่นคือไดรฟ์ที่ไฟล์นั้นอยู่
  3. สำหรับไฟล์ขนาดใหญ่ (โดยเฉพาะไฟล์ใน HD กระบวนการ dd อาจทำงานได้ชั่วขณะหนึ่งคุณสามารถออกจากได้อย่างปลอดภัยด้วยcontrol+C

การอ่านเช่นนี้ระบุว่าdisk0(SSD ในตัวอย่างนี้) มีไฟล์:

       disk0           disk1 
 KB/t tps  MB/s     KB/t tps  MB/s 
 28.49  13  0.37   113.92   0  0.00 
 31.70 4500 139.29     0.00   0  0.00 
 31.64 3870 119.56     0.00   0  0.00 
 31.58 3294 101.58     0.00   0  0.00 

ในขณะที่การอ่านเหล่านี้บ่งชี้ว่าไฟล์ถูกเก็บไว้ใน HD:

       disk0           disk1 
 KB/t tps  MB/s     KB/t tps  MB/s 
 0.00   0  0.00   128.00 275 34.33 
 0.00   0  0.00   128.00 255 31.83 
 7.62  53  0.39   126.90 178 22.03 

เยี่ยมมาก! ขอบคุณมาก! แต่มักจะมีขนาดเล็กลงเขียนไปยังไดรฟ์ แม้ว่าฉันจะไม่ทำอะไรเลย บวกความล่าช้าเมื่อฉันรัน "dd" สำหรับไฟล์ที่เล็กกว่า (10MB) จะมี "ปัญหา" แต่ถ้าฉันเรียกใช้งาน dd จะมีหลังจากผ่านไป 3 วินาทีจะทำรายการด้าน "ssd" เสมอ ... ดังนั้นบางทีนี่อาจช่วยได้!
Bastian Gruber

ขึ้นอยู่กับรูปแบบการเข้าถึงและระยะเวลาที่คุณใช้งานฟิวชั่นไดรฟ์ของคุณการเข้าถึงไฟล์หนึ่งหรือสองครั้งอาจจะเพียงพอสำหรับระบบที่จะ "ส่งเสริม" ให้กับ SSD ซึ่งในกรณีนี้คุณอาจเห็นการเข้าถึงทั้งสอง น่าเสียดายที่ไม่สามารถป้องกันความผิดพลาดได้ แต่ควรเพียงพอสำหรับการเดาที่ดี
robmathers

แต่คำถาม: ทำไมคำสั่ง "df" filename "ไม่แสดงพาร์ติชันที่ถูกต้องมันจะแสดงเฉพาะ" disk2 "เท่านั้น
Bastian Gruber

เพราะฟิวชั่นไม่ทำงานกับพาร์ทิชันดั้งเดิม disk2in คือโลจิคัลวอลุ่มที่สร้างโดยการรวมสองไดรฟ์ จากมุมมองของระบบไฟล์นั่นคือที่ที่ไฟล์ใช้งานอยู่ แต่มันไม่ขึ้นอยู่กับว่าบิตที่ซ่อนอยู่นั้นถูกเก็บไว้ที่ไหน คุณอาจต้องการอ่านวิธีการทำงานของไดรฟ์ฟิวชั่นสำหรับคำอธิบายเชิงลึกเพิ่มเติม
robmathers

น่าเสียดายที่ดูเหมือนว่าวิธีการของ robmathers จะหยุดลงด้วย APFS ใหม่ของ Apple ซึ่งการใช้งานระดับล่างของไดรฟ์ลอจิคัลไดรฟ์ Fusion ได้เปลี่ยนไป ลองใช้ผลลัพธ์ด้านบนใน: iostat: ไม่สามารถบันทึก 'disk1' สำหรับการตรวจสอบ
Mark Choi

-3

หากคุณต้องการควบคุมว่าไฟล์ไหนจะไปที่ไหนมันก็ง่ายพอที่จะทำให้ฟิวชั่นไดรฟ์แตกหักและมีเพียงสองโวลุ่มแยกต่างหากที่คุณสามารถนำทางแยกกันได้ นอกจากนี้ยังง่ายมากใน OS X ที่จะมีระบบปฏิบัติการรวมถึงแอพพลิเคชั่นในไดรฟ์หนึ่ง (SSD) และให้บัญชีผู้ใช้อยู่บนไดรฟ์อื่น (HDD) จากนั้นคุณสามารถจัดการตำแหน่งที่คุณต้องการไฟล์อื่น ๆ SSD หรือ HDD ด้วยตนเอง


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