Bugün aynı hatayı Ubuntu 15.10 çalıştıran ve her zaman güncel kaldığım ama güncel bir çekirdeği test etmek istemeden (yani, yeni bir değişiklik olmuş olabilir) bir ay boyunca yeniden başlatılmadığım bir dizüstü bilgisayarda gördüm.
Her neyse, benim durumumda altta yatan nedenin yukarıdaki dersi takip ederken bir kurulum arızası nedeniyle aslında "eksik" bir takas bölümü olduğunu buldum. Bu durumda ve / veya gerçekten kullanıyorsanız lvm
, aşağıdaki 2. adımı atlayabilirsiniz. Elbette, sisteminizin (veya ikincil verilerin) bölümünün hasar görmüş olması veya bulunamaması durumunda da yukarıdaki hata mesajını görebilirsiniz (bkz. Adım 3).
Adım 1: Yukarıda belirtilen eğiticiyi izleyerek sisteminizi, önyükleme bölümlerini takın
Diyelim ki (ext2) önyükleme bölümünüz / dev / sdX1’dir, (şifreli) takas bölümünüz / dev / sdX2’dir, (şifreli) veri bölümünüz / dev / sdX3'tür ve kullandıktan cryptsetup luksOpen /dev/sdX3 data
sonra şifreyi başarıyla çözdünüz. o: mkdir /tmp/data; mount /dev/mapper/data /tmp/data
.
Öğreticideki bağlama başlıklarına dikkat edin ve / dev / sdX1'i bağladığınızdan emin olun, böylece sistem bölümünüzün / önyükleme dizininden erişebilirsiniz (bu bizim yürütmemiz için çok önemlidir update-initramfs
).
Aşağıda, başarılı bir şekilde yürüttüğünüzü varsayıyoruz chroot /tmp/data/@ubuntu1510
(veya takılı sistem bölümünüzün adı ne olursa olsun)
Adım 2: Yukarıdaki hata mesajından kurtulun
Btrfs kullanıyorum (söz konusu alt hacim adından da tahmin edebileceğiniz gibi), böylece lvmetad işlevsellik kaybı olmadan kolayca aşağıdaki şekilde devre dışı bırakılabilir:
- düzenlemek /etc/lvm/lvm.conf ve değişim
use_lvmetad=1
içinuse_lvmetad=0
- gerçekleştirmek
update-initramfs -k $(uname -r) -u ; sync
Şimdi, olabilir yeniden başlatın ve hata mesajı gitmiş olmalıdır. Ancak benim durumumda, bir sonraki hata mesajı [1] beni yukarıda belirtilen sorunun altını çizdi, öyleyse biz ...
Adım 3: / etc / crypttab öğesinin doğru, hasarsız bölümlere işaret ettiğinden emin olun
Birincisi, çalışma sfdisk --list /dev/sdX
şifrelenmiş swap bölümü (benim durumumda, / dev / sdX2) aslında olmadığını ve çek değil bir (normal) takas alanı olarak görünür. Eğer öyleyse (benim durumumda olduğu gibi), bu, örneğin bir kurtarma diski kullanmakla önyüklemenin muhtemelen mevcut takas bölümünden faydalanacağı ve böylece şifreleme ayarınızla ilgili meta verilerin (anahtar sözcük ve UUID) üzerine yazacağı anlamına geliyordu.
Daha sonra, / dev / disk / by-uuid'e bir göz atın ve şifreli bölümlerinizin UUID'lerini / etc / crypttab içinde bulunanlarla karşılaştırın. Bu noktada benim tahminim: Senin durumunda, bir uyuşmazlık var.
Tahsis edilmiş şifreli takas bölümü / dev / disk / by-uuid altında hiçbir yerde bulunmuyorsa, bunun nedeni şu anda kurtarma sisteminiz tarafından kullanılıyor. Bu durumda, aşağıdakileri yapın:
- bölümü kullanmayı bıraktığınızdan emin olun:
swapoff -a
- yeniden biçimlendirin:
mkfs.ext2 /dev/sdX2
(bu özellikle GPT bölümlerini [2] kullanırken, daha önce bahsettiğim aksaklığı ortadan kaldırdığı için çok önemlidir . Sfdisk listesinde "takas" türü olarak görünen bölümün olası nedeni, sizin / benim yanlışlıkla kullanmış olmanızdır. mkswap /dev/sdX2
bölümü başlangıçta ayarlarken
- bölümü şifrelemek ve bir parola belirlemek için öğreticiyi izleyin; daha sonra cryptsetup kullanarak açın ve şifresi çözülmüş bölümü yeniden biçimlendirin (benzeri bir şey kullanarak
mkswap /dev/mapper/swap
)
sfdisk --list /dev/sdX
takas bölümünü bu şekilde tanımlamayacağından emin olun (bu durumda, son adımları tekrarlayın)
Şimdi, / etc / crypttab içinde listelenen UUID'lerin, şifrelenmiş bölümleriniz için / dev / disk / by-uid altında gördüğünüze uygun olduğunu tekrar kontrol edin.
Yine, değişiklikleri kalıcı kılmak için update-initramfs
yukarıda gösterildiği gibi uygulamanız gerekir .
Memnunsanız, her şeyin diske yazıldığından ve sistemi yeniden başlattığınızdan emin olun (her şeyi elle çıkarmanıza gerek yoktur). Daha sonra, sorununuz giderilmelidir.
[1] belki ilk defa dikkat etmedim ya da ilk hata mesajı ikincisini "maskeledi"; yani, yeniden başlattıktan sonra (birlikte use_lvmetad=0
), " Tüm fiziksel sesleri okumak. Bu biraz zaman alabilir ... " (ardından birkaç kez tekrarlandı), ardından " ALERT! / dev / disk / by-uuid / .. " yok. " ( update-initramfs
Kayıp bir bölümden de şikayetçi olduğu belirtilmelidir .)
[2] türlerinin içeriklerini analiz etmekten mahrum olduğu ve sonuçta bir bayrak / bayt tarafından belirtilmediği için (bu nedenle, kullanarak GPT dosya sistemi türünü değiştirmenin kolay bir yolu yoktur [g]parted
.)