我以前用的是 Windows 7,使用 Ubuntu 8 小时后一切都变得混乱。
我想卸载 Python3,所以我使用了 sudo apt-get purge python3,但这却打开了地狱之门。
它删除了我硬盘上的几乎所有东西,现在我有一个 Ubuntu 桌面,甚至没有终端或 Unity 启动器,而且我无法从安装 Ubuntu 时使用的 USB 闪存驱动器启动。目前正在格式化我的电脑并重新安装 Windows 7,因为我几乎对 Ubuntu 和 Linux 失去了信心。如果像删除程序这样微不足道的事情冒着破坏操作系统以及驱动器上安装的大部分内容的风险,那么我就没有理由使用该操作系统了。
我输入的命令:sudo apt-get purge python3
Ubuntu 版本:16.04 LTS
PS:这不是 Ubuntu 自带的主要 Python 版本,而是我安装后决定用 3.6.3 替换的版本
谁能解释为什么会发生这种情况?
编辑:自从我发布这个帖子以来,我一直使用 mint 和 Manjaro,现在我是一个 Linux 用户。我有一个 Windows 7/Manjaro 双启动设置,我使用电脑的大部分时间(大约 85%)都在使用 Linux。事实证明 Ubuntu 并不适合我,但幸运的是,还有许多其他选项可供选择。
答案1
您删除了对许多系统功能和工具所用语言的支持。它们依赖于 python3,因此 apt-get 也删除了它们。您得到的是一个功能略差的系统,重要的系统功能无法使用。
当然,您可以重新安装 python3(以及您删除的所有其他软件包),但如果这比简单地重新安装系统要麻烦得多,我不会感到惊讶,特别是如果它是全新安装。
Linux(包括 Ubuntu)的设计让你可以做一些愚蠢的事情。这允许你为特定任务精心打造轻量级系统——通过牺牲功能。
简而言之,apt(-get) 打印了所有更改 - 包括删除桌面环境。如果你想要处理重要的软件包,最好通读一下软件包列表 - 如果列出了超过 15-20 个软件包,这几乎总是表明你大概不想执行该操作。
你可以尝试运行sudo apt-get install xubuntu-desktop
。xubuntu-desktop 是一个元包,因此它将安装 xubuntu 桌面系统所需的所有标准包。
如果像删除程序这样简单的事情都有可能破坏操作系统以及驱动器上安装的大部分程序,那么我就没有必要使用该操作系统。
如果你以超级用户身份执行随机操作,而不阅读输出,我会说没有操作系统是安全的。尝试转到 Windows 机器,并删除例如中的随机文件%windir%\System32
。对于未来 - 阅读 apt 的输出。并练习使用--dry-run
答案2
养成使用 的习惯apt-get --dry-run
;它将为你省去很多麻烦。Python3 是许多软件包的依赖项;看看当我在 Ubuntu 16.04 上模拟删除它时会发生什么:
$ sudo apt-get --dry-run purge python3
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages were automatically installed and are no longer required:
fonts-mathjax libexpat1-dev libhunspell-dev libjs-jquery-scrollto
libjs-mathjax libminizip1 libpython3-dev libpython3.5-dev libqt5clucene5
libqt5concurrent5 libqt5designer5 libqt5help5 libsnapd-glib1 python-regex
python3-cssutils sigil-data snapd-login-service
Use 'sudo apt autoremove' to remove them.
The following additional packages will be installed:
gcc-6-base:i386 libboost-log1.58.0 libboost-thread1.58.0 libbz2-1.0:i386
libc6:i386 libclick-0.4-0 libcontent-hub0 libdb5.3:i386 libexpat1:i386
libgcc1:i386 libgflags2v5 libgoogle-glog0v5 libgpm2:i386 liblibertine1
liblttng-ust-ctl2 liblttng-ust0 liblzma5:i386 libmpdec2:i386
libncursesw5:i386 libpython3-stdlib:i386 libpython3.5-minimal:i386
libpython3.5-stdlib:i386 libreadline6:i386 libsqlite3-0:i386
libssl1.0.0:i386 libtinfo5:i386 libubuntu-app-launch2
libubuntu-download-manager-client1 libubuntu-download-manager-common1
libudm-common1 liburcu4 python3:i386 python3-minimal:i386 python3.5:i386
python3.5-minimal:i386 qtdeclarative5-ubuntu-content1 zlib1g:i386
Suggested packages:
glibc-doc:i386 locales:i386 content-hub gpm:i386 python3-doc:i386
python3-tk:i386 python3-venv:i386 python3.5-venv:i386 python3.5-doc:i386
binutils:i386 binfmt-support:i386
The following packages will be REMOVED:
apport* apport-gtk* aptdaemon* apturl* apturl-common* checkbox-converged*
checkbox-gui* command-not-found* compiz* compiz-gnome*
flashplugin-installer* foomatic-db-compressed-ppds* gdebi* gdebi-core*
gedit* gnome-orca* gnome-software* gnome-terminal* hplip* ibus* ibus-table*
indicator-bluetooth* language-selector-common* language-selector-gnome*
nautilus-share* onboard* onboard-data* openprinting-ppds*
plainbox-provider-checkbox* plainbox-provider-resource-generic*
printer-driver-foo2zjs* printer-driver-foo2zjs-common*
printer-driver-postscript-hp* printer-driver-ptouch* printer-driver-pxljr*
pyotherside* python3* python3-apport* python3-apt* python3-aptdaemon*
python3-aptdaemon.gtk3widgets* python3-aptdaemon.pkcompat* python3-brlapi*
python3-cairo* python3-cffi-backend* python3-checkbox-support*
python3-commandnotfound* python3-cryptography* python3-cssselect*
python3-cups* python3-dbus* python3-dev* python3-distupgrade* python3-gdbm*
python3-gi* python3-gi-cairo* python3-jinja2* python3-lxml* python3-mako*
python3-markupsafe* python3-minimal* python3-oauthlib* python3-pil*
python3-plainbox* python3-pyatspi* python3-pycurl* python3-pyqt5*
python3-regex* python3-renderpm* python3-reportlab* python3-reportlab-accel*
python3-sip* python3-software-properties* python3-systemd* python3-uno*
python3-update-manager* python3.5* python3.5-dev* python3.5-minimal*
qml-module-io-thp-pyotherside* rhythmbox* rhythmbox-plugin-zeitgeist*
rhythmbox-plugins* sessioninstaller* sigil* software-properties-common*
software-properties-gtk* system-config-printer-common*
system-config-printer-gnome* system-config-printer-udev* totem-plugins*
ubuntu-desktop* ubuntu-drivers-common* ubuntu-minimal*
ubuntu-release-upgrader-core* ubuntu-release-upgrader-gtk* ubuntu-software*
ubuntu-standard* ubuntu-system-service* unattended-upgrades* unity*
unity-control-center* unity-control-center-signon* unity-lens-photos*
unity-scope-calculator* unity-scope-chromiumbookmarks*
unity-scope-colourlovers* unity-scope-devhelp* unity-scope-firefoxbookmarks*
unity-scope-gdrive* unity-scope-manpages* unity-scope-openclipart*
unity-scope-texdoc* unity-scope-tomboy* unity-scope-virtualbox*
unity-scope-yelp* unity-scope-zotero* unity-tweak-tool*
unity-webapps-common* update-manager* update-manager-core* update-notifier*
update-notifier-common* usb-creator-common* usb-creator-gtk* xdiagnose*
The following NEW packages will be installed:
gcc-6-base:i386 libboost-log1.58.0 libboost-thread1.58.0 libbz2-1.0:i386
libc6:i386 libclick-0.4-0 libcontent-hub0 libdb5.3:i386 libexpat1:i386
libgcc1:i386 libgflags2v5 libgoogle-glog0v5 libgpm2:i386 liblibertine1
liblttng-ust-ctl2 liblttng-ust0 liblzma5:i386 libmpdec2:i386
libncursesw5:i386 libpython3-stdlib:i386 libpython3.5-minimal:i386
libpython3.5-stdlib:i386 libreadline6:i386 libsqlite3-0:i386
libssl1.0.0:i386 libtinfo5:i386 libubuntu-app-launch2
libubuntu-download-manager-client1 libubuntu-download-manager-common1
libudm-common1 liburcu4 python3:i386 python3-minimal:i386 python3.5:i386
python3.5-minimal:i386 qtdeclarative5-ubuntu-content1 zlib1g:i386
0 upgraded, 37 newly installed, 126 to remove and 0 not upgraded.