linux命令gpasswd -a和usermod -g的区别

首先分别阐述两个命令的常用用法

usermod   功能:修改用户信息

用法:usermod  选项  参数  用户名

常用选项:

-c  (comment)       :修改用户的注释信息

-d (home directory): 修改用户的家目录

-l (login name)    :修改用户名(登录名也就是用户名)

-g (group name)    :修改用户的所属组

需要说明的是usermod修改用户的信息后,在/etc/passwd中查看,每个用户的信息由冒               号隔开的7个字段组成

gpasswd   功能:添加或删除组成员

用法:gpasswd  选项  参数  组名

常用选项:

-a(add) :添加组成员

-d(delete): 删除组成员

两个命令的基本用法有了,下面说明usermod -g 和 gpasswd -a 的区别,为了说明问题,这里创建一个场景

下面用两种方法创建组成员
    第一种

useradd  user3

groupadd student
                   useradd -g student user3

[[email protected] ~]# useradd user3

[[email protected] ~]# tail -1 /etc/passwd

user3:x:503:504::/home/user3:/bin/bash

[[email protected] ~]# groupadd student

[[email protected] ~]# tail -1 /etc/group

student:x:505:

[[email protected] ~]# usermod -g studentuser3

[[email protected] ~]# tail -3 /etc/passwd

user1:x:501:501:df,fd,df,df:/home/user1:/bin/bash

user2:x:502:502::/home/user2:/bin/bash

user3:x:503:505::/home/user3:/bin/bash

[[email protected] ~]# tail -3 /etc/group

group2:x:502:user1

user3:x:504:

student:x:505:

弟二种

groupadd student
                  useradd user3
                  gpasswd -a user3 student

在练习第二种的命令时,可以将第一种方法中建立的用户和组删除,再重新建立,避免出现问题

[[email protected] ~]# groupadd student

[[email protected] ~]# useradd user3

Creating mailbox file: File exists

[[email protected] ~]# tail -3 /etc/passwd

user1:x:501:501:df,fd,df,df:/home/user1:/bin/bash

user2:x:502:502::/home/user2:/bin/bash

user3:x:503:504::/home/user3:/bin/bash

[[email protected] ~]# tail -1 /etc/group

user3:x:504:

[[email protected] ~]# gpasswd -a user3student

Adding user user3 to group student

[[email protected] ~]# tail -2 /etc/group

student:x:503:user3

user3:x:504:

[[email protected] ~]# tail -3 /etc/passwd

user1:x:501:501:df,fd,df,df:/home/user1:/bin/bash

user2:x:502:502::/home/user2:/bin/bash

user3:x:503:504::/home/user3:/bin/bash

第一种在/ect/group中student组没有user3用户但是/etc/passwd中显示user3组id是student组的id,在创建user3用户时,默认的用户组是user3组,(在添加新用户时,如果没有指定用户的组,则自动创建一个以用户名命名的组,然后将用户添加该组中),然后使用usermod -g 修改了user3用户的基本组,将user3用户的基本组修改为student,此时student组已经成为user3用户的基本组,所以在student组中没有user3用户(/etc/group中基本组不会显示,附加组会显示),而在user3用户中的基本组id是student的id。

第二种在/etc/group中student组和user3组存在 并且student组中有user3用户,这是把user3用户添加到组student中,对添加到student组中的user3用户而言,student组是user3用户的附加组。但是请注意,user3用户添加到了student组,但是user3组仍然独立存在,这就好比一个人本来是属于开发部的,临时要调到测试部去工作,那么就要把他添加到测试部的组里,使他可以协同测试部得其他成员一起工作。但是开发部是他的基本组,仍然存在。

总结一下:gpasswd -a 是给用户添加附加组或删除附加组,是对一个用户的附加组的操作,即把一个用户添加到附加组或者把一个用户的的附加组删除,用户的基本组保持不变。

usermod -g 是修改一个用户的基本组,是修改用户的基本组,即修改的是/etc/passwd的第四个字段。

时间: 2024-08-07 04:30:57

linux命令gpasswd -a和usermod -g的区别的相关文章

【linux命令】软连接和硬链接的区别(ln命令)

Linux 文件系统把硬盘分为三个部分:超级块.inode 列表.数据区 inode 指示:该文件的数据存放在数据区的哪些块内.因为这个“映射”关系不能变更,因此,inode 相当于代表着文件本身.(值得注意的是,文件名与文件本身不是直接映射起来的,中间隔着 inode) 内核为每一个新创建的文件分配一个Inode(索引结点),每个文件都有一个唯一的inode号.文件属性保存在索引结点里,在访问文件时,索引结点被复制到内存,从而实现文件的快速访问. 链接是一种在共享文件和访问它的用户的若干目录项

