linux 用户权限,组权限小结

Linux用户与组权限管理详解

1.用户管理

1.1 useradd

创建新用户

useradd [选项] <用户名>

参数:

-d   #指定用户家目录
-m   #自动创建家目录(默认不创建,需配合-d 或使用此选项强制创建)
-s   #指定登陆shell (如: -s /bin/bash,默认为 /bin/sh)
-g   #指定主组
-G   #指定附加组(用逗号分隔 如:-G ai,dev)
-u   #指定用户uid
-p   #设置加密后的密码(生成: openssl passwd)
-e   #设置账号过期日期
-r   #创建系统用户(无家目录,UID < 1000)
-k   #指定骨架目录(默认 /etc/skel,拷贝模版文件到家目录)

创建普通用户

useradd -m -d /home/dev -s /bin/bash dev

创建用户设置主组

useradd -g devops -G docker,git dev

创建系统用户

useradd -r -s /bin/sbin/nologin nginx

指定UID并设置密码

useradd -u 1011 -p $(openssl passwd -6 "password") dev
1.2 usermod

修改用户属性

usermod [选项] <用户名>

参数:

-d   #修改用户家目录
-m   #移动原家目录内容到新路径(需与 -d 配合使用)
-s   #更改用户shell(如: /bin/bash)
-g   #更改用户属组(先用groupadd创建)
-G   #修改附加组(覆盖原附加组,如 -G sudo,docker)
-a   #追加附组(保留原组)
-u   #修改用户UID  (注意文件权限)
-l   #修改登陆名(用户名)
-e   #设置账号过期时间
-L   #锁定用户(禁止登陆)
-U   #解锁用户
-p   #设置密码

修改用户家目录

usermod -d /new/home/dir -m usernam

修改用户shell

usermode -s /sbin/nologin username

修改用户组

usermod -g groupname username

groupadd newgroup
usermod -g newgroup dev

添加附加组

usermod -aG sudo,docker username  #追加组
usermod -G dev,jira username

修改用户UID

usermod -l newname oldname

usermode -d /home/newname -m newname

锁定 & 解锁

usermod -L username

usermod -U username
1.3 userdel

删除用户

userdel  [选项] <参数>

参数

-r    #删除用户家目录及邮箱池(默认不删除)
-f    #强制删除即使用户已经登录(危险!损坏进程)
-Z    #同时删除SELinux 用户映射

删除用户保留家目录

userdel username

彻底删除用户及家目录

userdel -r username

强制删除已登陆用户

userdel -rf username
1.4 passwd
passwd [选项] <用户名>

参数

-l    #锁定用户
-u    #解锁用户
-d    #清空密码(允许无密码登陆)
-e    #强制下次登陆修改密码
-S    #显示密码状态(是否锁定,密码策略等)
-n    #设置密码最短使用天数
-x    #设置密码最长使用天数
-w    #设置密码过期前警告天数
passwd username  #更新设置用户密码
passwd -l username #锁定
passwd -u username #解锁
passwd -d username #清空密码
passwd -e username #强制用户下次登陆修改密码
passwd -S username #查看密码状态

2.组管理

2.1 groupadd

创建用户组

groupadd [选项] <参数>

选项

-g     #指定组的GID
-r     #创建系统组
-f     #强制创建
-p     #设置组密码
-k     #覆盖/etc/login.defs中的默认值
-o     #允许共享GID

示例:

groupadd developers      #创建名为developers的组(GID 自动分配)
groupadd -g 2001 devops  #强制设置GID=2001
groupadd -r system_group #GID 通常 < 1000
groupadd -f admin        #若组已存在,则默认跳过
2.2 groupmode

修改现有用户组属性

groupmod [选项] <组名>

选项:

-n     #修改组名
-g     #修改GID
-o     #允许重复GID
-p     #设置组密码 几乎不用

示例:

groupmod -n developers dev   #将组dev重命名wei developers

groupmod -g 2002 developers  #将组的GID设置为2002

 
2.3 groupdel

删除组

groupdel [选项]  <参数>

参数:

-f   #强制删除
-h   #帮助信息
-R   #指定备用/etc 目录(使用户chroot环境)

示例:

groupdel test_group  #删除普通用户组

groupdel -f developers #强制删除组
2.4 gpasswd 

管理组成员和组密码

gpasswd [选项] <参数>

参数:

-a    #添加成员到组
-d    #从组移除用户
-M    #设置组成员列表

示例:

gpasswd -a user group  #添加user到group
#同下
usermod -aG group user 

批量添加组成员

gpasswd -M "bob,carol,dave" project_team  #批量添加组成员

列出组成员

getnew group devo |cut -d: -f4
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值