基础入门路之 Ubuntu系统常见错误问题的解决办法
本教程提到的Ubuntu系统常见错误和问题是很少的一部分问题,如果有其他的欢迎交流,有些错误平时随手解决,也就没有记录
可参考github
1.源的问题
1. 秘钥
问题
:类似The following signatures couldn’t be verified because the public key is not available: NO_PUBKEY F42ED6FBAB17C654报没有秘钥的错误
解决
:需要在源中添加秘钥,执行命令
sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key 'F42ED6FBAB17C654' #对应替换秘钥即可
2.Snap安装问题
错误:Ubuntu snap提示has “install-snap” change in progress 错误
解决:
其实就是软件之前安装了一次,只是没安装完就强行停止了,执行命令行:
snap changes
根据显示结果查看,标示为Doing的即没有安装完就强行停止的进程,然后:
sudo snap abort num # num为Doing标示的序号
实例分析:
ID Status Spawn Ready Summary
1 Done today at 10:32 CST today at 10:32 CST Initialize system state
2 Doing today at 20:41 CST - Install "mathpix-snipping-tool" snap
3 Done today at 20:41 CST today at 20:41 CST Initialize device
此时num应该为2.
3.开机即报错
问题描述:Ubuntu开机就报错ubuntu system program problem detected
解决办法:
sudo gedit /etc/default/apport
将enabled=1改为enabled=0保存退出即可,重启之后即可生效。
4.关于编译过程中出现一些共享库(.so)无法找到的解决办法
1. 实例1
问题:make[2]: *** No rule to make target ‘/usr/lib/x86_64-linux-gnu/libGL.so’
问题分析:很多Linux环境下出现此类Bug时,一般大部分原因是因为make 编译的时候,动态链接库的链接性中断,因此解决方案为添加symlink(符号链接)。
解决:
-
定位libGL.so文件路径: 比如,本机中路径为:/usr/lib/x86_64-linux-gnu/libGL.so;
-
定位/usr/lib/目录下存在类似的共享库文件,如:libGL.so.1;
-
建立symlink: (之所以链接到libGL.so.1而不是libGL.so可能是为了便于区分)
sudo ln -s /usr/lib/libGL.so.1 /usr/lib/x86_64-linux-gnu/libGL.so
-
如果出现错误:
ln: failed to create symbolic link '/usr/lib/x86_64-linux-gnu/libGL.so' : File exists
则删除已有的链接:
sudo rm /usr/lib/x86_64-linux-gnu/libGL.so
-
重新执行步骤3。
2. 实例2
问题:The imported target “Qt5::Gui” references the file “/usr/lib/x86_64-linux-gnu/libEGL.so” but this file does not exist.
问题分析:在Linux中,主要分析Ubuntu系统,会内置qt4和qt5的部分共享库文件,这是系统中的组成部分,但是共享库的链接并不一定都能被编译器捕捉到,即链接中断。
解决:同实例1的解决办法
sudo rm /usr/lib/x86_64-linux-gnu/libEGL.so
sudo ln /usr/lib/x86_64-linux-gnu/libEGL.so.1 /usr/lib/x86_64-linux-gnu/libEGL.so
说明
本篇教程还是比较少的问题解决办法,多数问题其实大家都能随手解决,如果有什么问题欢迎一起交流~