Files
varlog/_cache/articles/9fe6633a-57b0-4998-8eb9-068729869330.json
T
2026-05-15 10:37:48 +02:00

1 line
2.8 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{"uuid":"9fe6633a-57b0-4998-8eb9-068729869330","slug":"controle-des-ordinateurs-distance","title":"Contrôle des ordinateurs à distance","author":"cedric@abonnel.fr","published":true,"published_at":"2023-01-09 22:34:34","created_at":"2023-01-09 22:34:34","updated_at":"2023-01-09 22:34:34","revisions":[],"cover":"","files_meta":[],"external_links":[],"seo_title":"","seo_description":"","og_image":"","category":"Informatique","content":"# Contrôle des ordinateurs à distance\n\n![Scripts de Contrôle des ordinateurs à distance](1200px-gnulinux.jpg)\nÀ la maison, chaque enfant à au moins un ordinateur Linux (ordinateur fixe et Rapsberry Pi). Le contrôle à distance s'est posé pour deux raisons : comment moduler à volonté le débit de leur carte réseau et comment arrêter leur ordinateur en dehors des horaires autorisés ?\n\nÉvidemment que j'ai un accès administrateur sur leur machine et qu'il met possible de m'y connecter avec **ssh** en root. Mais me connecter sur chaque machine enfin d'envoyer les commandes nécessaires systématiquement, cela devient rébarbatif et lassant. Donc, j'ai développer un script qui me permet de :\n1. se connecter à la machine distante\n1. envoyer des commandes de maintenance - sauvegarde et mise à jour\n1. envoyer des commandes de contrôle - restriction horaire et modulation du débit réseau\n\nEnfin ça, c'est l'idéal. Pour l'instant c'est plutôt une ébauche mais qui est riche d'enseignement. Pour une connexion à distance réussie, il faut déjà avoir réalisé une connexion ssh par clé sur les machines désirées. Ensuite, toutes les commandes envoyées au PC sexécutent par **ssh**.\n\n## - Quelques exemples de commandes\n### - Éteindre le PC à distance\n```\npc_rsync=dskluc001\n\nssh -t root@$pc_rsync 'systemctl poweroff'\n```\n\n### - Limiter le débit de la carte réseau\n```\npc_rsync=dskluc001\n\nssh root@$pc_rsync \"wondershaper eth0 $limit_eth 1000000\"\n```\n\n### - Sauvegarder des documents\nLe sauvegarde est une sauvegarde incrémentielle : le programme copie toutes les nouveautés et modifications de la source et efface tous les dossiers et fichiers plus présent sur la source.\n\nPendant le processus de sauvegarde, un fichier **.pid** est créé afin de ne pas avoir plusieurs sauvegarde en cours, de manière simultanée. Le dossier `/media/disk_21/users/` correspond à l'espace de stockage des sauvegarde sur le NAS.\n\nLa commande `$$` permet d'envoyer le PID actuel du process.\n\n```\nuser_rsync=luc\npc_rsync=dskluc001\n\nif [ ! -f /root/rsync_$pc_rsync_$user_rsync.pid ]; then\n echo $$>>/root/rsync_$pc_rsync_$user_rsync.pid\n rsync --delete -azvPe ssh root@$pc_rsync:/home/$user_rsync/ /media/disk_21/users/$user_rsync/sauvegarde/\n rm /root/rsync_$pc_rsync_$user_rsync.pid\nfi\n```","featured":false,"tags":[]}