Wake Otras computadoras de Mac OSX

42

¿Existe un comando de terminal dentro de Mac OSX que me permita usar WOL (Wake On LAN) para activar otras computadoras? Windows tiene wolcmd, ¿hay un equivalente dentro de OSX?

Estoy tratando de activar una computadora desde mi rMBP, dentro de mi red. Mi rMBP está conectado a través de WiFi normalmente, pero también puede conectarse a través del conector Thunderbolt GbE. La computadora de destino es una máquina con Windows que quiero activar antes de conectarme a ella usando una conexión de escritorio remoto.

Mark Tomlin
fuente
$ ~ / bin / wakeonlan server-mac-address-here
Ruskes
@Buscar, en mi mac (OS X 10.8.4), obtengo -bash: /Users/Dygear/bin/wakeonlan: No such file or directory.
Mark Tomlin

Respuestas:

4

wolcmd está disponible para Mac: http://www.depicus.com/wake-on-lan/wake-on-lan-for-apple-mac.aspx

Versión GUI por $ 1.99, la versión del terminal es gratuita. El uso es el mismo que el de Windows.

b4d
fuente
Me alegro de poder ayudar :)
b4d
3
¿Por qué descargar un binario opaco sin signo de algún sitio web aleatorio, cuando podría usar el programa de código abierto en la respuesta a continuación?
Ruief
58

El wakeonlancomando para la línea de comandos se puede agregar a OS X usando el administrador de paquetes homebrew .

KesslerPico
fuente
53

Instale el paquete wakeonlan usando Homebrew :

$ brew install wakeonlan

(Es un script de Perl para despertar computadoras a través de paquetes mágicos Wake-On-LAN).

Cuando está instalado, puede enviar un "paquete mágico" desde su Terminal a cualquier dispositivo utilizando su dirección IP (Protocolo de Internet) y MAC (Control de acceso a medios).

Aquí hay un ejemplo de un uso típico:

$ wakeonlan -i 192.168.1.255 -p 1234 01:02:03:04:05:06

Los scripts toman 2 argumentos, la dirección MAC de la NIC y una dirección IP.

Nota: El argumento de la dirección IP es complicado y no es lo que pensarías.

Para una NIC en su subred local, use la dirección de difusión de esta subred. (por ejemplo, subred 192.168.10.0 con máscara de red 255.255.255.0, use 192.168.10.255)

Por ejemplo, tengo un Synology NAS configurado manualmente con la dirección IP de 10.0.1.100con una máscara de subred 255.255.255.0y una dirección de enrutador de 10.0.1.1.

La dirección IP correcta para usar no es la del dispositivo , sino la dirección de difusión de la subred .

Continuando con mi ejemplo, utilicé el siguiente comando para activar con éxito mi Synology:

$ wakeonlan -i 10.0.1.255 -p 7 01:02:03:04:05:06

(Naturalmente, sustituya los valores reales de su dispositivo y red por su situación).

Puede obtener más información en la página de manual de wakeonlan man makeonlano en un glosario rápido de comandos wakeonlan -h.

rjb
fuente
Leí en alguna parte, que solo despertará tu Mac del sueño, y no cuando se apague por completo. Y tal vez también solo funciona en LAN, no en WLAN.
d4Rk
1
Esta debería ser la respuesta aceptada. Cheers man
spacebiker
Mi dirección de transmisión no es tan clara como muestra su ejemplo, así que utilicé este sitio para determinar: remotemonitoringsystems.ca/broadcast.php
Samuel Li
¿Se puede usar para despertar una computadora del apagado? No lo parece. ¿Es posible WOL una computadora desde el arranque en frío enviando el paquete mágico? Apple Remote Desktop ya puede activar una computadora desde el modo de suspensión.
SwimBikeRun
1
@ MarkTomlin Usted solicitó el comando de línea de comando, esta es la respuesta correcta.
Ulises Layera
7

Python viene con OS X por defecto. Entonces, podría usar este pequeño script Python 2 para enviar el paquete wake on lan. Guárdalo como wakeonlan.pyo algo que te guste:

#!/usr/bin/env python

import socket
import sys

if len(sys.argv) < 3:
    print "Usage: wakeonlan.py <ADR> <MAC>     (example: 192.168.1.255 00:11:22:33:44:55)"
    sys.exit(1)

mac = sys.argv[2]
data = ''.join(['FF' * 6, mac.replace(':', '') * 16])
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
sock.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1)
sock.sendto(data.decode("hex"), (sys.argv[1], 9))

Úselo así:

python wake.py 192.168.1.255 00:11:22:33:44:55

Modifique la dirección IP y la dirección MAC en consecuencia. La dirección IP debe ser la dirección de difusión de la red.

Para facilitar el acceso, puede hacer que este script sea ejecutable y agregarlo a algún directorio en su ruta.

JP Petersen
fuente
1
¡Me gusta esta solución sin necesidad de instalación!
Samuel Li
1

El paquete RubyGems, que está disponible en Mac, también se puede usar para instalar una aplicación Wake on LAN. Solo usa el gem install wolcomando en la terminal. Instalará la actividad en / usr / bin / local / wol.

Esto evita tener que instalar brew o gestores de paquetes. Acepta los mismos argumentos que los ejemplos de wakeonlan anteriores.

Por otro lado, la herramienta wol puede activar un Synology NAS configurado correctamente.

David Edwards
fuente