partycja wymiany kontra plik wymiany

47

Czytałem nowe zmiany w Ubuntu 17.04 i jedna przykuła moją uwagę, która przechodziła od typowego modelu partycji wymiany do nowego modelu pliku wymiany dla nowych instalacji.

Czy są zalety korzystania z tego w przeciwieństwie do partycji wymiany, być może związane z wydajnością, oszczędnością miejsca, bardziej zgodne z dzisiejszym sprzętem, takim jak SSD i NVMe, czy czymś innym?

Kolejne powiązane pytanie dotyczy sposobu migracji z partycji wymiany do pliku wymiany? Zgaduję, używając dd, ale chcę potwierdzić, ponieważ do tej pory nie wiedziałem o schemacie plików wymiany.

I wreszcie, czy hibernacja będzie problemem w przypadku plików wymiany?

Oczywiście te pytania mogą być związane z przypadkami, w których użytkownik ma dużo pamięci RAM, a zamiana jest rzadko używana (tak mi się wydaje). Więc tylko po to, aby potwierdzić, że te informacje pomogą mi i innym z tymi samymi wątpliwościami.

Luis Alvarado
źródło
O powiązane pytanie: askubuntu.com/questions/903414/… (jeśli kiedykolwiek zostanie udzielone odpowiedzi)
muru
digitalocean.com/community/tutorials/… - Nie mogę powiedzieć, że to miało znaczenie, naprawdę nie mogę. System działa dobrze jak poprzednio (i tak rzadko była używana wymiana).
Oto jak dodać swap do pliku . W 17.04 jest to plik /swapfile. Problem może stanowić hibernacja.
Takkat
muru @CelticWarrior Takkat dziękuję za linki i informacje chłopaki. Rzeczywiście bardzo pomocny. Jeśli to możliwe, Celtic, jeśli to możliwe, proszę dodać konkretne odpowiedzi tutaj w AskUbuntu na wszelki wypadek. Dla wszystkich upewnienie się, że odpowiedzi są aktualne (nie 2012, ale faktycznie 2016-2017, kiedy zaczęła się cała sprawa wymiany plików) bardzo by pomogło i uniknęło wszystkiego, co wydarzyło się w tym okresie, który się zmienił.
Luis Alvarado,
1
Jeśli partycja root jest zaszyfrowana, plik wymiany jest również szyfrowany - automatycznie. Nie musisz robić nic specjalnego. Jest to więc ulepszenie dla ogólnego użytkownika, który może zapomnieć o szyfrowaniu wymiany.
Maris B.

Odpowiedzi:

34

Jedyną zaletą pliku wymiany jest to, że można łatwo zmienić jego rozmiar, więc nie ma sensu przechodzić, chyba że nie jesteś zadowolony z rozmiaru partycji wymiany.

Pliki wymiany tradycyjnie były zniechęcane z wielu powodów. Plik wymiany był wcześniejszy niż Linux v2.4, i może nadal działać wolniej, jeśli utworzysz plik wymiany w pofragmentowanym systemie plików. Być może bardziej prawdopodobne jest, że trafisz na błędy pamięci przy użyciu plików wymiany, na przykład catch-22s, w których nie możesz przydzielić więcej pamięci, dopóki nie wymienisz niektórych, ale system plików musi przydzielić, zanim będziesz mógł wymienić. Kilka lat temu hibernacja do plików wymiany była kontrowersyjną nową funkcją z podobnych powodów. Wiele lat temu, gdy systemy plików były nadal nieco wadliwe (a nie kronikowane), nierozsądnie było robić ogromne ilości pisania ważnych systemów plików, gdy zamiast tego można było po prostu użyć pliku wymiany. Zgodnie z tradycją domyślne partycje wymiany zostały przetestowane bardziej niż pliki wymiany. Prawdopodobnie kanoniczni uważają, że nie warto się tym martwić.

Największym powodem, dla którego nie można teraz przejść na plik wymiany, jest „dlaczego naprawić coś, co nie jest zepsute”. Jeśli nie utworzysz kopii zapasowej głównej partycji i przypadkowo usuniesz /homeplik zamiast pliku wymiany, próba odzyskania go byłaby trudna.

Innym powodem, aby nie przełączać się na pliki wymiany, jest użycie tego, btrfsktóry nie obsługuje jeszcze plików wymiany (z wyjątkiem plików powolnej pętli zwrotnej)


Nawet jeśli zdecydujesz się na plik wymiany, nie musisz naprawdę usuwać partycji wymiany, chyba że masz mało miejsca. Możesz użyć obu jednocześnie, jeśli chcesz. Jeśli zdecydujesz się usunąć partycję wymiany, najpierw uruchom z płyty Ubuntu LiveCD i idź try without installing. Następnie w terminalu gpartedusuń partycję wymiany i zmień rozmiar pozostałych partycji (dobrym pomysłem może być najpierw wykonanie kopii zapasowej).

Teraz uruchom ponownie komputer w zwykłej instalacji Ubuntu i utwórz plik wymiany. Ponieważ zaletą pliku wymiany jest to, że można łatwo zmienić jego rozmiar, możesz użyć SwapSpace do zarządzania rozmiarem pliku wymiany:

sudo apt install swapspace

Możesz również ręcznie utworzyć plik wymiany, postępując zgodnie z instrukcjami na stronie : https://www.digitalocean.com/community/tutorials/how-to-add-swap-space-on-ubuntu-16-04

Krótko mówiąc, możesz zrobić plik wymiany 1G, wklejając poniższe w terminalu

sudo fallocate -l 1G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
sudo swapon --show

Jeśli to działa, możesz ustawić go na stałe, wykonując:

sudo cp /etc/fstab /etc/fstab.bak
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
gmatht
źródło
Hmmm potrzebne cytaty ... nie jesteś pewien argumentu błędnego systemu plików, jak daleko się cofasz ...? Jeśli chodzi o połów 22, oomkiller do pewnego stopnia to rozwiązał - niewielka alokacja powinna spowodować małe zabójstwo i byłbym zaskoczony, gdyby zamiana za pomocą fs nie miała bufora wee na taką ewentualność ...
taifwa
5
Ponad 10 lat temu ogólną radą było umieszczenie swap, / usr / home i / var wszystkich na różnych partycjach, aby jeśli jedna z nich uległa uszkodzeniu, można było zresetować pozostałe. Było to prawdopodobnie zanim powszechne było prowadzenie dziennika. W systemach plików nadal występują błędy, ale paranoja jest prawdopodobnie lepiej wydawana na tworzenie kopii zapasowych w miejscach, w których ransomware nie może się do niej dostać.
gmatht
1
@taifwa Dodałem link do btrfs FAQ, w którym nie obsługują szybkiego dostępu do pliku wymiany (ponieważ nie są pewni, jak go wdrożyć bez uszkodzenia), i zauważ, że największym powodem, dla którego nie należy przełączać, jest nie naprawianie tego, co nie jest zepsute. czy to pomaga?
gmatht
1
@gmatht Cóż, wszystko załatwiłeś w bardzo przyjemny sposób. Jeśli w nadchodzących miesiącach / latach znajdziesz nowe informacje o plikach wymiany, daj nam znać, aktualizując tę ​​odpowiedź. Wyrazy uznania i doskonała praca.
Luis Alvarado,
3
@PabloBianchi Może to zrobić, ale wolałbym dziś wymienić dysk SSD. Wprowadzenie wymiany na dysk obrotowy może również zwiększyć zużycie. Nowoczesne dyski SSD nie zużywają się znacznie szybciej niż dyski obrotowe.
gmatht