当前位置: 首页 > Linux

linux用户-组相关操作

时间:2023-04-06 02:43:52 Linux

查看所有用户/组cat/etc/passwdcat/etc/groupadduseruseraddoptionusername-d:自定义用户家目录,即指定用户登录默认家目录-e:指定账号的有效期-g:指定用户所属的主组-G:指定用户所属的附加组-m:自动创建用户的登录目录,系统会创建一个home目录默认与用户名相同(默认选项)-M:不创建用户家目录-s:指定用户登录后使用的shell-u:指定用户ID号,系统会自动默认给用户分配一个ID-r:指定用户为系统账户#只需添加用户,会自动创建主目录useraddsqrtcat#自定义主目录useradd-d/home/sqrtcat_homesqrtcat#指定用户groupwheelassudoerusergroupuseradd-m-gwheelsqrtcat#禁止所有登录账号useradd-M-s/bin/falsenginx#禁止ssh登录但允许ftp/sftp账号useradd-M-s/sbin/nologinftp_userdeleteuser#删除用户但保留主目录等相关信息userdelsqrtcat#该命令执行后对应这些文件中被删除用户的相关信息也被删除#/etc/passwd,/etc/shadow,/etc/group,/etc/gshadow,/home,/var/spool/mailuserdel-rsqrtcatset/updateuserpassword#更改当前用户密码passwd#更改指定用户密码passwdsqrtcat更改用户属性usermodoptionusername#更改主组用户属于usermod-gwheelsqrtcat#更改用户的附加组(注意会覆盖已有的附加组)usermod-Gwheelsqrtcat#给用户增加一个附加组(会继续添加到已有的附加组)usermod-aGwheelsqrtcat给用户添加sudo权限root检查/etc/sudoers##允许root在任何地方运行任何命令rootALL=(ALL)ALL##Allows'sys'组的成员运行网络、软件、##服务管理应用程序等等。#%sysALL=NETWORKING,SOFTWARE,SERVICES,STORAGE,DELEGATING,PROCESSES,LOCATE,DRIVERS#这表示wheel组中的用户canUsepasswordtogetrootpermission##allowsgroupwheelpersontorunallcommands%wheelALL=(ALL)ALL#这里说明wheel组的用户不使用密码也可以获得root权限##同理不用apassword#%wheelALL=(ALL)NOPASSWD:ALL所以如果你想让用户拥有活跃的sudo权限,我们只需要将它添加到你要使用的用户组中#将sqrtcat添加到wheelsudoer用户组中,这样你可以使用自己的密码执行sudo命令usermod-aGwheelsqrtcatsqrtcatuser#切换到root,不加载root用户的环境变量sudosuroot#切换到root,加载root用户的环境变量sudosu-root查看在线用户#当前登录服务器在线用户users用户组相关usermod-g主组名用户名#change主组usermod-G附加组名用户名#change附加组usermod-aG附加组名用户名#appendadditionalgroupgpasswd-ausernameadditionalgroupname#addadditionalgroupgpasswd-duserNameadditionalgroupname#exitadditionalgroup#查看当前用户的组groups#查看指定用户的组groupssqrtcat#添加用户组groupaddfoo#删除用户group(如果有一个用户以这个组为主组,则不能删除,附加组可以删除)#sqrtcat加入附加组wheelgpasswd-asqrtcatwheel#将用户“sqrtcat”添加到“wheel”组#如果要更改用户的主组,必须使用usermod-g删除用户组,确保没有用户使用这个组作为主组(-g),但是可以有用户作为附加组(-G)#会自动创建foo组并作为foo用户的主组useraddfoogroupsfoofoo:foo#cannotdeleteauserwithfooasthemaingroup#将用户foo的主组改为bargroupaddbarusermod-gbarfoogroupsfoofoo:bar#groupfooasadditionalgroupusermod-Gfoofoogroupsfoofoo:barfoo#groupfoo可以成功删除groupdelfoo查看用户组下的用户查看用户组foogetent组下有哪些用户foosudosu/su?如果用户是sudoer,那么在执行sudosu-root的时候只需要输入自己的密码,就可以切换到root用户。当然,切换其他用户也需要输入自己的密码。.如果用户不是sudoer,则无权执行sudo命令,只能尝试通过su-root切换到root用户,并要求输入root用户密码。当然,切换到其他用户时,还必须输入其他用户的密码。切换到某个用户,使用指定的shell执行命令切换到foo用户,使用php作为执行shell,在--后添加要执行的命令,然后退出。su-s"$(whichphp)"foo---r"echo'hellofoo';"相当于sufoo$(whichphp)-r"echo'hellofoo'"exit