即使尝试了各种选项后,消息 /dev/mapper/cryptswap1 的磁盘驱动器仍未准备好或不存在

即使尝试了各种选项后,消息 /dev/mapper/cryptswap1 的磁盘驱动器仍未准备好或不存在

我已尝试过这里的建议: 弱小的怪人包括最后的修订。这里 问库本图包括 14.04 的建议

我在旧系统上运行 Xubuntu 14.04。我刚刚升级了内存。

但这些都不起作用。我知道这个问题之前已经有人问过了,但因为没有一个答案适合我的情况,请理解我为什么要发布这个经常被问到的问题。

我可以使用交换,但重新启动时它似乎被忽略了,我又没有交换了。我修改了 /etc/fstab 和 /etc/cryptab 以及 /etc/initramfs-tools/conf.d/resume,但什么也没起作用。

$free -m

节目

             total       used       free     shared    buffers     cached
Mem:          2015        364       1651         10         65        145
 -/+ buffers/cache:        153       1862
Swap:            0          0          0

$sudo fdisk -l

节目

    Disk /dev/sdc: 123.5 GB, 123522416640 bytes
    255 heads, 63 sectors/track, 15017 cylinders, total 241254720 sectors
    Units = sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x0003e24c

       Device Boot      Start         End      Blocks   Id  System
    /dev/sdc1            2048   241254399   120626176   83  Linux

    Disk /dev/sdb: 60.0 GB, 60022480896 bytes
    255 heads, 63 sectors/track, 7297 cylinders, total 117231408 sectors
    Units = sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x32ae6f1f

       Device Boot      Start         End      Blocks   Id  System
    /dev/sdb1            2048     6146047     3072000   82  Linux swap / Solaris
    /dev/sdb2   *     6148096   117229567    55540736   83  Linux

    Disk /dev/sda: 1000.2 GB, 1000170586112 bytes
    255 heads, 63 sectors/track, 121597 cylinders, total 1953458176 sectors
    Units = sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x6bd593d7

       Device Boot      Start         End      Blocks   Id  System
    /dev/sda1   *        2048  1953458175   976728064    7  HPFS/NTFS/exFAT

    Disk /dev/mapper/cryptswap1: 3145 MB, 3145728000 bytes
    255 heads, 63 sectors/track, 382 cylinders, total 6144000 sectors
    Units = sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disk identifier: 0x6c9ef990

$cat /etc/fstab

节目

# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
# / was on /dev/sdb2 during installation
UUID=d18d8971-e86c-4c2c-8396-27e175e1a9f3 /               ext4    errors=remount-ro 0       1
# /home was on /dev/sdc1 during installation
UUID=91934cf2-27b3-4db7-9f24-0ce5bb9d0d6c /home           ext4    defaults        0       2
# swap was on /dev/sdb1 during installation
UUID=c3e7afb4-7fd8-4d1d-b270-c4097493dfa4 none            swap    sw              0       0
/dev/fd0        /media/floppy0  auto    rw,user,noauto,exec,utf8 0       0
#/dev/mapper/cryptswap1 none swap sw 0 0
# the external usb backup drive
UUID="3b8e6317-6d88-4e18-a2ac-99129ce00414" /mnt/Ext_HD_1TB     ext4    defaults 0      2
#/dev/mapper/cryptswap1 none swap sw 0 0
#/dev/mapper/cryptswap1 none swap sw 0 0

$sudo blkid -o full -s UUID

节目

/dev/sdc1: UUID="91934cf2-27b3-4db7-9f24-0ce5bb9d0d6c" 
/dev/sdb1: UUID="f0eea40e-af3f-4eee-9b82-9c17a557e2ef" 
/dev/sdb2: UUID="d18d8971-e86c-4c2c-8396-27e175e1a9f3" 
/dev/sda1: UUID="3b8e6317-6d88-4e18-a2ac-99129ce00414"

除了接受次优系统之外,我不知道该做什么。

答案1

在我的案例中,问题在于我的主目录已加密,但交换目录未加密。大多数修复此问题的示例都是针对交换目录已加密的情况。为了使其正常工作,我遵循了此处提供的步骤问库本图除了我没有加密交换。即以下更改:

注释掉所有对 的引用/dev/mapper/cryptswap...或任何在 中命名的交换驱动器/etc/fstab

并且不执行加密交换的最后一步:

sudo ecryptfs-setup-swap

重启后我没有得到驱动器不存在错误。在启动期间要小心,因为分区名称 /dev/sdXX 经常在启动会话之间更改,并且不要假设 swap 仍使用相同的名称。这让我不得不将后置驱动器格式化为 linux-swap,因为驱动器名称更改为以前的交换分区。始终使用类似的东西检查sudo fdisk -l交换分区的名称。

答案2

以下是对我有用的方法。

我也按照您原始链接中的说明进行操作: 如何处理“/dev/mapper/cryptswap1 的磁盘驱动器尚未准备好或不存在”?

然后我偶然在其他地方发现了一条评论,说交换分区的 UUID 可以在重新启动之间更改。因此,打开 /etc/crypttab,我用分区名称替换了长 UUID 字符串,这对我来说一直是一致的:

cryptswap1 /dev/sda3 /dev/urandom noauto,swap,offset=8,cipher=aes-cbc-essiv:sha256

然后我再次运行了这个小数字:

sudo update-initramfs -u

重启后,它终于工作了!也许它最终会随机停止工作,但考虑到我还没有找到其他适合我的解决方案,我对此感到满意。

相关内容