![随着 dist 升级,Linux systemd 的 Windows 子系统崩溃了,我该如何修复它?](https://linux22.com/image/1558321/%E9%9A%8F%E7%9D%80%20dist%20%E5%8D%87%E7%BA%A7%EF%BC%8CLinux%20systemd%20%E7%9A%84%20Windows%20%E5%AD%90%E7%B3%BB%E7%BB%9F%E5%B4%A9%E6%BA%83%E4%BA%86%EF%BC%8C%E6%88%91%E8%AF%A5%E5%A6%82%E4%BD%95%E4%BF%AE%E5%A4%8D%E5%AE%83%EF%BC%9F.png)
在任何更新或升级操作之后我得到以下信息:
Need to get 0 B/389 MB of archives.
After this operation, 416 MB of additional disk space will be used.
Do you want to continue? [Y/n] y
Extracting templates from packages: 100%
Preconfiguring packages ...
Setting up systemd (237-3ubuntu7) ...
Synchronizing state of ondemand.service with SysV service script with /lib/systemd/systemd-sysv-install.
Executing: /lib/systemd/systemd-sysv-install enable ondemand
[/usr/lib/tmpfiles.d/tmp.conf:15] Failed to replace specifiers: /tmp/systemd-private-%b-*
[/usr/lib/tmpfiles.d/tmp.conf:16] Failed to replace specifiers: /tmp/systemd-private-%b-*/tmp
[/usr/lib/tmpfiles.d/tmp.conf:17] Failed to replace specifiers: /var/tmp/systemd-private-%b-*
[/usr/lib/tmpfiles.d/tmp.conf:18] Failed to replace specifiers: /var/tmp/systemd-private-%b-*/tmp
dpkg: error processing package systemd (--configure):
installed systemd package post-installation script subprocess returned error exit status 1
Errors were encountered while processing:
systemd
E: Sub-process /usr/bin/dpkg returned an error code (1)
在 WSL 上尝试将 ubuntu 从 16 更新到 18 后,会发生这种情况
答案1
对我有用的是 Ramhound 的评论:
lxrun /更新
正确的方法是重置然后更新。
答案2
您必须完全删除 Linux 子系统并重新安装它。
使用 lxrun.exe /uninstall full 从 Windows 中彻底卸载 Ubuntu\bash。
禁用 Linux 的 Windows 子系统(测试版)功能
对 C 盘进行系统清理,以便删除剩余的临时文件。
重新启用适用于 Linux 的 Windows 子系统(测试版)功能。