Linux是一个很宏大的社区、系统、知识体系以及不断涌现的bug与解决。
这里谨记录我在与Linux相遇时遇到的问题与解决。
显然不能覆盖多少知识点,仅作收录自用,闲时持续更新。
可以使用清华源,注意选择自己的架构和版本
(特别注意ARM架构/RISC架构等不能直接使用这个源,点击下面的ubuntu-ports镜像获取相应源)

ubuntu-ports | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror
任意位置终端使用如下指令
sudo gedit /etc/apt/sources.list
复制进去即可,换源之后要立刻跟一个更新apt操作
sudo apt-get update
▲如果是arm架构的ubuntu,请在deb后,资源网址前加上[arch=arm64]
否则会出现类似这样的问题
ubuntu 18.04 Failed to fetch http://mirrors.aliyun.com/ubuntu/dists/bonic/main/binary-arm64/Package 404 Not Found
例如:(这里只作为一个范例)
- deb [arch=arm64] https://mirrors.ustc.edu.cn/ubuntu-ports/ bionic main restricted universe multiverse
- deb [arch=arm64] https://mirrors.ustc.edu.cn/ubuntu-ports/ bionic-updates main restricted universe multiverse
- deb [arch=arm64] https://mirrors.ustc.edu.cn/ubuntu-ports/ bionic-backports main restricted universe multiverse
- deb [arch=arm64] https://mirrors.ustc.edu.cn/ubuntu-ports/ bionic-security main restricted universe multiverse
(这一知识点参考https://blog.csdn.net/Kane1440/article/details/132796419)
契机是验收bomblab实验的同学环境上遇到的问题,对运行库的配置进行了探究
由于bomblab给的bomb是32位环境的,而一般是我们现在的系统是64位的。
注意:以下经验只在ubuntu-x86架构-64位环境下成功,arm-64架构失败暂时未找到解决方法
要想在64位系统上与运行32位程序,则需要安装32位lib库:
- sudo apt-get update
- sudo apt-get install libc6:i386
若直接使用上述语句出现问题(如无法定位packge),要添加多架构支持,如下
- sudo dpkg --add-architecture i386
- sudo apt-get update
- sudo apt-get install libc6:i386
这样之后应该就可以运行32位可执行文件了。
如果想关闭多架构支持,可能遇到问题,参考这一篇博客(如何在 Linux 下关闭 i386 架构)