shutdown/reboot added to web interface
This commit is contained in:
parent
b399722dca
commit
98dc7f564e
|
@ -60,7 +60,7 @@ function configure_secure()
|
||||||
sed -i '/getty/d' /etc/inittab
|
sed -i '/getty/d' /etc/inittab
|
||||||
|
|
||||||
# remove unnecessary packages
|
# remove unnecessary packages
|
||||||
dpkg --force-all -P $SECURITY_REMOVE_PACKAGES
|
dpkg --force-all -P $SECURITY_REMOVE_PACKAGES 2>&1 | grep -v "which isn't installed."
|
||||||
|
|
||||||
# remove development files
|
# remove development files
|
||||||
rm -f "$DEV_FEATURES_SCRIPT"
|
rm -f "$DEV_FEATURES_SCRIPT"
|
||||||
|
|
|
@ -8,6 +8,7 @@ Lang {
|
||||||
Umount = Deaktivierung der Cryptodaten
|
Umount = Deaktivierung der Cryptodaten
|
||||||
Config = Konfiguration der CryptoBox
|
Config = Konfiguration der CryptoBox
|
||||||
Log = Protokoll der CryptoBox
|
Log = Protokoll der CryptoBox
|
||||||
|
ShutDown = System
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -33,6 +34,8 @@ Lang {
|
||||||
Update = Aktualisieren
|
Update = Aktualisieren
|
||||||
Mount = CryptoDaten aktivieren
|
Mount = CryptoDaten aktivieren
|
||||||
Umount = CryptoDaten deaktivieren
|
Umount = CryptoDaten deaktivieren
|
||||||
|
PowerOff = ausschalten
|
||||||
|
ReBoot = neu starten
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -109,6 +112,16 @@ Lang {
|
||||||
Title = Crypto-Daten deaktiviert
|
Title = Crypto-Daten deaktiviert
|
||||||
Text = Das verschlüsselte Dateisystem ist nun vor jedem Zugriff geschützt.
|
Text = Das verschlüsselte Dateisystem ist nun vor jedem Zugriff geschützt.
|
||||||
}
|
}
|
||||||
|
|
||||||
|
PowerOff {
|
||||||
|
Title = Abschaltung
|
||||||
|
Text = Die CryptoBox wird gerade heruntergefahren. Spätestens in ein paar Minuten kannst du sie ausschalten.
|
||||||
|
}
|
||||||
|
|
||||||
|
ReBoot {
|
||||||
|
Title = Neustart
|
||||||
|
Text = Die CryptoBox wird gerade neu gestartet. Spätestens in ein paar Minuten ist sie wieder verfügbar.
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -15,6 +15,7 @@
|
||||||
<a href="<?cs var:ScriptName ?>?action=init_ask" title="Ersteinrichtung">Initialisierung</a>
|
<a href="<?cs var:ScriptName ?>?action=init_ask" title="Ersteinrichtung">Initialisierung</a>
|
||||||
<a href="<?cs var:ScriptName ?>?action=show_log" title="Ereignis-Protokoll">Protokoll</a>
|
<a href="<?cs var:ScriptName ?>?action=show_log" title="Ereignis-Protokoll">Protokoll</a>
|
||||||
<a href="<?cs var:ScriptName ?>?action=doc" title="Nutzer-Handbuch">Hilfe</a>
|
<a href="<?cs var:ScriptName ?>?action=doc" title="Nutzer-Handbuch">Hilfe</a>
|
||||||
|
<a href="<?cs var:ScriptName ?>?action=shutdown_ask" title="Herunterfahren">Herunterfahren</a>
|
||||||
|
|
||||||
<?cs if:Data.Status.DevelopmentMode ?>
|
<?cs if:Data.Status.DevelopmentMode ?>
|
||||||
<a href="/cgi-bin/validate.sh" title="Validation">Test-Sequenzen</a>
|
<a href="/cgi-bin/validate.sh" title="Validation">Test-Sequenzen</a>
|
||||||
|
|
|
@ -0,0 +1,16 @@
|
||||||
|
<h1><?cs var:Lang.Title.ShutDown ?></h1>
|
||||||
|
|
||||||
|
<div align="center">
|
||||||
|
<form action="<?cs var:ScriptName ?>" method="post"
|
||||||
|
enctype="application/x-www-form-urlencoded">
|
||||||
|
|
||||||
|
<input type="hidden" name="action" value="shutdown_do" />
|
||||||
|
|
||||||
|
<button type="submit" name="type"
|
||||||
|
value="poweroff"><?cs var:Lang.Button.PowerOff ?></button>
|
||||||
|
|
||||||
|
<button type="submit" name="type"
|
||||||
|
value="reboot"><?cs var:Lang.Button.ReBoot ?></button>
|
||||||
|
|
||||||
|
</form>
|
||||||
|
</div>
|
|
@ -1,14 +1,6 @@
|
||||||
#!/usr/bin/perl
|
#!/usr/bin/perl
|
||||||
#
|
#
|
||||||
# Vorbereitung:
|
# web interface of the CryptoBox
|
||||||
# - die Variable "MNTIMAGE" (siehe unten) setzen - es muss der Name der cryptoloop-image-Datei sein
|
|
||||||
# - in die /etc/fstab einen passenden Eintrag einfuegen, z.B.:
|
|
||||||
# /data/cryptoimage.loop /mnt/crypto auto noauto,user,loop,encryption=aes,keybits=256
|
|
||||||
# - ein Image erstellen (als root):
|
|
||||||
# dd if=/dev/zero of=cryptoimage.loop bs=1M count=10
|
|
||||||
# losetup -k 256 -e aes /dev/loop1 cryptoimage.loop
|
|
||||||
# mkfs.ext3 /dev/loop1
|
|
||||||
# losetup -d /dev/loop1
|
|
||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
|
@ -189,6 +181,20 @@ sub box_init
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
sub system_poweroff()
|
||||||
|
{
|
||||||
|
&umount_vol();
|
||||||
|
system("{sleep 5; /sbin/poweroff; } </dev/null &>/dev/null &");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
sub system_reboot()
|
||||||
|
{
|
||||||
|
&umount_vol();
|
||||||
|
system("{sleep 5; /sbin/reboot; } </dev/null &>/dev/null &");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
################### main #########################
|
################### main #########################
|
||||||
|
|
||||||
my $query = new CGI;
|
my $query = new CGI;
|
||||||
|
@ -363,6 +369,19 @@ if ( ! &check_ssl()) {
|
||||||
$pagedata->setValue('Data.Doc.Page', 'CryptoBox.html');
|
$pagedata->setValue('Data.Doc.Page', 'CryptoBox.html');
|
||||||
$pagedata->setValue('Data.Action', 'doc');
|
$pagedata->setValue('Data.Action', 'doc');
|
||||||
}
|
}
|
||||||
|
##################### pweroff #######################
|
||||||
|
} elsif ($action eq 'shutdown_ask') {
|
||||||
|
$pagedata->setValue('Data.Action', 'shutdown_form');
|
||||||
|
##################### reboot ######################
|
||||||
|
} elsif ($action eq 'shutdown_do') {
|
||||||
|
if ($type eq 'reboot') {
|
||||||
|
&system_reboot();
|
||||||
|
$pagedata->setValue('Data.Success', 'ReBoot');
|
||||||
|
} else {
|
||||||
|
&system_poweroff();
|
||||||
|
$pagedata->setValue('Data.Success', 'PowerOff');
|
||||||
|
}
|
||||||
|
$pagedata->setValue('Data.Action', 'intro');
|
||||||
################### unknown #########################
|
################### unknown #########################
|
||||||
} else {
|
} else {
|
||||||
$pagedata->setValue('Data.Error', 'UnknownAction');
|
$pagedata->setValue('Data.Error', 'UnknownAction');
|
||||||
|
|
Loading…
Reference in New Issue