Czy istnieje sposób na zwiększenie mojego istniejącego „pliku wymiany” bez konieczności jego niszczenia i ponownego tworzenia? Chciałbym zwiększyć swoją przestrzeń wymiany z 1 GB do 2 GB. Obecnie jest skonfigurowany jako taki:
$ sudo swapon -s
Filename Type Size Used Priority
/swapfile file 1048572 736640 -1
$ ls -lh /swapfile
-rw------- 1 root root 1.0G Nov 9 2016 /swapfile
Używam Ubuntu 14.04.
command-line
files
swap
storage
Dave
źródło
źródło
swapoff
utworzyć nowy plik wymianymkswap
iswapon -a
swapoff
wtedydd
imkswap
nareszcieswapon
. Myślałem, że nie chcesz dotykać swojego pliku.Odpowiedzi:
Najpierw wyłącz plik wymiany:
Teraz zwiększmy rozmiar pliku wymiany:
Powyższe polecenie doda 1 GiB zerowych bajtów na końcu pliku wymiany.
Skonfiguruj plik jako „plik wymiany”:
włącz zamianę:
źródło
sudo fallocate -l 2G /swapfile
jest prawdopodobnie bezpieczniejszy niż dd (chociaż nie zachowuje oryginalnego pliku wymiany), a także potrzebujesudo chmod 600 /swapfile
.fallocate
tworzy rzadkich plików? Strona taswapon
mówi, że rzadkie pliki wymiany są problematyczne (konkretnie wspomnianefallocate
).mkswap
podręcznika mówi również, że pliki nie powinny zawierać żadnych dziur.fallocate
do wstępnego przydzielenia miejsca na dysku, a następnie użyćdd
do wypełnienia otworów zerami.Powinieneś dodać nowy plik wymiany zamiast zmieniać rozmiar istniejącego, ponieważ nic Cię to nie kosztuje . Aby zmienić rozmiar pliku wymiany, musisz go najpierw wyłączyć, co spowoduje eksmisję zawartości wymiany do pamięci RAM, co zwiększy presję na pamięć RAM, a nawet może wezwać zabójcę OOM (nie wspominając o tym, że możesz psuć dyski przez kilka minut). Wiele plików wymiany nie stanowi problemu, konfiguracja kolejnego pliku wymiany jest banalnie łatwa. Dosłownie nie ma żadnej korzyści ze zmiany rozmiaru pliku wymiany w porównaniu z dodaniem innego.
źródło
sudo chmod 600 /some/file
wymagane czy nie?count=1K
daje plik 1G? liczba jest w bloku, tak? A to może być 512/4096? Czy moja matematyka jest zła?Możesz utworzyć inny plik wymiany tak jak ja:
sudo fallocate -l 4G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
sudo swapon --show
Aby na stałe dodać plik do
fstab
pliku, wpisując:echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
źródło
fallocate
należy użyć bit do utworzenia pliku, ponieważ tworzy on rzadki plik. patrzman mkswap
man mkswap
, szczególnie ostatni parafrazę przed „Środowiskiem”Mam dobre wyniki na moim Ubuntu 17.04 zgodnie z radą Ariana Acosty z blogu . Tutaj możesz zastąpić 4G
sudo fallocate -l 4G /swapfile
dowolną ilością gigabajtów, którą chcesz. Na przykładsudo fallocate -l 2G /swapfile
dla TS.źródło
Ogólna odpowiedź na „jak zmienić rozmiar pliku wymiany”:
Od Bogdan Cornianu, tutaj: https://bogdancornianu.com/change-swap-size-in-ubuntu/
[QUOTE (PRAWIE VERBATIM, z kilkoma dodatkami do moich komentarzy) START]
W poniższym przykładzie rozszerzymy przestrzeń wymiany dostępną w pliku / swap z 4 GiB do 8 GiB.
Wyłącz wszystkie procesy wymiany
Zmień rozmiar zamiany
if
= plik wejściowy = plikof
wyjściowybs
= rozmiar bloku; Tutaj1G
oznacza 1 Gibibyte lub GiB, który zgodnieman dd
jest G = 1024 * 1024 * 1024 bajtówcount
= mnożnik blokówUdostępnij plik jako swap
Aktywuj plik wymiany
Sprawdź ilość dostępnych swapów
[KONIEC QUOTE]
źródło