导航:首页 > 配服务器 > 如何将服务器数据发往指定树莓派

如何将服务器数据发往指定树莓派

发布时间:2023-03-19 06:55:41

㈠ 树莓派 python 如何将本地文件上传到指定的服务器页面上

以下是单个文件的,不确定你的文件夹是什么意思,可以压缩下再上传(方法一样,调用zip命令

我的实现方法:调用终端的curl,以下为代码平片段,实现的功能是上传log文件到服务器,供参考:

defpost_log(self,post_url,del_source_file=True):
'''
postlogtologserver
'''
ifself.log_path:
command="curl-s-Flog=@{0}{1}".format(self.log_path,post_url)
return_str=os.popen(command).read()
logging.debug(return_str)
#printreturn_str
ifreturn_str=="success":
ifdel_source_file:
del_command="sudorm{0}".format(self.log_path)
os.system(del_command)
returnTrue
else:
returnFalse
returnFalse

㈡ 树莓派与web服务器通讯

接入网络需要连接无线网,光纤,移动网咯。
设备之间也可以通过互相连接来共享网络,前提是设备支持网络共享。
(泰海网络 泰海-杨硕 为您解答)

㈢ 怎样通过外网ssh访问树莓派

建立 树莓派 到 VPS 的反向代理【树莓派 上操作】

ssh -fCNR :localhost:22 [email protected]

为 VPS 上端口,用来与 树莓派 上的22端口绑定。

建立 VPS 上的正向代理,用作本地转发。做这一步是因为绑定后的 端口只支持本地访问【VPS 上操作】

ssh -fCNL *::localhost: localhost

为本地转发端口,用以和外网通信,并将数据转发到 ,实现可以从其他机器访问。

其中的*表示接受来自任意机器的访问。

现在在 Client 机器上可以通过 VPS ssh 到树莓派。

ssh -p [email protected]

至此方案完成。

同理,也可以建立反向代理通过VNC来连接内网树莓派的图形界面。

附:

SSH 参数解释

-f 后台运行

-C 允许压缩数据

-N 不执行任何命令

-R 将端口绑定到远程服务器,反向代理

-L 将端口绑定到本地客户端,正向代理

㈣ 树莓派里的文件复制到本地-scp命令

使用scp命令拷贝文件非常好用,我们可以通过scp命令把本地文件上传到树莓派,也可以把树莓派里的文件拷贝到本地。

本地系统: MacOS
树莓派的IP地址: 192.168.123.159
树莓派用户名: pi
本地文件夹位置: /Users/yushengtan/desktop/
树莓派文件夹位置: /home/pi/download/Desktop/

假如我们要把本地桌面上的文件1.txt拷贝到树莓派服务器桌面上,可以使用命令: scp <本地文件夹及文件> <远程用户名>@<远程ip>:<远程文件夹>

执行命令后按要求输入ssh登录密码即可;
支持文件夹拷贝,只需在scp 后添加一个 -r 参数即可。

加入我们要把树莓派桌面上的文件2.txt拷贝到本地,可以使用命令: scp <远程用户名>@<远程ip>:<远程文件夹> <本地文件夹及文件>

scp同样支持文件夹拷贝,只需在scp 后添加一个 -r 参数即可,
如把本地桌面目录拷贝到远程树莓派桌面:

㈤ 如何将android linux烧到Raspberry Pi及其调试

一.Raspberry Pi入门向导。

可以在以下地址下载Raspberry向导


2.构建android framework

命令如下:

cd <your_android_path>

source build/envsetup.sh

lunch


显示lunch菜单如下:

You’re building on Linux


Lunch menu… pick a combo:

1. full-eng

2. full_x86-eng

3. simulator

4. full_rpi-eng

5. cyanogen_generic-eng

6. cyanogen_rpi-eng

选择第6个菜单。

然后进行编译

make -j8

等待编译成功,这可能需要几十分钟。


编译成功之后将”system”目录复制到root目录下,接下来我们可能会用到。

命令如下:

cd <your_android_path>

cp -r system out/target/proct/rpi/root


ps:编译时如果jdk版本不对,可将其改成jdk1.6


五.如何在Raspberry Pi上跑android linux内核?


1.准备一张存储空间2G以上的SD卡及相应读卡器。


2.下载arch linux镜像文件

用wget工具下载镜像文件:

wget http://files.velocix.com/c1410/images/archlinuxarm/archlinux-hf-2012-09-18/archlinux-hf-2012-09-18.zip

解压

unzip archlinux-hf-2012-09-18.zip

成功之后,你会在当前目录下发现一个镜像文件。


3.烧linux镜像文件。

sudo dd bs=4M if=archlinux-hf-2012-09-18.img of=/dev/sdb

sudo sync

ps:/dev/sdb是SD卡在主机上的设备文件。不同的电脑可能不同。


4.用android linux内核代替这个内核。

做完上述步骤之后,当你把SD卡插在电脑上,你会发现有两个分区:一个是引导区,另一个是文件系统区。

用android linux内核代替引导区的kernel.img。

cp -uv <your_android_linux_path>/arch/arm/boot/zImage <your_sdcard_boot_partition>/kernel.img


5.用android linux文件系统代替这个linux文件系统

rm -rf <your_sdcard_file_system_partition>

cp -r <your_android_source_code_path>/out/target/proct/rpi/root/* <your_sdcard_file_system_partition>


6.配置内核命令行cmdline.txt

Edit the <your_sdcard_boot_partition>/cmdling.txt, and replace “init=/…” with “init=/init”


7.做完这些之后就可以在Raspberry Pi上跑这个android linux内核。


六.如何为Android linux做一张可引导的SD卡


1.删除已有分区,如果没有就不用删了。

Command(m for help):p


Disk /dev/sdb: 15.7 GB, 15707668480 bytes

64 heads, 32 sectors/track, 14980 cylinders, total 30668085 sectors

Units = sectors of 1 * 512 = 512 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk identifier: 0×00000000


sudo fdisk/dev/sdb


Command(m for help):d

Partition number(1-4):1


Command(m for help):d

Selected partition 2


Command (m for help): p


Disk /dev/sdb: 15.7 GB, 15707668480 bytes

64 heads, 32 sectors/track, 14980 cylinders, total 30679040 sectors

Units = sectors of 1 * 512 = 512 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk identifier: 0×00000000

Device Boot Start End Blocks Id System


Command(m for help):w

ps:确定删除之后,卸掉SD卡,然后再装上。


以bytes问单位记下SD卡的大小。后面的步骤会用到。

然后进入”Expert mode”。


Command(m for help):x


将这个SD卡设置为255个磁面,63个扇区和磁柱数量(不同的SD/mmc卡有着不同的此柱数量)

Expert command (m for help): h

Number of heads (1-256, default 64): 255


Expert command (m for help): s

Number of sectors (1-63, default 32): 63


ps:在下一步开始前,先要计算磁柱数量,计算过程如下:

B:SD卡以bytes为单位的大小(前面已经记住了即:15707668480)

C:磁柱的数量

C=B/255/63/512


例如:我的SD卡大小是16G(15707668480)

C=15707668480/255/63/512=1909.68191721,约等于1909.


Expert command (m for help): c

Number of cylinders (1-1048576, default 14980): 1909

Expert command (m for help): r


2.新建分区

如果你的SD卡已经分区,请按照上述步骤删除分区。接下来,我们将创建两个分区,一个是引导区,用来存放内核镜像等文件;另一个文件系统区存放android linux文件系统。


Command (m for help): n

Partition type:

p primary (0 primary, 0 extended, 4 free)

e extended

Select (default p): p

Partition number (1-4, default 1):

Using default value 1

First sector (2048-30679039, default 2048):

Using default value 2048

Last sector, +sectors or +size{K,M,G} (2048-30679039, default 30679039): +128M

Command (m for help): t

Selected partition 1

Hex code (type L to list codes): c

Changed system type of partition 1 to c (W95 FAT32 (LBA))

Command (m for help): a

Partition number (1-4): 1

Command (m for help): n

Partition type:

p primary (1 primary, 0 extended, 3 free)

e extended

Select (default p): p

Partition number (1-4, default 2):

Using default value 2

First sector (264192-30679039, default 264192):

Using default value 264192

Last sector, +sectors or +size{K,M,G} (264192-30679039, default 30679039):

Using default value 30679039

Command (m for help): w

The partition table has been altered!

Calling ioctl() to re-read partition table.

WARNING: If you have created or modified any DOS 6.x

partitions, please see the fdisk manual page for additional

information.

Syncing disks.


ok,分区成功,现在我们有两个分区,接下我们对分区进行格式化。


3.格式化分区

对引导区进行格式化:


sudo mkfs.msdos -F 32 /dev/sdb1 -n BOOT

mkfs.msdos 3.0.12 (29 Oct 2011)


对文件系统区进行格式化:

sudo mkfs.ext3 /dev/sdb2 -L ROOTFS

mke2fs 1.42 (29-Nov-2011)

Filesystem label=ROOTFS

OS type: Linux

Block size=4096 (log=2)

Fragment size=4096 (log=2)

Stride=0 blocks, Stripe width=0 blocks

950976 inodes, 3801856 blocks

190092 blocks (5.00%) reserved for the super user

First data block=0

Maximum filesystem blocks=3896508416

117 block groups

32768 blocks per group, 32768 fragments per group

8128 inodes per group

Superblock backups stored on blocks:

32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208

Allocating group tables: done

Writing inode tables: done

Creating journal (32768 blocks): done

Writing superblocks and filesystem accounting information: done


4.设置引导区

引导区必须包含以下文件,你可以从官方镜像里获取(bootable/fat32 partition)也可以从书面步骤中复制过来:

bootcode.bin:第二阶段的引导程序,

loader.bin:第三阶段的引导程序,

start.elf:GPU二进制固件映像,

kernel.img操作系统的内核镜像文件,

cmdline.txt:传递给内核的参数.


5.设置root文件系统分区

ROOTFS分区包含android文件系统,是从<your_android_framework_path>/out/target/proct/rpi/root复制过来的。

cp -r <your_android_framework_path>/out/target/proct/rpi/root/* /media/ROOTFS/


6.完成上述步骤之后,将其放在Raspberry Pi上跑。


七.如何在Raspberry Pi使用adb?


1.查看网络

当android linux在Raspberry Pi运行时,切换到控制台,执行以下命令:

ifconfig eth0

记下ip地址。

如果不能找到ip,可以输入以下命令:/system/xbin/dhcp-eth0,来启动网络连接程序。

ps:如果屏幕没有显示控制台,只要按CTRL+ALT+F2即可切换到控制台。如果你想要切换到Android界面,只要按CTRL+ALT+F7即可。


2.远程连接adb服务器

在主机上执行以下命令即可与同一局域网的Raspberry Pi相连

adb connect ip

连接成功后,你就可以用adb工具输出日志,执行shell命令等。


3.也可以用数据线连接主机,直接在主机上调试。

进入调试的命令为:

screen /dev/ttyUSB0 115200


名词解释:

交叉编译(cross compile):交叉编译呢,简单地说,就是在一个平台上生成另一个平台上的可执行代码。这里需要注意的是所谓 平台,实际上包含两个概念:体系结构(Architecture)、操作系统(Operating System)。同一个体系结构可以运行不同的操作系统;同样,同一个操作系统也可以在不同的体系结构上运行。举例来说,我们常说的x86 Linux平台实际上是Intel x86体系结构和Linux for x86操作系统的统称;而x86 WinNT平台实际上是Intel x86体系结构和Windows NT for x86操作系统的简称。

㈥ 树莓派搭建文件服务器

https://www.raspberrypi.org/downloads/raspberry-pi-os/

安装 Etcher 之后启动 Etcher,插入 SD 卡、选择要安装的 img 文件、选择 SD 卡对应的磁盘分区
https://www.balena.io/etcher/

① 新建一个ssh空白文件,放到root目录下,树莓派开机会自动启用
② 网络优先选择有线网络
③ 无线网络
将刷好 Raspbian 系统的 SD 卡用电脑读取。在 boot 分区,也就是树莓派的 /boot 目录下新建

具体详情看下面
https://shumeipai.nxez.com/2017/09/13/raspberry-pi-network-configuration-before-boot.html

方法1:利用路由器软件查看IP地址

方法2:

ssh连接默认用户名:pi 密码:raspberry

方法3:IP Scanner

1.切换 root权限 sudo su
2.编辑下列文件

连接raw.githubusercontent.com失败
step1 :
在 https://site.ip138.com/raw.Githubusercontent.com/
输入raw.githubusercontent.com查询IP地址
step2 :
sudo nano /etc/hosts
你查到的ip地址,香港的就行 raw.githubusercontent.com
比如:
151.101.76.133 raw.githubusercontent.com

OpenMediaVault项目地址:
https://github.com/OpenMediaVault-Plugin-Developers/installScript

执行安装脚本:

step1:
输入树莓派的IP地址
初始用户名:admin
密码:openmediavault
step2:
1.连接硬盘
2.文件系统—>卸载硬盘
3.磁盘—>擦除
4.文件系统—>新建 文件系统选择EXT4
5.挂载—>应用
6.共享文件夹—>新建一个文件夹 设置权限
7.SMB/CIFS —>启用
8.共享—>添加共享

mac登陆
前往:连接服务器 smb://树莓派的ip地址
windows
我的电脑—>右键—>映射网络驱动器—>找到共享的文件夹

阅读全文

与如何将服务器数据发往指定树莓派相关的资料

热点内容
python计算子网掩码 浏览:57
加密u盘制作成iso镜像 浏览:491
oppo大文件夹图标 浏览:173
用cmd打开python文件 浏览:366
程序员磁盘知识 浏览:584
左搂右抱命令 浏览:931
法律大还是行政命令大 浏览:354
中国银行手机app在哪里刷脸 浏览:900
epidata如何编程 浏览:989
助眠解压玩具电动 浏览:235
4k显示器编程 浏览:267
什么错误在编译时会发现 浏览:700
学会自己解压英语 浏览:44
安卓豪华版是什么意思 浏览:684
c语言编程软件打开 浏览:21
碧蓝航线图片文件夹位置 浏览:671
winme编译 浏览:522
淘宝上买东西发顺丰快递地址都加密吗 浏览:415
批处理编译VS代码 浏览:891
uchar哪个编译器 浏览:28