Lvm

從 fstab 刪除後的 Luks 分區掛載

  • September 23, 2014

我有 3 個加密分區,一個用於/,一個用於/home,一個用於swap.

輸入密碼 3 次對我來說似乎很愚蠢,所以我用加密驅動器上的交換文件替換了交換分區。但是,即使我從fstab中刪除了該條目,系統仍會在啟動時提示我輸入舊交換分區的密碼。

當我啟動時,作業系統會要求我輸入sda7_crypt我期望的密碼。但是,在那之後,它要求我輸入sda5_crypt. 如何禁用sda5_crypt

/etc/fstab:

/dev/mapper/sda7_crypt       /     ext4 errors=remount-ro 0 1
UUID=xxxxxxxxxxxxxxxxxxxxxxx /boot ext4 defaults 0 2
/dev/mapper/sdb5_crypt       /home ext4 defaults 0 2
/myswapfile                  swap  swap defaults 0 0

/etc/cryptsetup:

sda7_crypt UUID=xxxxxxxxxxxxxxxxxxxxx none luks,discard 
sdb5_crypt UUID=xxxxxxxxxxxxxxxxxxxxx /keyfile luks,discard


更新:在評論中回答問題的更多資訊:

系統:Ubuntu 14.04 64位桌面

/boot/grub/grub.cfg:

#
# 不要編輯這個文件
#
# 它是由 grub-mkconfig 使用模板自動生成的
# 來自 /etc/grub.d 和來自 /etc/default/grub 的設置
#

### 開始 /etc/grub.d/00_header ###
如果 [ -s $prefix/grubenv ]; 然後
設置 have_grubenv=true
載入環境
是
如果 [ "${next_entry}" ] ; 然後
設置預設值="${next_entry}"
設置下一個條目=
save_env next_entry
設置 boot_once=true
別的
設置預設=“0”
是

如果 [ x"${feature_menuentry_id}" = xy ]; 然後
menuentry_id_option="--id"
別的
menuentry_id_option=""
是

導出 menuentry_id_option

如果 [ "${prev_saved_entry}" ]; 然後
設置 saved_entry="${prev_saved_entry}"
save_env 保存的條目
設置 prev_saved_entry=
save_env prev_saved_entry
設置 boot_once=true
是

功能保存預設{
如果 [ -z "${boot_once}" ]; 然後
saved_entry="${chosen}"
save_env 保存的條目
是
}
函式記錄失敗{
設置記錄失敗=1
如果 [ -n "${have_grubenv}" ]; 那麼如果 [ -z "${boot_once}" ]; 然後 save_env 記錄失敗;菲; 菲
}
功能載入影片{
如果 [ x$feature_all_video_module = xy ]; 然後
insmod all_video
別的
insmod efi_gop
insmod efi_uga
insmod ieee1275_fb
insmod vbe
安裝vga
insmod video_bochs
insmod video_cirrus
是
}

如果載入字型 unicode ;然後
設置 gfxmode=auto
載入影片
insmod gfxterm
設置 locale_dir=$prefix/locale
設置 lang = en_US
insmod 獲取文本
是
終端輸出 gfxterm
如果 [ "${recordfail}" = 1 ] ; 然後
設置超時=-1
別的
如果 [ x$feature_timeout_style = xy ] ; 然後
設置 timeout_style=隱藏
設置超時=0
# 如果 timeout_style 特徵是備份隱藏超時程式碼
# 不可用。
elif 睡眠 -- 可中斷 0 ;然後
設置超時=0
是
是
### END /etc/grub.d/00_header ###

### 開始 /etc/grub.d/05_debian_theme ###
設置 menu_color_normal=白色/黑色
設置 menu_color_highlight=黑色/淺灰色
如果 background_color 44,0,30; 然後
清除
是
### END /etc/grub.d/05_debian_theme ###

