树莓派用前设置
在前两篇博文中,分别介绍了树莓派(0):树莓派基础知识 和 树莓派(1):树莓派安装系统
在准备搞自己要做的东东之前,还是建议先把以下内容设置一遍,省的出了问题又比较麻烦。
1. 键盘设置
你有没有遇到一些符号打出来是乱的?
比如我最近装了最新的 Buster版本 系统就遇到这么一个问题——#打不出来?
电影《玩具总动员》中的小狗 Buster
原因出在键盘布局上,树莓派(Raspberry Pi)是英国产品,默认键盘布局是英国(GB),我们用的键盘布局一般是美国(US)的。
设置成 US 的就好了,这里就不再说具体怎么做了。
2. SSH设置
自 2016-11 官方发布的 Raspbian 系统镜像,系统默认禁用了SSH 服务。
重新开启也很简单,把SD卡拔下来,进入到根目录,新建一个名为ssh的空白文件就行了。
这是我最常用的一个操作,毕竟在 烧录完SD卡后随手就做了。当然开启SSH还有其他很多方法,这里就不再罗列了,只记录我觉得最方便的方法:)
2.1 建立SSH连接
首先需要树莓派联网,我用手机开热点,树莓派连接手机网络(不想用网线,我讨厌线!)
查看树莓派ip:树莓派打开一个终端,输入指令$ifconfig
可以看到ip为192.168.43.58。
知道IP了,接下来进行SSH登录,在windows下,我最喜欢用的是MobaXterm
MobaXterm主要功能:
- 支持各种连接SSH,X11,RDP,VNC,FTP,MOSH
- 支持Unix命令(bash,ls,cat,sed,grep,awk,rsync,…)
- 连接SSH终端后支持SFTP传输文件
- 各种丰富的插件(git/dig/aria2…)
- 可运行Windows或软件
在Linux系统下,直接使用ssh命令,如下图:
2.2 SSH连接超时
SSH总是连接超时怎么办?这应该是新手常犯的操作吧(至少我犯过哈哈)
比如我,用树莓派连的手机热点,通过ifconfig获取树莓派的ip之后,电脑SSH树莓派总是显示连接超时。ping这个ip也ping不通,但ping百度能ping通,说明有网。
究其原因,是因为我的电脑连的是pku校园网而非手机热点,二者不在一个局域网。
电脑和树莓派连接同一网络即可解决这一问题。
通信的前提是能够获取对方的ip,而不同局域网之间由于存在一个地址转换(NAT)从而使得两个局域网之间的主机不能通信(这里专指ssh)。
那么解决方案有哪些?
- n2n 开源 P2P
- ngrok 非P2P
- 反向ssh
- TeamViewer
- Hamachi
- 花生壳
这些方法概括起来就是穿透NAT。
我本人用TeamViewer比较多,不过暂时也不需要解决这个问题,就先搁置吧:)
3.远程桌面
树莓派连接显示器终究笨重,仅仅SSH登录有时候又确实是不方便,so,远程桌面来了!
我习惯通过xrdp远程桌面访问系统,
首先要在 Raspian中安装 xrdp服务:sudo apt-get install xrdp
安装VNC: sudo apt-get install tightvncserver
启动xrdp服务:sudo /etc/init.d/xrdp start
将xrdp服务加入到系统默认启动服务中:sudo update-rc.d xrdp defaults
windows主机端可以运行mstsc进行远程桌面连接,如下图
我更喜欢用MobaXterm,所以仍然使用MobaXterm进行远程桌面——
使用起来也算是美滋滋——
4. 更换镜像源
树莓派系统安装后默认使用国外的镜像源,因为墙的原因,所以在安装模块的时候速度非常慢,因此需要将镜像源换成国内的(期待不用梯子的那一天)
还记得这只buster吗?树莓派已经从stretch升级到buster了,所以要注意你替换的源和你的系统是否匹配。不要直接硬搬网上的教程:)
以下步骤针对buster版本,stretch版本的要把源里面的buster改为stretch。
步骤:
- 打开配置sources.list文件
sudo nano /etc/apt/sources.list
- 用#注释掉原文件内容,用以下内容取代(Ctrl + O 保存再 Ctrl + X 退出):
deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main contrib non-free rpi
deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ buster main contrib non-free rpi
- 打开配置raspi.list文件
sudo nano /etc/apt/sources.list.d/raspi.list
- 用#注释掉原文件内容,用以下内容取代(Ctrl + O 保存再 Ctrl + X 退出):
deb http://mirror.tuna.tsinghua.edu.cn/raspberrypi/buster main ui
deb-src http://mirror.tuna.tsinghua.edu.cn/raspberrypi/buster main ui
- 编辑镜像站后,更新升级
sudo apt-get update
sudo apt-get upgrade
(update是更新软件列表,upgrade是更新软件)
deb和deb-src的区别:
deb行与二进制包相关,可以使用apt进行安装。
deb-src行与源包相关(由apt-get source $package下载),然后编译。
只有在想自己编译某个包或检查源代码以查找错误时才需要源包,普通用户不需要包含这样的存储库。
我不太习惯用nano和vi,安装vim指令:
$ sudo apt-get remove vim-common
$ sudo apt-get install vim
5. 调整字体大小
这终端的字有点小,看的不舒服额
打开终端,点击菜单栏edit选项,选择Preference,即可设置终端字体大小、颜色,以及终端窗口大小,设置之后感觉舒服很多hhh
6. 禁止树莓派休眠,保持屏幕常亮
-
打开lightdm.conf
sudo vi /etc/lightdm/lightdm.conf
-
修改lightdm.conf
找到[SeatDefaults]段下的’xserver-command’
修改
#xserver-command=X
为
xserver-command=X -s 0 -dpms
-s # –设置屏幕保护不启用
dpms 关闭电源节能管理
此处感谢yuanfujie -
重启
sudo reboot
7.文件夹闪退
我遇到了文件夹闪退问题,应该是掉电异常导致的,执行sudo apt full-upgrade
即可
Okay,树莓派用前设置大概这么些吧,写一篇博文可真费时(感觉需要好好练练双拼了),之后有时间再写接下来的,应该会涉及到交叉编译、交叉调试、树莓派内核裁剪、树莓派控制舵机、树莓派实时监控、python3安装opencv、YOLO预处理后处理加速、SSD、多进程多线程管理等内容吧。
有问题多交流,可留言可发邮件,我的邮箱是zhaodongyu艾特pku(这里换成点)edu.cn。