在Linux系统中,用户和组的相关权限是Linux系统管理的基本内容。只有在特定用户、组和相对应的权限下,Linux系统才能更好更安全的运行。
针对这部分内容,我在培训学习时根据自己整理的笔记总结如下:
创建组和用户:
1.创建组组的定义:是权限的集合
创建组的命令:groupadd
例如:
groupadd abc
在组创建成功后,用如下命令查看已创建的组:2.创建用户
在组创建好之后再创建用户:
首先用tail命令查看/etc/passwd文件查看系统现有的一些用户,tail命令默认查看后10行。
[root@vastedu home]# tail -l /etc/passwdtest3:x:1100:2001::/home/test3:/bin/bash
id加用户:如id test3
此命令是查看用户test3的uid、gid等
[root@vastedu home]# id test3
uid=1100(test3) gid=2001(dbdeep) groups=2001(dbdeep),1002(oinstall),1003(dba)
下面添加用户:
其中需要注意,给用户自己手动分配的id不要与现有的用户uid重复,一般建议设置成500以后的
下面就具体添加一个用户,就以添加用户test4为例:
[root@vastedu home]# useradd -u 1200 -g oinstall test4其中命令中定义的参数具体意义如下:
-u:指定uid
-g:指定gid,是指定主组,只能有一个主组具体追加辅组命令如下:
首先查看现有组:
[root@vastedu home]# tail -l /etc/group
stapdev:x:158:
sshd:x:74:
tcpdump:x:72:
slocate:x:21:
oinstall:x:1002:test3
dba:x:1003:test,test3
abc:x:1009:
dbdeep:x:2001:
ddd:x:2002:
ddddd:x:2003:
接着根据用户管理内容不同,将用户加到不同的辅组里,命令如下:
给test1用户追歼辅助组:
usermod -aG dba test4
-aG 和 -a -G 一样
-a是追加,-G是辅组
[root@vastedu home]# id test4
uid=1200(test4) gid=1002(oinstall) groups=1002(oinstall),1003(dba)
通过id test4命令就可查看到用户test4已经属于主组oinstall辅组dba组了。
或者直接通过一条命令在创建用户的同时,将用户加到主组和辅组:
[root@vastedu home]# useradd -u 1012 -g oinstall -G dba test6
[root@vastedu home]# id test6
uid=1012(test6) gid=1002(oinstall) groups=1002(oinstall),1003(dba)
3.组和用户的删除
注意:此操作一定要慎重,生产系统中建议不使用的用户进行锁定处理,不建议删除操作,但为了学习,需牢记这块内容,避免出错。
首先查看etc下的passwd文件和group确定所以得用户和组,确定好要删除的用户和组,一定要慎重!!!
[root@vastedu home]# cat /etc/passwd
pulse:x:497:496:PulseAudio System Daemon:/var/run/pulse:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
test:x:1002:1002::/home/test:/bin/bash
test3:x:1100:2001::/home/test3:/bin/bash
test7:x:1013:1002::/home/test7:/bin/bash
[root@vastedu home]# cat /etc/group
ddddd:x:2003:
以删除用户test7和组dba为例:
首先进行用户删除,执行命令如下:
[root@vastedu home]# userdel test7
[root@vastedu home]# id test7
id: test7: No such user
[root@vastedu home]# id test3
uid=1100(test3) gid=2001(dbdeep) groups=2001(dbdeep),1002(oinstall),1003(dba)
[root@vastedu home]# groupdel dba
[root@vastedu home]# id test3
uid=1100(test3) gid=2001(dbdeep) groups=2001(dbdeep),1002(oinstall)
[root@vastedu home]# tail -l /etc/group
stapusr:x:156:
stapsys:x:157:
stapdev:x:158:
sshd:x:74:
tcpdump:x:72:
slocate:x:21:
oinstall:x:1002:test3
dbdeep:x:2001:
ddd:x:2002:
ddddd:x:2003:
[root@vastedu home]# groupdel dbdeep
groupdel: cannot remove the primary group of user 'test3'
[root@vastedu home]#
通过执行删除命令你会发下,有以下两点需要注意:
1)若删除的组是辅助组,可以直接删除
2)若删除的组是其他用户的主组,你会发下会报错,不能删除
那么出现主组不能删除情况需要怎么解决呢?
首先你需要将该组作为主组的用户删除,然后才能删除该组,但任何情况下,除了自己测试机,不会进行盲目的删除操作,所以一定要注意。
~~后续会给大家带来关于权限方面的讲解,大家随时关注哦!!!