如何修复导致“ubuntu 内部错误”的不存在的可执行路径?

如何修复导致“ubuntu 内部错误”的不存在的可执行路径?

我在启动时不断看到“内部错误”对话框(请参阅下面的 .crash 文件头)。

请注意,/usr/lib/virtualbox/VirtualBoxVM不存在(自最近几次重启以来)并且错误仍然出现。

以下是输出ls /var/crash

(base) au@a1:~$ ls -l /var/crash
total 24480
-rw-r----- 1 au       whoopsie 16389469 Jan  2 09:36 _usr_bin_pulseaudio.1000.crash
-rw-rw-r-- 1 au       whoopsie        0 Jan  2 09:36 _usr_bin_pulseaudio.1000.upload
-rw------- 1 whoopsie whoopsie       37 Jan  2 09:36 _usr_bin_pulseaudio.1000.uploaded
-rw-r----- 1 root     whoopsie  8655015 Jan  8 00:23 _usr_lib_virtualbox_VirtualBoxVM.0.crash
-rw-r--r-- 1 root     whoopsie    10082 Jan  8 00:17 virtualbox-dkms.0.crash

以下是标题(减去核心转储)/var/crash/_usr_lib_virtualbox_VirtualBoxVM.0.crash

ProblemType: Crash
Architecture: amd64
Date: Fri Jan  8 00:23:30 2021
DistroRelease: Ubuntu 20.04
ExecutablePath: /usr/lib/virtualbox/VirtualBoxVM
ExecutableTimestamp: 1591443097
ProcCmdline: /usr/lib/virtualbox/VirtualBoxVM --comment w10 --startvm 6bad7132-1231-4cf8-8ac2-5a2a99493c86 --no-startvm-errormsgbox
ProcEnviron: Error: [Errno 13] Permission denied: 'environ'
ProcMaps: Error: [Errno 13] Permission denied: 'maps'
ProcStatus:
 Name:  VirtualBoxVM
 Umask: 0002
 State: S (sleeping)
 Tgid:  3479
 Ngid:  0
 Pid:   3479
 PPid:  1866
 TracerPid: 0
 Uid:   1000    1000    1000    1000
 Gid:   1000    1000    1000    1000
 FDSize:    64
 Groups:    4 24 27 30 46 120 131 132 1000 
 NStgid:    3479
 NSpid: 3479
 NSpgid:    3477
 NSsid: 3138
 VmPeak:      382984 kB
 VmSize:      371348 kB
 VmLck:        0 kB
 VmPin:        0 kB
 VmHWM:    69868 kB
 VmRSS:    68296 kB
 RssAnon:      17056 kB
 RssFile:      51240 kB
 RssShmem:         0 kB
 VmData:       39764 kB
 VmStk:      132 kB
 VmExe:       40 kB
 VmLib:    80832 kB
 VmPTE:      404 kB
 VmSwap:           0 kB
 HugetlbPages:         0 kB
 CoreDumping:   1
 THP_enabled:   1
 Threads:   3
 SigQ:  0/256693
 SigPnd:    0000000000000000
 ShdPnd:    0000000000000000
 SigBlk:    0000000000000000
 SigIgn:    0000000001001000
 SigCgt:    0000000180000000
 CapInh:    0000000000000000
 CapPrm:    0000000000000000
 CapEff:    0000000000000000
 CapBnd:    000000ffffffffff
 CapAmb:    0000000000000000
 NoNewPrivs:    0
 Seccomp:   0
 Speculation_Store_Bypass:  thread vulnerable
 Cpus_allowed:  ffffffff
 Cpus_allowed_list: 0-31
 Mems_allowed:  00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000001
 Mems_allowed_list: 0
 voluntary_ctxt_switches:   1149
 nonvoluntary_ctxt_switches:    65
Signal: 6
Uname: Linux 5.8.0-36-generic x86_64
UserGroups: adm cdrom dip lpadmin lxd plugdev sambashare sudo

答案1

让我们看一下崩溃报告的过程,使用输出中的一个示例:

-rw-r----- 1 au       whoopsie 16389469 Jan  2 09:36 _usr_bin_pulseaudio.1000.crash
-rw-rw-r-- 1 au       whoopsie        0 Jan  2 09:36 _usr_bin_pulseaudio.1000.upload
-rw------- 1 whoopsie whoopsie       37 Jan  2 09:36 _usr_bin_pulseaudio.1000.uploaded

这里,您可以看到一个过程。

  1. 崩溃报告由apport应用程序组装
  2. whoopsie崩溃报告由应用程序上传
  3. 记录了上传的确认(来自 Canonical 的“daisy”服务器)whoopsie

现在,让我们看看您的最新崩溃报告:

-rw-r----- 1 root     whoopsie  8655015 Jan  8 00:23 _usr_lib_virtualbox_VirtualBoxVM.0.crash
-rw-r--r-- 1 root     whoopsie    10082 Jan  8 00:17 virtualbox-dkms.0.crash

首先,看看日期:两次崩溃都发生在今天。所以您应该已经看到两次“发生错误”对话框。您的问题暗示(也许是无意的)这是一个持续了几天的问题,但这显然是一种误读。

接下来,让我们转到您的 .crash 输出:

Date: Fri Jan  8 00:23:30 2021
ProcCmdline: /usr/lib/virtualbox/VirtualBoxVM --comment w10 --startvm 6bad7132-1231-4cf8-8ac2-5a2a99493c86 --no-startvm-errormsgbox

这意味着某物您的系统上当时运行了该命令。当您删除 VirtualBoxVM 时,似乎您忘记删除一些脚本、计时器、服务、cronjob 或其他试图启动该不存在 VM 的东西。

答案2

我将删除以下文件:

sudo rm /var/crash/_usr_lib_virtualbox_VirtualBoxVM.0.crash
sudo rm /var/crash/virtualbox-dkms.0.crash

请参阅此文章了解更多背景信息:

https://itsfoss.com/how-to-fix-system-program-problem-detected-ubuntu/

编辑:

值得注意的是,我不会像本文作者那样提倡禁用 Apport。根据我的经验,/var/crash/每次重启时清除这些弹出窗口就足够了,也足够方便。

相关内容