程序员与树莓派

2017年的XX月XX日,好友见我每日除了敲代码就是瞎琢磨,便无情的向我推荐了一个叫树莓派的东西,然后出于无聊就度娘了一下,好吧,到此二年前的事说完了。
2019年的05月07日淘宝下单购入一块3B+的板子,板子到手前,各种学习写实验在脑海中飘过,板子到手第一天装系统到12点,然后公司就开始了加班。
2019年的05月18日第二次开机树莓派

树莓派 VNC Viewer 远程桌面配置教程

  • 启用树莓派 VNC 服务
sudo raspi-config

依次操作:Interfacing Options -> VNC -> Yes

  • 安装 VNC 客户端
    RealVNC Viewer

  • 登录远程桌面
    运行 RealVNC Viewer 之后输入树莓派的 IP 地址

Raspbian 中国软件源

  • 备份
sudo cp /etc/apt/sources.list /etc/apt/sources.list.bak
sudo cp /etc/apt/sources.list.d/raspi.list /etc/apt/sources.list.d/raspi.list.bak
  • 编辑软件源配置
文件/etc/apt/sources.list是一个普通可编辑的文本文件,保存了ubuntu软件更新的源服务器的地址。
和sources.list功能一样的是/etc/apt/sources.list.d/*.list(*代表一个文件名,只能由字母、数字、下划线、英文句号组成)。sources.list.d目录下的*.list文件为在单独文件中写入源的地址提供了一种方式,通常用来安装第三方的软件.

 每一行的开头是deb或者deb-src,分别表示直接通过.deb文件进行安装和通过源文件的方式进行安装。


 编辑 /etc/apt/sources.list 文件(软件源)
sudo nano /etc/apt/sources.list

删除原文件所有内容,
stretch 系统用以下内容取代:

deb http://mirrors.sysu.edu.cn/raspbian/raspbian/ stretch main contrib non-free
deb-src http://mirrors.sysu.edu.cn/raspbian/raspbian/ stretch main contrib non-free

jessie 用以下内容取代:

deb http://mirrors.sysu.edu.cn/raspbian/raspbian/ jessie main contrib non-free
deb-src http://mirrors.sysu.edu.cn/raspbian/raspbian/ jessie main contrib non-free

wheezy 用以下内容取代:

deb http://mirrors.sysu.edu.cn/raspbian/raspbian/ wheezy main contrib non-free
deb-src http://mirrors.sysu.edu.cn/raspbian/raspbian/ wheezy main contrib non-free

Ctrl+o 保存,之后回车确认,然后 Ctrl+x 退出。

编辑 /etc/apt/sources.list.d/raspi.list 文件(系统更新源)

sudo nano /etc/apt/sources.list.d/raspi.list

deb http://mirrors.ustc.edu.cn/archive.raspberrypi.org/debian/ stretch main ui
# Uncomment line below then 'apt-get update' to enable 'apt-get source'
#deb-src http://archive.raspberrypi.org/debian/ stretch main ui

  • 更新
#更新软件源列表
sudo apt-get update
#更新软件版本
sudo apt-get upgrade
sudo apt-get dist-upgrade
#更新系统内核
sudo rpi-update

树莓派关机,重启

  • 关机
 sudo shutdown -h now
 sudo halt
 sudo poweroff
 sudo init 0

以上四种方法随意都可以,据说是安全关机

  • 重启
sudo reboot
shutdown -r now

修改树莓派的主机名称 网络名称

  • 主机名称
sudo nano /etc/hostname
  • 网络名称
sudo nano /etc/hosts

Ctrl+O 保存所做的修改,按 Ctrl+X 退出 重启 raspberrypi

树莓派用USB摄像头进行拍照和远程监控

查看usb设备
lsusb

ls /dev   video0就是摄像头

  • 拍照
sudo apt-get install fswebcam

fswebcam -S 10 pic.jpg

  • 远程监控 这个实在卡顿呀
sudo apt-get install motion

sudo nano /etc/default/motion  //把start_motion_daemon=no中的no改成yes

sudo vi /etc/motion/motion.conf //修改deamon off为deamon on 修改stream_localhost on为stream_localhost off

sudo motion //开启

sudo killall -TERM motion //关闭

在PC的浏览器中访问如下地址:https://192.168.31.252:8081。

  • 远程监控
安装依赖库
sudo apt-get install libjpeg8-dev   #JPEG支持库
sudo apt-get install cmake          #下载编译工具

下载mjpg-streamer
cd /home/pi/Downloads/
git clone https://github.com/jacksonliam/mjpg-streamer.git

cd /home/pi/Downloads/mjpg-streamer/mjpg-streamer-experimental

make clean all

./mjpg_streamer -i "./input_raspicam.so" -o "./output_http.so -w ./www"

制作mjpg的启动脚本
 sudo nano streamer.sh

cd mjpg-streamer-master/mjpg-streamer-experimental

./mjpg_streamer -i "./input_uvc.so" -o "./output_http.so -w ./www"(USB摄像头)

./mjpg_streamer -i "./input_raspicam.so" -o "./output_http.so -w ./www"(官方CIS摄像头)

chmod 744 streamer.sh

执行mjpg脚本
sh streamer.sh

Linux命令是什么意思 -w -i -o

-w 就是修改文件里面的参数
-t 指定修改表的类型(nat、filter、mangle、raw)
-i 指定表中的链,每种类型的链都不相同
-o 指定网卡
-j 指定如何处理(accecpt、reject、drop)

未完待续

原文地址:https://www.cnblogs.com/fuqian/p/10890304.html