[RPI2]开启ssh,vnc和samba

本文详细介绍如何在树莓派上配置ssh、vnc及samba服务,实现远程登录、图形界面访问及文件共享功能。文章针对Ubuntu Mate系统提供具体步骤,并包含开机自启设置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

好啦,今天算是要正式的开始鼓捣树莓派了,话说也快要开始找工作了,时间紧任务重啊。闲话少叙,赶紧开干。
  话说树莓派系统已经烧好了,但是我们不想整天拖着个屏幕到处走,所以,ssh就派上用场了。
  (以下均基于ubuntu Mate系统,其他系统类似)


1. ssh服务的开启与开机自启

1.1 安装ssh服务:

sudo apt-get install openssh-server

1.2 查看ssh服务是否开启:

ps -e |grep ssh

1.3 添加开机自启,首先找到rc.local,这个文件就是在系统引导的最后一部分执行(注释上写的)

vim /etc/rc.local

添加下面这行代码

/etc/init.d/ssh start

重启应该就可以了,推荐用putty,谁用谁知道


2. vnc服务的开启

2.1 安装vnc服务:

sudo apt-get install tightvncserver

2.2 设置vnc密码:

vncpasswd

注意这里的密码长度有要求,至少8位

2.3 开启和关闭vnc服务:

开启服务:

vncserver :1

关闭服务:

vncserver -kill :1

(这个开机自启一直有问题,还在研究中)

3. samba服务的开启与开机自启

##3.1 安装Samba服务

sudo apt-get install samba

##3.2 Samba服务的启动、关闭和重启

启动Samba服务器只需执行如下命令:

sudo /etc/init.d/samba start

关闭Samba服务器:

sudo /etc/init.d/samba stop

重新启动Samba服务器:

sudo /etc/init.d/samba restart

启动Samba服务器后,可以使用ps命令查看进程:

ps -aux

3.3 修改配置文件smb.conf

用vim打开smb.conf

vim /etc/samba/smb.conf

找到 #=== Global Settings===,修改为如下

#======================= Global Settings =======================

[global]

## Browsing/Identification ###

# Change this to the workgroup/NT-domain name your Samba server will part of
   workgroup = WORKGROUP
   security = user

再找到找到 #=== share Defination===,添加以下信息

#======================= Share Definitions =======================

# Un-comment the following (and tweak the other settings below to suit)
# to enable the default home directory shares. This will share each
# user's home directory as \\server\username
;[homes]
;   comment = Home Directories
;   browseable = no

[share]
   comment = All Printers
   browseable = yes
   path = /home/wang/share
   read only = no
   valid users = @wang

这里稍微解释下:

Samba目录起的名字叫‘[share]’
可浏览性:是
目录的位置在‘/home/wang/share’
是否可读:否
有效地使用者:wang

3.4 添加并激活samba用户

添加samba用户wang

smbpasswd -a wang

激活samba用户wang

smbpasswd -e wang

重启samba服务

在windows主机上进行访问

打开运行,输入树莓派的ip地址,(可以用ifconfig查看),例如我的

\\192.168.137.97

就可以进行正常访问了。

3.5 samba服务开机自启

vim /etc/rc.local

添加下面这行代码

