目录
1.用户
2.用户组
3.权限设置
用户管理
添加用户
命令:useradd
语法:#useradd 用户名
所有的用户添加之后都会存储在一个文件中,会存储在passwd文件中,位置位于/etc/passwd
tcpdump:x::::/:/sbin/nologin
pl:x:::centos:/home/pl:/bin/bash 天蓝色:表示用户名;
紫色:x表示密码部分。此段的x并非表示密码是x,而是一个占位符;因为passwd文件是每个用户都有读权限,所以如果将紫色部分直接显示密码肯定是不安全的,所以Linux中密码是单独的存储在另外一个文件中,使用了shadow的技术,将密码等重要信息存储在shadow文件中,文件的位置在/etc/shadow。
前面的红色数字:表示是用户的id;
后面的红色数字:表示用户的用户组id;
蓝色:注释或者说是备注;
绿色:用户对应的家目录位置;
黄色:表示用户所对用的解释器的位置,如果后面是bash则表示该用户可以登录系统,如果是nologin,则表示该用户无法登录操作系统;
设置密码
命令:passwd
语法:#passwd 需要设置密码的用户名
用户编辑
命令:usermod (user modify)
语法:#usermod 参数 需要修改的用户名
参数说明:
在Linux中,经常会用到的用户修改的参数有2个。
-l:表示给后面传递的用户修改用户名,语法格式:usermod -l 新的用户名 需要修改的用户名
-g:表示给后面传递的用户名修改用户组,语法格式:usermod –g 用户组id 需要修改的用户名
删除用户
命令:userdel (user delete)
语法:#userdel 用户名
删除时报错userdel: user superstar is currently used by process 1 使用强制删除vipw root@ www.linuxidc.com :/home# vipw 找到你之前创建的用户,用dd删除那行(记得保存:wq or :x)。。之后。 root@ www.linuxidc.com :/home# vipw -s 找到那个用户所属组,也dd干掉即可(记得保存:wq or :x) 为什么要vipw -s呢?原因只有一个,必须保证数据的一致性,不然可能会造成系统崩溃或者一些莫名其妙的问题 命令小解: root@ www.linuxidc.com :/home# vipw --help 用法:vipw [选项] 选项: -g, --group 编辑 group 数据库
-h, --help 显示此帮助信息并推出
-p, --passwd 编辑 passwd 数据库
-q, --quiet 安静模式
-R, --root CHROOT_DIR chroot 到的目录
-s, --shadow 编辑 shadow 或 gshadow 数据库
用户组管理
添加用户组
命令:groupadd
语法:#groupadd 用户组名
china:x::
扩展:group文件中每个颜色所表达的含义
天蓝色:表示用户组的名字;
紫色:x表示密码的占位符,但是这个占位符没有意义,真的不存在密码;
红色:用户组的id;
最后的天蓝色:表示当前用户组内的成员名称;
蓝色:表示备注说明;
用户组编辑
命令:groupmod (group modify)
语法:#groupmod 参数 用户组名
参数说明:
常规的用户组编辑操作就需要了解用户组的重命名:
语法格式:#groupmod -n 新的用户组名 旧的用户组名
用户组删除
命令:groupdel
语法:#groupdel 需要删除的用户组名
注意:如果这个用户组中存在用户的话,则该用户组是无法直接删除的,如果需要删除的话,则可以先将组内的成员删除掉或者移动到别的组,然后才可以删除当前的用户组。
特别说明
在Linux中只有超级管理员权限才能对用户和用户组进行设置,其他的用户一律没有权限设置:
权限设置
权限设置主要是针对用户和用户组对于文件/文件夹的一个操作限制,只有有权限才能进行相应的设置,没有权限则设置不了。
在Linux中如何去查看一个文件/文件夹的权限呢?
答:可以通过ls的第2种、第3种用法来查看权限的信息。(通过ls的-l参数来查看)。
-rw-r--r--. root root Jun : !
dr-xr-x---. root root Jun : . 第1个字符:表示文档的类型,d表示是目录,-表示是文件;
第2~4个字符:表示文件所有者的权限情况(u表示,user);
第5~7个字符:表示所有者同组的组内成员的权限情况(g表示,group);
第8~10个字符:表示除上述两类人员的其他用户的权限情况(o表示,other);
通过字符形式设置权限
命令:chmod
语法:#chmod 权限组成信息 需要操作的对象(文件夹/文件)
需要注意,如果操作的对象是文件夹,则需要加上-r参数,表示递归赋予权限。
权限的组成信息,将语法进行拆分:
第一个情况:针对单个对象(ugo)的拆分
给某个组成部分添加读权限:#chmod u+r,g+r,o+r 需要操作的文件/文件夹
给某个组成部分删减读权限:#chmod u-r,g-r,o-r 需要操作的文件/文件夹
给某个组成部分的权限设置成一个目标值:例如将50.txt文件的权限全部的组成部分设置成rwx,则命令可以写成:#chmod u=rwx,g=rwx,o=rwx 文件名/文件夹名
第二个情况:设置全部的组成部分:
可以使用下面的这个语法:
#chmod a+r 文件 (表示给全部的组成部分添加读权限)
#chmod a-r 文件 (表示给全部的组成部分删减读权限)
#chmod a=rwx 文件 (表示给全部的组成部分权限设置成刻度可行可执行)
其中a表示全部(ugo组合)
通过数字的形式来设置权限
在Linux权限体系中支持使用数字的形式来表示权限的信息,比如说777表示全部的权限。
4表示读权限
2表示写权限
1表示执行权限
例如:如果说我想把50.txt这个文件的权限设置成所有者拥有全部权限,同组用户拥有读写权限,其他用户拥有读权限,则数字形式该写成?
全部权限=读+写+执行=4+2+1=7
读写权限=读+写=4+2=6
读权限=4
所以最终的权限数字应该是764。
友情提示
在以后实际工作不要出现一个奇葩的权限:-wx。不要出现类似这样的权限,原因是读权限是最基本的,而你如果想写入,则必须先打开文件。