标签 Raspberry 下的文章

“”

树莓派介绍
树莓派(英语:Raspberry Pi)英国树莓派基金会开发的微型单板计算机,目的是以低价硬件及自由软件促进学校的基本计算机科学教育。

树莓派系列计算机每一代均使用博通(Broadcom)出产的ARM架构处理器,如今生产的机型(树莓派4B)内存在2GB和8GB之间,主要TF卡作为系统存储媒体(初代使用SD卡),配备USB接口和HDMI的视频输出(支持声音输出),内置Ethernet/WLAN/Bluetooth网络链接的方式(依据型号决定),并且可使用多种操作系统。产品线型号分为A型、B型、Zero型和ComputeModule计算卡。

Raspberry Pi OS是官方推出的操作系统,适用于所有型号的树莓派。

树莓派shadowsocks解决method aes-256-gcm not supported方法
sudo apt install python3 && sudo apt install python3-pip
sudo pip install https://github.com/shadowsocks/shadowsocks/archive/master.zip -U
sudo apt-get install -y libsodium*

树莓派 ss shadowsocks-for-raspberry
sudo vim /etc/shadowsocks/config.json 编辑服务器的信息
使用sudo sslocal -c /etc/shadowsocks/config.json -d -start 就可以运行ss了
设置开机自动启动,新建一个sh脚本,输入下列代码,加入执行权限,sudo chmod 755 shadowsocks.sh, 然后编辑开机启动脚本sudo vim /etc/rc.local,在exit 0 之前加入/home/pi/Documents/shadowsocks.sh

sudo sslocal -c /etc/shadowsocks/config.json -d start

OK,shadowsocks就安装好了,但是socks5不支持http和https的协议,所以还需要安装代理

树莓派 安装privoxy
安装privoxy, sudo apt-get install privoxy
配置privoxy,sudo vim /etc/privoxy/config,找到并修改为以下代码

listen-address  127.0.0.1:8118
forward-socks5   /               127.0.0.1:1080 .
# 访问局域网不走ss
forward         192.168.*.*/     .
forward            10.*.*.*/     .
forward           127.*.*.*/     .

启动privoxy,systemctl start privoxy
现在进行测试,curl google.com --proxy 127.0.0.1:8118,如果有结果那么配置成功了,现在可以通过privoxy代理任意程序了
树莓派 you-get

sudo pip3 install you-get
you-get -V

you-get: version 0.4.1555, a tiny downloader that scrapes the web.

安装apache2

sudo apt install apache2 -y

安装php

sudo apt install php -y

restart Apache2:

sudo service apache2 restart

Install MySQL (MariaDB Server) on Raspberry Pi
MySQL (often pronounced My S–Q–L) is a popular open source relational database.
Install the MySQL Server (MariaDB Server) and PHP-MySQL packages by entering the following command:

sudo apt install mariadb-server php-mysql -y
sudo service apache2 restart
sudo mysql_secure_installation

To install phpMyAdmin on a Raspberry Pi, type the following command into the terminal:

sudo apt install phpmyadmin -y

Enable the PHP MySQLi extension and restart Apache2 for changes to take effect:

sudo phpenmod mysqli
sudo service apache2 restart

如果/var/www/html/目录下面没有phpmyadmin文件夹,执行下面命令

sudo ln -s /usr/share/phpmyadmin /var/www/html/phpmyadmin

访问localhost/phpmyadmin,如果出现HY000/1698错误:
mysqli_real_connect(): (HY000/1698): Access denied for user 'root'@'localhost'
解决办法:
sudo mysql -uroot -p

输入密码成功登录后,建立一个新的用户,并给予最大的权限:

CREATE USER '新用户'@'%' IDENTIFIED BY '新用户的密码';
GRANT ALL PRIVILEGES ON . TO '新用户'@'%' WITH GRANT OPTION;

好了,用你的新用户名和密码去登录phpmyadmin吧。

建议步骤:

sudo chown -R pi:www-data /var/www/html/
sudo chmod -R 770 /var/www/html/

linux nobody socket bind

sudo setcap CAP_NET_BIND_SERVICE=+eip /path/to/binary

raspberrypi 关闭wifi
运行以下命令来确保rfkill的安装。

sudo apt install rfkill

禁用Raspberry Pi上的Wi-Fi接口

sudo rfkill block wifi

禁用你的蓝牙连接。

sudo rfkill block bluetooth

想恢复连接的功能,你可以运行以下命令。

sudo rfkill unblock wifi

raspberrypi 供电不足 异常

当+5V电源输入电压不足时,显示屏的右上角会显示一个黄色的小闪电符号作为报警。 +5V电源输入电压不足会引起很多问题,比如运行不稳定,数据丢失,甚至会导致SD卡永久损坏。 使用一个优质的、足功率、足电压的电源适配器是必须的。但即使我们使用官方电源适配器,偶尔也会因为micro USB口长期反复插拔后,导致接触不良而引起接触电阻过高,使得树莓派+5V输入电压不足。 于是我们需要有能够实时监测树莓派电压不足(Under-voltage)的方法,以便能够在所开发的应用中及时报警,或者采取相应行动。

原理
Raspberry Pi OS 中的命令 vcgencmd get_throttled 会得到一个十六进制数,这个数字反映了和当前系统频率、输入电压等相关的状态信息

$ vcgencmd get_throttled

throttled=0x50005

这个数字转换为二进制后,其中的8位,代表了8个标志的状态,我们重点看其中的两位:

这个数字的第 0 位为 1 的话,表明当前发生了输入电压不足的情况;
这个数字的第 16 位为 1 的话,表明启动之后曾经发生过输入电压不足的情况;
那我们只要实时检测这两个标志位,就可以监测到树莓派输入电压不足的情况。

#Flag Bits
UNDERVOLTED         = '0'
CAPPED              = '1'
THROTTLED           = '2'
SOFT_TEMPLIMIT      = '3'
HAS_UNDERVOLTED     = '16'
HAS_CAPPED          = '17'
HAS_THROTTLED       = '18'
HAS_SOFT_TEMPLIMIT  = '19'

UNDERVOLTED 说明输入电压过低了
THROTTLED 表明系统工作频率被强制降低了
HAS_UNDERVOLTED 说明曾经检测到电压过低的情况,
HAS_THROTTLED 说明曾经被降频

raspberrypi 降低功率
禁用 HDMI 输出
估计省电:约 30mA。

在无头配置中使用 Raspberry Pi 时,根据定义,您也不需要连接显示器。如果是这种情况,您也可以禁用 HDMI 输出。

要禁用 Raspberry Pi 上的 HDMI 输出,请执行以下命令:

sudo /opt/vc/bin/tvservice -o

然后,要在再次需要时重新启用 HDMI 输出,请使用以下命令:

sudo /opt/vc/bin/tvservice -p

与禁用 USB 控制器一样,重新启动后启用 HDMI 输出。