Jak ustalić, które pliki znajdują się na dysku SSD na Fusion Drive?

27

Moje pytanie brzmi:

Jak mogę ustalić, które pliki znajdują się na „partycji” dysku SSD w Fusion Drive?

Mam komputer iMac z napędem Fusion Drive o pojemności 1 TB i dobrze byłoby wiedzieć, które aplikacje lub dane znajdują się na której partycji.

Czy te informacje są zawarte w informacjach o pliku lub gdzie muszę szukać?

Terminal nie stanowi problemu, więc nie szukam łatwej odpowiedzi.

EDYCJA: diskutil listpokazuje mi moje partycje. Ale nie mogę nawigować przez / Volumes / ... do konkretnej partycji SSD. Musi istnieć sposób na przejście do każdej partycji, prawda?

OS X robi to samo.

Bastian Gruber
źródło
2
To nie jest odpowiedź, ale to na pewno warto zobaczyć: anandtech.com/show/6679/a-month-with-apples-fusion-drive Autor używa Istat dietetyczne 4 aby zobaczyć aktywność dysku poszczególnych urządzeń można zobaczyć je na stronie 3, „Pod maską”.
da4

Odpowiedzi:

27

Ponieważ napęd Fusion jest jednym woluminem logicznym , nie ma oddzielnych „partycji” do przeglądania w celu ustalenia tego. Możesz jednak sprawdzić, na którym dysku dany plik jest przechowywany za pomocą niektórych narzędzi wiersza polecenia.

Określ konfigurację dysku

Najpierw musimy dowiedzieć się, w jaki sposób SSD i HD dysku Fusion są identyfikowane w twoim systemie.

  1. Uruchom diskutil listw terminalu.
  2. Powinieneś zobaczyć wynik podobny do tego:

    #: 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. Zwróć uwagę na etykiety dysków z GUID_partition_schemelinią. W tym przypadku to disk0i disk1. Są to dwa dyski fizyczne i możemy zobaczyć po rozmiarach, mniejszy ( disk0) jest dyskiem SSD, co disk1oznacza HD, podczas gdy disk2jest woluminem logicznym.

Monitoruj aktywność dysku

Teraz potrzebujemy sposobu monitorowania aktywności dysku dla każdego urządzenia.

  1. Otwórz Terminal, wprowadź iostat -d disk0 disk1 1, zastępując numery dysków tymi, które znalazłeś powyżej .
  2. Uruchom polecenie i pozostaw otwarte okno Terminala. Powinieneś zobaczyć wynik podobny do tego:

           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 
    

    To pokazuje aktywność dysku dla poszczególnych urządzeń, aktualizowaną co sekundę. Najbardziej odpowiednie są kolumny MB / s.

Przeczytaj plik

Teraz odczytamy plik i skorzystamy z naszego rozwiązania do monitorowania, aby dowiedzieć się, na którym dysku on znajduje się.

  1. Otwórz drugie okno terminala i uruchom dd if='/path/to/some/file' of=/dev/null. Zamień ścieżkę na odpowiednią ścieżkę do pliku (upewnij się, że jest ona cytowana, jeśli zawiera spacje bez znaków lub inne znaki specjalne).
  2. W uruchomionym oknie terminala iostatobserwuj, który dysk pokazuje jakąś aktywność podczas dddziałania. To jest dysk, na którym znajduje się plik.
  3. W przypadku dużych plików (szczególnie tych na HD, proces dd może chwilę działać, możesz go bezpiecznie zamknąć za pomocą control+C

Odczyty takie jak ten wskazują, że disk0(SSD w tym przykładzie) zawiera plik:

       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 

Odczyty te wskazują, że plik jest przechowywany na dysku 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 
robmathers
źródło
To wspaniale! Wielkie dzięki! Ale zawsze są mniejsze zapisy na dysku. Nawet jeśli nic nie robię. Plus opóźnienie, gdy wykonuję „dd”. W przypadku mniejszych plików (10 MB) występuje „problem”. Ale jeśli wykonam dd, po 3 sekundach zawsze są transakcje poboczne "ssd" ... więc może to pomaga!
Bastian Gruber,
W zależności od wzorców dostępu i tego, jak długo używasz napędu Fusion, dostęp do pliku raz lub dwa razy może wystarczyć, aby system „wypromował” go na dysk SSD, w którym to przypadku możesz zobaczyć dostęp na obu, więc jest to niestety nie jest niezawodny, ale powinno wystarczyć na dobre odgadnięcie.
robmathers
Ale pytanie: Dlaczego nie „df«filename»komenda nie pokazuje właściwą partycję To tylko pokazuje?«Disk2».
Bastian Gruber
Ponieważ Fusion nie działa z tradycyjnymi partycjami. disk2in to logiczny wolumin utworzony przez połączenie dwóch dysków. Z punktu widzenia systemu plików, to właśnie tam znajduje się plik, ale jest on niezależny od tego, gdzie fizycznie przechowywane są leżące pod nim bity. Możesz przeczytać więcej na temat działania napędu Fusion, aby uzyskać bardziej szczegółowe wyjaśnienie.
robmathers 16.04.13
Niestety wydaje się, że metodologia robmathers zrywa z nowym APFS firmy Apple, w którym zmieniła się implementacja woluminów logicznych napędu Fusion na niższym poziomie. Wypróbowanie powyższych wyników w: iostat: nie można nagrać „dysku 1” do monitorowania
Mark Choi
-3

Jeśli chcesz mieć taką kontrolę nad tym, które pliki idą tam, gdzie łatwo jest rozbić napęd fusion i mieć tylko dwa osobne woluminy, którymi możesz nawigować osobno. W OS X również bardzo łatwo jest mieć system operacyjny, w tym aplikacje na jednym dysku (SSD) i mieć konto użytkownika na innym dysku (HDD). Następnie możesz ręcznie zarządzać, gdzie chcesz inne pliki, SSD lub HDD.

l008com
źródło
Myślę, że pytanie dotyczy nie tego, jak je złamać, ale jak ustalić, gdzie pliki zostały automatycznie posortowane.
JMY1000,