Auteur Topic: Automate (div. geintjes en services)  (gelezen 6689 keer)

Offline wizjos

  • Administrator
  • MVP
  • *
  • Bedankjes
  • -Gegeven: 123
  • -Ontvangen: 181
  • Berichten: 1.999
Automate (div. geintjes en services)
« Gepost op: 27 oktober 2008, 23:09:32 »
Hoi,

Ook weer geïmporteerd is deze:



Op zich niet allemaal zo wereldschokkend :mrgreen: ware het niet dat je hiermee ook een schijfcheck kunt uitvoeren (zelf nog niet getest!) en services kunt stoppen en herstarten... Ik heb er gauw een tweetal bijgemaakt voor het herstarten van Crond en voor SABnzbd+

application.cfg
text = Automate
description = Automatiseer je Syno
type = embedded
path = /phpsrc/automate/automate.php

automate.php:
<?php
putenv
('HTTP_COOKIE='&#46;$_SERVER['HTTP_COOKIE'&#93;);
putenv('REMOTE_ADDR='&#46;$_SERVER['REMOTE_ADDR'&#93;);
$user=exec('/usr/syno/synoman/webman/modules/authenticate&#46;cgi');
if(
$user != 'admin'){
    
header("HTTP/1&#46;0 403 Forbidden");
    exit;
}
if (
$_REQUEST['action'&#93; != '') {
  
if ($_REQUEST['action'&#93; == 'print') exec('echo -e "TESTPAGE\f" >/dev/usb/lp0');
  
elseif ($_REQUEST['action'&#93; == 'fsck0')
    
{ print '<pre>';passthru('fsck&#46;ext3 -F -n /dev/md0');print '</pre>'; }
  elseif (
$_REQUEST['action'&#93; == 'fsck2')
    
{ print '<pre>';passthru('fsck&#46;ext3 -F -n /dev/md2');print '</pre>'; }
  elseif (
$_REQUEST['action'&#93; == 'telnetd') exec('killall telnetd');
  
elseif ($_REQUEST['action'&#93; == 'sysapache') exec('/usr/syno/etc&#46;defaults/rc&#46;d/S97apache-sys&#46;sh restart');
  
elseif ($_REQUEST['action'&#93; == 'userapache') exec('/usr/syno/etc&#46;defaults/rc&#46;d/S97apache-user&#46;sh restart');
  
elseif ($_REQUEST['action'&#93; == '3rdapache') exec('/opt/sbin/httpd -k restart');
  
elseif ($_REQUEST['action'&#93; == 'mysql') exec('/usr/syno/etc&#46;defaults/rc&#46;d/S21mysql&#46;sh restart');
  
elseif ($_REQUEST['action'&#93; == 'crond') exec('/usr/syno/etc&#46;defaults/rc&#46;d/S04crond&#46;sh restart');
  
elseif ($_REQUEST['action'&#93; == 'SABnzbd') exec('/usr/syno/etc&#46;defaults/rc&#46;d/S99SABnzbd&#46;sh restart');
  
else
    
exec('echo \\'&#46;$_REQUEST['action'&#93;&#46;' >/dev/ttyS1');
  
$_REQUEST['action'&#93; = '';
}
?>

<html><head><title>automate</title>
<style>body,input{font:11px Verdana;}input{width:140px}fieldset{border:1px solid #bbb}</style>
<script>function $(e) {return document.getElementById(e);}</script>
</head><body>
<form id="f" name="f" action="automate.php">
<input type="hidden" id="action" name="action" value="" />
<fieldset><legend>Status LED</legend>
<input type="button" value="off" onclick="$('action').value='7';submit();">
<input type="button" value="green on" onclick="$('action').value='8';submit();">
<input type="button" value="green blink" onclick="$('action').value='9';submit();">
<input type="button" value="orange on" onclick="$('action').value=':';submit();">
<input type="button" value="orange blink" onclick="$('action').value=';';submit();">
</fieldset>
<fieldset><legend>Copy LED</legend>
<input type="button" value="off" onclick="$('action').value='B';submit();">
<input type="button" value="on" onclick="$('action').value='@';submit();">
<input type="button" value="blink" onclick="$('action').value='A';submit();">
</fieldset>
<fieldset><legend>Power LED</legend>
<input type="button" value="off" onclick="$('action').value='6';submit();">
<input type="button" value="on" onclick="$('action').value='4';submit();">
<input type="button" value="blink" onclick="$('action').value='5';submit();">
</fieldset>
<fieldset><legend>Beeper</legend>
<input type="button" value="short" onclick="$('action').value='2';submit();">
<input type="button" value="long" onclick="$('action').value='3';submit();">
</fieldset>
<fieldset><legend>Printer</legend>
<input type="button" value="print testpage" onclick="$('action').value='print';submit();">
</fieldset>
<fieldset><legend>File System Check</legend>
<input type="button" value="fsck /dev/md0" onclick="$('action').value='fsck0';submit();">
<input type="button" value="fsck /dev/md2" onclick="$('action').value='fsck2';submit();">
</fieldset>
<fieldset><legend>Daemons</legend>
<input type="button" value="kill telnetd" onclick="$('action').value='telnetd';submit();">
<input type="button" value="restart sys-apache" onclick="$('action').value='sysapache';submit();">
<input type="button" value="restart user-apache" onclick="$('action').value='userapache';submit();">
<input type="button" value="restart 3rd-apache" onclick="$('action').value='3rdapache';submit();">
<input type="button" value="restart MySql" onclick="$('action').value='mysql';submit();">
<input type="button" value="restart Crond" onclick="$('action').value='crond';submit();">
<input type="button" value="restart SABnzbd" onclick="$('action').value='SABnzbd';submit();">
</fieldset>
</form>
</body></html>

Vooral die lampjes vond ik geweldig (helaas is mijn CS niet zo'n kerstboom als sommige andere modellen) :(
Simpel doch doeltreffend, maar als je niet weet wat een knop precies doet, wees er dan voorzichtig mee :mrgreen:  

Voor wie even een oog op de code slaat, deze is eigenlijk heel simpel van opbouw en zelf uit te breiden/aan te passen...

Succes!

Wizjos
Wizjos.


DS409+    4 x WD10EADS DSM 4.2-3243       [TEST]
DS214play 1 x WD20EARX DSM 6.1.4-15217-3  [PROD]
DS1513+   5 x WD80EFZX DSM 6.1.4-15217-5  [PROD]
RT1900ac               SRM 1.1.6-6931-1   [PROD]


Is RAID hetzelfde als een backup?
Goeie schijven voor je NAS? Neem Western Digital!

Offline Maradona10

  • Bedankjes
  • -Gegeven: 0
  • -Ontvangen: 0
  • Berichten: 15
Re: Automate (div. geintjes en services)
« Reactie #1 Gepost op: 29 augustus 2009, 12:35:05 »
Cool script. Ik heb een vraag.

Ik heb de 209+, maar ik heb 4 groene status lampjes. Met dit script krijg ik alleen de bovenste LED uit.
Hoe kan ik dat uitbreiden?

Offline wizjos

  • Administrator
  • MVP
  • *
  • Bedankjes
  • -Gegeven: 123
  • -Ontvangen: 181
  • Berichten: 1.999
Re: Automate (div. geintjes en services)
« Reactie #2 Gepost op: 29 augustus 2009, 13:21:54 »
Maradona,

Dat zou ik zo niet weten... Als je goed naar het script kijkt zie je dat er telkens de opdracht 'echo teken >/dev/ttyS1' wordt gegeven. Enig experimenteren (geef de opdracht domweg op de prompt op) met andere tekens dan die in het script staan zou de truc denk ik moeten doen. Alleen welke dat zijn weet ik niet. Als je ze gevonden hebt wil ik graag van je horen welke tekens het zijn!

Succes,

Wizjos
Wizjos.


DS409+    4 x WD10EADS DSM 4.2-3243       [TEST]
DS214play 1 x WD20EARX DSM 6.1.4-15217-3  [PROD]
DS1513+   5 x WD80EFZX DSM 6.1.4-15217-5  [PROD]
RT1900ac               SRM 1.1.6-6931-1   [PROD]


Is RAID hetzelfde als een backup?
Goeie schijven voor je NAS? Neem Western Digital!

Offline Maradona10

  • Bedankjes
  • -Gegeven: 0
  • -Ontvangen: 0
  • Berichten: 15
Re: Automate (div. geintjes en services)
« Reactie #3 Gepost op: 29 augustus 2009, 15:36:46 »
Citaat van: "wizjos"
Maradona,

Dat zou ik zo niet weten... Als je goed naar het script kijkt zie je dat er telkens de opdracht 'echo teken >/dev/ttyS1' wordt gegeven. Enig experimenteren (geef de opdracht domweg op de prompt op) met andere tekens dan die in het script staan zou de truc denk ik moeten doen. Alleen welke dat zijn weet ik niet. Als je ze gevonden hebt wil ik graag van je horen welke tekens het zijn!

Succes,

Wizjos

Ik heb gekeken wat bij de 4 groene lampjes staat.
Dat zijn:
-Status
-LAN
-Disk1
-Disk2

Heb geen idee wat voor code ik daarvoor zou moeten gebruiken.  Hoe zou ik dat moeten kunnen zien?

Offline wizjos

  • Administrator
  • MVP
  • *
  • Bedankjes
  • -Gegeven: 123
  • -Ontvangen: 181
  • Berichten: 1.999
Re: Automate (div. geintjes en services)
« Reactie #4 Gepost op: 31 augustus 2009, 09:01:54 »
Citaat van: "Maradona10"
Heb geen idee wat voor code ik daarvoor zou moeten gebruiken. Hoe zou ik dat moeten kunnen zien?

Dat schreef ik dus, ik weet het ook niet. Domweg proberen dus... Alhoewel ik me afvraag of de lampjes voor LAN en de disks wel uit kunnen....

Groet,

Wizjos
Wizjos.


DS409+    4 x WD10EADS DSM 4.2-3243       [TEST]
DS214play 1 x WD20EARX DSM 6.1.4-15217-3  [PROD]
DS1513+   5 x WD80EFZX DSM 6.1.4-15217-5  [PROD]
RT1900ac               SRM 1.1.6-6931-1   [PROD]


Is RAID hetzelfde als een backup?
Goeie schijven voor je NAS? Neem Western Digital!

Offline motoindo

  • Bedankjes
  • -Gegeven: 0
  • -Ontvangen: 0
  • Berichten: 37
    • http://camphuisen.com
Re: Automate (div. geintjes en services)
« Reactie #5 Gepost op: 01 september 2009, 00:15:22 »
eh, sorry gurus maareh bij mij krijg ik als ik dat scriptje in mijn webfolder zet de melding:

Citaat
Warning: exec() [function.exec]: PHP exec disable. in /volume1/web/automate.php on line 4
Warning: Cannot modify header information - headers already sent by (output started at /volume1/web/automate.php:4) in /volume1/web/automate.php on line 6

hoe vertel ik mijn ds dat ie wel exec calls mag doen ?
met vriendelijke groeten,

[size=180]m o t o i n d o[/size]
[size=80]mobile  application  developer[/size]

Offline wizjos

  • Administrator
  • MVP
  • *
  • Bedankjes
  • -Gegeven: 123
  • -Ontvangen: 181
  • Berichten: 1.999
Re: Automate (div. geintjes en services)
« Reactie #6 Gepost op: 01 september 2009, 09:14:24 »
Motoindo,

Dan dien je de 3rd party apps handleiding te doorworstelen :mrgreen:

Succes!

Wizjos
Wizjos.


DS409+    4 x WD10EADS DSM 4.2-3243       [TEST]
DS214play 1 x WD20EARX DSM 6.1.4-15217-3  [PROD]
DS1513+   5 x WD80EFZX DSM 6.1.4-15217-5  [PROD]
RT1900ac               SRM 1.1.6-6931-1   [PROD]


Is RAID hetzelfde als een backup?
Goeie schijven voor je NAS? Neem Western Digital!

Offline motoindo

  • Bedankjes
  • -Gegeven: 0
  • -Ontvangen: 0
  • Berichten: 37
    • http://camphuisen.com
Re: Automate (div. geintjes en services)
« Reactie #7 Gepost op: 20 september 2009, 14:02:42 »
dank voor de link...ga ik doen !
Citaat
Wordt tijd, want het lijkt er bijna op dat  ik deze sectie in m'n eentje zit te vullen
Zou je graag helpen maar weet meer van win dan *nix, probeer wel mijn achterstand in te lopen.
met vriendelijke groeten,

[size=180]m o t o i n d o[/size]
[size=80]mobile  application  developer[/size]