Jak zmienić rozmiar wymiany w Ubuntu

Jak zmienić rozmiar wymiany w Ubuntu

W tym przewodniku pokażemy, jak zmienić rozmiar zamiany w Ubuntu 22.04.

Wymagania wstępne:

Aby wykonać kroki w tym przewodniku, potrzebujesz następujących elementów:

  • Odpowiednio skonfigurowany system Ubuntu. Do testowania możesz zainstalować Ubuntu na maszynie wirtualnej za pomocą VirtualBox.
  • Dostęp do użytkownika nie-root, który może wykonywać polecenia Sudo.

Plik zamiany w Linux

RAM maszyny jest podzielony na kawałki przez jądro Linux zwane „stronami”. Ilekroć strona jest kopiowana do wstępnie skonfigurowanej przestrzeni na wtórnych urządzeniach pamięci (w większości przypadków dysk twardy lub dysk SSD), nazywa się to „zamiana”. Prekonfigurowana dedykowana przestrzeń nazywa się „przestrzenią wymiany”.

Całkowita ilość pamięci fizycznej (RAM) i przestrzeni swapowej nazywa się pamięcią „wirtualną”.

Jest konieczne zamianę?

Istnieje kilka powodów, dla których konieczne jest zamiana:

  • Gdy istnieje zapotrzebowanie na więcej pamięci niż to, co jest fizycznie dostępne, zamiana mniej ważnych stron uwalnia więcej pamięci dla procesu, który wymaga więcej pamięci.
  • Duża część stron używanych podczas uruchamiania programu może zobaczyć bardzo niewielkie użycie. Zamień tych stron może zwolnić więcej pamięci dla innych aplikacji.
  • Jeśli nie przypisuje się miejsca zamiany, jeśli przestrzeń pamięci RAM jest w pełni zajęta, może spowodować awarię systemu, zwłaszcza systemy o niskiej przestrzeni pamięci RAM.

Jednak zamiana ma własny zestaw wad:

  • W porównaniu do pamięci RAM, wtórne przechowywanie (dyski twarde, SSD i tym podobne) są bardzo powolne. Mówiąc inaczej, prędkości dostępu do pamięci RAM są mierzone w nanosekundach, podczas gdy prędkości dostępu do dysku są mierzone w milisekundach.
  • Ze względu na różnicę w prędkości odczytu/zapisu zamiana jest bardzo powolnym procesem. Kiedy dzieje się dużo zamiany, ostatecznie spowalnia system.

Rodzaje przestrzeni wymiany

W Linux natkniesz się na dwa rodzaje przestrzeni wymiany:

  • Dedykowana partycja swap - żadnych innych plików nie można tam przechowywać.
  • Pliki zamiany - te pliki mogą znajdować się w dowolnym miejscu w systemie plików.

W zależności od dostępnej przestrzeni pamięci RAM rozmiar przestrzeni swapowej może się różnić. Oto kilka przykładów:

Plik zamiany w Ubuntu

Ubuntu zwykle używa dedykowanej partycji zamiany do zamiany. Często ta partycja jest tworzona podczas instalacji. Możemy jednak tworzyć i dostosować pliki zamiany do woli.

Wymień przestrzenie zamiany

Poniższe polecenie pokazuje wszystkie aktualnie skonfigurowane przestrzenie zamiany:

$ swapon

Lista zawiera wszystkie przestrzenie zamiany, zarówno partycje, jak i pliki zamiany.

Tworzenie plików zamiany

Kluczową zaletą plików zamiany przez partycję swap jest to, że rozmiar pliku można łatwo zmienić, zmieniając w ten sposób ilość miejsca zamiany bez dotykania partycji dysku. W tej sekcji tworzymy nowy plik swap i dodajemy go do bieżącej puli wymiany.

Najpierw utwórz pusty plik za pomocą następującego polecenia:

$ sudo dd if =/dev/zero =/new_swap bs = 1m liczba = 2048

Tutaj:

  • Rozmiar pliku jest obliczany jako 1m x 2048 = 2G.
  • Aby utworzyć plik o innym rozmiarze, odpowiednio zmień wartość argumentu liczby.
  • /Dev /zero to specjalne urządzenie blokowe w systemie Linux, które wyświetla zero bajtów za każdym razem, gdy jest czytany.
  • Chociaż możemy używać innych narzędzi, takich jak Fallate do tworzenia pliku, w niektórych sytuacjach może to prowadzić do problemów. Omówiono go bardziej dogłębnie w tym poście Askubuntu.

