Browse Source

进一步优化兼容旧的配置目录的逻辑并进行输出提醒 (#395)

devome 3 years ago
parent
commit
b6928f5b7f
1 changed files with 16 additions and 2 deletions
  1. 16 2
      docker/normal-rootfs/etc/cont-init.d/10-fixuser

+ 16 - 2
docker/normal-rootfs/etc/cont-init.d/10-fixuser

@@ -1,9 +1,17 @@
 #!/usr/bin/with-contenv bash
 
-if [[ ! -f /usr/bin/chrome && -n $(ls /root/.cache/rod/browser 2>/dev/null) ]]; then
-    ln -s /root/.cache/rod/browser/$(ls /root/.cache/rod/browser)/chrome-linux/chrome /usr/bin/chrome &>/dev/null
+## 软连接chrome
+if [[ -n $(ls /root/.cache/rod/browser 2>/dev/null) ]]; then
+    target_chrome=/root/.cache/rod/browser/$(ls -t /root/.cache/rod/browser | head -1)/chrome-linux/chrome
+    if [[ -L /usr/bin/chrome && $(readlink -f /usr/bin/chrome) != $target_chrome ]]; then
+        rm -f /usr/bin/chrome
+        ln -s $target_chrome /usr/bin/chrome &>/dev/null
+    elif [[ ! -e /usr/bin/chrome ]]; then
+        ln -s $target_chrome /usr/bin/chrome &>/dev/null
+    fi
 fi
 
+## 重设权限
 chown -R "${PUID}:${PGID}" /config /root
 if [[ ${PERMS} == true ]]; then
     echo "已设置 PERMS=true,重设 '/media' 目录权限为 ${PUID}:${PGID} 所有..."
@@ -12,6 +20,7 @@ fi
 
 ## 兼容旧的缓存目录
 if [[ -d /app/cache ]]; then
+    echo "检测到映射了 '/app/cache',创建软连接 '/config/cache' -> '/app/cache'"
     chown -R ${PUID}:${PGID} /app
     if [[ -L /config/cache && $(readlink -f /config/cache) != /app/cache ]]; then
         rm -rf /config/cache &>/dev/null
@@ -19,4 +28,9 @@ if [[ -d /app/cache ]]; then
     if [[ ! -e /config/cache ]]; then
         s6-setuidgid ${PUID}:${PGID} ln -sf /app/cache /config/cache
     fi
+else
+    if [[ -L /config/cache ]]; then
+        echo "检测到 '/config/cache' 指向了不存在的目录 '/app/cache',删除之,如想保留缓存,请将旧的 'cache' 目录移动到 '/config' 路径下..."
+        rm -rf /config/cache &>/dev/null
+    fi
 fi