更换Linux UID的脚本
Linux 上更改 UID 的操作步骤有点麻烦,有时会忘了重新设置用户文件的属主,所以写个脚本来简化负担。
更改文件属主需要 root 权限
if [[ "$(id -u)" -ne "0" ]];then echo "This script should be execute by root" >&2 exit 1 fi
脚本接受两个参数,一个是用户名,一个是新的UID
user="$1" newUid="$2"
记录下用户对应的旧UDI
oldUid="$(id -u "${user}")"
更改用户UID
usermod -u "${newUid}" "${user}"
重新设置用户文件的属主
find / -user "${oldUid}" -exec chown -h "${user}" {} \;
这里一定要记得使用
chown
的-h
选项把符号链接的属主改掉,否则改的是符号链接所指向的文件属主。