再起動後にスワップが消えた


9

暗号化されたホームディレクトリを使用してKubuntu 14.04をインストールしました。インストール中にスワップをセットアップしましたが、インストール後にスワップ領域がありませんでした。これは多くの人に起こりました、どこかにバグがあるようです。私はググって、これの解決策をここに見つけました 。

私はインストールで無効になっているので、レジュームに関係するものを除いて、そこの手順に従いました。だから私は本質的にしました:

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 

その後、スワップが機能し、ラップトップを再起動してスクエアスクエアに戻るまで、満足していました。gpartedのパーティションを見ると、(以前の)スワップパーティションのファイルシステムが不明であることがわかります。言うまでもなく、利用可能なスワップスペースがありません。

だから、今私の質問です:ファイルシステムのフォーマット(linux-swapとして)が再起動に耐えられなかったのはなぜですか?それについて私にできることはありますか?

blkidを実行すると、スワップパーティションがまったく表示されないため、私の問題はこの質問とは異なるようです。

編集:まだ作業中なので、上記の手順をもう一度実行した後、/ etc / crypttabは次のようになります。

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

さらに、コメントアウトされているいくつかの行。また、/ etc / fstabには次の行が含まれています。

/dev/mapper/cryptswap1 none swap sw 0 0

ただし、両方の新しい行は、最後の2回生成されたものと(UUIDを除いて)まったく同じに見えます。だから私はそれが再起動したときに残ることを期待していません。Gpartedは、linux-swapとして使用しているパーティションを表示します。(再起動前)また、blkidは次の行を提供します。

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

私はスワップをテストして動作しました。つまり、大量のメモリを使用するプログラムを起動し、システムモニターでスワップにロードされた量を確認しました。

Edit2:3はこの問題を解決するマジックナンバーではないことが判明しました。2つのファイルの内容は変更されていません。blkidは/ dev / sda7の行を表示せず、gpartedはスワップパーティションを「不明」と表示します。

私が何を見ることができるか、または他に何を試すことができるかについての出力は、本当に歓迎されます。現時点での私の回避策は、単に再起動しないことですが、アップデートがある場合、ラップトップが本当に再起動したい場合があります。

Edit3:これを修正しようとする他に何も本当にありませんか?私が試すことができるコマンドはありますか?私が見ることができる出力はありますか?

回答:


8

これは再起動では発生しません。セットアップが完了したら(実行中ecryptfs-setup-swap)、戻ってgpartedテーブルをリロードし、ターミナルを開いて次のコマンドを実行しますsudo fdisk -l /dev/sda。そのパーティションにはまだId 83Linuxスワップがあり、不明なフォーマットになっています

何故ですか?!すでに暗号化パーティションになっています。

/etc/fstab

  • 古いスワップパーティションがコメントされました。
  • 新しくマップされたものを挿入:

    /dev/mapper/cryptswap1 none swap sw 0 0
    

これで結構です。

/etc/crypttab

  • スワップをマップするために追加された新しい行:

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

しかし、ここで何か問題があります。暗号化されたパーティションにはUUID(非暗号化)がありますか?!!!

  1. したがって、次の例のように、開発パスを直接設定します。

    cryptswap1 /dev/sdXX /dev/urandom swap,cipher=aes-cbc-essiv:sha256
    
  2. 再起動すると、スワップがオンになります。

ところで、これはバグとして報告されるべきです。ecryptfs-setup-swapuuidの代わりにデバイスパスを使用する必要があります。

更新:バグレポートも含めて、同じ答えの質問を見つけることができました。

offset=crypttabオプションにを追加することで、正規の回答が含まれています。


すみません、これに到達するのにとても時間がかかりました。私はバックアップについて少し偏執狂なので、最初にバックアップを作成したいと思いました...私はあなたが提案したことを試しました、一度再起動しました、スワップしない、再起動しました、スワップは機能しましたオフ、再起動、スワップなし、再起動、スワップなし...非常に奇妙です。最後の2回、起動中に/ dev / mapper / cryptswapの準備ができていないというメッセージも表示されました
fifaltra

悲しいことに、これは私にはうまくいきません、スワップはいくつかの再起動後も消えます。オフセットメソッドも機能しません
fifaltra

オフセット法とは、リンクされた質問への回答で説明されていること、およびバグレポートで説明されていることを意味します...
fifaltra

@fifaltra、おそらく別のバグですが、再現できるか、回避策を見つけられるかどうか試してみます。
user.dz

@fifaltra、sudo /etc/init.d/cryptdisks restartブート後に回避策が機能するため(10回の再起動で1回のスワップがありませんでした)。
user.dz

-2

あなたはターミナルからこれを試すことができます:

 sudo -i
 umount -a
 gedit /etc/fstab

次に、これを下部に入力します。

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

そして、これをターミナルに入力します:

 mount -a

次にgpartを使用して、スワップドライブをswap /に設定します。この方法でうまくいくかもしれません。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.