网络远程访问的方式使用树莓派

  • Post author:
  • Post category:其他




一、软件准备


1.树莓派镜像

官网:

Raspberry Pi OS – Raspberry Pi



2.SDCardFormatterv5



SD Memory Card Formatter | SD Association (sdcard.org)



3.烧录工具Raspberry Pi



Raspberry Pi



4.putty



Download PuTTY: latest release (0.77) (greenend.org.uk)



二、操作


SD卡格式化

打开下载好的SDCardFormatter将我们的SD卡进行格式化

在这里插入图片描述

格式化成功

在这里插入图片描述

在这里插入图片描述


烧录

打开我们的烧录工具,依次选择我们要烧录的镜像和烧录的SD卡点击烧录就可以了

在这里插入图片描述

等待了一段时间之后烧录成功

在这里插入图片描述


网络配置

打开SD卡,在boot目录建立一个SSH文件

建立一个空文本文件wpa_supplicant.conf

在文本中输入

country=CN
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
 
network={
	ssid="你的无线网名称"
	psk="你的无线网密码"
	key_mgmt=WPA-PSK
	priority=1
}

在这里插入图片描述

将SD卡拔出插入树莓派并给树莓派接上电源,可以在手机上看到树莓派已经连入,查看树莓派的ip地址,可以下载一个Advanced IP Scanner,打开终端输入ipconfig,查看无线热点的IP地址,然后在IP Scanner中搜索

在这里插入图片描述

在这里插入图片描述

确保我们电脑连接的也是手机热点,看到ip地址是192.168.79.57,在搜索时搜索192.168.79.1-255

这样就找到我们树莓派的IP地址了

在这里插入图片描述


putty远程连接

打开putty,在putty中输入刚才的ip,然后建立连接,输入默认的用户密码

默认的用户:pi

默认的密码:raspberry

如果默认的账号密码不对,可以在boot中建立一个userconf.txt文件,此文件是单行文本,由 username:用户名内容-password:密码 组成——即想要的用户名,紧跟一个冒号,紧跟一个要使用的密码的加密表示。

或者在开始写入镜像的时候配置账号和密码

在这里插入图片描述

然后再次输入我们的账号密码就进入系统了

在这里插入图片描述

进行树莓派配置sudo raspi-config

在这里插入图片描述

然后选择interface options

在这里插入图片描述

打开VNC服务

在这里插入图片描述

然后打开VNC Viewer

输入树莓派的ip,然后输入账户和密码

在这里插入图片描述

这样就成功了。



三、创建账号并在个人文件夹中创建assert断言c程序

创建用户

打开终端输入命令

su -
useradd -m -s /bin/bash 用户名
 
//密码设置
passwd 用户名

在这里插入图片描述

权限不够的时候在 su前面加上sudo即可

然后进入创建的文件夹/home/用户名/中

创建文件assert.c,在文件中输入

#include <assert.h>
#include <stdio.h>
 
int main()
{
   int a;
   char str[50];
     
   printf("请输入一个整数值: ");
   scanf("%d", &a);
   assert(a >= 10);
 
   printf("输入的整数是: %d\n", a);
    
   printf("请输入字符串: ");
   scanf("%s", str);
   assert(str != NULL);
 
   printf("输入的字符串是: %s\n", str);
    
   return(0);
}

如果无法创建文件可以使用命令

sudo chmod -R 777 /工作目录
touch assert.c
vim asssert.c

在这里插入图片描述

然后就可以编辑了

在这里插入图片描述

然后就是使用gcc编译了

在这里插入图片描述



四、使用scp命令在两台Linux系统之间传输数据

scp

scp是secure copy的简写, 是 linux 系统下基于 ssh 登陆进行安全的远程文件拷贝命令。scp 是加密的,rcp 是不加密的,scp 是 rcp 的加强版。

因为scp传输是加密的,可能会稍微影响一下速度。另外,scp还非常不占资源,不会提高多少系统负荷,在这一点上,rsync就远远不及它了。虽然 rsync比scp会快一点,但当小文件众多的情况下,rsync会导致硬盘I/O非常高,而scp基本不影响系统正常使用。


基本语法shi

scp [-1246BCpqrv] [-c cipher] [-F ssh_config] [-i identity_file] [-l

limit] [-o ssh_option] [-P port] [-S program] [[user@]host1:]file1

[…] [[user@]host2:]file2

//参数说明

-1: 强制scp命令使用协议ssh1

-2: 强制scp命令使用协议ssh2

-4: 强制scp命令只使用IPv4寻址

-6: 强制scp命令只使用IPv6寻址

-B: 使用批处理模式(传输过程中不询问传输口令或短语)

-C: 允许压缩。(将-C标志传递给ssh,从而打开压缩功能)

-p: 保留原文件的修改时间,访问时间和访问权限。

-q: 不显示传输进度条。

-r: 递归复制整个目录。

-v: 详细方式显示输出。scp和ssh(1)会显示出整个过程的调试信息。这些信息用于调试连接,验证和配置问题。

-c cipher: 以cipher将数据传输进行加密,这个选项将直接传递给ssh。

-F ssh_config: 指定一个替代的ssh配置文件,此参数直接传递给ssh。

-i identity_file: 从指定文件中读取传输时使用的密钥文件,此参数直接传递给ssh。

-l limit: 限定用户所能使用的带宽,以Kbit/s为单位。

-o ssh_option: 如果习惯于使用ssh_config(5)中的参数传递方式,

-P port: 注意是大写的P, port是指定数据传输用到的端口号

-S program: 指定加密传输时所使用的程序。此程序必须能够理解ssh(1)的选项。

实例

分别在虚拟机和树莓派上下载ssh

在这里插入图片描述

在这里插入图片描述

把树莓派上之前练习的assert.c文件上传到虚拟机中

scp -r pi@192.168.141.103:/home/lm/assert.c ./

在这里插入图片描述

完成

在这里插入图片描述



五、参考


树莓派无需显示屏的VNC Viewer方式的远程连接



版权声明:本文为weixin_53594010原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。