Dodanie nowego pliku wymiany. Jak edytować fstab, aby włączyć wymianę po ponownym uruchomieniu?

50

Usunąłem istniejącą partycję wymiany z powodu problemów z partycjonowaniem. Nie mam teraz przestrzeni wymiany, więc utworzyłem plik wymiany z:

dd if=/dev/zero of=/root/myswapfile bs=1M count=1024

Oto po swapon -s:

/root/myswapfile    file    1048572    1320    -1

Teraz chcę edytować mój, /etc/fstababy włączyć plik wymiany po ponownym uruchomieniu.

jojo
źródło
1
Zamiana na dysku SSD jest niebezpieczna, ponieważ dyski SSD mają krótki czas działania przy intensywnych operacjach zapisu. Oznacza to, że naprawdę możesz zużyć swój cenny i drogi dysk SSD.
2
Zauważ, bs=1G count=1że dałoby to ten sam wynik, spójrz na stronę podręcznika dd dla innych jednostek.
LiveWireBT,

Odpowiedzi:

79

Oto kroki, aby utworzyć zamianę pliku:

Utwórz duży plik, np. Za pomocą

sudo mkdir -p /var/cache/swap/   # create a directory that holds the swap file
sudo dd if=/dev/zero of=/var/cache/swap/myswap bs=1M count=4096 # for 4 GByte

Oczywiście zrobiłaby to każda inna metoda tworzenia pliku o zdefiniowanym rozmiarze .

Ogłoś zamianę do systemu

sudo chmod 0600 /var/cache/swap/myswap # only root should have access
sudo mkswap /var/cache/swap/myswap # format as swap
sudo swapon /var/cache/swap/myswap # announce to system

Wstaw następujący wiersz w /etc/fstabcelu wymiany z następnego rozruchu:

/var/cache/swap/myswap    none    swap    sw    0   0

Uwaga: w przypadku posiadania plików systemowych na dysku SSD warto rozważyć umieszczenie pliku wymiany na dysku twardym.

Uwaga: nie można użyć pliku wymiany do hibernacji (patrz Ubuntu SwapFaq )

Uwaga dodatkowa dla Ubuntu> = 17.04:/swapfile Domyślnie wymiana pliku jest tworzona w nowej instalacji (gdy nie było partycji wymiany). Jeśli wolimy, możemy ręcznie utworzyć partycję wymiany .

Jeśli chcemy zastąpić istniejącą zamianę (np. Partycję) inną zamianą (np. W pliku), musimy usunąć starą zamianę za pomocą

sudo swapoff -a  # for all

Następnie usuń wpis zamiany z /etc/fstablub odpowiednio zastąp go nowym zamiennikiem.

Takkat
źródło
1
Dlaczego nie chcesz również wymiany na dysku SSD?
Joseph Garvin
1
@JosephGarvin: ponieważ zużycie może prawdopodobnie nie stanowić problemu, nadal tracisz dużo (drogiego) miejsca na dysku podczas wymiany dysku SSD. W zależności od systemowej pamięci RAM, zamiana może nie być konieczna zbyt często. askubuntu.com/questions/178661/do-i-need-swap-with-new-ssd
Takkat
1
Dzięki, jak sprawdzisz, /etc/fstabczy poprawnie zamieniłby plik wymiany bez ponownego uruchamiania? Nie widzę pliku wymiany, jeśli to zrobięmount -a && mount
Don Giulio
2
@ user72464 Aby pokazać wszystkie użyte wymiany, które możemy wydać swapon -s. Dostępna zamiana jest również wyświetlana na free -h.
Takkat
1
@ user72464 Proste .. domount -a
heemayl