Ret*_*sek 22 path python kernel-modules apt
我不知道我做了什么,但是像“ls”和“sudo”这样的基本命令不再起作用,现在向我抛出这个错误消息。
File "/usr/lib/command-not-found", line 28, in <module>
from CommandNotFound import CommandNotFound
File "/usr/lib/python3/dist-packages/CommandNotFound/CommandNotFound.py", line 19, in <module>
from CommandNotFound.db.db import SqliteDatabase
File "/usr/lib/python3/dist-packages/CommandNotFound/db/db.py", line 5, in <module>
import apt_pkg
ModuleNotFoundError: No module named 'apt_pkg'
Error in sys.excepthook:
Traceback (most recent call last):
File "/usr/lib/python3/dist-packages/apport_python_hook.py", line 63, in apport_excepthook
from apport.fileutils import likely_packaged, get_recent_crashes
File "/usr/lib/python3/dist-packages/apport/__init__.py", line 5, in <module>
from apport.report import Report
File "/usr/lib/python3/dist-packages/apport/report.py", line 30, in <module>
import apport.fileutils
File "/usr/lib/python3/dist-packages/apport/fileutils.py", line 23, in <module>
from apport.packaging_impl import impl as packaging
File "/usr/lib/python3/dist-packages/apport/packaging_impl.py", line 24, in <module>
import apt
File "/usr/lib/python3/dist-packages/apt/__init__.py", line 23, in <module>
import apt_pkg
ModuleNotFoundError: No module named 'apt_pkg'
Original exception was:
Traceback (most recent call last):
File "/usr/lib/command-not-found", line 28, in <module>
from CommandNotFound import CommandNotFound
File "/usr/lib/python3/dist-packages/CommandNotFound/CommandNotFound.py", line 19, in <module>
from CommandNotFound.db.db import SqliteDatabase
File "/usr/lib/python3/dist-packages/CommandNotFound/db/db.py", line 5, in <module>
import apt_pkg
ModuleNotFoundError: No module named 'apt_pkg'
Run Code Online (Sandbox Code Playgroud)
请帮忙,我正在哭,我明天有截止日期。
我应该重新安装 Ubuntu 但保留文件吗?
ica*_*rus 38
我们对 OP 进行了一些调试。
cd /bin
这有效,所以我们知道 /bin 没有被删除cd /bin; echo ls*
这产生了“ls lsblk lsmod”而不是“ls*”,所以我们知道/bin中至少有3个文件/bin/ls -l /bin/ls
这产生了“-rwxr-xr-x 1 root root 133792 Jan 18 2018 /bin/ls”,所以这不是删除执行权限的问题。PATH=/bin:/usr/bin:$PATH
这创建了几个理智的地方来寻找命令,现在ls
又开始sudo
工作了。结论:PATH
变量已损坏,因此 bash 找不到任何东西。使用仅从内置命令 (cd
和echo
)开始的逐步调试,可以快速诊断出这一点。希望 OP 已经擦干了眼泪,再次满脸笑容。
OP 刚刚评论说他们“删除了对我的 .bashrc 的一些非常愚蠢的编辑,一切似乎都没问题”。