### 開始 /etc/grub.d/10_linux ###
函式 gfxmode {
設置 gfxpayload="${1}"
如果 [ "${1}" = "保留" ]; 然後
設置 vt_handoff=vt.handoff=7
別的
設置 vt_handoff=
是
}
如果 [ "${recordfail}" != 1 ]; 然後
if [ -e ${prefix}/gfxblacklist.txt ]; 然後
如果硬體匹配 ${prefix}/gfxblacklist.txt 3; 然後
如果 [ ${匹配} = 0 ]; 然後
設置 linux_gfx_mode=keep
別的
設置 linux_gfx_mode=文本
是
別的
設置 linux_gfx_mode=文本
是
別的
設置 linux_gfx_mode=keep
是
別的
設置 linux_gfx_mode=文本
是
導出 linux_gfx_mode
menuentry 'Ubuntu' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-simple-c3444e01-a00a-4e4b-a73e-d213dc913a1e' {
記錄失敗
載入影片
gfxmode $linux_gfx_mode
insmod gzio
insmod part_msdos
insmod ext2
設置根='hd0,msdos6'
如果 [ x$feature_platform_search_hint = xy ]; 然後
搜尋 --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos6 --hint-efi=hd0,msdos6 --hint-baremetal=ahci0,msdos6 52381e81-2730-434f-93be -e8223c4aa95c
別的
搜尋 --no-floppy --fs-uuid --set=root 52381e81-2730-434f-93be-e8223c4aa95c
是
linux /vmlinuz-3.13.0-35-generic root=UUID=xxxxxxxxxxxxxxxxxxxxxxxx ro quiet splash $vt_handoff
initrd /initrd.img-3.13.0-35-generic
}
submenu 'Ubuntu 的高級選項' $menuentry_id_option 'gnulinux-advanced-c3444e01-a00a-4e4b-a73e-d213dc913a1e' {
menuentry 'Ubuntu,使用 Linux 3.13.0-35-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.13.0-35-generic-advanced-c3444e01-a00a -4e4b-a73e-d213dc913a1e' {
記錄失敗
載入影片
gfxmode $linux_gfx_mode
insmod gzio
insmod part_msdos
insmod ext2
設置根='hd0,msdos6'
如果 [ x$feature_platform_search_hint = xy ]; 然後
搜尋 --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos6 --hint-efi=hd0,msdos6 --hint-baremetal=ahci0,msdos6 52381e81-2730-434f-93be -e8223c4aa95c
別的
搜尋 --no-floppy --fs-uuid --set=root 52381e81-2730-434f-93be-e8223c4aa95c
是
echo '正在載入 Linux 3.13.0-35-generic ...'
linux /vmlinuz-3.13.0-35-generic root=UUID=xxxxxxxxxxxxxxxx ro quiet splash $vt_handoff
echo '正在載入初始 ramdisk ...'
initrd /initrd.img-3.13.0-35-generic
}
menuentry 'Ubuntu,使用 Linux 3.13.0-35-generic(恢復模式)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.13.0-35-generic-recovery -c3444e01-a00a-4e4b-a73e-d213dc913a1e' {
記錄失敗
載入影片
insmod gzio
insmod part_msdos
insmod ext2
設置根='hd0,msdos6'
如果 [ x$feature_platform_search_hint = xy ]; 然後
搜尋 --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos6 --hint-efi=hd0,msdos6 --hint-baremetal=ahci0,msdos6 52381e81-2730-434f-93be -e8223c4aa95c
別的
搜尋 --no-floppy --fs-uuid --set=root 52381e81-2730-434f-93be-e8223c4aa95c
是
echo '正在載入 Linux 3.13.0-35-generic ...'
linux /vmlinuz-3.13.0-35-generic root=UUID=c3444e01-a00a-4e4b-a73e-d213dc913a1e ro recovery nomodeset
echo '正在載入初始 ramdisk ...'
initrd /initrd.img-3.13.0-35-generic
}
menuentry 'Ubuntu,使用 Linux 3.13.0-34-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.13.0-34-generic-advanced-c3444e01-a00a -4e4b-a73e-d213dc913a1e' {
記錄失敗
載入影片
gfxmode $linux_gfx_mode
insmod gzio
insmod part_msdos
insmod ext2
設置根='hd0,msdos6'
如果 [ x$feature_platform_search_hint = xy ]; 然後
搜尋 --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos6 --hint-efi=hd0,msdos6 --hint-baremetal=ahci0,msdos6 52381e81-2730-434f-93be -e8223c4aa95c
別的
搜尋 --no-floppy --fs-uuid --set=root 52381e81-2730-434f-93be-e8223c4aa95c
是
echo '正在載入 Linux 3.13.0-34-generic ...'
linux /vmlinuz-3.13.0-34-generic root=UUID=xxxxxxxxxxxxxxxxx ro quiet splash $vt_handoff
echo '正在載入初始 ramdisk ...'
initrd /initrd.img-3.13.0-34-generic
}
menuentry 'Ubuntu,使用 Linux 3.13.0-34-generic(恢復模式)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.13.0-34-generic-recovery -c3444e01-a00a-4e4b-a73e-d213dc913a1e' {
記錄失敗
載入影片
insmod gzio
insmod part_msdos
insmod ext2
設置根='hd0,msdos6'
如果 [ x$feature_platform_search_hint = xy ]; 然後
搜尋 --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos6 --hint-efi=hd0,msdos6 --hint-baremetal=ahci0,msdos6 52381e81-2730-434f-93be -e8223c4aa95c
別的
搜尋 --no-floppy --fs-uuid --set=root 52381e81-2730-434f-93be-e8223c4aa95c
是
echo '正在載入 Linux 3.13.0-34-generic ...'
linux /vmlinuz-3.13.0-34-generic root=UUID=xxxxxxxxxxxxxxxxxxxxxxxxx ro recovery nomodeset
echo '正在載入初始 ramdisk ...'
initrd /initrd.img-3.13.0-34-generic
}
menuentry 'Ubuntu,使用 Linux 3.13.0-33-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.13.0-33-generic-advanced-c3444e01-a00a -4e4b-a73e-d213dc913a1e' {
記錄失敗
載入影片
gfxmode $linux_gfx_mode
insmod gzio
insmod part_msdos
insmod ext2
設置根='hd0,msdos6'
如果 [ x$feature_platform_search_hint = xy ]; 然後
搜尋 --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos6 --hint-efi=hd0,msdos6 --hint-baremetal=ahci0,msdos6 52381e81-2730-434f-93be -e8223c4aa95c
別的
搜尋 --no-floppy --fs-uuid --set=root 52381e81-2730-434f-93be-e8223c4aa95c
是
echo '正在載入 Linux 3.13.0-33-generic ...'
linux /vmlinuz-3.13.0-33-generic root=UUID=xxxxxxxxxxxxxxxxx ro quiet splash $vt_handoff
echo '正在載入初始 ramdisk ...'
initrd /initrd.img-3.13.0-33-generic
}
menuentry 'Ubuntu,使用 Linux 3.13.0-33-generic(恢復模式)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.13.0-33-generic-recovery -c3444e01-a00a-4e4b-a73e-d213dc913a1e' {
記錄失敗
載入影片
insmod gzio
insmod part_msdos
insmod ext2
設置根='hd0,msdos6'
如果 [ x$feature_platform_search_hint = xy ]; 然後
搜尋 --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos6 --hint-efi=hd0,msdos6 --hint-baremetal=ahci0,msdos6 52381e81-2730-434f-93be -e8223c4aa95c
別的
搜尋 --no-floppy --fs-uuid --set=root 52381e81-2730-434f-93be-e8223c4aa95c
是
echo '正在載入 Linux 3.13.0-33-generic ...'
linux /vmlinuz-3.13.0-33-generic root=UUID=xxxxxxxxxxxxxxxxxxx ro recovery nomodeset
echo '正在載入初始 ramdisk ...'
initrd /initrd.img-3.13.0-33-generic
}
menuentry 'Ubuntu,使用 Linux 3.13.0-32-generic' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.13.0-32-generic-advanced-c3444e01-a00a -4e4b-a73e-d213dc913a1e' {
記錄失敗
載入影片
gfxmode $linux_gfx_mode
insmod gzio
insmod part_msdos
insmod ext2
設置根='hd0,msdos6'
如果 [ x$feature_platform_search_hint = xy ]; 然後
搜尋 --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos6 --hint-efi=hd0,msdos6 --hint-baremetal=ahci0,msdos6 52381e81-2730-434f-93be -e8223c4aa95c
別的
搜尋 --no-floppy --fs-uuid --set=root 52381e81-2730-434f-93be-e8223c4aa95c
是
echo '正在載入 Linux 3.13.0-32-generic ...'
linux /vmlinuz-3.13.0-32-generic root=UUID=xxxxxxxxxxxxxxxxxxxxx ro quiet splash $vt_handoff
echo '正在載入初始 ramdisk ...'
initrd /initrd.img-3.13.0-32-generic
}
menuentry 'Ubuntu,使用 Linux 3.13.0-32-generic(恢復模式)' --class ubuntu --class gnu-linux --class gnu --class os $menuentry_id_option 'gnulinux-3.13.0-32-generic-recovery -c3444e01-a00a-4e4b-a73e-d213dc913a1e' {
記錄失敗
載入影片
insmod gzio
insmod part_msdos
insmod ext2
設置根='hd0,msdos6'
如果 [ x$feature_platform_search_hint = xy ]; 然後
搜尋 --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos6 --hint-efi=hd0,msdos6 --hint-baremetal=ahci0,msdos6 52381e81-2730-434f-93be -e8223c4aa95c
別的
搜尋 --no-floppy --fs-uuid --set=root 52381e81-2730-434f-93be-e8223c4aa95c
是
echo '正在載入 Linux 3.13.0-32-generic ...'
linux /vmlinuz-3.13.0-32-generic root=UUID=xxxxxxxxxxxxxxxxxxxxx ro recovery nomodeset
echo '正在載入初始 ramdisk ...'
initrd /initrd.img-3.13.0-32-generic
}
}

