广告
返回顶部
首页 > 资讯 > 后端开发 > Python >在树莓派3(RaspberryPi 3B
  • 760
分享到

在树莓派3(RaspberryPi 3B

树莓派RaspberryPi 2023-01-31 06:01:03 760人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

前置:1.主机名请从默认的RaspberryPi 改为 test.com sudo nano /etc/hostname 请将文件中的RaspberryPi改为 test.com 2.将树莓派的ip地址改为静态,此例中为172.16.0.6

前置:
1.主机名请从默认的RaspberryPi 改为 test.com

sudo nano /etc/hostname

请将文件中的RaspberryPi改为 test.com

2.将树莓派的ip地址改为静态,此例中为172.16.0.68,网关出口为172.16.0.1

sudo nano /etc/dhcpcd.conf

在该文件的最末加上如下设定:

interface eth0
static ip_address=172.16.0.68/24
static routers=172.16.0.1
static domain_name_servers=114.114.114.114 8.8.8.8

3.将主机本身解析到172.16.0.68

sudo nano /etc/hosts

注释掉关于RaspberryPi的记录,增加如下一行:

172.16.0.68     test.com

4.重启pi

5.本例中在windows系统中使用putty提供的pscp.exe上传相关文件。

一、建立kms服务器
在树莓派3上建立kms服务器有很多种做法,这里介绍一种比较简单的,一种复杂的。

请在(一)和(二)之中任择其一!

(一)使用已经编辑好的kms服务器文件。
该文件由Hotbird64大神编写。
下载地址为https://forums.mydigitallife.net/threads/emulated-kms-servers-on-non-windows-platfORMs.50234/
要下载需注册。
下载后的文件解包,我们需要的文件为:

\binaries\linux\arm\little-endian\glibc\vlmcsd-armv6hf-Raspberry-glibc

将文件改名为:vlmcsdpi

1、新建KMS文件夹

mkdir /home/pi/kms

2、上传kms文件
在win下,启动cmd或者powershell,进入pscp.exe所在文件夹,我将pscp.exe和vlmcsdpi都放在e:\putty下面了。

cd e:\putty
pscp e:\putty\vlmcsdpi pi@172.16.0.68:/home/pi/kms/

输入pi的密码后上传成功。

3、赋予执行权限

chmod 777 /home/pi/kms/vlmcsdpi

4、设定开机自启动

sudo nano /etc/rc.local

在exit 0之前加入:

/home/pi/kms/vlmcsdpi -l /var/log/vlmcsd.log > /dev/null 2>&1

5、启动服务:

/home/pi/kms/vlmcsdpi -l /var/log/vlmcsd.log

日志文件就是:/var/log/vlmcsd.log

6、停止服务:
查找进程号,杀掉就可以

sudo ps -ef | grep vlmcsdpi
sudo kill -s 9 进程号

这个方法是搭建快速,升级方便。如果Hotbird64大神出了新版,升级只要将新版文件替换进去就可以。

(二)使用py-kms搭建kms服务器
1.安装git

sudo apt-get install git

2.在pi的家目录中下载py-kms:

git clone Https://GitHub.com/myanaloglife/py-kms

因为pi中自带了python,所以下载完以后就可以进行初步测试

cd py-kms  
Python server.py

看到

tcp server listening at 0.0.0.0 on port 1688. 

的提示为成功。按Ctrl+c退出。

3.使用supervisor确保kms服务长期运行:

现将py-kms放入/usr/local/:

sudo cp -r py-kms /usr/local/

安装supervisor:

sudo apt-get install python-setuptools
sudo easy_install supervisor 

写入配置文件

mv /etc/supervisord.conf /etc/supervisord.conf.bak
sudo nano /etc/supervisord.conf

内容为:

;/etc/supervisord.conf
[unix_http_server]
file = /var/run/supervisord.sock
chmod = 0777
chown= root:root

[inet_http_server]
port=*:9001
username = pi
passWord = yourpassword

[supervisorctl]
; 必须和'unix_http_server'里面的设定匹配
serverurl = unix:///var/run/supervisord.sock

[supervisord]
logfile=/var/log/supervisord.log                               ; (main log file;default $CWD/supervisord.log)
logfile_maxbytes=50MB                                          ; (max main logfile bytes b4 rotation;default 50MB)
logfile_backups=10                                             ; (num of main logfile rotation backups;default 10)
loglevel=info                                                  ; (log level;default info; others: debug,warn,trace)
pidfile=/var/run/supervisord.pid                               ; (supervisord pidfile;default supervisord.pid)
nodaemon=true                                                  ; (start in foreground if true;default false)
minfds=1024                                                    ; (min. avail startup file descriptors;default 1024)
minprocs=200                                                   ; (min. avail process descriptors;default 200)
user=root                                                      ; (default is current user, required if root)
childlogdir=/var/log/                                          ; ('AUTO' child log dir, default $TEMP)

[rpcinterface:supervisor]
supervisor.rpcinterface_factory = supervisor.rpcinterface:make_main_rpcinterface

[program:pykms]  
command=python /usr/local/py-kms/server.py  
autorestart=true  
user=root  

写入配置文件后,执行:

sudo chmod 777 /var/run  
sudo chmod 777 /var/log  
sudo touch /var/run/supervisor.sock
sudo chmod 777 /var/run/supervisor.sock

启动supervisor:

sudo supervisor

4.使supervisor开机启动:

sudo nano /etc/rc.local

在exit 0之前加入:

sudo supervisor 

重启pi后,查看进程是否正常启动:

supervisorctl 

正常的情况下,server.py应该是running。
使用quit退出。

5.对kms服务器进行测试:

cd  /usr/local/py-kms
python client.py -v 172.16.0.68

测试结果为:

Connecting to 172.16.0.68 on port 1688...  
Connection successful!  
Sending RPC bind request...  
RPC bind acknowledged. 

则为成功。

二、使局域网中的机器可以自行激活
在开始此步之前,请确保:局域网中所有其他DHCP服务器均已经关闭!

1.建立/etc/resolv.dnsmasq.conf文件

sudo cp  /etc/resolv.conf /etc/resolv.dnsmasq.conf
sudo nano /etc/resolv.dnsmasq.conf

删除文件中原有内容,新建内容如下:

nameserver 114.114.114.114
nameserver 8.8.8.8

2.安装用于测试DNS的软件

sudo apt-get install dnsutils

3.安装轻型dns转发服务器、dhcp服务器

sudo apt-get install  dnsmasq

4.配置dnsmasq:

sudo mv /etc/dnsmasq.conf /etc/dnsmasq.conf.bak
sudo nano /etc/dnsmasq.conf

配置内容如下:

#指定上游服务器地址,由/etc/resolv.dnsmasq.conf文件内容决定
resolv-file=/etc/resolv.dnsmasq.conf
# 严格按照resolv.dnsmasq.conf中的顺序进行查找
strict-order
#监听地址
listen-address=172.16.0.68,127.0.0.1
#地址池设定
dhcp-range=172.16.0.100,172.16.0.200,255.255.255.0,6h
#设定局域网后缀名,重要,请务必设置
domain=test.com
#指定网关(路由出口)
dhcp-option=3,172.16.0.1
#dhcp-option=option:router,172.16.0.1
#指定地址分发时分配给客户端的DNS,除了本地dns服务器地址,为保险起见,加了其他dns地址
dhcp-option=option:dns-server,172.16.0.68,114.114.114.114
#server=114.114.114.114
#通常用于对于访问不存在的域名,禁止其跳转到运营商的广告站点。
bogus-nxdomain=114.114.114.114
#设定kms服务器响应
srv-host=_vlmcs._tcp,test.com,1688,0,100
#开启日志记录,指定日志文件路径及文件名
log-dhcp
log-facility=/var/log/dnsmasq.log

重启dns服务:

sudo service dnsmasq restart

5.测试命令如下:(请在windows系统中测试,请务必保证网络中其他dhcp服务器已经关闭,Windows系统开启了自动获得地址)
在win下,启动cmd或者powershell

ipconfig  /renew
nslookup -type=srv _vlmcs._tcp
nslookup -q=srv _vlmcs._tcp.test.com

下面2个命令都必须反馈相同的结果:

服务器:  test.com
Address:  172.16.0.68

_vlmcs._tcp.test.com  SRV service location:
          priority       = 0
          weight         = 100
          port           = 1688
          svr hostname   = test.com
test.com      internet address = 172.16.0.68

--结束END--

本文标题: 在树莓派3(RaspberryPi 3B

本文链接: https://www.lsjlt.com/news/190272.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 在树莓派3(RaspberryPi 3B
    前置:1.主机名请从默认的RaspberryPi 改为 test.com sudo nano /etc/hostname 请将文件中的RaspberryPi改为 test.com 2.将树莓派的ip地址改为静态,此例中为172.16.0.6...
    99+
    2023-01-31
    树莓派 RaspberryPi
  • 树莓派3(Raspberry Pi 3)
    ·树莓派3(Raspberry Pi 3)安装Win10 IOT1、格式化SD卡(用SDFormatter工具) 2、下载noobs lite即可(https://www.raspberrypi.org/downloads/noobs/),...
    99+
    2023-01-31
    树莓派 Raspberry Pi
  • RaspberryPi(树莓派)如何安装 MariaDB / MySQL 数据库
    但是这里有一个地方需要注意,如果你希望是能够通过网络访问你安装的数据库的话。 在你设置好用户名和密码,以及访问权限后,你可能发现你还是访问不了。 这是因为你的安装服务器只绑定了能够本地访问,你需要修改配置,让你的服务器能够支持远程访...
    99+
    2016-09-05
    RaspberryPi(树莓派)如何安装 MariaDB / MySQL 数据库
  • 利用爬虫、SMTP和树莓派3B发送邮件(
    -----------------------------------------学无止境----------------------------------------- 前言:大家好,欢迎来到誉雪飞舞的博客园,我的每篇文章都是自己用心...
    99+
    2023-01-31
    爬虫 发送邮件 SMTP
  • 在树莓派3上如何安装Fedora
    这篇文章将为大家详细讲解有关在树莓派3上如何安装Fedora,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。获取硬件你需要一些硬件组件,包括树莓派。你不需要任何 HaT(安装在顶部的硬件)&nbs...
    99+
    2023-06-15
  • 树莓派3 蓝牙连接 PS3手柄
       网上没有直接用3蓝牙连接树莓派的教程,看到一篇用2b 和 蓝牙适配器一起用 连接PS3 手柄的,所以先安装一下试试。http://tieba.baidu.com/p/3237051512 下面就是安装必要的软件了:pi@raspber...
    99+
    2023-01-31
    蓝牙 手柄 树莓派
  • RaspberryPi(树莓派)安装 MariaDB 数据库没有办法远程访问
    设置的用户没有办法通过网络远程登录。 首先确定的是,用户已经设置了访问权限。 提示的错误信息是: ERROR 2002 (HY000): Can"t connect to MySQL server on "192.168.0.2...
    99+
    2015-07-20
    RaspberryPi(树莓派)安装 MariaDB 数据库没有办法远程访问
  • 如何在树莓派上安装TT-RSS
    这篇文章主要介绍如何在树莓派上安装TT-RSS,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!Tiny Tiny RSS(TT-RSS)是一个自由开源的基于 Web 的新闻馈送feed(RSS/Atom)阅读器和聚合工...
    99+
    2023-06-16
  • 在树莓派上如何安装Ubuntu MATE
    这篇文章主要介绍在树莓派上如何安装Ubuntu MATE,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!在树莓派上安装 Ubuntu MATE去 Ubuntu MATE 的下载页面获取推荐的镜像。试验性的 ARM64 ...
    99+
    2023-06-16
  • 怎么在树莓派上安装Ubuntu服务器
    这篇文章给大家分享的是有关怎么在树莓派上安装Ubuntu服务器的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。树莓派是最著名的单板计算机。最初,树莓派项目的范围旨在促进学校和发展中国家的计算机基础科学的教学。它的低...
    99+
    2023-06-15
  • 超简单教你在树莓派上安装opencv(二)
    超简单教你在树莓派上安装opencv(二) 前言一、如何基于python3.9.2安装OpenCv?1.1 查看自己系统位数及Python版本,跟对教程1.2 换源1.3 更新1.4 安装依赖...
    99+
    2023-08-31
    opencv 其他 python
  • 如何在一台树莓派上安装Postgres数据库
    这篇文章将为大家详细讲解有关如何在一台树莓派上安装Postgres数据库,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。在你的下一个树莓派项目上安装和配置流行的开源数据库 ...
    99+
    2022-10-18
  • 如何在鸿蒙移植树莓派中添加单板
    本篇文章给大家分享的是有关如何在鸿蒙移植树莓派中添加单板,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。1、添加新单板1.1、修改menuconfig和Kconfig要在鸿蒙的源...
    99+
    2023-06-15
  • 如何在树莓派上构建多节点K8S集群
    这篇文章主要介绍如何在树莓派上构建多节点K8S集群,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!前期准备要创建本文中的Kubernetes集群,我们需要准备:至少一个树莓派(带有SD卡和电源适配器)以太网电缆将我们所...
    99+
    2023-06-03
  • 在Debian(Raspberry Pi)树莓派上安装NodeJS的教程详解
    在树莓派上运行NodeJS并不需要特别的配置,你只需要确保可以用openssh远程连接到你的树莓派。 安装并配置Open SSH服务器 它可以确保你能远程连接到树莓派,它应该已经被安装了,但是这个过程可以确...
    99+
    2022-06-04
    详解 派上 教程
  • 怎么在树莓派中利用mjpg-streamer调用摄像头
    本篇文章给大家分享的是有关怎么在树莓派中利用mjpg-streamer调用摄像头,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。更新软件:sudo apt-get&nb...
    99+
    2023-06-06
  • 在树莓派上如何设置家庭网络的家长控制
    小编给大家分享一下在树莓派上如何设置家庭网络的家长控制,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!安装硬件和软件对于这个项目,你需要一个树莓派和一个家庭网络路由...
    99+
    2023-06-15
  • 如何在树莓派Raspbian下安装支持Hard Float的.NET环境
    本篇文章为大家展示了如何在树莓派Raspbian下安装支持Hard Float的.NET环境,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。【题外话】最近入了个树莓派玩,系统装的官方推荐的Hard F...
    99+
    2023-06-17
  • 在树莓派上搭建WordPress博客网站,并内网穿透发布到公网
    ✨个人主页:bit me👇 目 录 🐾概述💐安装 PHP🌸安装MySQL数据库🌷安装 Wordpress🍀...
    99+
    2023-08-17
    mysql php 数据库 服务器
  • 在树莓派搭建私人音乐服务器navidrome,并支持显示中文歌词
    title: 019《树莓派4B家庭服务器搭建指南》第十九期:在树莓派搭建私人音乐服务器navidrome,并支持显示中文歌词 2023年,国产硬盘价格真的是经济实惠,而版权之争导致我们无法从单个平...
    99+
    2023-10-07
    服务器 运维
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作