128 GB SSD i 23 GB obrazu uśpienia + plik wymiany, co robić?

14

Mam 13-calowego Macbooka Air o pojemności 128 GB, a ostatnio dostałem wiadomość, że brakuje mi miejsca, więc szybko sprawdziłem, co zajmuje całą przestrzeń, i dowiedziałem się, że Mam 4 GB obrazu uśpienia (co jest normalne), ale 20 plików wymiany, z których każdy zajmuje od 60 MB do 1 GB. Przy małym rozmiarze dysku jest to naprawdę nie do przyjęcia, więc zastanawiałem się, czy można bezpiecznie usunąć niektóre z plików wymiany i pozwól systemowi je zbudować. Albo zrestartuje pomoc (chociaż wolałbym nie, postawiłem zakład z moim przyjacielem, aby utrzymać jak najdłuższy czas pracy: p) Wszelkie sugestie są mile widziane.

theAmateurProgrammer
źródło
Coś wycieknie z pamięci - możesz użyć tej informacji, aby dowiedzieć się, co. quora.com/…
Danack
A co jeśli serwer Windows zajmuje 4 GB pamięci wirtualnej? I nie sądzę, że naprawdę możesz naprawić wyciek pamięci w innej aplikacji, prawda. Chyba będę musiał ją zrestartować, dzięki i tak.
theAmateurProgrammer
Jak zrestartować tylko WindowServer na OSX hints.macworld.com/article.php?story=20071121154033749
Danack

Odpowiedzi:

13

Możesz wyłączyć Hibernację, aby odzyskać rozmiar pamięci RAM na dysku SSD / HD: Najpierw wyłącz:

sudo pmset -a hibernatemode 0

Następnie zwolnij miejsce:

sudo rm /var/vm/sleepimage

... jeśli chcesz włączyć to ponownie:

sudo pmset -a hibernatemode 3

Uwaga: -a oznacza ładowarkę i akumulator, -b oznacza akumulator i -c oznacza ładowarkę.

Alternatywnie, jeśli masz więcej niż jeden dysk, możesz dowiązać obraz uśpienia do HD, aby mógł się tam fizycznie zlokalizować.

Zamiana

Najpierw wyłącz Zamień:

sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.dynamic_pager.plist

Później usuń pliki:

sudo rm /private/var/vm/swapfile*

... jeśli chcesz to włączyć ponownie:

sudo launchctl load -wF /System/Library/LaunchDaemons/com.apple.dynamic_pager.plist
liv3010m
źródło
Chociaż pod Mountain Lion powraca
obraz snu
Nie wiedziałem, że Mountain Lion tego nie przestrzega.
liv3010m
1
W El Capitan próba wyczyszczenia wymiany nie jest dozwolona przez nową ochronę integralności systemu. /System/Library/LaunchDaemons/com.apple.dynamic_pager.plist: Operation not permitted while System Integrity Protection is engaged
leonsas,
2

Ponowne uruchomienie ostatecznie rozwiąże problem.

Nawet jeśli zabijesz obrażający proces, system nie wyczyści plików wymiany - musisz to zrobić ponownie.

Również usunięcie plików wymiany byłoby złym pomysłem. Musisz to zrobić w sudo, a jeśli system ma otwarty plik, nawet jeśli używasz pliku, nadal będzie on przechowywany, ponieważ uchwyt pliku byłby otwarty, abyś nie odzyskał miejsca.

Oczywiście, spróbuj, ale nie jest to zalecane :)

Alex
źródło
1
OSX wyczyści pliki wymiany, jeśli proces zostanie zabity.
user151019 17.04.13
0

Kolejna odpowiedź już wspomniano wyłączenie hibernacji, ale na tej stronie man dla pmset, nie jest to już wystarczy, aby wyłączyć hibernację obraz (sleepimage) tworzenie pliku.

Doktorzy mówią:

Aby całkowicie wyłączyć obrazy hibernacji, upewnij się, że wszystkie tryby gotowości i hibernatemode są ustawione na 0.

Potrzebujemy więc:

sudo pmset -a hibernatemode 0
sudo pmset -a standby 0
sudo pmset -a autopoweroff 0

Możesz zweryfikować swoje ustawienia przed i po zmianie za pomocą sudo pmset -g. Następnie możesz sudo rm /var/vm/sleepimageusunąć plik, ale w moim przypadku zrobiono to automatycznie po ustawieniu wszystkich 3 wartości.

zakręcić
źródło
-2

Możesz usunąć obraz snu, nie uszkadzając niczego. System odtworzy go z czasem. Zwykle, gdy pojawia się komunikat, że brakuje mi miejsca, po prostu idę do terminala i sudo rm /var/vm/sleepimagepiszę, a ja wracam z powrotem o około 9 koncertów, ale system z czasem go odbuduje, więc to tylko tymczasowa ulga.

Aby zakończyć odpowiedź na pytanie i dać znać, dlaczego warto mi zaufać, możesz usunąć każdy plik, var/vmponieważ są to pamięci podręczne tego, co jest obecnie przechowywane w pamięci RAM. Nie są krytyczne ... chyba że stracisz energię, a po ponownym uruchomieniu większość varfolderu zostanie automatycznie wyczyszczona. Chociaż w celu zapewnienia użytkownikom stałego raportowania wolnego miejsca OS X Lion i nowsze wersje nie usuwają starszych vmplików podczas uruchamiania.

Zasadniczo zawsze będziesz mieć pliki VM o rozmiarze z grubsza odpowiadającym ilości pamięci RAM, której użyłeś uruchomionych programów. Możesz je usunąć, a przy następnym znaczącym zdarzeniu w tle komputer może je ponownie utworzyć. Jeśli masz tylko jeden program i nic nie robisz, ale masz ogromne pliki VM, może to oznaczać przeciek pamięci w programie, ale zauważyłem, że wiele paneli preferencji i wtyczek na pasku menu jest naprawdę ogromne światy pamięci: jeśli uruchomisz aplikację Google Drive Synchronizer, aplikację Dropbox i aplikację box.com, zadzwonią do domu 24 godziny na dobę i będą przenosić pliki non-stop. Są więcej niż wystarczającą aktywnością, aby wygenerować legalne i ogromne profile maszyn wirtualnych.

Mam nadzieję, że to pomaga!

był
źródło
Dzięki! To zabawne, ponieważ wszystkie moje aplikacje uległy awarii, ponieważ w moim laptopie zabrakło miejsca na 100 MB wolnego miejsca, ale 2 minuty później mam 8 GB wolnego miejsca. Najpierw utworzy kopię zapasową, a następnie spróbuje usunąć pliki wymiany.
theAmateurProgrammer
2
Pliki wymiany zawierają dane, które nie są obecnie używane w prawdziwej pamięci, ale gdy dane te są potrzebne, zostaną one zamienione z powrotem w rzeczywistą pamięć. Pliki wymiany nie powinny być usuwane, nie są to pamięci podręczne, które zostaną odtworzone /
user151019 17.04.2013