用户分类
- root用户 权限最大,可以操作任何命令
- 普通用户 权限比较低,在自己家目录可以干任何事,由root创建
- 虚拟用户 假用户,没有登录系统,系统程序的依赖用户,比如bin,ftp,mail等
普通用户在所分配到的资源内进行各自的操作,相互不影响。用户多了不方便管理,此时我们可以引进用户组。
root为什么叫root
- UID,user ldentify,好比身份证号
- GID,group ldentify,好比户口本的家庭编号
- 在Linux系统中,用户也有自己的UID身份账号且唯一
- 在Linux中UID为0,就是超级用户,如要设置管理员用户,可以改UID为0,建议用sudo
- 系统用户UID为~999 Linux安装的服务程序都会创建独有的用户负责运行。
- 普通用户UID从1000开始∶由管理员创建(centos7) ,最大值1000~60000范围
- centos6创建普通用户是500开始
UID 用户id号,身份证号 GID 用户组id号,部门编号 root用户、组、id都为0,属于老板
用户组
为了方便管理属于同一组的用户,Linux系统中还引入了用户组的概念。通过使用用户组号码(GID,GroupIDentification),我们可以把多个用户加入到同一个组中,从而方便为组中的用户统一规划权限或指定任务。假设有一个公司中有多个部门,每个部门中又有很多员工。
如果只想让员工访问本部门内的资源,则可以针对部门而非具体的员工来设置权限。
例如,可以通过对技术部门设置权限,使得只有技术部门的员工可以访问公司的数据库信息等。
Linux管理员在创建用户时,将自动创建一个与其同名的用户组,这个用户组只有该用户一个人,
用户和组的关系
一对一,一个用户可以存在一个组里,组里就一个成员
一对多,一个用户呆在多个组里面
多对一,多个用户在一个组里,这些用户和组有相同的权限
多对多,多个用户存在多个组里
常用命令解释器
/bin/sh 默认/bin/bash 默认/sbin/nologin 虚拟用户/dash ubuntucsh unixtsn unix

用户管理的命令
创建用户与组
用户创建流程
- useradd liao123
- 系统读取/etc/login.defs(用户定义文件)和/etc/default/useradd(用户默认配置文件) 俩文件中定义的规则创建用户
- 向/etc/passwd和/etc/group文件中添加用户和组信息,向/etc/shadow和/etc/gshadow中添加密码信息
- 根据/etc/default/useradd文件中配置的信息创建用户家目录
- 把/etc/skel中所有的文件复制到新用户家目录中
.bash_logout用户环境变量文件,退出时加载.bash_profile环境变量文件,登录加载.bashrc环境变量文件,登录加载
创建组+用户
groupadd -g 801 test #创建组test 组id为801useradd -g test -u 888 liaoi #创建用户liaoi 添加到test组 组ID为888
usermode修改用户信息
#-u 修改用户ID#-s 修改解释器#-c 修改用户账号备注文字#-G 修改用户所属附加群组#-g 修改用户所属的群组#-e 修改账号的有效期#-f 修改密码过期多少天关闭账号#-d 修改家目录usermode -u 1500 -s /bin/bash -c new_user -G liaoi -e "2020/10/10" -f 10 -d /home/test1
passwd
7天内不能改密码,60天后可以修改,过期10天前通知用户,过期30天后禁止用户登录
passwd -n 7 -X 60 -w 10 -i 30 testliaopasswd -S testliao #保存
visudo 命令
用于编辑/etc/sudoers文件,且提供语法检测,用于配置sudo命令。
更建议vim /etc/sudoer有颜色
文件管理
常见权限 chmod
444 r--r--r--600 rw-------644 rw-r--r--666 rw-rw-rw-700 rwx------744 rwxr--r--755 rwxr-xr-x777 rwxrwxrwxchmod u+x 123.txt #用户添加执行权限chmod o=r 123.txt #普通用户设置读权限chmod g+w 123.txt #用户组添加写权限
修改文件所属 chown
chown 用户名 文件/文件夹 #修改文件所属chown :属组 文件 #修改文件的用户组chown 用户:组 文件 #同时修改文件的属组和用户-R #递归修改文件属组chown liao 123.txt #设置文件属于123.txt
umask命令
umask命令用来限制新文件权限的掩码。
也称之为遮罩码,防止文件、文件夹创建的时候,权限过大
当新文件被创建时,其最初的权陕由文件创建掩码决定。
用户每次注册进入系统时,umask命令都被执行,并自动设置掩码改变默认值,新的权限将会把旧的覆盖。
umask默认配置在/etc/profile 61-64行
umask值就是指“Linux文件的默认属性需要减掉的权限”。
语法参数
-S:以字符的形势显示当前的掩码。
-p:带umask开头以数字的形势显示当前掩码
chattr
用于更改文件的拓展属性,比chmod等更底层。
参数a:只能向文件中添加数据,不得删除-R:递归更改目录属性-V:显示命令执行过程模式+ 增加参数– 移除参数= 更新为指定参数A 不让系统修改文件最后访问时间a 只能追加文件数据,不得删除i 文件不能被删除、改名、修改内容lsattr 123.txt #查看attr权限
