diff --git a/backup/backup.run b/backup/backup.run
index f3170de..eedda9f 100755
--- a/backup/backup.run
+++ b/backup/backup.run
@@ -7,20 +7,21 @@ light_magenta() { echo -e "\033[95m\033[01m[NOTICE] $1\033[0m"; }
 light_yellow() { echo -e "\033[93m\033[01m[NOTICE] $1\033[0m"; }
 
 backup() {
-    mkdir -p /tmp/upload
-    cd /tmp/upload
+    # 检查是否传入自定义路径
+    local backup_path=${1:-/tmp/upload}
+    mkdir -p "$backup_path"
+    cd "$backup_path" || exit
     # 备份软件源配置
     cp /etc/opkg/distfeeds.conf distfeeds.conf
     # 备份已安装软件列表
     opkg list-installed > packages-list.txt
-    # 分别备份overlay、etc目录、和usr/share目录
     tar -czvf overlay_backup.tar.gz /overlay
     # 将所有备份打包成一个文件
     tar -czvf backup.tar.gz distfeeds.conf packages-list.txt overlay_backup.tar.gz
     # 清理临时文件
     rm -rf distfeeds.conf packages-list.txt overlay_backup.tar.gz
-    green "系统备份文件已保存至 /tmp/upload/backup.tar.gz"
-    light_magenta "请及时下载保存到电脑,恢复时使用系统——文件传输上传至/tmp/upload目录,再调用恢复脚本即可"
+    green "系统备份文件已保存至 $backup_path/backup.tar.gz"
+    light_magenta "请及时下载保存到电脑 供恢复时使用"
 }
 
-backup
+backup "$1"