コマンドはほとんど動作せず、「apt_pkg」というモジュールはありません。

コマンドはほとんど動作せず、「apt_pkg」というモジュールはありません。

私が何をしたのかはわかりませんが、「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' 

助けてください。泣いています。明日の締め切りです。

Ubuntuをクリーンインストールしてファイルを保存する必要がありますか?

答え1

OPでいくつかのデバッグを行いました。

  1. cd /bin 動作するので、/bin が削除されていないことがわかります。
  2. cd /bin; echo ls*これにより、 "ls *"の代わりに "ls lsblk lsmod"が生成されるため、/ binに少なくとも3つのファイルがあることがわかります。
  3. /bin/ls -l /bin/lsこれにより、「-rwxr-xr-x 1 root root 133792 Jan 18 2018 /bin/ls」が生成されたため、実行権限を削除することは問題になりません。
  4. PATH=/bin:/usr/bin:$PATHこれにより、コマンドを見つけることができるいくつかの一般的な場所が作成され、再び機能しますlssudo

結論:PATH変数が破損し、bashが何も見つかりません。この問題は、cd組み込みコマンド(and)で始まる段階的なデバッグを使用して迅速に診断できます。echoOPが涙を拭いて再び笑って欲しい。

OPは「私の.bashrcから本当に愚かな編集内容を削除しましたが、すべてが大丈夫だと思います」と述べました。

関連情報