test
This commit is contained in:
54
fix-permissions.sh
Executable file
54
fix-permissions.sh
Executable file
@@ -0,0 +1,54 @@
|
||||
#!/bin/bash
|
||||
|
||||
# 数字档案系统文件权限修复脚本
|
||||
# 用于解决Docker部署中的文件权限问题
|
||||
|
||||
echo "开始修复数字档案系统文件权限..."
|
||||
|
||||
# 定义数据目录
|
||||
DATA_DIRS=(
|
||||
"./data/upload"
|
||||
"./data/temp"
|
||||
"./data/unzip"
|
||||
"./data/images"
|
||||
"./data/reports"
|
||||
"./logs"
|
||||
)
|
||||
|
||||
# 创建目录(如果不存在)
|
||||
echo "创建数据目录..."
|
||||
for dir in "${DATA_DIRS[@]}"; do
|
||||
if [ ! -d "$dir" ]; then
|
||||
echo "创建目录: $dir"
|
||||
mkdir -p "$dir"
|
||||
else
|
||||
echo "目录已存在: $dir"
|
||||
fi
|
||||
done
|
||||
|
||||
# 设置权限 - 使用1001:1001 (与Dockerfile中的app用户一致)
|
||||
echo "设置目录权限为1001:1001..."
|
||||
for dir in "${DATA_DIRS[@]}"; do
|
||||
echo "设置权限: $dir"
|
||||
sudo chown -R 1001:1001 "$dir"
|
||||
sudo chmod -R 755 "$dir"
|
||||
done
|
||||
|
||||
# 验证权限设置
|
||||
echo "验证权限设置..."
|
||||
for dir in "${DATA_DIRS[@]}"; do
|
||||
echo "目录: $dir"
|
||||
ls -ld "$dir"
|
||||
done
|
||||
|
||||
echo "文件权限修复完成!"
|
||||
echo ""
|
||||
echo "重要提示:"
|
||||
echo "1. 当前系统用户需要对数据目录有读写权限"
|
||||
echo "2. 如果1001用户不存在,请确保Docker容器内的app用户UID为1001"
|
||||
echo "3. 在Linux环境下,可以使用 'id -u' 和 'id -g' 查看当前用户ID"
|
||||
echo ""
|
||||
echo "如果仍然遇到权限问题,可以尝试:"
|
||||
echo "1. 将当前用户添加到docker组: sudo usermod -aG docker \$USER"
|
||||
echo "2. 重新登录使权限生效"
|
||||
echo "3. 或者使用root用户运行: sudo ./fix-permissions.sh"
|
||||
Reference in New Issue
Block a user