Maison  >  Questions et réponses  >  le corps du texte

Le script Python WoL ne parvient pas à s'exécuter sur Synology RS1221+ mais s'exécute avec succès sur QNAP TS-219P II

Je suis relativement nouveau sur Python et je ne comprends pas pourquoi le même script ne s'exécute pas sur mon NAS RS1221+ mais s'exécute sur le QNAP ts-219p ii sans problème. Il s'agit d'un script WoL conçu pour ouvrir un PC spécifique via une page HTML. Vous appuyez sur une image PNG, qui appelle ensuite un script php, qui à son tour appelle ledit script Python.

Je viens de copier les scripts php et python d'un collègue. Il fonctionne avec le système NAS QNAP ts-219p, mais pas avec le nouveau RS1221+. Les packages suivants sont installés sur le nouveau système : Python 3.9, Node.js v 18 et php 8.0.

Dans Web Station sur RS1221+, Python est activé et apparaît en vert. Le module "wakeonlan" version 3.0.0 est également installé dans la section "Edition".

Il s'agit du script php qui appelle le script python (où x est un espace réservé et modifié pour Mac pour le PC que je souhaite ouvrir). Mon adresse réseau est 192.168.0.1 /23 :

<?php
system ( "python wake.py 192.168.1.255 XX:XX:XX:XX:XX:XX");
header ("Location:index.html");
?>

Voici mon script python (wake.py) pour WoL qui est appelé et devrait s'exécuter sur le serveur :

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))

J'ai essayé de changer le script Python pour utiliser un autre module :

from wakeonlan import send_magic_packet

send_magic_packet('XX-XX-XX-XX-XX-XX')

Mais ça ne marche pas non plus. Comme je l'ai dit, je ne suis pas un gourou du python, c'est pourquoi j'apprécierais tout conseil.

P粉395056196P粉395056196244 Il y a quelques jours434

répondre à tous(1)je répondrai

  • P粉955063662

    P粉9550636622024-02-18 09:14:58

    Pour tous ceux qui reviennent sur cette question :

    L'utilisation de ce https://pypi.org/project/wakeonlan/package a résolu tous les problèmes que j'avais avec Python.

    répondre
    0
  • Annulerrépondre