update 2025-04-02 04:23:57
This commit is contained in:
parent
93e6cb6bfe
commit
62783d6f81
|
@ -14,7 +14,7 @@ PKG_LICENSE:=Apache-2.0
|
||||||
PKG_MAINTAINER:=Sirpdboy <herboy2008@gmail.com>
|
PKG_MAINTAINER:=Sirpdboy <herboy2008@gmail.com>
|
||||||
|
|
||||||
LUCI_TITLE:=LuCI Support for Automatic Partition Mount
|
LUCI_TITLE:=LuCI Support for Automatic Partition Mount
|
||||||
LUCI_DEPENDS:=+fdisk +block-mount +bc +blkid +parted
|
LUCI_DEPENDS:=+fdisk +block-mount +bc +blkid +parted +btrfs-progs
|
||||||
LUCI_PKGARCH:=all
|
LUCI_PKGARCH:=all
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -276,17 +276,30 @@ fdiskB(){
|
||||||
local b=$a$1
|
local b=$a$1
|
||||||
log "开始检测目标$a信息"
|
log "开始检测目标$a信息"
|
||||||
log "检测/dev/$b是否需要分区和格式化$format_type"
|
log "检测/dev/$b是否需要分区和格式化$format_type"
|
||||||
[ -e "/etc/config/dockerd" ] && /etc/init.d/dockerd stop >/dev/null 2> /dev/null
|
|
||||||
|
if [ $target_function = '/opt' ] ;then
|
||||||
|
/etc/init.d/dockerd stop >/dev/null 2> /dev/null
|
||||||
|
amount=`mount |grep /opt | awk '{print $1}'`
|
||||||
|
if [ -n $amount ] ;then
|
||||||
|
umount $amount >/dev/null 2> /dev/null
|
||||||
|
log "取消/opt之前的挂载$amount成功!"
|
||||||
|
fi
|
||||||
|
for OPT in $(mount |grep /opt | awk '{print $3}');do
|
||||||
|
umount $OPT >/dev/null 2> /dev/null
|
||||||
|
log "取消/opt之前的挂载$OPT成功!"
|
||||||
|
done
|
||||||
|
fi
|
||||||
[ -e "/etc/config/fstab" ] || block detect > /etc/config/fstab
|
[ -e "/etc/config/fstab" ] || block detect > /etc/config/fstab
|
||||||
[ -d "/mnt/$b" ] || mkdir -p /mnt/$b
|
[ -d "/mnt/$b" ] || mkdir -p /mnt/$b
|
||||||
if is_disk_mounted "/dev/$b"; then
|
if is_disk_mounted "/dev/$b"; then
|
||||||
log "设备 /dev/$b 已挂载,尝试取消挂载..."
|
log "设备 /dev/$b 已挂载,尝试取消挂载..."
|
||||||
if check_shared_mount $b; then
|
|
||||||
usamba samba4 $MOUNT
|
if check_shared_mount $b; then
|
||||||
usamba samba $MOUNT
|
usamba samba4 $MOUNT
|
||||||
sleep 5
|
usamba samba $MOUNT
|
||||||
fi
|
sleep 5
|
||||||
umount_disk "/dev/$b" || umount_disk "/mnt/$b"
|
fi
|
||||||
|
umount_disk "/dev/$b" || umount_disk "/mnt/$b"
|
||||||
else
|
else
|
||||||
log "设备/dev/$b未挂载"
|
log "设备/dev/$b未挂载"
|
||||||
isfdisk=0
|
isfdisk=0
|
||||||
|
@ -412,10 +425,7 @@ fdiskB(){
|
||||||
umount /dev/$b >/dev/null 2> /dev/null
|
umount /dev/$b >/dev/null 2> /dev/null
|
||||||
[ $? -ne 0 ] && umount /mnt/$b >/dev/null 2> /dev/null
|
[ $? -ne 0 ] && umount /mnt/$b >/dev/null 2> /dev/null
|
||||||
[ $? -ne 0 ] && block umount /dev/$b >/dev/null 2> /dev/null
|
[ $? -ne 0 ] && block umount /dev/$b >/dev/null 2> /dev/null
|
||||||
for OPT in $(mount |grep /opt | awk '{print $1}');do
|
|
||||||
umount $OPT >/dev/null 2> /dev/null
|
|
||||||
log "取消/opt之前的挂载$OPT成功!"
|
|
||||||
done
|
|
||||||
block detect > /etc/config/fstab
|
block detect > /etc/config/fstab
|
||||||
mkdir -p $target_function
|
mkdir -p $target_function
|
||||||
msum=$(grep -c "'mount'" /etc/config/fstab)
|
msum=$(grep -c "'mount'" /etc/config/fstab)
|
||||||
|
@ -524,9 +534,10 @@ get_all_disks() {
|
||||||
|
|
||||||
check_free_space() {
|
check_free_space() {
|
||||||
DISK=$1
|
DISK=$1
|
||||||
PARTED_OUTPUT=$(parted /dev/$DISK unit GB print free 2>/dev/null)
|
PARTED_OUTPUT=$(echo i | parted /dev/$DISK unit GB print free 2>/dev/null)
|
||||||
FREE_SPACE=$(echo "$PARTED_OUTPUT" | grep "Free Space" | awk '{print $3}' )
|
FREE_SPACE=$(echo "$PARTED_OUTPUT" | grep "Free Space" | awk '{print $3}' )
|
||||||
echo $FREE_SPACE |awk -F '.' '{print $1}'
|
echo $FREE_SPACE |awk -F '.' '{print $1}' | sed 's/[A-Za-z]//g'
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
# 获取下一个新的可用的分区号
|
# 获取下一个新的可用的分区号
|
||||||
|
@ -579,7 +590,7 @@ autopart() {
|
||||||
log "硬盘信息列表:" $DISKSALL
|
log "硬盘信息列表:" $DISKSALL
|
||||||
SYSTEM_DISK=$(get_system_disk)
|
SYSTEM_DISK=$(get_system_disk)
|
||||||
log "系统盘: "$SYSTEM_DISK
|
log "系统盘: "$SYSTEM_DISK
|
||||||
if [ "/dev/$DISK" == "$SYSTEM_DISK" ] ;then
|
if [[ $SYSTEM_DISK =~ ^/dev/$DISK ]] ;then
|
||||||
fdisksave /dev/$DISK
|
fdisksave /dev/$DISK
|
||||||
log "此次执行操作功能:$target_function ,目标盘是系统盘:/dev/$DISK"
|
log "此次执行操作功能:$target_function ,目标盘是系统盘:/dev/$DISK"
|
||||||
PARTITIONSUM=$(get_partition_number $DISK)
|
PARTITIONSUM=$(get_partition_number $DISK)
|
||||||
|
|
|
@ -362,7 +362,7 @@ o.default = 0
|
||||||
o:depends({ [_n("fallback")] = true })
|
o:depends({ [_n("fallback")] = true })
|
||||||
]]--
|
]]--
|
||||||
|
|
||||||
o = s:option(DynamicList, _n("fallback_list"), "Fallback", translate("dest,path"))
|
o = s:option(DynamicList, _n("fallback_list"), "Fallback", translate("format: dest,path,xver"))
|
||||||
o:depends({ [_n("fallback")] = true })
|
o:depends({ [_n("fallback")] = true })
|
||||||
|
|
||||||
o = s:option(Flag, _n("bind_local"), translate("Bind Local"), translate("When selected, it can only be accessed localhost."))
|
o = s:option(Flag, _n("bind_local"), translate("Bind Local"), translate("When selected, it can only be accessed localhost."))
|
||||||
|
|
|
@ -371,19 +371,19 @@ function gen_config_server(node)
|
||||||
local fallbackStr = node.fallback_list[i]
|
local fallbackStr = node.fallback_list[i]
|
||||||
if fallbackStr then
|
if fallbackStr then
|
||||||
local tmp = {}
|
local tmp = {}
|
||||||
string.gsub(fallbackStr, '[^' .. "," .. ']+', function(w)
|
string.gsub(fallbackStr, '[^,]+', function(w)
|
||||||
table.insert(tmp, w)
|
table.insert(tmp, w)
|
||||||
end)
|
end)
|
||||||
local dest = tmp[1] or ""
|
local dest = tmp[1] or ""
|
||||||
local path = tmp[2]
|
local path = tmp[2]
|
||||||
if dest:find("%.") then
|
local xver = tonumber(tmp[3])
|
||||||
else
|
if not dest:find("%.") then
|
||||||
dest = tonumber(dest)
|
dest = tonumber(dest)
|
||||||
end
|
end
|
||||||
fallbacks[i] = {
|
fallbacks[i] = {
|
||||||
path = path,
|
path = path,
|
||||||
dest = dest,
|
dest = dest,
|
||||||
xver = 1
|
xver = xver
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in New Issue