summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorStan Grishin <stangri@melmac.net>2019-11-19 09:54:08 -0700
committerStan Grishin <stangri@melmac.net>2019-11-19 09:54:08 -0700
commit6b2abe9fabdca8fafe734e3bae6d09e974634c95 (patch)
tree403a1d6333d6d469883f2dfabe45304cc445a741
parent15816e668df0bbdc36f6426557e488f6ade2e3ed (diff)
luci-app-advanced-reboot: bugfix: luci error on reboot, logger errors
Signed-off-by: Stan Grishin <stangri@melmac.net>
-rw-r--r--applications/luci-app-advanced-reboot/Makefile2
-rw-r--r--applications/luci-app-advanced-reboot/luasrc/controller/advanced_reboot.lua29
-rw-r--r--applications/luci-app-advanced-reboot/luasrc/view/advanced_reboot/applyreboot.htm4
3 files changed, 20 insertions, 15 deletions
diff --git a/applications/luci-app-advanced-reboot/Makefile b/applications/luci-app-advanced-reboot/Makefile
index a08d57fd8..e3037df2f 100644
--- a/applications/luci-app-advanced-reboot/Makefile
+++ b/applications/luci-app-advanced-reboot/Makefile
@@ -13,7 +13,7 @@ LUCI_DESCRIPTION:=Provides Web UI (found under System/Advanced Reboot) to reboot
LUCI_DEPENDS:=+luci-compat +luci-mod-admin-full
LUCI_PKGARCH:=all
-PKG_RELEASE:=43
+PKG_RELEASE:=45
include ../../luci.mk
diff --git a/applications/luci-app-advanced-reboot/luasrc/controller/advanced_reboot.lua b/applications/luci-app-advanced-reboot/luasrc/controller/advanced_reboot.lua
index 8b97f2e56..e1e63bcbf 100644
--- a/applications/luci-app-advanced-reboot/luasrc/controller/advanced_reboot.lua
+++ b/applications/luci-app-advanced-reboot/luasrc/controller/advanced_reboot.lua
@@ -45,7 +45,6 @@ end
function alt_partition_mount(op_ubi)
local ubi_dev
util.exec('for i in rom overlay firmware; do [ ! -d "$i" ] && mkdir -p "/alt/${i}"; done')
- util.exec("ubidetach -m " .. tostring(op_ubi))
ubi_dev = tostring(util.exec("ubiattach -m " .. tostring(op_ubi)))
_, _, ubi_dev = ubi_dev:find("UBI device number (%d+)")
if not ubi_dev then
@@ -54,17 +53,23 @@ function alt_partition_mount(op_ubi)
end
util.exec("ubiblock --create /dev/ubi" .. ubi_dev .. "_0")
util.exec("mount -t squashfs -o ro /dev/ubiblock" .. ubi_dev .. "_0 /alt/rom")
- util.exec("mount -t ubifs /dev/ubi1_" .. ubi_dev .. " /alt/overlay")
- util.exec("mount -t overlay overlay -o noatime,lowerdir=/alt/rom,upperdir=/alt/overlay/upper,workdir=/alt/overlay/work /alt/firmware")
+ util.exec("mount -t ubifs /dev/ubi" .. ubi_dev .. "_1 /alt/overlay")
+-- util.exec("mount -t overlay overlay -o noatime,lowerdir=/alt/rom,upperdir=/alt/overlay/upper,workdir=/alt/overlay/work /alt/firmware")
end
function alt_partition_unmount(op_ubi)
- util.exec("umount /alt/firmware")
- util.exec("umount /alt/overlay")
- util.exec("umount /alt/rom")
- util.exec("ubiblock --remove /dev/ubi1_0")
- util.exec("ubidetach -m " .. tostring(op_ubi))
- util.exec('rm -rf /alt')
+-- util.exec("[ -d /alt/firmware ] && umount /alt/firmware")
+ util.exec("[ -d /alt/overlay ] && umount /alt/overlay")
+ util.exec("[ -d /alt/rom ] && umount /alt/rom")
+ for i = 0, 10 do
+ if not fs.access("/sys/devices/virtual/ubi/ubi" .. tostring(i) .. "/mtd_num") then break end
+ ubi_mtd = tonumber(util.trim(util.exec("cat /sys/devices/virtual/ubi/ubi" .. i .. "/mtd_num")))
+ if ubi_mtd and ubi_mtd == op_ubi then
+ util.exec("ubiblock --remove /dev/ubi" .. tostring(i) .. "_0")
+ util.exec("ubidetach -m " .. tostring(op_ubi))
+ util.exec('rm -rf /alt')
+ end
+ end
end
devices = {
@@ -169,7 +174,7 @@ function index()
end
function action_reboot()
- ltemplate.render("admin_system/applyreboot", {
+ ltemplate.render("advanced_reboot/applyreboot", {
title = i18n.translate("Rebooting..."),
msg = i18n.translate("The system is rebooting now.<br /> DO NOT POWER OFF THE DEVICE!<br /> Wait a few minutes before you try to reconnect. It might be necessary to renew the address of your computer to reach the device again, depending on your settings."),
addr = ip.new(type(ip) == "string" and ip or "192.168.1.1") or "192.168.1.1"
@@ -240,7 +245,7 @@ function action_altreboot()
end
end
if not errorMessage then
- ltemplate.render("admin_system/applyreboot", {
+ ltemplate.render("advanced_reboot/applyreboot", {
title = i18n.translate("Rebooting..."),
msg = i18n.translate("The system is rebooting to an alternative partition now.<br /> DO NOT POWER OFF THE DEVICE!<br /> Wait a few minutes before you try to reconnect. It might be necessary to renew the address of your computer to reach the device again, depending on your settings."),
addr = ip.new(uci:get("network", "lan", "ipaddr")) or "192.168.1.1"
@@ -274,7 +279,7 @@ function action_poweroff()
ltemplate.render("advanced_reboot/advanced_reboot",{})
end
elseif step == 2 then
- ltemplate.render("admin_system/applyreboot", {
+ ltemplate.render("advanced_reboot/applyreboot", {
title = i18n.translate("Shutting down..."),
msg = i18n.translate("The system is shutting down now.<br /> DO NOT POWER OFF THE DEVICE!<br /> It might be necessary to renew the address of your computer to reach the device again, depending on your settings."),
addr = ip.new(uci:get("network", "lan", "ipaddr")) or "192.168.1.1"
diff --git a/applications/luci-app-advanced-reboot/luasrc/view/advanced_reboot/applyreboot.htm b/applications/luci-app-advanced-reboot/luasrc/view/advanced_reboot/applyreboot.htm
index e235bd467..94ac36bd7 100644
--- a/applications/luci-app-advanced-reboot/luasrc/view/advanced_reboot/applyreboot.htm
+++ b/applications/luci-app-advanced-reboot/luasrc/view/advanced_reboot/applyreboot.htm
@@ -7,8 +7,8 @@
<html>
<head>
<title><%=luci.sys.hostname()%> - <%= title or translate("Rebooting...") %></title>
- <link rel="stylesheet" type="text/css" media="screen" href="<%=media%>/cascade.css" />
- <script type="text/javascript" src="<%=resource%>/xhr.js"></script>
+ <link rel="stylesheet" type="text/css" media="screen" href="<%=media%>/cascade.css?v=git-19.271.68204-f8775ee" />
+ <script type="text/javascript" src="<%=resource%>/xhr.js?v=git-19.271.68204-f8775ee"></script>
<script type="text/javascript">//<![CDATA[
var interval = window.setInterval(function() {
var img = new Image();