Katalog OS X El-Capitan - / cores zajmuje dużo miejsca?

35

Korzystam z programu o nazwie Daisy Disk, aby zobaczyć, co zajmuje miejsce na moim komputerze Mac i stwierdzam, że katalog / cores zajmuje 77 GB.

Czy to problem? Czy mogę się go pozbyć, aby odzyskać przestrzeń?

wprowadź opis zdjęcia tutaj

RandomMath
źródło
Co launchctl limit corepokazuje limit wielkości rdzenia? Domyślnie nie powinno być tam nic z miękkim limitem rozmiaru 0. Czy może włączyłeś zrzuty pamięci, czy może śledzisz, jakie konkretne pliki są tam umieszczane?
bmike

Odpowiedzi:

46

Krótko mówiąc, można je bezpiecznie usunąć.

W tym /coresfolderze OS X przechowuje zrzuty pamięci. Są to pliki przeznaczone dla programistów do rozwiązywania problemów i diagnozowania błędów w oprogramowaniu. Są generowane podczas awarii oprogramowania. Jeśli nie jesteś programistą lub nie testujesz oprogramowania dla programisty, pliki te nie mają dla ciebie żadnego celu.

Pliki zawierają stan pamięci (lub RAM) na komputerze Mac w momencie awarii. Tak wiele przydatnych informacji dla programistów i testerów do debugowania awarii. Niewiele użyteczne dla nikogo innego.

Domyślnie system OS X jest skonfigurowany tak, aby nie generować plików zrzutu pamięci. Jeśli wpiszesz sudo launchctl limit corew oknie terminala, program odpowie miękkimi i twardymi limitami wielkości plików zrzutu, które może tworzyć. Miękki limit oznacza wartość domyślną dla każdego procesu, jednak procesy mogą to zmienić, jeśli wymagają, ale tylko do wartości twardego limitu. Domyślnie wartości w OS X wydają się być „0 nieograniczone” oznacza, że ​​system operacyjny domyślnie nie tworzy zrzutów pamięci, ale procesy mogą zdecydować o utworzeniu nieograniczonej liczby plików zrzutu pamięci, jeśli chcą.

Możesz zmienić ustawienie na swoim komputerze, po prostu wprowadzając, sudo launchctl limit core 0 0aby całkowicie wyłączyć tę funkcję. sudo launchctl limit core 0 unlimitedprzywróci domyślne zachowanie, jeśli zostało zmienione.

Alistair McMillan
źródło
1
Czy ulimit -crobi coś poza bieżącym procesem powłoki? W systemie Linux tak nie będzie.
abligh
1
@AlistairMcMillan Jestem pewien, że wpływa to tylko na procesy, które są potomkami bieżącej powłoki. Aby włączyć zrzuty pamięci na całym świecie, uważam, że musisz się nimi bawić launchctl. Zobacz developer.apple.com/library/mac/documentation/Darwin/Reference/…
abligh
1
@AlistairMcMillan ah! Myślałem, że to była strona ulimitpodręcznika. Ale miałem na myśli linię powyżej re launchctl.
dniu
1
@abligh Zaktualizowałem moją odpowiedź. Mam nadzieję, że to ma sens.
Alistair McMillan
2
Pomocne polecenie, aby usunąć dowolne starsze niż 30 dni:cd /cores; sudo find . -mtime +30 -type f -delete
turtlemonvh