手机浏览 RSS 2.0 订阅 膘叔的简单人生 , 腾讯云RDS购买 | 超便宜的Vultr , 注册 | 登陆
浏览模式: 标准 | 列表分类:Linux

树莓派还是换成了ubuntu

 基于几个小原因,换成了ubuntu

1、配置单网卡路由+WIFI没搞定。每次一折腾就断网(或许有机会,但我没有microHDMI线。所以断了,我就只能重刷机。太累了)
2、ubuntu 20,居然是支持64位的。这里不得不说,人家支持的就是好。。。rasbian现在还是32位的
 
当然也不是说rasbian就没有超过ubuntu的。比如他的vncserver就比ubuntu好。ubuntu没有,而且装vnc4server也装不上,唯一可以装的居然是xrdp。为了装这个xrdp,居然要1G左右 的下载。
 
当然最终我还是没有选择桌面,即使这样,下载回来的xz文件。居然也要1.1G左右 。而debian只要400M。
 
不扯其他的,因为毕竟是两个系统,所以在初始化配置的时候就不太一样。比如rasbian就是创建空ssh文件,和增加wpa_supplicant.conf文件。而ubuntu就不一样,直接改net-config(好象是这个。或者是network-config这个文件)。是一个yml格式的文件,参考一下就OK。【如果你的ssid有空格或者其他的,请用双引号包住】
 
然后还有一个userdata(或者叫:user-data)文件。里面有一个配置password是不是会过期。。默认是过期的。我开始就是被它折腾。一登录就让我改密码,一改密码就说过期。。。。
 
其他的都差不多,然后ubuntu装好进去后。居然每次还有提示。让我装microk8s。。。嗯,暂不理他,我还是老规矩:安装pm2 / frp ,更改源为阿里。

树莓查看CPU温度

 SSH下有两个简单的方法

1、/opt/vc/bin/vcgencmd measure_temp

这个显示的直接就是可视的温度,如:temp=40.0'C

2、cat /sys/class/thermal/thermal_zone0/temp

这个显示的是数字,需要简单的看一下:39920

VNC连上树莓后,显示:Cannot current show this desktop.

用树莓派,其实就是一个 折腾。看了一下资料,其实现在NUC比树莓大不了多少。但NUC可以直接SSD硬盘啊。而树莓没有。

当然,树莓也有自己的好处,比如,我可以折腾几个SD卡,装上不同的工具。想用哪个的时候插哪个就行了,除了卡一点。

为什么用VNC,就是因为create_ap失败。想看看图形下怎么搞,结果vnc报这个错。

OK,运行:sudo raspi-config,进入Advanced Options,然后选择Resolutions,选择一个你想要的分辨率的。默认的分辨率是300x200,所以不能显示。想想树莓都能 支持4K了。还是选个最大的吧。

点击OK后,提示重启。

然后VNC就可以连接了。

无数据线,通过wifi连接树莓派4

网上很多类似的教程,我刚买了个树莓派4,没有micro hdmi线,没有USB线。没有键盘鼠标。开始很纠结。怎么办呢?

因为,插了有线也搜不到网络。后来google了一下,有一堆文章在说这个:
1、https://juejin.im/post/6844903908536483853
2、https://blog.csdn.net/huryer/article/details/83146721
3、https://www.jianshu.com/p/cbbf45c5500d
 
按照上面的试了一下,但死活连接不上。我以为是用的lite的img文件,开始以为是img的问题。换了full的也这样。
因为开始遇到点小问题,比如。我明明建了空ssh文件和wpa_supplicant.conf,但每次发现wifi打不开的时候。把卡拿出来放到读卡器,这两个文件就不见了。开始以为是卡只读的,后来才知道。。。只是被系统移走罢了
 
OK,那究竟为什么呢?我就在猜,是不是因为5G的原因?我连接的都是5G的网络。于是换成2.4G的,结果。。。。。通了。
 
崩溃啊。就因为连接了5G的网络,浪费了我2小时。

nginx websocket proxy_pass的配置

 在nginx下配置Websocket的proxy_pass还是很方便的。几乎和默认的proxy_pass一致,只要加两行代码:

XML/HTML代码
  1. proxy_set_header Upgrade $http_upgrade;  
  2. proxy_set_header Connection $connection_upgrade;  

如果对http_upgrade和$connection_upgrade的变量有自定义,可以这样写:

XML/HTML代码
  1. map $http_upgrade $connection_upgrade {  
  2.     default upgrade;  
  3.     '' close;  
  4. }  

如果不熟悉map的用法,这里有一篇中文的说明:https://blog.51cto.com/tchuairen/2175525

至此,一个websocket 就配置好了,但偶尔你可能还是会发现ws会断开,所以最好设置一下超时时间。比如5分钟?

XML/HTML代码
  1. proxy_read_timeout 300s;  
  2. proxy_send_timeout 300s;  

毕竟网络不好的时候。。30s或者60s是真有可能会数据发出去收不到的。干脆延长一点吧。

参考:

1、https://www.xncoding.com/2018/03/12/fullstack/nginx-websocket.html

2、https://blog.51cto.com/tchuairen/2175525