Cryptsetup 已经运行了几个月,但是今天我在系统上做的一些事情让它挂起了:
# cryptsetup --debug --verbose luksOpen /dev/sdb home --key-file=/home.key --verbose
...
Key slot 1 unlocked.
...
# Udev cookie 0xd4d949a (semid 32768) decremented to 1
# Udev cookie 0xd4d949a (semid 32768) waiting for zero
另外,当我这样做时lsblk -f
,我曾经获得所有设备(包括sdb
)的 UUID,但现在我只获得 rootfs 的 UUID 和 FSTYPE(列出了其他每个设备,但 FSTYPE、LABEL 和 UUID 为空)。blkid
但是确实显示了所有设备的 UUID。
我也没有看到任何网络设备 -eth0
并且wlp4s0
缺少ip link
和ifconfig
。
当我从原始实时 USB 启动时,一切都运行正常 - 我可以挂载所有分区、连接到 WiFi 并arch-chroot
进入损坏的系统。执行此操作后,我pacman -Syuu
卸载了今天安装的所有软件包(f2fs-tools
、、 ) exfat-utils
,fuse-exfat
并使用更新了我的 initramfs mkinitcpio -p linux
。
答案1
我的愚蠢.bash_history
:
#1448399392
chroot rootfs /bin/bash -x <<'EOF'
ln -s /dev/null /etc/systemd/system/systemd-udevd.service
ln -s /dev/null /etc/systemd/system/systemd-udevd-control.socket
ln -s /dev/null /etc/systemd/system/systemd-udevd-kernel.socket
ln -s /dev/null /etc/systemd/system/proc-sys-fs-binfmt_misc.automount
exit
EOF
删除了可怕的符号链接,现在一切都好了。我意外地在主系统上运行了上述链接,而不是在 LXC 容器内运行。(https://wiki.archlinux.org/index.php/Linux_Containers#Systemd_conflicts_in_the_.2Fdev_tree)
答案2
Udev cookie ... waiting for zero
当下列任一情况成立时,也会发生这种情况:
- 您的发行版缺少该
/lib/udev/rules.d/${NUMBER}-dm.rules
文件,该文件至少在 Ubuntu 15.10 Wily 中${NUMBER}
存在。(55
细节) udev
需要从sudo service udev start
udev
正在运行,但需要重新启动sudo service udev restart
(因为你以某种方式改变了系统的挂载卷的状态,而 Udev 需要重置其状态)