问题描述
希望从手机向运行在Ubuntu 11.10上的PC发送shell命令,因为有时没有WLAN连接或手机的WLAN连接性能不佳。虽然大多数解决方案可能需要在Linux系统上运行某种守护进程,但用户表示这没有问题。
解决方案
方案1:SSH-over-BT
请注意,由于您无法对手机进行root操作,因此需要确保所选方法不涉及root权限。请谨慎选择解决方案。
根据回复1中的建议,可以通过SSH-over-BT的方式实现这一需求。这种方法的具体步骤如下:
- 在PC上安装SSH服务:
- 确保您的PC上已经安装了OpenSSH服务器。如果没有,请使用以下命令进行安装:
sh
sudo apt-get install openssh-server 启动SSH服务:
sh
sudo service ssh start在手机上安装SSH客户端:
下载并安装适用于Android的SSH客户端应用,例如“Termux”或“SSHDroid”。
配置SSH服务以支持蓝牙连接:
打开SSH客户端应用,按照应用的说明配置蓝牙连接。通常,您需要输入PC的蓝牙地址和端口号。
连接到PC:
使用SSH客户端应用尝试连接到PC。输入正确的用户名和密码以验证身份。
执行命令:
- 成功连接后,您可以在终端中输入任何shell命令。
方案2:蓝牙串口连接
另一种方法是使用蓝牙串口连接来实现与Linux终端的通信。这种方法相对复杂,但不需要安装复杂的软件。
- 在PC上配置蓝牙串口服务:
- 安装蓝牙串口服务,例如
bluetooth-serial
。 配置蓝牙串口服务以监听特定的蓝牙设备。
在手机上安装蓝牙串口客户端:
下载并安装适用于Android的蓝牙串口客户端应用,例如“Serial Bluetooth Terminal”。
连接蓝牙串口:
使用蓝牙串口客户端应用连接到PC上的蓝牙串口服务。
执行命令:
- 连接成功后,您可以在终端中输入任何shell命令。
方案3:自定义脚本
如果您对编程有一定了解,还可以编写自定义脚本来实现蓝牙通信。这通常涉及到蓝牙编程库和脚本语言(如Python)。
- 编写蓝牙通信脚本:
- 使用Python等语言编写脚本,实现蓝牙通信功能。
脚本需要能够接收来自手机的命令并执行相应的shell命令。
部署脚本:
- 将脚本部署到PC上,并确保它能够持续运行。
- 可以使用系统服务或守护进程来确保脚本在后台运行。
综上所述,通过SSH-over-BT是最简单直接的方法,而自定义脚本则提供了更大的灵活性。您可以根据具体需求选择合适的解决方案。