关于linux用户、组的基本使用法方法

useradd 创建的新的系统用户

-u UID(唯一号)
-o 配合-u 选项,不检查UID的唯一性
-g GID 指明用户所属基本组,可为组名,也可以GID
-c "COMMENT“ 用户的注释信息  useradd -c "zhangyide" laosan
-d HOME_DIR 以指定的路径(不存在)为家目录
-s SHELL 指明用户的默认shell程序,可用列表在/etc/shells文件中
-G GROUP1[,GROUP2,...] 为用户指明附加组,组须事先存在
-N 不创建私用组做主组,使用users组做主组
-r 创建系统用户 CentOS 6之前: ID<500,CentOS7 以后: ID<1000
-m 创建家目录,用于系统用户
-M 不创建家目录,用于非系统用户
-p 指定加密的密码

 [root@CentOS ~]# useradd zhangfei    #创建用户
[root@CentOS ~]# id zhangfei                #查看
uid=1001(zhangfei) gid=1001(zhangfei) 组=1001(zhangfei)


[root@CentOS ~]# useradd -u 1234 guanyu   #创建用户 指定uid
[root@CentOS ~]# id guanyu
uid=1234(guanyu) gid=1234(guanyu) 组=1234(guanyu)

[root@CentOS ~]# useradd -u 1050 -g 2000 wei   #创建用户指定uid,指定组
[root@CentOS ~]# id wei
uid=1050(wei) gid=2000(wei) 组=2000(wei)

[root@CentOS ~]# useradd -G cmcc zhangliu    #指定附加组

[root@CentOS ~]# id zhangliu
uid=1235(zhangliu) gid=1235(zhangliu) 组=1235(zhangliu),2001(cmcc)
 

groupadd创建组

-g GID 指明GID号;[GID_MIN, GID_MAX]
-r 创建系统组,CentOS 6之前: ID<500,CentOS 7以后: ID<1000

[root@CentOS ~]# groupadd -g 2000 wei   #创建组

groupmod修改组

-n group_name: 新名字
-g GID: 新的GID

usermod 命令可以修改用户属性

-u UID: 新UID
-g GID: 新主组
-G 新附加组,原来的附加组将会被覆盖;若保留原有,则要同时使用-a选项
-s SHELL:新的默认SHELL
-c 'COMMENT':新的注释信息
-d HOME: 新家目录不会自动创建;若要创建新家目录并移动原家数据,同时使用-m选项
-l login_name: 新的名字
-L: lock指定用户,在/etc/shadow 密码栏的增加 !
-U: unlock指定用户,将 /etc/shadow 密码栏的 ! 拿掉
-e YYYY-MM-DD: 指明用户账号过期日期
-f INACTIVE: 设定非活动期限,即宽限期

 [root@CentOS ~]# getent passwd |tail          #查看

zhangfei:x:1001:1001::/home/zhangfei:/bin/bash
 

[root@CentOS ~]# usermod -u 1002 zhangfei 
[root@CentOS ~]# getent passwd |tail            #修改uid
zhangfei:x:1002:1001::/home/zhangfei:/bin/bash

usermod -G '' wei                                             #把附加组都清空

 

userdel 可删除Linux 用户

-f, --force 强制
-r, --remove 删除用户家目录和邮箱    彻底删干净

groupdel 删除组

-f, --force 强制删除,即使是用户的主组也强制删除组,但会导致无主组的用户不可用无法登录

gpasswd 修改用户组

a user 将user添加至指定组中
-d user 从指定附加组中移除用户user
-A user1,user2,... 设置有管理权限的用户列表
-r移除群组的密码,仅 root 用户可用。
-R让群组的密码失效,仅 root 用户可用。
-M 将 user1,... 加入到此群组中,仅 root 用户可用。

groupmems 更改组成员 (多数需要和-g配合)

-g, --group groupname 更改为指定组 (只有root)  
-a, --add username 指定用户加入组
-d, --delete username 从组中删除用户
-p, --purge 从组中清除所有除主组的成员
-l, --list 显示组成员列表

 getent -- 查看记录

查看文件 /etc/protocols 中的所有记录

[root@htlwk0001host ~]# getent protocols
ip                    0 IP
hopopt                0 HOPOPT
icmp                  1 ICMP
igmp                  2 IGMP
ggp                   3 GGP
ipv4                  4 IPv4
st                    5 ST

根据主机名称,查看对应的IP地址

例如,你知道主机名称 ubuntu,要查看对应的IP地址,可以执行下面的命令:

[root@htlwk0001host ~]# getent hosts ubuntu
127.0.1.1       ubuntu
192.168.0.2     ubuntu

getent 命令会读取文件 /etc/hosts 中的内容,检索 ubuntu 有关的条目,将检索到的结果输出。 

根据域名查找对应的IP

[root@htlwk0001host ~]# getent hosts myhost.mydomain.com
15.77.3.40       myhost.mydomain.com myhost

根据用户名查找对应的UID

[root@htlwk0001host ~]# getent passwd greys
greys:x:1000:1000:Gleb Reys:/home/greys:/bin/bas

getent 命令会读取文件 /etc/passwd 的内容,检索 greys 有关的条目,并输出检索到的结果。

获取当前登陆用户的信息

[root@htlwk0001host ~]# getent passwd `whoami`
root:x:0:0:root:/root:/bin/bash

注意:whoami 使用反撇号引起来。

根据UID查找用户名

[root@htlwk0001host ~]# getent passwd 1000
greys:x:1000:1000:Gleb Reys,,,:/home/greys:/bin/bash

查找那个服务在使用特定端口

[root@htlwk0001host ~]# getent services 22
ssh                   22/tcp
[root@htlwk0001host ~]# getent services 21
ftp                   21/tcp
[root@htlwk0001host ~]# getent services 25
smtp                  25/tcp mail     

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值