有没有适用于 lubuntu 的应用程序可以远程打开并使用 PC,然后关闭它。我需要它,因为我的电脑在纽约,我想访问我在加拿大办公室的一些文件。那么我如何才能远程打开那台电脑并下载一些文件呢?(电脑始终插入电源但不打开,因为这会浪费电力)
答案1
网络唤醒 (WOL)是一种以太网计算机网络标准,允许远程开启已关闭的计算机。大多数最新的主板都具有支持此功能的集成以太网控制器。您可以在主板 BIOS 的电源管理部分启用 LAN 唤醒功能。LAN 唤醒有两种工作方式。第一种是您想开启同一局域网上的计算机,第二种是您想通过互联网开启另一个位置的计算机。
网络唤醒的工作原理如下:目标计算机关闭,但保留足够的电量让网卡正常工作。网卡会监听一个称为“魔术包”的特定数据包。监听计算机会收到此数据包,检查其中是否包含正确的信息,然后如果魔术包有效,则启动。魔术包是由“FF FF FF FF FF FF”后跟 16 个监听网络设备的 MAC 地址组成的数据。
设置局域网唤醒
为了使用 WoL,必须在 BIOS、NIC 和其他网络硬件(路由器、交换机等)中根据需要支持和启用它。如果开箱即用,您可能还需要配置一些软件。
在 BIOS 中启用 WoL
根据您的主板上是否集成有 NIC,本节可能会有所不同。
使用集成 NIC
要在 BIOS 中启用 WoL,请进入 BIOS 设置并查找“PCI 事件唤醒”、“LAN 唤醒”或类似内容。将其更改为启用。保存设置并重新启动。
使用非集成 NIC
如果您的 NIC 未集成到主板中,您仍需要配置 BIOS 以允许设备唤醒您的计算机。启动计算机并进入 BIOS 设置菜单。在其中一个子菜单中,可能会有允许 USB 和/或 PCI 设备唤醒计算机的选项。启用适合您的 NIC 的设置。保存设置并重新启动。
PCI 网卡有时需要通过电缆连接到电源,以便在计算机关闭/睡眠时保持唤醒状态。查看手册以了解您的网卡是否需要,并在必要时进行安装
在 NIC 中启用 WoL
首先,确定要使用哪个 NIC,然后使用以下方法检查它是否支持 Magic Packet™
sudo ethtool <NIC>
其中 是您的 NIC 的设备名称,例如 eth0。此命令将输出有关您的 NIC 功能的一些信息。如果此输出包含类似于以下内容的行:
Supports Wake-on: <letters>
其中包含字母 g,表示 NIC 应该支持 WoL Magic Packet™ 方法(对于其他字母,请查看 man ethtool)。
在 NIC 中启用 WoL
要检查 NIC 中是否启用了 WoL,可以使用
sudo ethtool <NIC>
并寻找
Wake-on: <letters>
如果包含 g 而不包含 d,则表示已启用 Magic Packet™。但是,如果包含 d,则需要通过运行以下命令来启用 WoL:
sudo ethtool -s <NIC> wol g
在大多数系统中,每次启动后都需要发出此命令。如果系统的网络是通过 ifupdown 配置的,那么很容易在 /etc/network/interfaces 中的接口配置节下添加一行 up ethtool -s wol g。例如:
shahar@shahar-backup:~$ cat /etc/network/interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo iface lo inet loopback
# The primary network interface
auto eth0 iface eth0 inet static
address 10.0.0.1
netmask 255.255.255.0
gateway 10.0.0.138
up ethtool -s eth0 wol g
这将确保每次启动时 NIC 中都启用 WoL。有关更多信息,请参阅接口手册。
工具为了帮助进行设置,配置和/或使用:
网络唤醒
安装:sudo apt-get install gwakeonlan
或单击此按钮
图片来自ubuntugeek该网站还对此进行了总结:
允许 gWakeOnLan 启动机器的要求必须满足所有这些要求。要启动的每台机器必须:
- 有一个集成(或 PCI/PCIE)以太网卡。
- 网线始终插着。
- 电源线始终插着。
- 支持使用 Magic Packet 的 LAN 唤醒。
- 在 BIOS 中启用 LAN 唤醒。
- 在操作系统中启用“通过魔包实现局域网唤醒”。
- 从操作系统关闭。
如果不始终满足其中一个或多个要求,则局域网唤醒将无法工作。
答案2
首先在您想要访问的远程机器上安装一个 ssh 服务器:
sudo apt-get install openssh-server
如果尚未安装,您还需要安装一个程序来下载内容:
sudo apt-get install wget
在同一个网络上找到另一台运行 Ubuntu 的机器,然后尝试ssh
进入远程机器
ssh USERNAME@IP_ADDRESS
您也可以从 Windows、Mac 等设备使用“ssh”,但您可以在互联网上了解如何执行此操作 - 抱歉。
该USERNAME
条目是您在该计算机上的用户名 - 您应该在打开终端时在 之前看到它@
。
您现在需要使用的 IP 地址是您在该计算机上的本地 IP - 请参阅这里就此而言。
如果成功,您可能需要运行测试下载。首先更改终端,使其位于 `~/Downloads 目录中,这样下载的所有内容都会保存在该文件夹中。
cd ~/Downloads
然后你可以尝试下载这个图像:
wget https://i.stack.imgur.com/cD3Xo.png
然后你可以使用以下命令将其关闭:
sudo shutdown -h now
要将文件从该计算机复制到另一台计算机,请使用测试机器再次尝试,其方法几乎与之前使用 ssh 命令完全相同,并将使用通过以下方式下载的文件进行测试wget
:
scp USERNAME@IP_ADDRESS:/home/USERNAME/Downloads/cD3Xo.png helloworld.png
这会将文件复制ssh
到helloworld
测试机器上。
在本地网络上测试完毕后,您需要从外部访问它。首先在路由器上设置端口转发。这意味着发送到路由器的任何请求都将转移到您的机器。让它发送到该机器的本地 IP 地址,允许 SSH 等。
之后,运行此命令来查找网络的外部 IP:
wget http://smart-ip.net/myip -O - -q ; echo
然后你就可以测试了。为此你需要一台机器外部您的本地网络,例如具有连接机器人就可以了。您可以按照前面的说明使用它,但这次要使用外部 IP 地址。