1.关于Ubuntu镜像的版本选择错误。
注意:不要选择ubuntu-22.10-desktop-amd64.iso,这个版本已经终止使用了!!!
Warn: You have selected an End-of-life releases. Use it at your own risk
(警告:您已选择了一个已终止支持的版本。使用该版本存在风险,请自行承担)
使用这个版本创建的Ubuntu系统的软件源无法使用
2.在VMware中可以ping通,但是无法下载各种命令。
解决:软件源的问题。
-
网上查询的第一种方法:
图形化更新源,在更新源的那里选择中国的软件源全部失败。方法失败。
-
第二种方法:手动更改配置文件(成功)
将 /etc/apt/sources.list 复制一份(作为备份),然后修改sources.list文件中 Ubuntu 默认的软件源地址,将里面内容清空然后粘贴上一份国内镜像软件源。
这里附上一份中国科学技术大学的软件源 软件源 ,注意软件源和系统版本。
3. 各种依赖错误和无法定位软件包
这种情况大多数是软件源与系统版本不匹配的问题!!! 如果你说你已经更新了软件源还是不行,不妨看看下面一种情况。
Ps:还有一种情况是软件包已经被更新替代了,新的Ubuntu系统无法找到旧的版本,这种情况第4点会解释。
如下列情况:
**解决:软件源的问题。**
-首先解释一下什么叫做系统版本。
ISO不是系统版本,所谓的系统版本是利用ISO镜像创建Ubuntu系统后,VM中Ubuntu的版本,当VM中Ubuntu创建后无论怎么更换ISO,版本不变。
所以系统版本是你最初利用的ISO创建的版本,不单单看此刻虚拟机上的ISO版本。如果你利用了一种ISO创建Ubuntu系统后,又换了另一种ISO使用,那么系统版本是第一种。
查看系统版本的命令:lsb_release -a
这个问题的出现是因为对ISO的认识太少了。
- 什么叫做ISO:
ISO是Ubuntu操作系统的ISO镜像文件,Ubuntu ISO镜像文件包含了完整的Ubuntu操作系统安装介质,并可用于创建启动光盘或USB驱动器,以便安装或升级Ubuntu操作系统。
- ISO可以做什么
-
安装Ubuntu系统:将Ubuntuiso文件刻录到光盘或制作成启动USB驱动器后,可以用于在计算机上执行全新的Ubuntu安装。在安装过程中,可以选择语言、分区、软件包等选项来个性化配置。
-
升级Ubuntu系统:如果已经安装了旧版本的Ubuntu,可以使用Ubuntuiso镜像文件执行系统升级。通过引导到Ubuntuiso镜像,可以选择升级现有的Ubuntu版本,保留数据和设置,或者执行全新的安装。
-
创建Live环境:Ubuntuiso文件还可以用于创建一个Live环境,它可以在不安装Ubuntu的情况下直接从光盘或USB驱动器运行。这样,用户可以在不改变系统配置的情况下,体验和测试Ubuntu操作系统
总之,Ubuntuiso是一个包含完整Ubuntu操作系统的镜像文件,可用于安装、升级或创建Live环境。通过使用Ubuntuiso,用户可以轻松地在计算机上部署和体验Ubuntu操作系统。
4. (旧版本软件包被替代了怎么办)
下面是我遇到的一个情况。
例子: 新版Ubuntu2023.10无法定位软件包libncurses5:i386
- 出现错误: ./gdb: error while loading shared libraries:
libncurses.so.5: cannot ophared object file: No such file or directory
这时候可以 apt-get install libncurses5:i386,可是结果是无法定位到软件包libncurses5:i386。
为什么呢,因为新的Ubuntu2023.10系统已经更新到了libncurses6了,旧版本libncurses5:i386已经被替代了。
- 解决方法: 因为新版本通常会覆盖旧版本功能,这个时候无法找到旧版本也没关系,首先下载apt-get install libncurses6:i386(新版本),然后我们可以创建一个软链接,用旧版本名称连到新版上。(这就是老杯装新酒)
- 首先找到路径,
find /usr -name “libncurses.so.*” - 然后建立软链接
ln -s /usr/lib/i386-linux-gnu/libncurses.so.6.4 /usr/lib/i386-linux-gnu/libncurses.so.5
在这个过程中出现过一个错误就是,这里需要用到32位的libncurses.so.5 ,但是我直接将软链接连到了64位libncurses.so.6.4
- 命令: ln -s /usr/lib/x86_64-linux-gnu/libncurses.so.6.4 /usr/lib/libncurses.so.5
然后就出现了这个错误×.so.×: wrong ELF class: ELFCLASS64
大致的意思就是软件是32位的,需要32位的 ×.so.× 动态链接库,而系统是64位的所提供的该 动态链接库 ×.so.× 是64位的,所以不能用。