### END /etc/grub.d/10_linux ###

### 開始 /etc/grub.d/20_linux_xen ###

### END /etc/grub.d/20_linux_xen ###

### 開始 /etc/grub.d/20_memtest86+ ###
menuentry '記憶體測試(memtest86+)' {
insmod part_msdos
insmod ext2
設置根='hd0,msdos6'
如果 [ x$feature_platform_search_hint = xy ]; 然後
搜尋 --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos6 --hint-efi=hd0,msdos6 --hint-baremetal=ahci0,msdos6 52381e81-2730-434f-93be -e8223c4aa95c
別的
搜尋 --no-floppy --fs-uuid --set=root 52381e81-2730-434f-93be-e8223c4aa95c
是
knetbsd /memtest86+.elf
}
menuentry '記憶體測試(memtest86+,串列控制台 115200)' {
insmod part_msdos
insmod ext2
設置根='hd0,msdos6'
如果 [ x$feature_platform_search_hint = xy ]; 然後
搜尋 --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos6 --hint-efi=hd0,msdos6 --hint-baremetal=ahci0,msdos6 52381e81-2730-434f-93be -e8223c4aa95c
別的
搜尋 --no-floppy --fs-uuid --set=root 52381e81-2730-434f-93be-e8223c4aa95c
是
linux16 /memtest86+.bin 控制台=ttyS0,115200n8
}
### END /etc/grub.d/20_memtest86+ ###

