注
这些东西开发很少用到,仅作记录翻看之用
群组管理常用
添加次要群组:
usermod [-a -G] docker zd
查看支持群组:
groups //第一个为有效群组
有效群组得切换:
newgrp [要设为有效群组得名] //本用户必须已经在该群组内才可以
新增和移除用户:
useradd [-u UID] [-g 初始群组] [-G 次要群组] 账号名
[-c:说明] [-d:指定家目录路径]
useradd默认:
useradd -D //查看默认值
vim /etc/default/useradd //修改默认值
密码:
passwd username 或 change
修改用户:
usermod [-cdagG] username
基本同useradd,但-a和-G需要组合使用才能添加支持群组
删除用户:
userdel [-r:删除用户目录] username
finger:
类似指纹,显示基本信息
chfn //交互输入修改信息
新增与移除群组:
groupadd [-g:指定gid] [-r:创建为系统群组] 群组名
groupmod [-g:修改gid] [-n new_group_name] 旧群组名
groupdel 群组名
群组管理员:
groupadd 群组名//新建群组
gpasswd -A 某个用户 群组名//赋予管理权限
该用户即可管理该群组,-a 添加用户到群组 -d 相反
主机详细权限规划
ACL:
setfacl [-bkRd] [-m|-x] [acl参数] 目标文件名
b 删除所有的acl设置参数
k 删除默认的acl设置参数
R 递归设置该目录下所有文件
d 只对目录有效
m 设置后面的参数给文件
x 删除后面的参数对文件
针对单一用户:
setfacl -m u:用户列表:rwx 文件名
查看acl权限:
getfacl filename
针对单一用户组:
setfacl -m g:用户组列表:rwx 文件名
有效权限设置mask:
setfacl -m:rwx filename
查看acl权限时有mask栏,其值与设定值相与才是有效权限,一般可以将mask设置为rwx
设置目录下未来文件的acl权限继承
setfacl -m d:u:用户列表:rwx filename
用户身份切换:
su直接切换为root,读取的变量设置方式是非登陆shell的方式,这种方式很多变量不会修改
su -切换为root,是以登陆shell方式
完整切换用户的环境,必须使用su - username 或 su -l username
sudo [-u 用户] 命令 //以该用户身份执行该命令
修改/etc/sudoers可以设置用户能否使用sudo
visudo //使用此命令修改该文件
1.username ALL=(ALL) //权力等同于root
2.加入wheel组 //免密码使用sudo
3.username ALL=(root) !/usr/bin/passwd,!/usr/bin/passwd root,/usr/bin/passwd [a-zA-Z]*,
//仅可以修改其他用户的密码
输入用户密码转换root 目的://防止root密码泄露
visudo
user_alias ADMINS=user1,user2,…
ADMINS ALL =(root) /bin/su -
//这样用户输入自己的密码就可以切换为root
//使用时必须使用sudo su -
//使用su - 仍需要root密码