个人踩过的一些坑,记下来也告诉一下大家。
问题1:树莓派烧录系统后开机黑屏
原因:Win32 Disk Imager软件烧录玩系统后会提示是否格式化SD卡,点了格式化之后造成的。
解决:烧录系统后不点格式化即可。
问题2:树莓派开机出现内核载入失败(但是仍可进入系统,不影响运行)
原因:进入系统后,Ctrl + Alt + F1 进入命令行,登录后输入 systemctl status systemd-modules-load.service
命令检测详细报错原因。
命令输出中找到报错:
Failed to find module 'lp'
Failed to find module 'ppdev'
Failed to find module 'parport_pc'
查阅资料得知,‘lp’,‘ppdev’,'parport_pc’这三个文件是打印机驱动,反正用不到打印机,暴力一点,直接屏蔽,不加载。
解决:命令行输入 sudo vi /etc/modules-load.d/cups-filters.conf
注释掉报错的三个文件
#lp
#ppdev
#parport_pc
前面加#号即可。
问题3:树莓派开机进不去桌面,黑屏只有左上角显示光标,startx启动无效果
原因:我这个问题的原因是系统没有烧录好,可能每个人的原因不同,解决方案也对应不同。
解决:重新烧录系统,但是注意一定要换Linux系统烧录。
(其实windows烧录系统也是没有问题的,windows烧录的官方系统可以进去,是没问题的。但是我当时用的那个系统是别人已经打包好的系统,不是原生的官网系统,所以具体什么原因无法考证。)不过还是建议有Linux系统的尽量使用Linux烧录系统。
当时这个地方卡了好久,因为一直是windows系统烧录,以为系统没问题,系统配置出现了问题
后来换Ubuntu烧录后就好了。。(也是醉了),具体原因猜测是因为两者文件格式和硬盘文件系统不同。
这里写一下Ubuntu 烧录系统到SD卡的步骤。
首先找一下SD卡被系统划分的设备名:终端输入以下命令看哪些设备被挂载。
df -h
SD卡插入时看一遍,拔了之后再看一遍就知道是哪一个了。(注意设备后面的容量大小,协助判断,别搞错了,后面是要写入的,搞错盘那就GG)
我这里看出来我的SD卡设备名为 /dev/sdd1 (图已经找不到了,举个例子)
确认SD卡名字之后,首先把它取消挂载:
终端输入 umount /dev/sdd1
后面的是设备名,看各人情况更改。
开始烧录 输入
sudo dd bs=4M if=ROS_TB3_raspberry_3.1_3c.img of=/dev/sdd
bs代表一次写入多大的块,是blocksize的缩写,4M一般都没问题,如果不行,试试改成1M,if参数为下载的镜像的路径(应该是input file缩写),of后参数为设备地址(应该是output file的缩写)千万不要写错这里的参数,否这你可能丢失硬盘所有数据。
dd命令没有进度显示,可以新开一个终端,输入sudo pkill -USR1 -n -x dd
看一下进度。 然后慢慢等烧录完就好。
问题4:apt-get update 时出现 E:Encountered a section with no Package: header
解决:终端输入:
sudo rm /var/lib/apt/lists/* -vf
sudo apt-get update
问题5:apt-get 时出现NO_PUBKEY
解决:终端输入:
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 【报错需要的公钥:xxxxxxxxxx】
问题6:apt-get 时出现404 not found
解决: 软件源可能有问题,我是直接把当时报错的源给屏蔽掉了。
修改sources.list文件,将404的源屏蔽掉(加#号)
sudo vi /etc/apt/sources.list