出现 cannot open access to console, the root a... 问题的解决方法总结
Tofloor
poster avatar
摇摆哥
deepin
2018-09-22 00:28
Author
每次开机都出现cannot open access to console, the root a... 的问题, 从目前来看, 主要是因为磁盘分区挂载超时导致的(为了保险, 还是去查查启动日志, 搜索 timeout 的字样, 如果发现确实是因为磁盘挂载超时的话, 下面的方法才有效)。目前市面上主要是两种方法。

1. 在 /etc/fstab 中的磁盘参数中加入 x-systemd.device-timeout= 的参数, 一般设置成 60s。 该方法也确实解决了该问题, 但是启动用时呢要稍微久一点。

2. 采用 systemd 配置一个服务文件, 提前挂载磁盘分区。 该方法, 是比较好的方法, 但是在搜索到的详细步骤不是很全, 因此不容易实现。 现在主要就是说一说该方法的具体步骤。


第一步是先创建一个service文件,目录是/etc/systemd/system,名称随意,比如mount-data-partition.service,内容如下:

  1. [Unit]
  2. Description=Mount Data Partition
  3. DefaultDependencies=no

  4. [Service]
  5. Type=oneshot
  6. RemainAfterExit=yes
  7. ExecStart=/bin/mount -a      #这个地方是大神的,你可以修改为/bin/mount -a
Copy the Code


第二步修改 systemd-udev-trigger.service (论坛上说是在/usr/lib/systemd/system/下), 其实不然, 它是在 /lib/systemd/system/ 下。(别在/usr/lib/systemd/system/ 建立这个文件, 这是没有效果的。) 在 Wants 项目中加入 mount-data-partition.service 就是我们刚刚建立的文件。

  1. [Unit]
  2. Description=udev Coldplug all Devices
  3. Documentation=man:udev(7) man:systemd-udevd.service(8)
  4. DefaultDependencies=no
  5. Wants=systemd-udevd.service mount-data-partition.service
  6. After=systemd-udevd-kernel.socket systemd-udevd-control.socket
  7. Before=sysinit.target
  8. ConditionCapability=CAP_MKNOD

  9. [Service]
  10. Type=oneshot
  11. RemainAfterExit=yes
  12. ExecStart=/usr/bin/udevadm trigger --type=subsystems --action=add ; /usr/bin/udevadm trigger
Copy the Code


两种方法, 效果都差不多, 如果要比较的话, 第二种启动稍微要快一点点, 但是都没有 出现了该问题直接敲 回车 来的快。


Reply Favorite View the author
All Replies
avatar
150******77
deepin
2018-09-22 09:38
#1
我更新9.21号版本后也是出现这个问题,看了日志/var/log/boot.log
Failed to start File System Check on /dev/sda7.
See 'systemctl status systemd-fsck@dev-sda7.service' for details.
我到/etc/fastab里注释掉那个sda7引用后可以进入系统了,最终使用第二种方案解决.我感觉应该是更新了啥导致的
Reply View the author
avatar
摇摆哥
deepin
2018-09-22 11:09
#2
本帖最后由 supermew 于 2018-9-22 10:15 编辑
https://bbs.deepin.org/post/169136
我更新9.21号版本后也是出现这个问题,看了日志/var/log/boot.log
Failed to start File System Check on / ...

你这种, 可能因为 /dev/sda7 可能有一定损害, 分区挂载超时。。你最好到 live-cd 采用 fsck 修复一下。之前的 efi 分区有点损坏, 就经常出现 cannot open access to console 的问题; 但当我修复分区后, 该问题出现的频率要第一点。
说到底, 还是分区挂载的问题, 所以分析有损坏, 就需要修复, 如果还有该问题的出现, 就采用第一种或者第二种的方法解决。
至于什么导致了该问题的系统分区挂载超时, 以我目前的水平是解决不了的。。 上面的方法是我在论坛上看到后, 进一步总结一下。

我在使用deepin过程中遇到的问题及其解决办法
http://www.supermew.top/archives/1656
Reply View the author
avatar
150******77
deepin
2018-09-23 19:43
#3
https://bbs.deepin.org/post/169136
你这种, 可能因为 /dev/sda7 可能有一定损害, 分区挂载超时。。你最好到 live-cd 采用 fsck 修复一下。 ...

我检测了一下,的确那个盘的确出了点问题,修复一下就好了,恢复成原来的设置也没报错了,谢谢大神
Reply View the author
avatar
xinyonghu
deepin
2018-10-02 03:26
#4
我最近也遇到这个问题了
Reply View the author
avatar
V
deepin
2018-10-04 12:56
#5
请帮忙看看我这个问题你的方法能解决么?  https://bbs.deepin.org/post/167132
我是双系统,当时在win10的c盘分割得到的空间安装的15.7。启动老是报错,而且还中deepin看不到c盘分区。感觉很不好。
Reply View the author