From 32e27852ff90f1db5d69a9c154ca46984a656e5d Mon Sep 17 00:00:00 2001 From: Pdboy Sir <63764630+sirpdboy@users.noreply.github.com> Date: Fri, 15 Mar 2024 16:53:29 +0800 Subject: [PATCH] =?UTF-8?q?up=20luci-app-partexp=201.1.0=E7=89=88=EF=BC=8C?= =?UTF-8?q?=E5=8F=96=E6=B6=88=E7=AC=AC=E4=B8=89=E6=96=B9=E4=BE=9D=E8=B5=96?= =?UTF-8?q?=EF=BC=8C=E4=BF=AE=E5=A4=8D=E6=8C=82=E8=BD=BD=E9=97=AE=E9=A2=98?= =?UTF-8?q?=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- luci-app-partexp/Makefile | 4 +- .../luasrc/controller/partexp.lua | 99 +++------ .../luasrc/model/cbi/partexp/global.lua | 38 ++-- luci-app-partexp/luasrc/view/partexp.htm | 210 ++++++++++-------- luci-app-partexp/po/zh-cn/partexp.po | 76 +++++++ luci-app-partexp/po/zh_Hans/partexp.po | 76 +++++++ luci-app-partexp/root/etc/config/partexp | 2 +- luci-app-partexp/root/etc/init.d/partexp | 92 +++++--- luci-app-partexp/root/etc/partexp/lucilogpos | 1 + luci-app-partexp/root/etc/partexp/partexp.log | 1 + .../root/etc/uci-defaults/40_luci-partexp | 8 +- 11 files changed, 383 insertions(+), 224 deletions(-) create mode 100644 luci-app-partexp/po/zh-cn/partexp.po create mode 100644 luci-app-partexp/po/zh_Hans/partexp.po create mode 100644 luci-app-partexp/root/etc/partexp/lucilogpos create mode 100644 luci-app-partexp/root/etc/partexp/partexp.log diff --git a/luci-app-partexp/Makefile b/luci-app-partexp/Makefile index 368b1b2..8b06568 100644 --- a/luci-app-partexp/Makefile +++ b/luci-app-partexp/Makefile @@ -7,8 +7,8 @@ include $(TOPDIR)/rules.mk PKG_NAME:=luci-app-partexp -PKG_VERSION:=0.1.9 -PKG_RELEASE:=20221201 +PKG_VERSION:=1.1.0 +PKG_RELEASE:=20240314 PKG_LICENSE:=Apache-2.0 PKG_MAINTAINER:=Sirpdboy diff --git a/luci-app-partexp/luasrc/controller/partexp.lua b/luci-app-partexp/luasrc/controller/partexp.lua index 91f0d23..db05dbf 100644 --- a/luci-app-partexp/luasrc/controller/partexp.lua +++ b/luci-app-partexp/luasrc/controller/partexp.lua @@ -2,79 +2,48 @@ LuCI - Lua Configuration Partition Expansion Copyright (C) 2022 sirpdboy https://github.com/sirpdboy/partexp ]]-- -require "luci.util" + +local fs = require "nixio.fs" +local http = require "luci.http" +local uci = require"luci.model.uci".cursor() local name = 'partexp' module("luci.controller.partexp", package.seeall) + function index() - entry({"admin","system","partexp"},alias("admin", "system", "partexp", "global"),_("Partition Expansion"), 54) + local e = entry({"admin","system","partexp"},alias("admin", "system", "partexp", "global"),_("Partition Expansion"), 54) + e.dependent = false + e.acl_depends = { "luci-app-partexp" } entry({"admin", "system", "partexp", "global"}, cbi('partexp/global', {hideapplybtn = true, hidesavebtn = true, hideresetbtn = true}), _('Partition Expansion'), 10).leaf = true - entry({"admin", "system", "partexp","partexprun"}, call("partexprun")).leaf = true - -- entry({"admin", "system", "partexp", "realtime_log"}, call("get_log")) + entry({"admin", "system", "partexp","partexprun"}, call("partexprun")) + entry({"admin", "system", "partexp", "check"}, call("act_check")) +end +function act_check() + + http.prepare_content("text/plain; charset=utf-8") + local f=io.open("/etc/partexp/partexp.log", "r+") + local fdp=fs.readfile("/etc/partexp/lucilogpos") or 0 + f:seek("set",fdp) + local a=f:read(2048000) or "" + fdp=f:seek() + fs.writefile("/etc/partexp/lucilogpos",tostring(fdp)) + f:close() + http.write(a) end -function get_log() - local e = {} - e.running = luci.sys.call("busybox ps -w | grep partexp | grep -v grep >/dev/null") == 0 - e.log = fs.readfile("/etc/partexp/partexp.log") or "" - luci.http.prepare_content("application/json") - luci.http.write_json(e) -end function partexprun() - local uci = luci.model.uci.cursor() - local keep_config = luci.http.formvalue('keep_config') - local auto_format = luci.http.formvalue('auto_format') - local target_function = luci.http.formvalue('target_function') - local target_disk = luci.http.formvalue('target_disk') - --uci:delete(name, '@global[0]', global) - uci:set(name, '@global[0]', 'target_disk', target_disk) - uci:set(name, '@global[0]', 'target_function', target_function) - uci:set(name, '@global[0]', 'auto_format', auto_format) - uci:set(name, '@global[0]', 'keep_config', keep_config) + local kconfig = http.formvalue('kconfig') + local aformat = http.formvalue('aformat') + local targetf = http.formvalue('targetf') + local targetd = http.formvalue('targetd') + uci:set(name, 'global', 'target_disk', targetd) + uci:set(name, 'global', 'target_function', targetf) + uci:set(name, 'global', 'auto_format', aformat) + uci:set(name, 'global', 'keep_config', kconfig) uci:commit(name) - -- e = nixio.exec("/bin/sh", "-c" ,"/etc/init.d/partexp autopart") - e = luci.sys.exec('/etc/init.d/partexp autopart') - - luci.http.prepare_content('application/json') - luci.http.write_json(e) + fs.writefile("/etc/partexp/lucilogpos","0") + http.prepare_content("application/json") + http.write('') + luci.sys.exec("/etc/init.d/partexp autopart > /etc/partexp/partexp.log 2>&1 &") end - -function outexec(cmd) - luci.http.prepare_content("text/plain") - local util = io.popen(cmd) - if util then - while true do - local ln = util:read("*l") - if not ln then break end - luci.http.write(ln) - luci.http.write("\n") - end - util:close() - end - -end - -function fork_exec(command) - local pid = nixio.fork() - if pid > 0 then - return - elseif pid == 0 then - -- change to root dir - nixio.chdir("/") - - -- patch stdin, out, err to /dev/null - local null = nixio.open("/dev/null", "w+") - if null then - nixio.dup(null, nixio.stderr) - nixio.dup(null, nixio.stdout) - nixio.dup(null, nixio.stdin) - if null:fileno() > 2 then - null:close() - end - end - - -- replace with target command - nixio.exec("/bin/sh", "-c", command) - end -end \ No newline at end of file diff --git a/luci-app-partexp/luasrc/model/cbi/partexp/global.lua b/luci-app-partexp/luasrc/model/cbi/partexp/global.lua index 2aaae0e..9646592 100644 --- a/luci-app-partexp/luasrc/model/cbi/partexp/global.lua +++ b/luci-app-partexp/luasrc/model/cbi/partexp/global.lua @@ -40,8 +40,10 @@ t.anonymous=true e=t:option(ListValue,"target_function", translate("Select function"),translate("Select the function to be performed")) e:value("/overlay", translate("Expand application space overlay (/overlay)")) -- e:value("/", translate("Use as root filesystem (/)")) +-- e:value("/lnoverlay", translate("Soft chain partition expansion(/overlay)")) e:value("/opt", translate("Used as Docker data disk (/opt)")) e:value("/dev", translate("Normal mount and use by device name(/dev/x1)")) +e.default="/opt" e=t:option(ListValue,"target_disk", translate("Destination hard disk"),translate("Select the hard disk device to operate")) for i, d in ipairs(devices) do @@ -52,32 +54,18 @@ for i, d in ipairs(devices) do end end -o=t:option(Flag,"keep_config",translate("Keep configuration"),translate("Tick means to retain the settings")) -o:depends("target_function", "/overlay") -o.default=0 +e=t:option(Flag,"keep_config",translate("Keep configuration"),translate("Tick means to retain the settings")) +e:depends("target_function", "/overlay") +e.default=0 -o=t:option(Flag,'auto_format', translate('Format before use'),translate("Ticking indicates formatting")) -o:depends("target_function", "/opt") -o:depends("target_function", "/dev") -o.default=0 +e=t:option(Flag,'auto_format', translate('Format before use'),translate("Ticking indicates formatting")) +e:depends("target_function", "/opt") +e:depends("target_function", "/dev") +-- e:depends("target_function", "/lnoverlay") +e.default=0 -o=t:option(DummyValue, '', '') -o.rawhtml = true -o.template ='partexp' - - -e=t:option(TextValue,"log") -e.rows=15 -e.wrap="on" -e.readonly=true -e.cfgvalue=function(t,t) -return fs.readfile("/etc/partexp/partexp.log")or"" -end -e.write=function(e,e,e) -end - --- e =t:option(DummyValue, '', '') --- e.rawhtml = true --- e.template = 'partexplog' +e=t:option(Button, "restart", translate("Perform operation")) +e.inputtitle=translate("Click to execute") +e.template ='partexp' return m diff --git a/luci-app-partexp/luasrc/view/partexp.htm b/luci-app-partexp/luasrc/view/partexp.htm index 9ed6a39..bad9e28 100644 --- a/luci-app-partexp/luasrc/view/partexp.htm +++ b/luci-app-partexp/luasrc/view/partexp.htm @@ -1,106 +1,128 @@ <%# -Copyright (C) 2022 sirpdboy https://github.com/sirpdboy/partexp +Copyright (C) 2022-2024 sirpdboy https://github.com/sirpdboy/partexp -%> -<% -local fs = require "nixio.fs" -%> - <%+cbi/valueheader%> - - - -
- "> - +<%local fs=require"nixio.fs"%> + + - + - <%+cbi/valuefooter%> diff --git a/luci-app-partexp/po/zh-cn/partexp.po b/luci-app-partexp/po/zh-cn/partexp.po new file mode 100644 index 0000000..9177b33 --- /dev/null +++ b/luci-app-partexp/po/zh-cn/partexp.po @@ -0,0 +1,76 @@ +msgid "" +msgstr "" +"Copyright (C) 2022-2024 sirpdboy herboy2008@gmail.com https://github.com/sirpdboy/luci-app-partexp" +"This is free software, licensed under the GNU General Public License v3." + +msgid "Partition Expansion" +msgstr "分区扩容" + +msgid "One click partition expansion mounting tool" +msgstr "一键分区扩容挂载工具" + +msgid "Automatically format and mount the target device partition. If there are multiple partitions, it is recommended to manually delete all partitions before using this tool.
For specific usage, see:" +msgstr "自动对目标设备分区格式化挂载,如果有多分区建议手动删除所有分区再使用本工具.
使用说明见:" + +msgid "Waiting,(executing)..." +msgstr "稍等,努力执行中" + +msgid "Expand application space overlay (/overlay)" +msgstr "用于overlay软件空间 (/overlay)" + +msgid "Use as root filesystem (/)" +msgstr "用作根文件系统(/)" + +msgid "Used as Docker data disk (/opt)" +msgstr "用作Docker数据盘 (/opt)" + +msgid "Normal mount and use by device name(/dev/x1)" +msgstr "按设备名普通挂载使用(/dev/x1)" + +msgid "Soft chain partition expansion(/overlay)" +msgstr "分区软链扩容(/overlay)" + +msgid "Destination hard disk" +msgstr "目标硬盘" + +msgid "Keep configuration" +msgstr "保留配置" + +msgid "Format before use" +msgstr "使用前格式化" + +msgid "Select the hard disk device to operate" +msgstr "选择需要操作的硬盘设备" + +msgid "Select function" +msgstr "选择功能" + +msgid "Click to execute" +msgstr "点击执行" + +msgid "Perform operation" +msgstr "执行操作" + +msgid "To make the operation effective, the device will restart. Are you sure to execute?" +msgstr "警告:操作一旦确定无法取消,设备将会重启,是否确定执行?" + +msgid "Operation in progress, please wait..." +msgstr "操作执行中,请稍候..." + +msgid "After operation, restart the machine, please wait..." +msgstr "操作完毕,机器重启,请稍候..." + +msgid "Please delete the partition or share and try again" +msgstr "错误,请检查是否有足够空间或是共享使用中。" + +msgid "Restart the device to take effect. Confirm whether to continue?" +msgstr "重启设备操作才生效,确定是否继续执行?" + +msgid "Operation execution complete" +msgstr "操作执行完毕" + +msgid "Ticking indicates formatting" +msgstr "打勾选择表示格式化" + +msgid "Tick means to retain the settings" +msgstr "打勾选择表示保留设置" \ No newline at end of file diff --git a/luci-app-partexp/po/zh_Hans/partexp.po b/luci-app-partexp/po/zh_Hans/partexp.po new file mode 100644 index 0000000..1eea307 --- /dev/null +++ b/luci-app-partexp/po/zh_Hans/partexp.po @@ -0,0 +1,76 @@ +msgid "" +msgstr "" +"Copyright (C) 2022-2024 sirpdboy herboy2008@gmail.com https://github.com/sirpdboy/luci-app-partexp" +"This is free software, licensed under the GNU General Public License v3." + +msgid "Partition Expansion" +msgstr "分区扩容" + +msgid "One click partition expansion mounting tool" +msgstr "一键分区扩容挂载工具" + +msgid "Automatically format and mount the target device partition. If there are multiple partitions, it is recommended to manually delete all partitions before using this tool.
For specific usage, see:" +msgstr "自动对目标设备分区格式化挂载,如果有多分区建议手动删除所有分区再使用本工具.
使用说明见:" + +msgid "Waiting,(executing)..." +msgstr "稍等,努力执行中" + +msgid "Expand application space overlay (/overlay)" +msgstr "用于overlay软件空间 (/overlay)" + +msgid "Use as root filesystem (/)" +msgstr "用作根文件系统(/)" + +msgid "Used as Docker data disk (/opt)" +msgstr "用作Docker数据盘 (/opt)" + +msgid "Normal mount and use by device name(/dev/x1)" +msgstr "按设备名普通挂载使用(/dev/x1)" + +msgid "Soft chain partition expansion(/overlay)" +msgstr "分区软链扩容(/overlay)" + +msgid "Destination hard disk" +msgstr "目标硬盘" + +msgid "Keep configuration" +msgstr "保留配置" + +msgid "Format before use" +msgstr "使用前格式化" + +msgid "Select the hard disk device to operate" +msgstr "选择需要操作的硬盘设备" + +msgid "Select function" +msgstr "选择功能" + +msgid "Click to execute" +msgstr "点击执行" + +msgid "Perform operation" +msgstr "执行操作" + +msgid "To make the operation effective, the device will restart. Are you sure to execute?" +msgstr "警告:操作一旦确定无法取消,设备将会重启,是否确定执行?" + +msgid "Operation in progress, please wait..." +msgstr "操作执行中,请稍候..." + +msgid "After operation, restart the machine, please wait..." +msgstr "操作完毕,机器重启,请稍候..." + +msgid "Please delete the partition or share and try again" +msgstr "错误,请检查是否有足够空间或是共享使用中。" + +msgid "Restart the device to take effect. Confirm whether to continue?" +msgstr "重启设备操作才生效,确定是否继续执行?" + +msgid "Operation execution complete" +msgstr "操作执行完毕" + +msgid "Ticking indicates formatting" +msgstr "打勾选择表示格式化" + +msgid "Tick means to retain the settings" +msgstr "打勾选择表示保留设置" diff --git a/luci-app-partexp/root/etc/config/partexp b/luci-app-partexp/root/etc/config/partexp index 0eb6032..2b59db9 100644 --- a/luci-app-partexp/root/etc/config/partexp +++ b/luci-app-partexp/root/etc/config/partexp @@ -1,4 +1,4 @@ -config global +config global 'global' option target_function '/overlay' option target_disk '' option keep_config '0' diff --git a/luci-app-partexp/root/etc/init.d/partexp b/luci-app-partexp/root/etc/init.d/partexp index ba25f26..a75f6d7 100644 --- a/luci-app-partexp/root/etc/init.d/partexp +++ b/luci-app-partexp/root/etc/init.d/partexp @@ -29,18 +29,17 @@ limit_log() { init_env() { [ -d "$LOGD" ] || mkdir -p $LOGD -[ ! -f "$LOG" ] && echo "" > $LOG +[ ! -f "$LOG" ] && echo " " > $LOG } gen_log()( - [ -s $LOG ] && echo " ---------------------------------------------------------------------- " >> $LOG - log "自动分区扩展挂载开始执行..." + log "---------------自动分区扩展挂载开始执行------------------ " ) log(){ - echo " $(date +'%Y-%m-%d %H:%M:%S') $*" >> $LOG + echo -e " $(date +'%Y-%m-%d %H:%M:%S') $*" } @@ -69,15 +68,15 @@ s=$1 s2=$2 [ -e "/etc/config/$s" ] && { msum=$(grep -c "config sambashare" /etc/config/$s) - for i in $(seq 0 $((msum-1))) + for i in $(seq 0 $((msum))) do - dev=`uci -q get $s.@sambashare[$i].device ` - [ $? -ne 0 ] && break - [ "$dev" = "$s2" ] && { + pdev=`uci -q get $s.@sambashare[$i].path ` + [ "$pdev" = "$s2" ] && { uci delete $s.@sambashare[$i] - uci commit - /etc/init.d/$s restart + uci commit $s + log "分区/dev/$b被挂载$MOUNT共享使用,删除$s共享成功!" sleep 5 + /etc/init.d/$s restart } done } @@ -98,7 +97,6 @@ fdiskB(){ else isfdisk=2 fi - isP=`fdisk -l /dev/$a |grep -v "bytes" | grep "/dev/$b"` if [ "$isP" -a "$isfdisk" = 1 ] ;then @@ -109,27 +107,24 @@ fdiskB(){ log "分区$b建立失败,没有足够的空间操作失败!" expquit 1 fi + sleep 1 + [ -e "/etc/config/dockerd" ] && /etc/init.d/dockerd stop >/dev/null 2> /dev/null block detect > /etc/config/fstab isD=` block info "/dev/$b" ` if [ "$isD" ];then MOUNT='';eval $(block info "/dev/$b" | grep -o -e "MOUNT=\S*") log "检测/dev/$b是不是被共享..." - sleep 1 - if [ "$MOUNT" ] ; then - usamba samba4 $b - usamba samba $b - - block detect > /etc/config/fstab + if [ "x$MOUNT" != 'x' ] ; then + usamba samba4 $MOUNT + usamba samba $MOUNT sleep 5 umount $MOUNT || block umount /dev/$b sleep 5 MOUNT='';eval $(block info "/dev/$b" | grep -o -e "MOUNT=\S*") - if [ "$MOUNT" ] ;then - log "分区/dev/$b挂载$MOUNT使用中,已执行删除共享操作!请重新执行!如果不行请手动删除共享或者取消其它插件的占用权限再重试!" + if [ "x$MOUNT" != 'x' ] ;then + log "分区/dev/$b挂载$MOUNT使用中,自动删除失败!请手动删除共享或者取消其它插件的占用权限再重试!" expquit 1 - else - log "分区/dev/$b被挂载$MOUNT共享使用,自动删除共享成功!" fi else log "检测目标设备$b未被共享..." @@ -152,8 +147,7 @@ fdiskB(){ [ -d "/mnt/$b" ] || mkdir -p /mnt/$b MOUNT='';eval $(block info "/dev/$b" | grep -o -e "MOUNT=\S*") - echo "test40:$b" - if [ "$MOUNT" ] ;then + if [ "x$MOUNT" != 'x' ] ;then umount /mnt/$b || block umount /dev/$b MOUNT='';eval $(block info "/dev/$b" | grep -o -e "MOUNT=\S*") if [ "$MOUNT" ] ; then @@ -162,12 +156,19 @@ fdiskB(){ fi fi TYPE='';eval $(block info "/dev/$b" | grep -o -e "TYPE=\S*") + log "检测设备/dev/$b分区是$TYPE格式!" if [ "$TYPE" = "ntfs" ];then - mount -t ntfs-3g /dev/$b /mnt/$b >/dev/null 2> /dev/null + if [ `which ntfs-3g ` ] ;then + mount -t ntfs-3g /dev/$b /mnt/$b >/dev/null 2> /dev/null + elif [ `which ntfs3 ` ] ;then + mount -t ntfs3 /dev/$b /mnt/$b >/dev/null 2> /dev/null + else + log "不支持NTFS分区挂载,请安装ntfs-3g或者ntfs3支持服务" + expquit 1 + fi else mount /dev/$b /mnt/$b >/dev/null 2> /dev/null fi - log "检测设备/dev/$b分区是$TYPE格式!" UUID='';eval $(block info /dev/$b | grep -o -e "UUID=\S*") if [ ! "$UUID" ] ; then log "获取/dev/$b设备UUID信息失败!" @@ -192,7 +193,7 @@ fdiskB(){ log "保留数据根目录扩展/dev/$b成功!" seelp 5 - log "设备重启才能生效,重启中..." + log "设备重启才能生效" expquit 2 elif [ "$target_function" = "/overlay" ] ; then @@ -222,7 +223,7 @@ fdiskB(){ uci commit fstab log "保留数据overlay扩展/dev/$b成功!" seelp 5 - log "设备重启才能生效,重启中..." + log "设备重启才能生效" expquit 2 else @@ -250,10 +251,30 @@ fdiskB(){ log "不保留数据overlay扩展/dev/$b成功!" seelp 5 - log "设备重启才能生效,重启中..." + log "设备重启才能生效" expquit 2 fi + elif [ "$target_function" = "/lnoverlay" ] ; then + umount /mnt/$b || block umount /dev/$b + + block detect > /etc/config/fstab + mkdir -p $target_function + msum=$(grep -c "'mount'" /etc/config/fstab) + for i in $(seq 0 $((msum-1))) + do + zuuid=`uci -q get fstab.@mount[$i].uuid ` + [ $? -ne 0 ] && break + if [ "$zuuid" = "$UUID" ] ; then + uci -q set fstab.@mount[$i].target="/mnt/$b" + uci -q set fstab.@mount[$i].enabled='1' + fi + done + uci commit fstab + ln -sf /mnt/$b /overlay + log "设备/dev/$b挂载/mnt/$b软链到/overlay扩容成功!" + log "设备重启才能生效" + expquit 2 else umount /mnt/$b || block umount /dev/$b @@ -273,7 +294,7 @@ fdiskB(){ done uci commit fstab [ "$target_function" = "/opt" ] && log "挂载/dev/$b到$target_function成功!" || log "挂载/dev/$b到/mnt/$b成功!" - log "设备重启才能生效,重启中..." + log "设备重启才能生效" expquit 2 fi @@ -284,10 +305,9 @@ autopart() { config_load partexp config_foreach get_config global init_env - limit_log $LOG 500 # touch $LOCK - cat $LOG 2>/dev/null | sed -n '$p' | grep -q '自动分区扩展挂载开始执行...' || gen_log - + gen_log + log "此次执行操作功能:$target_function ,目标盘:/dev/$target_disk" isP=`fdisk -l /dev/$target_disk |grep "Disk /dev/$target_disk"` if [ "$isP" = "" ];then log "没有检测到/dev/$target_disk目标设备!操作失败!" @@ -325,11 +345,10 @@ autopart() { esac fi - # rm -f $LOCK + rm -f $LOCK } start() { -init_env [ x$x = x1 ] && exit || autopart } @@ -340,7 +359,8 @@ x=1 expquit() { rm -f $LOCK - echo $1 - [ $1 == 2 ] &&reboot + [ -e "/etc/config/dockerd" ] && /etc/init.d/dockerd restart >/dev/null 2> /dev/null + sleep 5 + [ $1 == 2 ] && log "重启中...\n" &&reboot exit $1 } diff --git a/luci-app-partexp/root/etc/partexp/lucilogpos b/luci-app-partexp/root/etc/partexp/lucilogpos new file mode 100644 index 0000000..a76eb9d --- /dev/null +++ b/luci-app-partexp/root/etc/partexp/lucilogpos @@ -0,0 +1 @@ +1043 \ No newline at end of file diff --git a/luci-app-partexp/root/etc/partexp/partexp.log b/luci-app-partexp/root/etc/partexp/partexp.log new file mode 100644 index 0000000..0ea6601 --- /dev/null +++ b/luci-app-partexp/root/etc/partexp/partexp.log @@ -0,0 +1 @@ + 1 \ No newline at end of file diff --git a/luci-app-partexp/root/etc/uci-defaults/40_luci-partexp b/luci-app-partexp/root/etc/uci-defaults/40_luci-partexp index 6cd1ec0..89d8efa 100644 --- a/luci-app-partexp/root/etc/uci-defaults/40_luci-partexp +++ b/luci-app-partexp/root/etc/uci-defaults/40_luci-partexp @@ -1,5 +1,11 @@ #!/bin/sh chmod +x /etc/init.d/partexp >/dev/null 2>&1 - +[ `uci -q get partexp.global` ] || uci set partexp.global=global +LOGD=/etc/partexp +LOG=$LOGD/partexp.log +LOGPOS=$LOGD/lucilogpos +[ -d "$LOGD" ] || mkdir -p $LOGD +[ ! -f "$LOG" ] && echo "start" > $LOG +[ ! -f "$LOGPOS" ] && echo 'start' > $LOGPOS rm -rf /tmp/luci-modulecache /tmp/luci-indexcache* exit 0