Następnie musimy ustawić prawidłowe uprawnienia pliku za pomocą następującego polecenia:

$ sudo chmod 600 /New_Swap

Teraz musimy sformatować plik jako zamian za pomocą następującego polecenia:

$ sudo mkswap /New_Swap

Na koniec możemy dodać plik do puli swap.

$ sudo swapon /New_Swap

Jeśli akcja zakończy się powodzeniem, nowy plik swapowy powinien pojawić się na liście przestrzeni wymiany.

$ swapon

Zauważ, że ta akcja jest tylko tymczasowa. Po ponownym uruchomieniu plik swap nie będzie już używany. Aby uczynić ją stałą zmianą, musimy zaktualizować tabelę /etc /fstAB za pomocą następującego wpisu:

$ /New_Swap swap Swap domyślnie 0 0

Sprawdzanie bezpłatnej przestrzeni swapowej

Poniższe polecenie drukuje zarówno pamięć, jak i zamień użycie:

$ sudo za darmo -h

Usuwanie pliku swap

Aby usunąć plik swap, najpierw musimy upewnić się, że nie jest on używany. Poniższe polecenie dezaktywuje plik swap:

$ sudo swapoff -v /

Sprawdź listę aktywnych przestrzeni wymiany, aby potwierdzić zmianę.

$ swapon

Jeśli plik swap jest zadeklarowany w /etc/fstab, Musisz także usunąć wpis. Teraz plik swapowy można bezpiecznie usunąć. Usuń go za pomocą następującego polecenia:

$ sudo rm /

Zmiana rozmiaru zamiany

W zależności od typu przestrzeni swap (partycja lub plik) proces zmiany rozmiaru swap może się różnić.

Zmiana wielkości partycji zamiany

Partycję można przedłużyć tylko wtedy, gdy istnieją niezrównane przestrzenie bezpośrednio po niej. W przeciwnym razie jedyną inną opcją rozmiaru jest zmniejszenie partycji. Dotyczy to również partycji zamiany.

Jeśli używasz pulpitu Gnome, aplikacja „dysks” może zaoferować wgląd w sytuację.

Alternatywnie możemy użyć GPARTED wizualizować to.

Jak widać, partycja zamiany znajduje się bezpośrednio obok partycji root w tym systemie. To nie pozostawia miejsca na przedłużenie przegrody.

Można jednak wykonywać operacje zmniejszające się i reformatowe. Dowiedz się więcej o zarządzaniu partycjami za pomocą fdisk lub gparted. Komenda ReSize2FS jest również potrzebna do zmiany rozmiaru istniejącego systemu plików zgodnie z rozmiarową partycją.

Zmiana rozmiaru pliku swap

Aby manipulować plik zamiany, najpierw musimy go usunąć z puli swap. Uruchom następujące polecenie:

$ sudo swapoff /new_swap

Teraz powtórz polecenie DD, aby zwiększyć rozmiar pliku:

$ sudo dd if =/dev/zero =/new_swap bs = 1 g liczba = 2 OFLAG = append Conv = notrunc

Tutaj dodaliśmy 2 GB więcej miejsca do pliku zamiany. Następnie sformatujemy plik jako zamianę za pomocą następującego polecenia:

$ sudo mkswap /New_Swap

Wreszcie możemy włączyć na to:

$ sudo swapon /New_Swap
$ swapon

Zauważ, że w niektórych sytuacjach próba wyłączenia pliku swap może spowodować błąd takiego jak „Swapoff nie powiodło się: nie można przydzielić pamięci”. W takim przypadku wykonujemy następujące czynności:

  • Utwórz nowy plik swap o większej przestrzeni.
  • Dołącz większą wymianę do systemu.
  • Usuń starszy, mniejszy plik swap.
  • Usuń starszy wpis pliku swap z /etc/fstab (Jeśli dotyczy).

Wniosek

Omówiliśmy dogłębnie pokazane na temat zarządzania przestrzeniami zamiany w Ubuntu. Omówiliśmy różne rodzaje przestrzeni wymiany. Nauczyliśmy się zmienić rozmiar partycji swap i jak pracować z plikami swap (tworzenie, usuwanie i rozmiar).

Zainteresowany opanowaniem Ubuntu? Sprawdź podkategorię Ubuntu, która zawiera liczne przewodniki po dostosowaniu systemu Ubuntu i korzystaniu z różnych narzędzi.

Szczęśliwy komputer!