NAZWA

swapon, swapoff - włącza/wyłącza urządzenia oraz pliki stronicowania i wymiany

SKŁADNIA

swapon [opcje] [plik-specjalny...]
 
swapoff [-va] [plik-specjalny...]

OPIS

Polecenie swapon jest używane do określania urządzeń do stronicowania i wymiany.
 
Urządzenie lub plik może być podany za pomocą parametru plik-specjalny. Może mieć on postać -L etykieta lub -U uuid, aby określić urządzenie za pomocą etykiety lub uuid (unikatowego identyfikatora).
 
Odwołanie do swapon normalnie powinno się pojawiać w systemowych skryptach uruchomieniowych, udostępniając wszystkie urządzenia wymiany, dzięki czemu stronicowanie i wymiana jest rozłożone między wiele urządzeń i plików.
 
Polecenie swapoff wyłącza wymianę na podanych urządzeniach i plikach. Jeśli użyto opcji -a, to swap jest wyłączany na wszystkich znanych urządzeniach i plikach wymiany (zgodnie z plikiem /proc/swaps lub /etc/fstab).

OPCJE

-a, --all
Udostępnia wszystkie urządzenia oznaczone jako "swap" w pliku /etc/fstab, z wyjątkiem plików z opcją "noauto". Urządzenia, które są już używane jako swap, są po cichu pomijane.
 
-d, --discard [=tryb]
Włącza odrzucanie (discard), jeśli urządzenie, na którym jest przestrzeń wymiany, pozwala na operacje discard lub trim. Może to pozytywnie wpłynąć na wydajność na niektórych dyskach półprzewodnikowych (SSD), ale często tak nie jest. Opcja pozwala na wybór spośród dwóch dostępnych trybów odrzucania:
 
--discard=once
do przeprowadzania pojedynczych operacji odrzucania całej przestrzeni wymiany lub
 
--discard=pages
do asynchronicznego odrzucania zwolnionych stron wymiany przed udostępnieniem ich do ponownego użycia.
 

Jeśli nie wybierze się żadnego z tych trybów, to domyślnym zachowaniem jest włączenie ich obu. Można również włączyć odrzucanie w /etc/fstab za pomocą opcji montowania discard, discard=once lub discard=pages.
 
-e, --ifexists
Pomija po cichu nieistniejące urządzenia. Opcja montowania nofail w /etc/fstab może być również użyta do pomijania nieistniejących urządzeń.
 
-f, --fixpgsz
Ponownie inicjuje przestrzeń swap (exec mkswap), jeśli rozmiar strony nie pasuje do rozmiaru podawanego przez obecnie uruchomione jądro. Polecenie mkswap(8) inicjuje całe urządzenie i nie sprawdza go pod kątem błędnych bloków.
 
-L etykieta
Używa partycji z określoną etykietą (potrzebny jest w tym celu dostęp do /proc/partitions).
 
-o, --options opcje
Podaje opcje swap jako rozdzielona przecinkami lista zgodna z formatem fstab. Na przykład:
 
swapon -o pri=1,discard=pages,nofail /dev/sda2
 
Łańcuch opts jest przetwarzany ostatni i nadpisuje wszystkie inne opcje linii poleceń.
 
-p, --priority priorytet
Określa priorytet urządzenia wymiany. Priorytet jest wartością z przedziału pomiędzy -1 a 32767. Wyższa liczba oznacza wyższy priorytet. Podręcznik polecenia swapon(2) zawiera pełny opis priorytetów swap. Do pliku /etc/fstab można dodać opcję pri=wartość, która będzie używana ze swapon -a. Jeśli nie zdefiniowano priorytetu,to wartością domyślną jest -1.
 
-s, --summary
Wyświetla podsumowanie użycia swapu wg urządzenia. Jest to odpowiednik cat /proc/swaps. Ten format wyjścia jest PRZESTARZAŁY. Zalecany format --show dostarcza większej kontroli nad danymi wyjściowymi.
 
--show[=kolumna...]
Wyświetla możliwą do zdefiniowania tabelę obszarów swap. Listę dostępnych kolumn można znaleźć w wyjściu opcji --help.
 
--output-all
Wypisuje wszystkie dostępne kolumny.
 
--noheadings
Nie wyświetla nagłówków w wyjściu opcji --show.
 
--raw
Nie wyrównuje kolumn tabeli wyświetlanej przez --show.
 
