एक एन्क्रिप्टेड फुल-सिस्टम पार्टीशन को नाम बदलने के लिए कैसे मैप किया जाता है


18

मेरे प्रणाली पूरी तरह से एन्क्रिप्ट किया गया है dm-cryptऔर LVM। मैंने हाल ही में से एन्क्रिप्टेड पार्टीशन को स्थानांतरित कर /dev/sda5दिया है /dev/sda2

मेरा प्रश्न है: मैं नाम एन्क्रिप्टेड विभाजन से करने के लिए मैप किया गया है कि कैसे बदल सकते हैं sda5_cryptकरने के लिए sda2_crypt?

मैं सिस्टम को ठीक से बूट कर सकता हूं। लेकिन बूट समय पर मुझे जो संकेत मिलता है वह कहता है कि (sda5_crypt)हालांकि UUIDनक्शे /dev/sda2:

  Volume group "vg" not found
  Skipping volume group vg
Unlocking the disk /dev/.../UUID  (sda5_crypt)
Enter passphrase:

मैंने लाइव-बूट, डिक्रिप्ट sda2, एक्टिवेट vg, chrootटू /dev/vg/rootऔर रन करने की कोशिश की update-grub2लेकिन कोई फायदा नहीं हुआ।

केवल संपादन /etc/crypttabकार्य नहीं करता है।


क्या आपने संपादन के बाद initrd को फिर से बनाया है /etc/crypttab?
हौके लागिंग

मुझे ऐसा लगता है:update-initramfs -t -u -k all
nr

का आउटपुट grep -r sda5_crypt /etc?
हौके लैजिंग

मिले मुद्दा: मैं माउंट चाहिए /dev/sda1के रूप में /boot पहले से चल रहा है update-initramfs
एनआर

एक टिप्पणी के बजाय एक उत्तर दें और इसे स्वीकार करें (यदि यह स्वयं के उत्तर के साथ संभव है, तो मुझे यकीन नहीं है) ताकि यह प्रश्न उत्तर के रूप में दिखाया जाए।
हौके लैजिंग

जवाबों:


22

नीचे दिए गए सुझाव के अनुसार "sda5_crypt" क्रिप्टैब परिवर्तन:

बदलें OLD_NAMEसाथ NEW_NAMEमें /etc/crypttab, और उसके बाद:

# dmsetup rename OLD_NAME NEW_NAME
# update-initramfs -c -t -k all
# update-grub
# reboot

2
बचाव जरूरी नहीं होना चाहिए। बस क्रिप्टैब को एडिट करें, अपडेट करें, और अगली बार जब आप बूट करें तो उसका नाम बदला जाए। आप इसका उपयोग करके रनिंग सिस्टम में भी नाम बदल सकते हैं dmsetup rename oldname newname। ध्यान दें कि यह पुराने नाम को मुक्त नहीं करता है, क्योंकि यह उपयोग में हो सकता है।
ठंढकुट्ज़

@frostschutz आपको /etc/crypttabकिसी भी तरह से उस फ़ाइल को प्राप्त करने में सक्षम होना चाहिए … initramfs शेल से मैन्युअल रूप से माउंट करना ताकि आप बूट कर सकें सामान्य सिस्टम संभव है, लेकिन आसान नहीं है। यदि आप आंतरिक रूप से cryptsetupऔर LVM कमांड से परिचित नहीं हैं तो एक बचाव प्रणाली तेज विकल्प है ।
गिल्स एसओ- बुराई को रोकें '

1
@ गिल्स: यकीन है, लेकिन कहा गया सवाल "मैं सिस्टम को ठीक से बूट कर सकता हूं।"
ठंढकुट्ज़

आपने अभी-अभी मुझे एक बड़ा सिरदर्द बचाया @nr थैंक्यू
deitch

यह सही तरीका है, लेकिन कुछ और विवरणों पर ध्यान दिया जाना चाहिए: 1) /etc/fstabइन आदेशों से पहले अपडेट करना न भूलें , या आप रूट विभाजन माउंट नहीं करेंगे। 2) आप इस पर एक त्रुटि प्राप्त update-grubकर सकते हैं कि यह पिछला नाम नहीं खोज सकता है। मान लें कि आप केवल क्रिप्ट नाम का नाम बदल रहे हैं, तो update-grubआप बूट करने के बाद त्रुटि, रिबूट और रन को अनदेखा कर सकते हैं ।
मम्मट

0

मैं अभी इस मुद्दे पर आया था - अतिरिक्त जटिलता के साथ जो मैंने आखिरी की चेतावनी नहीं देखी है update-initramfs। इसलिए मैंने डिवाइस को फिर से नाम दिया crypttab, दौड़ा update-initramfs, फिर से शुरू किया और एक समस्या थी। मैंने इसे निम्नानुसार हल किया, मूल रूप से एक ही एनआर लेकिन मुझे कमांड को थोड़ा बदलना पड़ा:

  1. USB से एक लाइव (K) Ubuntu सिस्टम बूट करें
  2. डॉल्फिन / में डिवाइस खोलें? जो सभी आवश्यक कॉन्फ़िगरेशन को सेटअप करता है और आपसे आपका पासवर्ड पूछता है
  3. अपने टूटे सिस्टम के रूट डायरेक्टरी में कंसोल खोलें
  4. निम्नलिखित लाइन को लाइन से निष्पादित करें
sudo -s
# get the name the partition was mounted with, starts with luks
dmsetup ls
# rename the loop device (check with ls /dev/mapper)
dmsetup rename LUKS_NAME NEW_NAME

# prepare chroot
mount --bind /dev dev/
mount --bind /proc proc/
mount --bind /sys sys/
chroot .

# mount devices (I missed this first, you need both)
mount boot
mount /

# ready to update
update-initramfs -u -k all
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.