新硬件 - 系统不再启动 - 如何重置 systemd/udev?

Alb*_*ert 3 boot networking udev systemd

我有 Ubuntu 16.04。我刚刚更换了硬件(新主板、新 CPU、新 GPU、新 RAM、新网卡、新 SATA 控制器),现在 Ubuntu 无法启动了。过了一会儿,我进入了紧急外壳,似乎我可以完全访问那里的系统。我能够手动设置网络(ifconfig en5ps0 up; dhclient en5ps0<-它想出的非常奇怪的接口名称)。查看日志 ( journalctl -xb) 时,似乎在等待某个不再找到的磁盘时超时。

一些可能相关的日志消息:

...
systemd: Received SIGRTMIN+21 from PID 2816 (plymouthd).
...
root: /etc/dhcp/dhclient-enter-hooks.d/avahi-autoipd returned non-zero exit status 1
...
root: /etc/dhcp/dhclient-enter-hooks.d/samba returned non-zero exit status 1
...
systemd: Received SIGRTMIN+20 from PID 3100 (plymouthd).
...
systemd: dev-disk-by\x2duuid-....device: Job dev-disk-by\x2duuid-...device/start timed out.
systemd: Timed out waiting for device dev-disk-by\x2duuid-....device.
-- Subject: Unit dev-disk-by...device has failed
...
-- The result is timeout.
systemd: Dependency failed for File System Check on /dev/disk/by-uuid/....
...
systemd: Dependency failed for /mnt/....
...
systemd: Dependency failed for Local File Systems.
...
Run Code Online (Sandbox Code Playgroud)

/etc/fstab

root@gcomputer:~# cat /etc/fstab 
# /etc/fstab: static file system information.
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>
proc            /proc           proc    defaults        0       0

#/dev/sdb1: UUID="56fc92d2-1903-4263-b88e-d09bc15ef1d3" TYPE="ext4"
#/dev/sdb2: UUID="f9b799de-c564-4e00-9924-4e8a0ffe8d51" TYPE="swap"

# new SSD (OCZ-VERTEX2_OCZ-K5Q40019666QDZLM)
UUID=56fc92d2-1903-4263-b88e-d09bc15ef1d3 /               ext4    discard,noatime,user_xattr,acl,relatime,errors=remount-ro 0       1

# /dev/sdb5:
# UUID=78ca7a27-6fcc-493c-a10a-5ed961a682e5 none            swap    discard,sw              0       0


/dev/scd0       /media/cdrom0   udf,iso9660 user,noauto,exec,utf8 0       0

# very old Gentoo (ST380011A_5JVHHAX0)
UUID=64f30a2f-1c38-40e8-8ab2-7f639b9c3673   /mnt/gentooroot reiserfs    user_xattr,acl  0 1
UUID=a448006c-43df-4fbe-be3d-18da22b4e29c   /mnt/gentooroot/home    reiserfs    user_xattr,acl  0 1

# oldroot (WDC_WD5000AACS-00G8B1_WD-WCAUK0065639)
UUID=2474adbe-ca12-4ad1-bea1-1938fdb1c8a4   /mnt/oldroot            ext3    noatime,user_xattr,acl,relatime,errors=remount-ro 0       1
Run Code Online (Sandbox Code Playgroud)

blkid

root@gcomputer:~# blkid
/dev/sda1: UUID="56fc92d2-1903-4263-b88e-d09bc15ef1d3" TYPE="ext4" PTTYPE="dos" PARTUUID="2db0af09-01"
/dev/sda2: UUID="f9b799de-c564-4e00-9924-4e8a0ffe8d51" TYPE="swap" PARTUUID="2db0af09-02"
/dev/sdb1: UUID="2474adbe-ca12-4ad1-bea1-1938fdb1c8a4" SEC_TYPE="ext2" TYPE="ext3" PARTUUID="00039d20-01"
/dev/sdb5: UUID="78ca7a27-6fcc-493c-a10a-5ed961a682e5" TYPE="swap" PARTUUID="00039d20-05"
Run Code Online (Sandbox Code Playgroud)

那么,我该如何解决这个问题?为什么它甚至等待磁盘?包括 home 和它需要的一切的根文件系统已经可用。

我是否需要告诉 udev 或 systemd 或其他任何东西重新扫描新硬件或新磁盘 ID 等?为什么它不自动执行?

我将如何进一步调试?

hey*_*ema 5

  1. 匹配 UUID 的...

terminal...

  • sudo cp /etc/fstab /etc/fstab.bak # 做一个备份
  • sudo blkid
  • sudo cat /etc/fstab

对于 blkid 的每一行输出,将其与 /etc/fstab 中任何未注释的行进行比较,并确保 UUID 与相应的 /dev/sdxx 匹配。

  1. 两个交换分区,并且 /etc/fstab 中没有交换定义...

sda2 和 sdb5 都是交换分区。你只需要一个。删除 /dev/sda2 并取消注释 /etc/fstab 中的 sdb5 行gksudo gedit /etc/fstab

  1. 未使用的磁盘...

注释掉下面显示的行,用gksudo gedit /etc/fstab...

任何 NTFS 挂载

/dev/scd0 /media/cdrom0 udf,iso9660 用户,noauto,exec,utf8 0 0

UUID=64f30a2f-1c38-40e8-8ab2-7f639b9c3673 /mnt/gentooroot reiserfs user_xattr,acl 0 1

UUID=a448006c-43df-4fbe-be3d-18da22b4e29c /mnt/gentooroot/home reiserfs user_xattr,acl 0 1