Jak skonfigurować plik wymiany w systemie Linux

Wymiana pamięci odgrywa kluczową rolę w systemie Linux, umożliwiając efektywne zarządzanie programami. Dzięki mechanizmowi wymiany użytkownicy mogą przenieść dane z pamięci RAM, a także przydzielić dodatkową pamięć dla aplikacji, gdy dostępna pamięć fizyczna jest niewystarczająca. Warto podkreślić, że każdy użytkownik powinien korzystać z wymiany. W tradycyjnych dystrybucjach Linuksa długo stosowano dedykowane partycje wymiany. Jednak w 2017 roku popularność zyskały pliki wymiany, co zauważono na przykład w Ubuntu, które zrezygnowało z partycji wymiany na rzecz pliku wymiany, a inne dystrybucje mogą podążać tą samą drogą w przyszłości. Głównym powodem tej zmiany jest wygoda — to mniej partycji do skonfigurowania podczas instalacji, co przyspiesza cały proces. Dodatkowo plik wymiany można łatwo powiększyć bez konieczności ponownego partycjonowania dysku, a jego dezaktywacja odbywa się bez zbędnych komplikacji. Poniżej przedstawiamy instrukcję, jak skonfigurować plik SWAP w systemie Linux.

Warto zaznaczyć, że plik wymiany można skonfigurować w każdej dystrybucji Linuksa. Na początku zainstaluj dystrybucję bez partycji wymiany! Należy pamiętać, że oznacza to rezygnację z tradycyjnego, prostego instalatora.

Często, aby uzyskać instalację bez wymiany, konieczne jest przeprowadzenie instalacji niestandardowej. Oznacza to ręczne partycjonowanie, w tym ustawienie partycji oraz punktów montowania oraz (jeśli używasz UEFI) partycję rozruchową.

Na przykład w instalatorze Ubuntu, aby przeprowadzić niestandardową instalację, wybierz opcję „coś innego”. W innych dystrybucjach Linuksa może to być oznaczone jako „układ niestandardowy” lub podobnie.

Jeśli korzystasz z systemu plików BtrFS, nie stosuj się do tego przewodnika, ponieważ BtrFS nie obsługuje plików wymiany.

Ustawienia wymiany

Utworzenie pliku wymiany polega na wykorzystaniu polecenia DD do stworzenia pliku. Pamiętaj, że plik wymiany powinien być równy rozmiarowi fizycznej pamięci RAM. Wpisz poniższe polecenie dokładnie tak, jak jest podane. Użytkownik powinien wprowadzić cały ciąg w jednym kroku i uruchomić go jak jedno polecenie.

Jeśli proces zakończy się powodzeniem, terminal poprosi o podanie liczby (w GB), aby przekonwertować ją na megabajty. Nie jest wymagana żadna matematyka.

Wskazówka: jeśli masz więcej niż 4 GB RAM, utwórz plik wymiany o połowie rozmiaru pamięci RAM.

echo 'enter gigabytes:';read gigabytes;calculated=$((1024 * $gigabytes))

Obliczenia dotyczące pliku wymiany są gotowe. Terminal zapisuje wynik w obliczonej zmiennej $. Teraz podłączmy to do polecenia DD. Tworzenie pliku wymiany może zająć chwilę, a na ekranie nie pojawi się żaden wskaźnik postępu. Gdy terminal będzie gotowy, wpisz kolejne polecenie.

sudo dd if=/dev/zero of=/swapfile bs=1M count=$calculated

Następnie należy zmienić uprawnienia pliku wymiany w katalogu głównym. Jest to niezbędne, ponieważ system musi mieć pełny dostęp do tego pliku. Bez tego zamiana nie będzie działać prawidłowo.

Aby uzyskać dostęp do powłoki roota, użyj polecenia: sudo -s

chmod 600 /swapfile

Po ustawieniu uprawnień czas na użycie polecenia mkswap. To narzędzie przekształca partycję lub plik w przestrzeń wymiany.

mkswap /swapfile

Uprawnienia są już ustawione i wszystko jest gotowe do działania. Teraz trzeba poinformować system Linux, aby aktywował wymianę, co można zrobić za pomocą polecenia swapon.

swapon /swapfile

Po wykonaniu powyższych czterech poleceń plik wymiany powinien być aktywowany. Jednak to nie wystarczy, ponieważ system musi wiedzieć, co to jest wymiana i gdzie się znajduje podczas uruchamiania. Wymaga to edycji pliku /etc/fstab (tablica systemu plików).

Na początku dodaj komentarz na końcu pliku, aby oznaczyć sekcję systemu plików, co ułatwi późniejszą edycję (użytkownik łatwo zauważy etykietę komentarza).

echo "# Swap file" >> /etc/fstab

Następnie dodaj wiersz pod komentarzem, określający lokalizację pliku wymiany w systemie oraz jak system powinien go traktować.

echo "/swapfile none swap defaults 0 0" >> /etc/fstab

Po dokonaniu tych dwóch edycji zrestartuj komputer. Od tej pory przy każdym uruchomieniu systemu Linux plik wymiany będzie dostępny do użycia.

Dezaktywacja pliku wymiany

W przeciwieństwie do partycji wymiany, użytkownicy mogą łatwo dezaktywować plik i zwolnić wcześniej zajmowane miejsce, bez potrzeby ponownego partycjonowania. Proces trwałego wyłączenia wymiany jest prosty i składa się z trzech kroków.

sudo nano /etc/fstab

Znajdź wszystkie wpisy dotyczące wymiany (np. komentarz informujący o lokalizacji pliku wymiany) i usuń je. Następnie zapisz zmiany, naciskając

Ctrl + O.

Po zapisaniu zmian dezaktywuj wymianę.

sudo swapoff -a

Przejdź do katalogu głównego systemu plików.

cd /

Usuń sam plik wymiany.

sudo rm swapfile

Na koniec zrestartuj komputer. Po ponownym uruchomieniu plik wymiany zostanie całkowicie usunięty.

Podsumowanie

Wymiana jest niezwykle użyteczna, ponieważ pozwala na dodatkowe obciążenie aplikacji, gdy dostępna pamięć się wyczerpuje. Choć często pomijana, pliki wymiany mają swoje zalety. Umożliwiają one łatwe włączanie i wyłączanie wymiany bez potrzeby ponownego partycjonowania. Dodatkowo ich rozmiar można dostosowywać w locie, w razie potrzeby. Mamy nadzieję, że ten przewodnik pomoże użytkownikom Linuksa zrozumieć korzyści płynące z wykorzystania pliku wymiany zamiast dedykowanej partycji wymiany.


newsblog.pl