有線LANでつながっているPCを遠隔から起動するWake On LAN(WOL)という機能があります。CentOSではether-wake、Ubuntuではetherwakeを使うと良いのですが、OS X からWake On LANでPCを遠隔起動することもできます。
対象とするPCのマシンにあるネットワークカードのMACアドレスが 00:01:02:03:04:05 の場合、次のスクリプトを作成して、wakeup.py という名前で保存します。Pythonプログラムなので、Linuxでも動くかもしれませんが、そちらは動作確認をしていません。ブロードキャストするというのがポイントです。
#!/usr/bin/env python import socket s=socket.socket(socket.AF_INET, socket.SOCK_DGRAM) s.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1) s.sendto('\xff'*6+'\x00\x01\x02\x03\x04\x05'*16, ('255.255.255.255', 9))
ターミナルアプリを起動して実行権を付与します。
$ chmod u+x wakeup.py
実行します。これで、PCが起動するはずです。
$ ./wakeup.py
デスクトップPCの電源スイッチは意外と故障率が高いので、デスクトップPCを購入したら、WOLの設定をして、基本的にWOLを使って起動をするようにしています。ノートPCの方はシャットダウンをしないので、常に1台はマシンが起動している(スリープしているものも含む)状態だからできることです。WOLを導入してから、電源スイッチまわりでトラブルになったことはありません。
Pythonを学ぶには次の参考書があります。