Linux小命令(8)usermod

Linux命令(8)usermod 该命令可以添加用户组 ? 命令格式:usermod [parameters] ? 常用参数: -c[备注] 修改用户账号的备注文字 -d[登入目录] 修改用户登入时的目录 -g[有效期限] 修改账号的有效期限 -G[组群] 修改用户所属的组群 -l[账号名称] 修改用户账号名称 -s[shell] 锁定用户登入后所使用的shell -u[uid] 修改用户ID -L[密码] 锁定用户密码,使密码无效 -U[密码] 解除密码锁定 ? 我们可以创建一个用户来测试一

usermod命令--Linux命令应用大词典729个命令解读

内容来源于人民邮电出版社<Linux命令应用大词典> 讲述729个命令,1935个例子 学习Linux系统的参考书.案头书,遇到不懂的命令或命令选项一查即可 争取每天都发布内容 本文出自 "airfish2000" 博客,更多命令查看博客: http://airfish2000.blog.51cto.com/10829608/1887965 usermod命令 使用usermod命令可以修改用户账户属性,比如更改用户的Shell类型.所属的组群.用户密码的有效期.用户的登录

Linux命令篇之usermod命令和passwd命令

usermod命令参数及用法详解(linux修改用户账号信息命令) linux usermod命令参数及用法详解,linux修改用户账号信息命令,usermod可用来修改用户帐号的各项设定 命 令:usermod 功能说明:修改用户帐号. 语 法:usermod [-LU][-c <备注>][-d <登入目录>][-e <有效期限>][-f <缓冲天数>][-g <群组>][-G <群组>][-l <帐号名称>][-s &

linux命令useradd,userdel,passwd,groupadd,groupdel,su,usermod

Linux云创  标签:linux  useradd  userdel  passwd  groupadd  groupdel  usermod    发布于:2016年09月16日 useradd 命令 命令功能 useradd命令用于Linux中创建的新的系统用户. 命令语法 useradd(选项)(参数) 选项说明 一c〈备注〉:加上备注文字(腾云科技ty300.com).备注文字会保存在passwd的备注栏位中: 一d〈登入目录〉:指定用户登入时的启始同量: 一D:变更预设值: 一e〈有

gpasswd命令--Linux命令应用大词典729个命令解读

内容来源于人民邮电出版社<Linux命令应用大词典> 讲述729个命令,1935个例子 学习Linux系统的参考书.案头书,遇到不懂的命令或命令选项一查即可 争取每天都发布内容 本文出自 "airfish2000" 博客,更多命令查看博客: http://airfish2000.blog.51cto.com/10829608/1892594 gpasswd命令 使用gpasswd命令可以设置一个组群的组群密码,或者是在组群中添加.删除用户. 命令语法: gpasswd [选

linux命令4 find、三个时间属性、硬链接和软连接、用户名和密码文件、增加和删除用户组、usermod、su、sudo

find搜索命令 其他搜索命令如下: [[email protected] 333]# which ls alias ls='ls --color=auto' /bin/ls [[email protected] 333]# echo $PATH /usr/lib/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/mysql/bin:/usr/local/jdk1.6.0_23/b

面试--常用的Linux命令

ls   ls -la 参数: -a :全部的档案,连同隐藏档( 开头为 . 的档案) 一起列出来- -A :全部的档案,连同隐藏档,但不包括 . 与 .. 这两个目录,一起列出来- -d :仅列出目录本身,而不是列出目录内的档案数据 -f :直接列出结果,而不进行排序 (ls 预设会以档名排序!) -F :根据档案.目录等信息,给予附加数据结构,例如: *:代表可执行档: /:代表目录: =:代表 socket 档案: |:代表 FIFO 档案: -h :将档案容量以人类较易读的方式(例如 G

Linux命令随笔

1 Linux命令总结 2 3 man ==命令帮助; 4 help ==命令的帮助(bash的内置命令); 5 ls ==list,查看目录列表; 6 -ld:查看目录权限; 7 -l:(long)长格式显示属性; 8 -F:给不同的文件类型结尾加标识 9 -p:给目录加斜线 10 -r:(reverse)反转排序 11 -t:按时间排序 12 --color=auto 给输出的不同类型文件加不同颜色 13 -a:显示隐藏文件 14 ls -l --time-style=long-iso,显示