sudo /etc/init.d/samba start
<think>好的,用户的问题是关于在没有摄像头的情况下,通过SSHVNC树莓派上配置SPI、I2C、串口、1-Wire远程GPIO功能。首先,我需要明确用户的需求:他们希望仅使用SSHVNC进行远程操作,不需要摄像头模块,但要启用这些硬件接口远程GPIO功能。 首先,我需要回忆树莓派的配置方法。树莓派通常使用raspi-config工具来启用各种接口,比如SPI、I2C等。用户需要通过SSH连接到树莓派,然后运行这个工具。另外,串口配置需要注意,因为默认情况下串口可能被分配给控制台,需要修改设置以便用于其他用途。1-Wire接口通常通过GPIO4启用,可能需要编辑配置文件或加载模块。 接下来是远程GPIO的配置。树莓派官方提供了gpiozero库,支持远程GPIO,需要在树莓派上启动相应的服务,比如pigpiod。用户可能需要在客户端代码中指定远程树莓派的IP地址。 然后考虑用户提到的VNC。配置好这些接口后,用户可能需要通过VNC远程访问图形界面,所以需要确保VNC服务器已经安装并运行。此外,所有步骤都需要在无摄像头的情况下完成,但摄像头模块的缺失应该不会影响这些接口的配置,所以不需要特别处理。 还需要检查用户提供的引用内容。引用3提到了连接RGB灯的引脚配置,这可能与GPIO的使用有关,但用户的问题是关于启用这些接口,而不是具体的硬件连接。不过,确保GPIO引脚正确配置是重要的,尤其是在远程控制时。 可能的遗漏点包括:是否需要重启树莓派使配置生效,如何验证每个接口是否成功启用,以及防火墙设置是否会影响远程GPIO的连接。此外,用户可能遇到权限问题,比如是否需要将用户加入gpio组。 最后,生成相关问题时,需要考虑用户可能进一步想知道如何测试每个接口,或者遇到问题时的解决方法,比如检查服务状态、查看内核日志等。可能还需要涉及性能优化或安全方面的考虑,比如远程访问的安全性。</think>### 分步配置指南 #### 1. 通过 SSH 连接到树莓派 - 确保树莓派已联网,通过路由器或 `arp -a` 命令获取其 IP 地址,使用命令: ```bash ssh pi@<树莓派IP> ``` #### 2. 启用 SPI/I2C/串口/1-Wire - **使用 `raspi-config` 工具**: ```bash sudo raspi-config ``` - **SPI**:`Interfacing Options` → `SPI` → `Yes` - **I2C**:`Interfacing Options` → `I2C` → `Yes` - **串口**:选择`No`关闭串口控制台,启用硬件串口: ``` Interfacing Options → Serial Port → No (关闭登录 shell) → Yes (启用硬件串口) ``` - **1-Wire**:`Interfacing Options` → `1-Wire` → `Yes` *(默认启用 GPIO4,需物理连接设备到 GPIO4 引脚)[^3]* #### 3. 配置远程 GPIO - **安装并启用 `pigpiod` 服务**: ```bash sudo apt install pigpio sudo systemctl enable pigpiod sudo systemctl start pigpiod ``` - **客户端代码示例**: ```python from gpiozero import LED from gpiozero.pins.pigpio import PiGPIOFactory factory = PiGPIOFactory(host='<树莓派IP>') led = LED(17, pin_factory=factory) # 控制 GPIO17 led.blink() ``` #### 4. VNC 远程桌面配置 - **安装 RealVNC Server**: ```bash sudo apt install realvnc-vnc-server ``` - **启用 VNC**: ```bash sudo raspi-config → Interfacing Options → VNC → Yes ``` - 使用 VNC Viewer 客户端连接树莓派 IP 地址。 #### 5. 验证接口状态 - **SPI/I2C 检测**: ```bash lsmod | grep -E 'spi_|i2c_' # 查看内核模块 ls /dev/*i2c* /dev/*spi* # 检查设备节点 ``` - **串口测试**: ```bash echo 'Hello' > /dev/serial0 # 发送数据 ``` - **1-Wire 设备检测**: ```bash dtoverlay=w1-gpio,gpiopin=4 # 确认 /boot/config.txt 已添加此行 ls /sys/bus/w1/devices/ # 查看连接的设备 ``` ### 关键配置文件 - **/boot/config.txt**:硬件接口全局配置 - **/etc/modules**:内核模块加载列表 - **/boot/cmdline.txt**:串口控制台配置(需移除 `console=serial0,115200`) ### 注意事项 - **权限问题**:用户需加入 `gpio` `spi` 用户组: ```bash sudo usermod -aG gpio,spi pi ``` - **防火墙**:若使用远程 GPIO,确保端口 8888(pigpiod) 5900(VNC)开放。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

山猫Show

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值