MKSWAP(8) Administracja systemem MKSWAP(8) NAZWA mkswap - konfiguruje linuksowy obszar wymiany SKLADNIA mkswap [opcje] urzadzenie [bloki] mkswap [opcje] --size rozmiar --file plik OPIS mkswap konfiguruje linuksowy obszar wymiany na urzadzeniu lub w pliku. Argument urzadzenie zwykle jest partycja dyskowa (czyms w stylu /dev/sdb7), lecz moze byc rowniez plikiem. Jadro Linux nie zwaza na identyfikatory partycji, lecz wiele skryptow instalacyjnych zaklada, ze partycje typu (szesnastkowo) 82 (LINUX_SWAP) sa partycjami wymiany. (Uwaga: Solaris rowniez uzywa tego typu. Prosze uwazac, aby nie zniszczyc swoich partycji solarisowych.) Parametr bloki jest niepotrzebny, lecz zostal zachowany w celu zgodnosci wstecznej. Okresla on potrzebny rozmiar wymiany w blokach 1024-bajtowych. mkswap w przypadku pominiecia tego parametru uzywa calej partycji lub calego pliku. Podawanie tego parametru jest niemadre - literowka moze zniszczyc dysk. Po utworzeniu obszaru wymiany, konieczne jest uzycie polecenia swapon(8), aby go aktywowac. Obszary wymiany sa zwykle uwzgledniane w /etc/fstab, wiec moga byc wlaczane do uzytku podczas rozruchu poleceniem swapon -a, w jakims skrypcie startowym. OSTRZEZENIE Naglowek obszaru wymiany nie uzywa pierwszego bloku. Moze znajdowac sie tam program rozruchowy lub etykieta partycji, ale nie jest to polecane ustawienie. Zalecana konfiguracja linuksowej przestrzeni wymiany jest uzycie oddzielnej partycji. mkswap, podobnie jak wiele innych narzedzi mkfs, usuwa pierwszy blok partycji aby ukryc istniejacy wczesniej system plikow. mkswap odmowi jednak usuniecia pierwszego bloku urzadzenia na urzadzeniu z etykieta dysku (SUN, BSD, ... - nie mylic z etykieta partycji). OPCJE -c, --check Sprawdza urzadzenie (jesli jest urzadzeniem blokowym) w poszukiwaniu uszkodzonych blokow przed utworzeniem obszaru wymiany. Jesli znajdzie uszkodzone bloki, wypisze ich liczbe. -F, --file Tworzy plik wymiany, z odpowiednimi uprawnieniami plikow i utworzonymi blokami na dysku. -f, --force Wymusza dzialanie, nawet jesli polecenie jest idiotyczne. Umozliwia to utworzenie obszaru wymiany wiekszego niz plik lub partycja, na ktorym sie ono znajduje. Poza tym, bez tej opcji, mkswap odmowi usuniecia pierwszego bloku na urzadzeniu z tablica partycji. -q, --quiet Wylacza wyswietlanie wynikow i ostrzezen. -L, --label etykieta Okresla etykiete urzadzenia, pozwalajac wykonac swapon(8) przez podanie etykiety. --lock[=tryb] Uzywa blokady na wylacznosc BSD do urzadzen i plikow na ktorych dziala. Opcjonalnym argumentem tryb moze byc yes, no (albo 1 lub 0) lub tez nonblock. Jesli nie poda sie trybu, domyslna wartoscia jest yes. Opcja ta przeslania zmienna srodowiskowa $LOCK_BLOCK_DEVICE. Choc domyslnie nie jest uzywana zadna blokada, zaleca sie jej uzycie aby uniknac kolizji z systemd-udevd(8) i innymi narzedziami. -p, --pagesize rozmiar Okresla rozmiar (w bajtach) uzywanej strony. Podanie tej opcji jest zwykle niepotrzebne - mkswap odczyta odpowiedni rozmiar z jadra. -U, --uuid UUID Okresla uniwersalny, unikatowy identyfikator (universally unique identifier - UUID) systemu plikow na UUID. Domyslnie UUID jest generowany. UUID sklada sie z serii cyfr w systemie szesnastkowym, oddzielonych myslnikami, jak np.: "c1b9d5a2-f162-11cf-9ece-0020afc76f16". Parametr UUID moze przyjmowac tez nastepujace wartosci: clear usuwa UUID systemu plikow random generuje nowy, losowy UUID time generuje nowy UUID, oparty na czasie -e, --endianness KOLEJNOSC-BAJTOW Okresla KOLEJNOSC-BAJTOW, jaka bedzie stosowana; prawidlowe wartosci to: native, little lub big. Domyslna jest native. -o, --offset przesuniecie Okresla przesuniecie do zapisania przestrzeni wymiany. -s, --size rozmiar Okresla rozmiar tworzonego pliku wymiany w bajtach, po ktorym moga wystepowac przyrostki oznaczajace wielokrotnosc: KiB (=1024), MiB (=1024*1024) i tak dalej dla GiB, TiB, PiB, EiB, ZiB oraz YiB (czesc "iB" jest opcjonalna, na przyklad "K" ma to samo znaczenie, co "KiB"). Jesli plik istnieje i ma rozmiar wiekszy od rozmiaru, zostanie przyciety do podanej wartosci. Opcja ta ma sens tylko w polaczeniu z --file. -v, --swapversion 1 Podaje wersje przestrzeni wymiany. Opcja ta jest obecnie bezuzyteczna, jako ze dawna opcja -v 0 stala sie przestarzala i obecnie obslugiwana jest wylacznie -v 1. Jadro nie obsluguje przestrzeni wymiany w formacie v0 od wersji 2.5.22 (czerwiec 2002). Nowa wersja v1 jest obslugiwana od jadra 2.1.117 (sierpien 1998). --verbose Wiecej informacji. Ta opcja powoduje, ze mkswap wypisuje wiecej szczegolow o wykrytych problemach przy tworzeniu przestrzeni wymiany. -h, --help Wyswietla ten tekst i wychodzi. -V, --version Wyswietla wersje i wychodzi. SRODOWISKO LIBBLKID_DEBUG=all wlacza wyjscie debugowania libblkid. LOCK_BLOCK_DEVICE=<tryb> uzywa blokady na wylacznosc BSD. Tryb to "1" lub "0". Wiecej informacji w opisie opcji --lock. UWAGI Maksymalny uzyteczny rozmiar obszaru wymiany zalezy od architektury i wersji jadra. Maksymalna liczba stron mozliwych do zaadresowania przez naglowek obszaru wymiany jest 4294967295 (32-bitowa liczba calkowita bez znaku). Pozostala przestrzen urzadzenia wymiany jest ignorowana. Aktualnie, Linux pozwala na 32 przestrzenie wymiany. Uzywane obszary mozna zobaczyc w pliku /proc/swaps. mkswap odmowi dzialania w przypadku przestrzeni wymiany mniejszych niz 10 stron. Jesli nie wiadomo jaki rozmiar strony jest uzywany przez dany komputer, mozna to sprawdzic poleceniem getconf PAGESIZE. Oprocz wykonania mkswap --file, mozna rowniez utworzyc plik wymiany recznie, przed zainicjowaniem go za pomoca mkswap, np. korzystajac z polecenia w stylu Od wersji 2.41, mkswap --file ustawia nowo tworzonym plikom atrybut nocow, aby obslugiwac pliki wymiany w systemie plikow Btrfs. # dd if=/dev/zero of=plik_wymiany bs=1MiB count=$((8*1024)) do utworzenia pliku_wymiany o rozmiarze 8GiB. W takim przypadku, prosze zapoznac sie z uwagami w podreczniku swapon(8), aby dowiedziec sie o ograniczeniach plikow wymiany (problemy z: plikami z dziurami, wstepna alokacja, kopiowaniem przy zapisie). ZOBACZ TAKZE fdisk(8), swapon(8) ZGLASZANIE BLEDOW Problemy nalezy zglaszac w systemie sledzenia bledow <https://github.com/util-linux/util-linux/issues>. DOSTEPNOSC Polecenie mkswap jest czescia pakietu util-linux, ktory mozna pobrac ze strony Archiwum jadra Linux <https://www.kernel.org/pub/linux/utils/util-linux/>. util-linux 2.41 2025-03-29 MKSWAP(8)