### 開始 /etc/grub.d/30_os-prober ###
### END /etc/grub.d/30_os-prober ###

### 開始 /etc/grub.d/30_uefi-firmware ###
### END /etc/grub.d/30_uefi-firmware ###

### 開始 /etc/grub.d/40_custom ###
# 此文件提供了一種添加自定義菜單條目的簡單方法。只需鍵入
# 您要在此評論之後添加的菜單條目。注意不要改變
# 上面的 'exec tail' 行。
### END /etc/grub.d/40_custom ###

### 開始 /etc/grub.d/41_custom ###
如果 [ -f ${config_directory}/custom.cfg ]; 然後
源 ${config_directory}/custom.cfg
elif [ -z "${config_directory}" -a -f $prefix/custom.cfg ]; 然後
源 $prefix/custom.cfg;
是
### END /etc/grub.d/41_custom ###

/etc/default/grub

# 如果你改變了這個文件,之後執行'update-grub'來更新
# /boot/grub/grub.cfg.
# 有關此文件中選項的完整文件,請參閱:
# info -f grub -n '簡單配置'

GRUB_DEFAULT=0
GRUB_HIDDEN_TIMEOUT=0
GRUB_HIDDEN_TIMEOUT_QUIET=真
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || 迴聲Debian`
GRUB_CMDLINE_LINUX_DEFAULT="安靜的飛濺"
GRUB_CMDLINE_LINUX=""

# 取消註釋以啟用 BadRAM 過濾,修改以適合您的需要
# 這適用於 Linux(不需要更新檔)和任何獲得的核心
# 來自 GRUB 的記憶體映射資訊(GNU Mach,FreeBSD 核心 ...)
#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"

# 取消註釋以禁用圖形終端(僅限 grub-pc)
#GRUB_TERMINAL=控制台

# 圖形終端使用的解析度
# 請注意,您只能使用顯卡通過 VBE 支持的模式
# 你可以使用命令 `vbeinfo' 在真正的 GRUB 中看到它們
#GRUB_GFXMODE=640x480

# 如果您不希望 GRUB 將“root=UUID=xxx”參數傳遞給 Linux,請取消註釋
#GRUB_DISABLE_LINUX_UUID=true

# 取消註釋以禁用恢復模式菜單條目的生成
#GRUB_DISABLE_RECOVERY="真"

# 取消註釋以在 grub 啟動時發出嗶聲
#GRUB_INIT_TUNE="480 440 1"

加密卷在 中列出/etc/crypttab。您需要更新該文件,以刪除您不再希望安裝的捲。

完成此操作後,您需要通過執行重建 initramfs

sudo update-initramfs -u

如果你想在同一個磁碟上有三個加密分區,那麼你應該有一個加密捲而不是三個,並在其中創建分區(使用 LVM:使加密捲成為物理卷,創建一個包含該物理卷的捲組,並創建一個邏輯卷//home一個用於交換,一個用於交換)。Ubuntu 的啟動腳本不處理在卷之間共享密碼,儘管你可以調整它們來做到這一點;請參閱錯誤 #1022815

順便說一句,如果您不使用休眠,您可以為交換卷使用隨機密鑰(在每次啟動時生成)。

引用自:https://unix.stackexchange.com/questions/156514