本文主要是介绍linux用户uid和gid的操作记录(阿里云NAS权限),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
NAS用的NFS协议,用uid和gid来识别文件权限的,即如果当前test的uid 是1000,那么如果另个服务器里uid是1000的账号是test2,则test2访问时和前一个服务器上账号test同权。因此稍微整理一下这方面的常用操作。
用户uid从1000开始基本1000~60000,从linux 核心 (3.10.x 版)开始已经支持到4294967295 (2^32-1)了
一、修改已有用户用户组的uid和gid
id test;
groupmod -g 1001 test; #修改组test的gid为1001
usermod -u 1001 test; #修改test的uid为1001
id test
注意
1.修改uid和gid后原属于test的文件,属主依然是test,但用户组还是原数字,文件的用户组并没有跟随变过去,此时会显示原有gid号。
2.前提是test用户没有进程运行,登录进程也算,因此需要直接ssh登录root,而不是从test账号su root
二、创建指定用户用户组的uid和gid
方案A,使用adduser
1.创建组
groupadd -g 2000 test
2.创建用户并指定组
adduser --uid 2000 --gid 2000 test
方案B,使用useradd
1.创建组
groupadd -g 2002 test2
2.创建用户并指定组
useradd --uid 2002 --gid 2002 -s /bin/bash test2
方案C(推荐)
adduser --uid 2000 test
方案三注意事项
1.如果率先已经创建了gid为2000,则此时创建不成功,因为下面的命令此时也会创建2000的组,但发现已存在adduser: The GID 2000 is already in use.
2.在gid不存在的情况下,直接创建,默认也会创建相同的,注意此种方法不能用useradd,不然会创建uid和gid不一致的账号
三、普通操作添加、删除用户附属组
usermod -a -G GROUPNAME USERNAME #将USERNAME加入到GROUPNAME组中,且原主组不变gpasswd -d USERNAME GROUPNAME #GROUPNAME组把USERNAME从组中移除
这篇关于linux用户uid和gid的操作记录(阿里云NAS权限)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!