W jaki sposób przed zwolnieniem pamięci (RAM) zużywanej przez jądro Linuksa na jego bufory i pamięć podręczną?
Pamiętaj, że jest to szczególnie przydatne w testach porównawczych. Opróżnianie buforów i pamięci podręcznej zmniejsza wydajność! Jeśli jesteś tutaj, ponieważ myślałeś, że zwolnienie buforów i pamięci podręcznej było czymś pozytywnym, idź i przeczytaj Linux zjadł moją pamięć RAM! . Krótka historia: wolna pamięć to niewykorzystana pamięć to zmarnowana pamięć.
Odpowiedzi:
Opróżnianie pamięci podręcznej buforów
Jeśli kiedykolwiek chcesz go opróżnić, możesz użyć tego łańcucha poleceń.
Możesz zasygnalizować, że jądro Linux wyrzuci różne aspekty buforowanych elementów, zmieniając argument numeryczny na powyższe polecenie.
Aby zwolnić pamięć podręczną:
Aby uwolnić dentries i i-węzły:
Aby zwolnić pamięć podręczną, dentries i i-węzły:
Powyższe mają być uruchamiane jako root. Jeśli próbujesz to zrobić
sudo
, musisz nieco zmienić składnię na coś takiego:UWAGA: Istnieje bardziej ezoteryczna wersja powyższego polecenia, jeśli jesteś w to zaangażowany:
Dlaczego zmiana składni? Z tego
/bin/echo
powodu program działa jako root,sudo
ale powłoka przekierowująca dane wyjściowe echa do pliku zawierającego tylko root nadal działa jako użytkownik. Twoja bieżąca powłoka dokonuje przekierowania przed uruchomieniemsudo
.Sprawdzanie zawartości buforów i pamięci podręcznej
Sprawdź,
linux-ftools
czy chcesz przeanalizować zawartość buforów i pamięci podręcznej. W szczególności, jeśli chcesz zobaczyć, które pliki są obecnie buforowane.fincore
Dzięki temu narzędziu możesz zobaczyć, które pliki są buforowane w danym katalogu.
Na przykład
/var/lib/mysql/blogindex
:Z powyższych danych wyjściowych widać, że obecnie jest buforowanych kilka plików * .MYD, * .MYI i * .frm.
Zamiana
Jeśli chcesz wyczyścić swap, możesz użyć następujących poleceń.
Następnie użyj tego polecenia, aby wyłączyć zamianę:
Możesz potwierdzić, że jest teraz pusty:
Aby ponownie włączyć:
A teraz potwierdź
free
:źródło
tee
do zapisu jako root:echo 3 | sudo tee /proc/sys/vm/drop-caches