首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >密码设置:等待加密源设备/swapfile,fstab为空

密码设置:等待加密源设备/swapfile,fstab为空
EN

Ask Ubuntu用户
提问于 2020-06-29 13:04:19
回答 1查看 3.3K关注 0票数 7

在引导屏幕上,我得到消息:

代码语言:javascript
复制
cryptsetup: waiting for encrypted source device /swapfile...

这样我就会被吊上大约2分钟

代码语言:javascript
复制
Initramfs unpacking failed: Decoding failed.

然后我被扔到Initramfs。

这是在Ubuntu20.04上有一个加密的主文件夹。为了安装cuda-10,我切换回nouveau驱动程序后出错了(它在抱怨nvidia驱动程序已经在使用了)。

其他建议包括使用/etc/crypttab进行一些操作,但我的系统中不存在该文件。cat /etc/fstab还显示了一个空文件。有些人认为,在这种情况下,它将使用默认设置,但如果是的话,它如何知道应该使用哪个磁盘作为交换空间?或者我能用一个活生生的usb做点什么?

挂载的输出是

代码语言:javascript
复制
none on / type rootfs (rw)
sysfs on /sys type sysfs (rw,nosuid, nodev, noexec, relatime)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
udev on /dev type devtmpfs (rw,nosuid, noexec,relatime,size=32840428k,nr_inodes=8210107,mode=755)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
tmpfs on/run type tmpfs (rw,nosuid,nodev,noexec,relatime,size=6583428k,mode=755)

lsblk返回一个未找到的错误(这是在红外线中,因此可能无法工作)

在life上将sdc1安装在/mnt上时,我可以得到以下结果:cat /mnt/etc/fstab看起来像

代码语言:javascript
复制
# /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).
#
#                
# / was on /dev/sdc1 during installation
UUID=5df229c0-be7c-43d7-b616-67ec15e2a6d3 /               ext4    errors=remount-ro 0       1
# /boot/efi was on /dev/nvme0n1p2 during installation
UUID=D23D-B0F6  /boot/efi       vfat    umask=0077      0       1
#/swapfile none            swap    sw              0       0
/dev/mapper/cryptswap1 none swap sw 0 0

。cat /mnt/etc/密码b

看起来像

代码语言:javascript
复制
#         
cryptswap1 /swapfile /dev/urandom swap,offset=1024,cipher=aes-xts-plain64

lsblk -o name, type, uuid, label看起来就像

代码语言:javascript
复制
NAME        TYPE UUID                                 LABEL
loop0       loop                                      
loop1       loop                                      
loop2       loop                                      
loop3       loop                                      
loop4       loop                                      
loop5       loop                                      
sda         disk                                      
└─sda1      part 8C45-E3AC                            UBUNTU 20_0
sdb         disk                                      
├─sdb1      part                                      
└─sdb2      part                                      
sdc         disk                                      
└─sdc1      part 5df229c0-be7c-43d7-b616-67ec15e2a6d3 
nvme0n1     disk                                      
├─nvme0n1p1 part 60FC3C5FFC3C3220                     Recovery
├─nvme0n1p2 part D23D-B0F6                            
├─nvme0n1p3 part                                      
└─nvme0n1p4 part                                      
EN

回答 1

Ask Ubuntu用户

回答已采纳

发布于 2020-07-08 09:26:10

如果我没有错过任何东西,你的配置似乎一切都很好。但是,在禁用/swap文件加密的同时重新生成initramfs可能会有所帮助。

使用活动Ubuntu磁盘启动系统。安装这两个分区:

代码语言:javascript
复制
$ sudo mount /dev/sdc1 /mnt
$ sudo mount /dev/nvme0n1p2 /mnt/boot/efi

打开/mnt/etc/fstab并注释这一行(在开头添加一个#):

代码语言:javascript
复制
/dev/mapper/cryptswap1 none swap sw 0 0

打开/mnt/etc/crypttab并注释这一行(在开头添加一个#):

代码语言:javascript
复制
cryptswap1 /swapfile /dev/urandom swap,offset=1024,cipher=aes-xts-plain64

现在,我们必须将initramfs重新生成到系统中:

代码语言:javascript
复制
$ sudo mount --bind /dev /mnt/dev
$ sudo chroot /mnt
# mount --type proc none /proc
# mount --type sysfs none /sys
# update-initramfs -k all -c

一切都结束了。退出chroot环境:

代码语言:javascript
复制
# exit

卸载已安装的分区并重新启动:

代码语言:javascript
复制
$ sudo umount -R /mnt
$ sudo reboot

现在,您在/swap上丢失了加密。不过,我觉得你一开始就不想要。您可以在不编辑/etc/fstab/etc/crypttab的情况下尝试这些说明。这也可能管用。

票数 3
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/1254772

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档