Ubuntu 18.04发行版升级失败且Python命令无法使用的问题求助
Ubuntu 18.04发行版升级失败且Python命令无法使用的问题求助
大家好,大概两年前我尝试更新Python时搞砸了,现在想升级我的Ubuntu发行版,结果遇到一堆问题。我不常用这个笔记本,对Linux也不太熟悉,查了不少论坛但都没解决问题。我收集了一些信息,希望能帮大家准确理解我的问题——看起来可能是环境变量丢了,而且我装了好几个Python版本,之前还试过设置别名,但显然搞坏了什么,现在终端命令用不了,发行版也升级不了。
一、当前系统版本信息
NAME="Ubuntu" VERSION="18.04.6 LTS (Bionic Beaver)" ID=ubuntu ID_LIKE=debian PRETTY_NAME="Ubuntu 18.04.6 LTS" VERSION_ID="18.04" HOME_URL="https://www.ubuntu.com/" SUPPORT_URL="https://help.ubuntu.com/" BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/" PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy" VERSION_CODENAME=bionic UBUNTU_CODENAME=bionic
二、核心问题表现
- 执行
python、python3、xterm等命令时,均返回Command not found - 尝试升级发行版时,APT报错,无法完成更新
三、升级时的APT错误日志(/var/log/apt/term.log)
Log started: 2023-08-28 12:04:52 (Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% y(Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 614694 files and directories currently installed.) Preparing to unpack .../0-python3-apt_1.6.6_amd64.deb ... /var/lib/dpkg/info/python3-apt.prerm: 6: /var/lib/dpkg/info/python3-apt.prerm: py3clean: not found dpkg: warning: old python3-apt package pre-removal script subprocess returned error exit status 127 dpkg: trying script from the new package instead ... /var/lib/dpkg/tmp.ci/prerm: 6: /var/lib/dpkg/tmp.ci/prerm: py3clean: not found dpkg: error processing archive /tmp/apt-dpkg-install-awgn7N/0-python3-apt_1.6.6_amd64.deb (--unpack): new python3-apt package pre-removal script subprocess returned error exit status 127 /var/lib/dpkg/info/python3-apt.postinst: 6: /var/lib/dpkg/info/python3-apt.postinst: py3compile: not found dpkg: error while cleaning up: installed python3-apt package post-installation script subprocess returned error exit status 127 Preparing to unpack .../1-python3-mako_1.0.7+ds1-1ubuntu0.2_all.deb ... /var/lib/dpkg/info/python3-mako.prerm: 6: /var/lib/dpkg/info/python3-mako.prerm: py3clean: not found dpkg: warning: old python3-mako package pre-removal script subprocess returned error exit status 127 dpkg: trying script from the new package instead ... /var/lib/dpkg/tmp.ci/prerm: 6: /var/lib/dpkg/tmp.ci/prerm: py3clean: not found dpkg: error processing archive /tmp/apt-dpkg-install-awgn7N/1-python3-mako_1.0.7+ds1-1ubuntu0.2_all.deb (--unpack): new python3-mako package pre-removal script subprocess returned error exit status 127 /var/lib/dpkg/info/python3-mako.postinst: 6: /var/lib/dpkg/info/python3-mako.postinst: py3compile: not found dpkg: error while cleaning up: installed python3-mako package post-installation script subprocess returned error exit status 127 Preparing to unpack .../2-python3-pil_5.1.0-1ubuntu0.8_amd64.deb ... /var/lib/dpkg/info/python3-pil:amd64.prerm: 6: /var/lib/dpkg/info/python3-pil:amd64.prerm: py3clean: not found dpkg: warning: old python3-pil:amd64 package pre-removal script subprocess returned error exit status 127 dpkg: trying script from the new package instead ... /var/lib/dpkg/tmp.ci/prerm: 6: /var/lib/dpkg/tmp.ci/prerm: py3clean: not found dpkg: error processing archive /tmp/apt-dpkg-install-awgn7N/2-python3-pil_5.1.0-1ubuntu0.8_amd64.deb (--unpack): new python3-pil:amd64 package pre-removal script subprocess returned error exit status 127 /var/lib/dpkg/info/python3-pil:amd64.postinst: 6: /var/lib/dpkg/info/python3-pil:amd64.postinst: py3compile: not found dpkg: error while cleaning up: installed python3-pil:amd64 package post-installation script subprocess returned error exit status 127 Preparing to unpack .../3-python3-pkg-resources_39.0.1-2ubuntu0.1_all.deb ... /var/lib/dpkg/info/python3-pkg-resources.prerm: 6: /var/lib/dpkg/info/python3-pkg-resources.prerm: py3clean: not found dpkg: warning: old python3-pkg-resources package pre-removal script subprocess returned error exit status 127 dpkg: trying script from the new package instead ... /var/lib/dpkg/tmp.ci/prerm: 6: /var/lib/dpkg/tmp.ci/prerm: py3clean: not found dpkg: error processing archive /tmp/apt-dpkg-install-awgn7N/3-python3-pkg-resources_39.0.1-2ubuntu0.1_all.deb (--unpack): new python3-pkg-resources package pre-removal script subprocess returned error exit status 127 /var/lib/dpkg/info/python3-pkg-resources.postinst: 6: /var/lib/dpkg/info/python3-pkg-resources.postinst: py3compile: not found dpkg: error while cleaning up: installed python3-pkg-resources package post-installation script subprocess returned error exit status 127 y Preparing to unpack .../4-python3-problem-report_2.20.9-0ubuntu7.29_all.deb ... /var/lib/dpkg/info/python3-problem-report.prerm: 6: /var/lib/dpkg/info/python3-problem-report.prerm: py3clean: not found dpkg: warning: old python3-problem-report package pre-removal script subprocess returned error exit status 127 dpkg: trying script from the new package instead ... /var/lib/dpkg/tmp.ci/prerm: 6: /var/lib/dpkg/tmp.ci/prerm: py3clean: not found dpkg: error processing archive /tmp/apt-dpkg-install-awgn7N/4-python3-problem-report_2.20.9-0ubuntu7.29_all.deb (--unpack): new python3-problem-report package pre-removal script subprocess returned error exit status 127 /var/lib/dpkg/info/python3-problem-report.postinst: 6: /var/lib/dpkg/info/python3-problem-report.postinst: py3compile: not found dpkg: error while cleaning up: installed python3-problem-report package post-installation script subprocess returned error exit status 127 Preparing to unpack .../5-python3-protobuf_3.0.0-9.1ubuntu1.1_amd64.deb ... /var/lib/dpkg/info/python3-protobuf.prerm: 6: /var/lib/dpkg/info/python3-protobuf.prerm: py3clean: not found dpkg: warning: old python3-protobuf package pre-removal script subprocess returned error exit status 127 dpkg: trying script from the new package instead ... /var/lib/dpkg/tmp.ci/prerm: 6: /var/lib/dpkg/tmp.ci/prerm: py3clean: not found dpkg: error processing archive /tmp/apt-dpkg-install-awgn7N/5-python3-protobuf_3.0.0-9.1ubuntu1.1_amd64.deb (--unpack): new python3-protobuf package pre-removal script subprocess returned error exit status 127 /var/lib/dpkg/info/python3-protobuf.postinst: 6: /var/lib/dpkg/info/python3-protobuf.postinst: py3compile: not found dpkg: error while cleaning up: installed python3-protobuf package post-installation script subprocess returned error exit status 127 Preparing to unpack .../6-python3-uno_1%3a6.0.7-0ubuntu0.18.04.13_amd64.deb ... /var/lib/dpkg/info/python3-uno.prerm: 6: /var/lib/dpkg/info/python3-uno.prerm: py3clean: not found dpkg: warning: old python3-uno package pre-removal script subprocess returned error exit status 127 dpkg: trying script from the new package instead ... /var/lib/dpkg/tmp.ci/prerm: 6: /var/lib/dpkg/tmp.ci/prerm: py3clean: not found dpkg: error processing archive /tmp/apt-dpkg-install-awgn7N/6-python3-uno_1%3a6.0.7-0ubuntu0.18.04.13_amd64.deb (--unpack): new python3-uno package pre-removal script subprocess returned error exit status 127 /var/lib/dpkg/info/python3-uno.postinst: 6: /var/lib/dpkg/info/python3-uno.postinst: py3compile: not found dpkg: error while cleaning up: installed python3-uno package post-installation script subprocess returned error exit status 127 Preparing to unpack .../7-python3-louis_3.5.0-1ubuntu0.5_all.deb ... /var/lib/dpkg/info/python3-louis.prerm: 6: /var/lib/dpkg/info/python3-louis.prerm: py3clean: not found dpkg: warning: old python3-louis package pre-removal script subprocess returned error exit status 127 dpkg: trying script from the new package instead ... /var/lib/dpkg/tmp.ci/prerm: 6: /var/lib/dpkg/tmp.ci/prerm: py3clean: not found dpkg: error processing archive /tmp/apt-dpkg-install-awgn7N/7-python3-louis_3.5.0-1ubuntu0.5_all.deb (--unpack): new python3-louis package pre-removal script subprocess returned error exit status 127 /var/lib/dpkg/info/python3-louis.postinst: 6: /var/lib/dpkg/info/python3-louis.postinst: py3compile: not found dpkg: error while cleaning up: installed python3-louis package post-installation script subprocess returned error exit status 127 Errors were encountered while processing: /tmp/apt-dpkg-install-awgn7N/0-python3-apt_1.6.6_amd64.deb /tmp/apt-dpkg-install-awgn7N/1-python3-mako_1.0.7+ds1-1ubuntu0.2_all.deb /tmp/apt-dpkg-install-awgn7N/2-python3-pil_5.1.0-1ubuntu0.8_amd64.deb /tmp/apt-dpkg-install-awgn7N/3-python3-pkg-resources_39.0.1-2ubuntu0.1_all.deb /tmp/apt-dpkg-install-awgn7N/4-python3-problem-report_2.20.9-0ubuntu7.29_all.deb /tmp/apt-dpkg-install-awgn7N/5-python3-protobuf_3.0.0-9.1ubuntu1.1_amd64.deb /tmp/apt-dpkg-install-awgn7N/6-python3-uno_1%3a6.0.7-0ubuntu0.18.04.13_amd64.deb /tmp/apt-dpkg-install-awgn7N/7-python3-louis_3.5.0-1ubuntu0.5_all.deb Log ended: 2023-08-28 12:04:56
四、导致问题的历史操作记录(history相关片段)
172 sudo apt install ruby-full 173 ruby --version\ 174 ruby --version 175 ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" 176 sudo apt-get install build-essential 177 brew install gcc 178 echo 'eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)"' >> /home/brittany/.profile 179 eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)" 180 brew install gcc 181 brew install sdl sdl_mixer sdl_sound sdl_tff 182 brew install sdl sdl_mixer sdl_sound sdl_ttf 183 pip3 install pygame 184 pip3 install pgzero 185 gedit ~/.bashrc export PATH=/home/brittany/.local/bin/:$PATH 186 gedit~/.bashrc export PATH=/home/brittany/.local/bin/:$PATH 187 gedit~/.bashrc 188 gedit ~/.bashrc 189 source ~/.bashrc 190 idel3 191 idel 192 idle 193 sudo apt update 194 python3 195 python3 --version 196 sudo add-apt-repository ppa:deadsnakes/ppa 197 sudo apt update 198 python3 --version 199 apt list | grep python3.10 200 sudo apt install python3 201 python3 --version 202 sudo apt install software-properties-common 203 sudo apt --only-upgrade install python3 204 sudo apt install python3.10 205 python3 --version 206 sudo nano /usr/bin/gnome-terminal 207 sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.9 1 208 sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.10 2 209 sudo update-alternatives --config python3 210 python3 --version 211 pip 212 sudo apt remove --purge python3-apt 213 sudo apt autoclean 214 sudo apt install python3-apt 215 pip 216 sudo apt install python3.10-distutils 217 curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py 218 sudo python3.10 get-pip.py 219 sudo apt install curl 220 curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py 221 sudo python3.10 get-pip.py [B 222 IDLE 223 python 224 python3 225 idle3.10 226 idle3 227 sudo apt install idle 228 sudo apt install idle3 229 idle3 230 idle 231 idle3 232 python3 233 idle 234 idle3 235 dpkg -L idle3 236 sudo apt-get install idle-python3.10
五、已安装的Python版本
执行ls /usr/bin/python*的输出:
/usr/bin/python /usr/bin/python3 /usr/bin/python3.10 /usr/bin/python3.6 /usr/bin/python3.6m /usr/bin/python3m
六、当前PATH环境变量
执行echo $PATH的输出:
/home/linuxbrew/.linuxbrew/bin:/home/linuxbrew/.linuxbrew/sbin:/home/brittany/.local/bin




