Zamiana zniknęła po ponownym uruchomieniu

9

Zainstalowałem Kubuntu 14.04 z zaszyfrowanym katalogiem domowym. Chociaż podczas instalacji skonfigurowałem wymianę, przestrzeni wymiany nie było po instalacji. To zdarzyło się wielu ludziom, wydaje się, że gdzieś jest błąd. Google i znaleźć rozwiązanie tego tutaj .

Postępowałem zgodnie z tymi instrukcjami, pomijając te, które miały związek z wznowieniem, ponieważ i tak jest ono wyłączone w mojej instalacji. Zasadniczo więc:

sudo swapoff -a (turns off swap)
comment existing swap configuration in /etc/crypttab
comment existing swap configuration in /etc/fstab
re-format swap partition with gparted as linux-swap
sudo mkswap /dev/sdXX 
sudo swapon /dev/sdXX 
sudo ecryptfs-setup-swap 

Potem miałem działającą zamianę i byłem szczęśliwy, dopóki nie uruchomiłem ponownie laptopa i nie wróciłem do punktu wyjścia. Patrząc na partycję z gparted, mówi, że system plików jest nieznany dla (poprzedniej) partycji wymiany i nie trzeba dodawać, że nie mam dostępnej przestrzeni wymiany.

Więc teraz moje pytanie brzmi: dlaczego formatowanie systemu plików (jako linux-swap) nie przetrwało restartu? Czy mogę coś z tym zrobić?

Jeśli wykonam blkid, partycja wymiany w ogóle się nie pojawi, więc mój problem wydaje się inny niż to pytanie .

Edycja: Nadal nad tym pracuję, więc powtórzyłem powyższą procedurę, po czym / etc / crypttab wygląda następująco:

cryptswap1 UUID=xxxx /dev/urandom swap,cipher=aes-cbc-essiv:sha256

plus niektóre wiersze, które zostały skomentowane. I / etc / fstab zawiera ten wiersz:

/dev/mapper/cryptswap1 none swap sw 0 0

Obie nowe linie wyglądają jednak dokładnie tak samo (oprócz UUID), jak te, które zostały wygenerowane dwa razy wcześniej. Więc nie mam wielkich nadziei, że pozostanie po ponownym uruchomieniu. Gparted pokazuje teraz partycję, której używam jako linux-swap. (Przed ponownym uruchomieniem) Również blkid podaje tę linię:

/dev/sda7: UUID="xxxx" TYPE="swap" 

Testowałem swap i działa, tzn. Uruchomiłem program, który zużywał dużo pamięci i sprawdzałem, ile jest załadowanych do wymiany na monitorze systemu.

Edycja2: Okazuje się, że 3 nie jest magiczną liczbą, która rozwiązuje ten problem. Zawartość tych dwóch plików pozostaje niezmieniona, blkid nie wyświetla już linii z / dev / sda7, a gparted pokazuje partycję wymiany jako „nieznaną”.

Wszelkie sugestie dotyczące wyników tego, na co mogłem spojrzeć lub co jeszcze mogłem spróbować, są naprawdę mile widziane. Obecnie moim obejściem jest po prostu nie restartowanie, ale czasami, gdy jest aktualizacja, mój laptop naprawdę chce się zrestartować.

Edycja3: Czy naprawdę nie można nic więcej naprawić? Jakieś polecenia, które mógłbym wypróbować? Jakie wyniki mogę obejrzeć?

fifaltra
źródło

Odpowiedzi:

8

To się nie dzieje podczas ponownego uruchamiania. Po zakończeniu konfiguracji (bieg ecryptfs-setup-swap), wróć do gpartedi odświeżyć tabelę i otworzyć i uruchomić terminala: sudo fdisk -l /dev/sda. Przekonasz się, że ta partycja nadal ma Id 83Linux Swap i stała się w Nieznanym formacie .

Dlaczego?! Stało się już zaszyfrowaną partycją.

W /etc/fstab:

  • Stara partycja wymiany została skomentowana.
  • Wstawiono nowy mapowany:

    /dev/mapper/cryptswap1 none swap sw 0 0
    

Jest okej.

W /etc/crypttab:

  • Dodano nową linię do mapowania zamiany:

    cryptswap1 UUID=xxxx /dev/urandom swap,cipher=aes-cbc-essiv:sha256
    

Ale coś tu jest nie tak, czy zaszyfrowana partycja ma UUID (nieszyfrowany)? !!!

  1. Więc ustaw ścieżkę dev bezpośrednio w tym przykładzie:

    cryptswap1 /dev/sdXX /dev/urandom swap,cipher=aes-cbc-essiv:sha256
    
  2. Uruchom ponownie, wtedy zamiana będzie włączona.

BTW, należy to zgłosić jako błąd. ecryptfs-setup-swappowinien używać ścieżki urządzenia zamiast UUID.

Aktualizacja: mogłem znaleźć to samo pytanie, które zawiera również raport o błędzie.

Zawiera odpowiedź kanoniczną poprzez dodanie offset=w opcjach crypttab.

user.dz
źródło
Przepraszam, że zajęło mi to tak dużo czasu, jestem trochę szalony z powodu tworzenia kopii zapasowych, więc najpierw chciałem zrobić kopię zapasową ... Próbowałem tego, co zasugerowałeś, zrestartowałem raz, bez zamiany, ponownie uruchomiłem ponownie, zamiana działała, odwróciła się wyłączone, uruchomione ponownie, bez zamiany, ponownie uruchomione ponownie, bez zamiany ... bardzo dziwne, ostatnie dwa razy pojawił się również komunikat podczas uruchamiania o / dev / mapper / cryptswap nie jest gotowy
fifaltra
niestety nie działa to dla mnie, zamiana nadal znika po kilku restartach. metoda offset również nie działa
fifaltra
a metodą offsetową mam na myśli to, co opisano w odpowiedzi na powiązane pytanie i co opisano w raporcie o błędzie ...
fifaltra
@fifaltra, Prawdopodobnie osobny błąd, ale postaram się go odtworzyć lub znaleźć rozwiązanie.
user.dz
@fifaltra, ponieważ obejście sudo /etc/init.d/cryptdisks restartdziała dla mnie po uruchomieniu (dostałem 1 brak zamiany w 10 ponownych uruchomieniach).
user.dz
-2

Możesz spróbować z terminalu:

 sudo -i
 umount -a
 gedit /etc/fstab

a następnie wpisz to na dole:

 uuid   name   mount  type
 xxxxx  swap   /       sw   sw   errors=noremount   0

a następnie wpisz to w terminalu:

 mount -a

a następnie użyj gpart i ustaw swap drive swap /. i może w ten sposób działać dobrze.

Michał
źródło