--bytes
Opcja --show wyświetla rozmiar przestrzeni wymiany w bajtach, a nie w jednostkach czytelnych dla użytkownika.
 
-U uuid
Używa partycji o określonym uuid (unikalnym identyfikatorze).
 
-v, --verbose
Więcej szczegółów.
 
-h, --help
Wyświetla ten tekst i kończy pracę.
 
-V, --version
Wyświetla informacje o wersji i kończy działanie.

KOD ZAKOŃCZENIA

swapoff ma następujące wartości kodów zakończenia od wersji v2.36:
 
0
sukces
 
2
system ma zbyt mało pamięci aby zaprzestać używania przestrzeni wymiany (OOM)
 
4
wywołanie systemowe swapoff(2) nie powiodło się z innych przyczyn
 
8
non-swapoff(2) syscall system error (out of memory, ...)
 
16
błąd użycia lub składni
 
32
wszystkie wywołania swapoff nie powiodły się (przy użyciu opcji --all)
 
64
część wywołań swapoff powiodła się (przy użyciu opcji --all)
 
Polecenie swapoff --all zwraca 0 (wszystkie się powiodły), 32 (wszystkie nie powiodły się) lub 64 (część się powiodła, a część nie).
 
+ Wersje starsze niż v2.36 nie mają udokumentowanego kodu zakończenia, natomiast 0 oznacza sukces we wszystkich wersjach.

ŚRODOWISKO

LIBMOUNT_DEBUG=all
włącza wyjście debugowania libmount.
 
LIBBLKID_DEBUG=all
włącza wyjście debugowania libblkid.

PLIKI

/dev/sd??
standardowe urządzenia stronicowania
 
/etc/fstab
tablica opisująca systemy plików w ascii

UWAGI

Pliki z dziurami

Implementacja pliku wymiany w jądrze spodziewa się możliwości bezpośrednich zapisów do pliku, to jest bez pośrednictwa systemu plików. Stanowi to problem na plikach z dziurami oraz na systemach plików copy-on-write (kopiuj przy zapisie), takich jak Btrfs.
 
Polecenia takie jak cp(1) lub truncate(1) tworzą pliki z dziurami. Zostaną one odrzucone przez swapon.
 
Prealokowane pliki tworzone przez fallocate(1) mogą być również interpretowane jako pliki z dziurami, w zależności od systemu plików. Prealokowane pliki wymiany są obsługiwane w systemie plików XFS od jądra Linux w wersji 4.18.
 
Najbardziej przenośnym rozwiązaniem jest tworzenie plików wymiany za pomocą dd(1) i /dev/zero.

Btrfs

Swap files on Btrfs are supported since Linux 5.0 on files with nocow attribute. See the btrfs(5) manual page for more details.

NFS

Swap poprzez NFS może nie działać.

Stan wstrzymania

Polecenie swapon automatycznie wykrywa i nadpisuje podpis przestrzeni wymiany ze starymi danymi wstrzymania (np. S1SUSPEND, S2SUSPEND, ...). Jest to konieczne, gdyż w przeciwnym wypadku nastąpiłoby uszkodzenie danych przy kolejnej próbie wybudzenia.

HISTORIA

Polecenie swapon pojawiło się w 4.0BSD.

ZOBACZ TAKŻE

swapoff(2), swapon(2), fstab(5), init(8), fallocate(1), mkswap(8), mount(8), rc(8)

ZGŁASZANIE BŁĘDÓW

Raporty o błędach proszę zgłaszać pod adresem <https://github.com/util-linux/util-linux/issues>.

DOSTĘPNOŚĆ

Polecenie swapon jest częścią pakietu util-linux i można je pobrać ze strony Linux Kernel Archive <https://www.kernel.org/pub/linux/utils/util-linux/>.

TŁUMACZENIE

Autorami polskiego tłumaczenia niniejszej strony podręcznika są: Przemek Borys <[email protected]>, Michał Kułach <[email protected]> i Robert Luberda <[email protected]>
Niniejsze tłumaczenie jest wolną dokumentacją. Bliższe informacje o warunkach licencji można uzyskać zapoznając się z GNU General Public License w wersji 3 lub nowszej. Nie przyjmuje się ŻADNEJ ODPOWIEDZIALNOŚCI.
Błędy w tłumaczeniu strony podręcznika prosimy zgłaszać na adres listy dyskusyjnej [email protected]

Recommended readings

Pages related to swapon you should read also: