Linux常用命令学习8---(用户和用户组管理)
1.用户和用户组
用户和用户组概念
用户:使用操作系统的人(Linux支持多个用户在同一时间登陆同一个操作系统)
用户组:具有相同权限的一组用户(Linux系统中可以存在多个用户组)
相关的配置文件
/etc/group:储存当前系统中所有用户组信息
Group: x : 123 : abx,def,xyz
组名称: 组密码占位符: 组编号 : 组中用户列表
1.在linux中,root用户组的编号一定是0
2.组号1~499是系统预留的组编号,一般是预留给安装在这个操作系统中的软件或服务的,比如在服务器上安装了MySQL数据库,那么就会自动的带用户组的列表中创建一个叫做mysql的用户组,并且在1~499中拿一个编号来用,越早安装分配的组号越小
3.用户手动创建的用户组的组号是从500开始的
/etc/gshadow:存储当前系统中用户组的密码信息
Group: * : : abx,def,xyz
组名称: 组密码 : 组管理者: 组中用户列表
/etc/passwd:存储当前系统中所有用户的信息
user : x : 123 : 456 : xxxxx : /home/user : /bin/bash
用户名 : 密码占位符 :用户编号 : 用户组编号: 用户注释信息: 用户主目录 : shell类型
root的用户编号一定是0
/etc/shadow:存储用户密码的文件(一般密码是被一种单向加密方法加密的,所以看到的不是原始的密码)
user : vf;/Zushs.. : : : : : :
用户名 : 密码 : : : : : :
用户组管理的命令
groupadd groupname :创建新的用户组名
groupmod -n newname oldname :将用户组名由oldname改为newname
groupmod -g 668 groupname :将groupname组编号改为 668
groupadd -g 888 groupname :创建用户组groupname,并且设置组编号为 888
groupdel groupname :删除用户组 groupname
在删除用户组之前应该首先删除用户组中的用户,否则用户的配置文件中的关于用户组的信息就和真实情况不符合了,这些用户就会变成“黑户”,在后续的使用中可能就会受到权限的影响
gpasswd groupname :更改groupname用户组的组密码
用户管理的命令
useradd -g groupname username :创建新用户username,并且该用户放到用户组groupname中
useradd -d /home/test username :在创建用户username时,显式指定他的个人文件夹为/home/test,若不显式指定,会默认使用/home/username文件夹
这个时候没有指定用户的用户组,系统就会默认创建一个和新用户名相同的用户组,并将该用户放到该用户组下
usermod -c 备注内容 username :为用户username修改备注信息
usermod -l newname oldname :将oldname用户改名为 newname
usermod -g groupname username :将username用户切换到 groupname用户组
userdel username :删除username用户,但是这样并不会删除他的个人文件夹和其中的文件
userdel -r username :删除username用户,并且删除他的个人文件夹
假如某一天维护系统,不想让某些用户登陆
在/etc/目录下创建文件nologin(空文件即可,不需要内容),就可以实现除了user之外的用户都不能等陆系统
锁定和解锁账户
passwd -l username :锁定用户username,防止用户删除自己的文件
passwd -u username :解锁username用户
passwd -d username :清除username帐号,是这个用户可以无密码登陆
主要组和附属组
一个用户可以同时属于多个用户组(其中只有一个是这个用户的主要组,其他的都是这个用户的附属组)
相关的知识和命令目前几乎用不到,所以暂时不进行深入的学习
gpasswd -a username newgroup1,newgroup2 :为username账户添加到附属组newgroup1和newgroup2
区分于usermod -g groupname username :这个命令修改的是用户的主要组,而不是附属组
gpasswd -d username newgroup1,newgroup2 :为username账户删除附属组newgroup1和newgroup2
useradd -g group -G newgroup1, newgroup username :在创建用户username的时候为用户添加主要组group,并添加附属组groupname1和groupname2
切换用户
su username :从当前用户切换到username用户(如果没有username,就相当于切换到root用户)
从普通用户切换到其他用户时需要用户密码;但是从root切换到任何用户都不需要密码
id username命令
显示指定用户信息,包括用户编号、用户名
主要组编号及名称,附属组列表
groups username命令
显示username用户所在的所有组
chfn username命令
设置用户资料,依次输入用户资料(生日、性别……资料)
finger username命令
显示用户详细资料(和chfn命令对应)
Linux常用命令学习8---(用户和用户组管理)的更多相关文章
- Linux常用命令学习4---(挂载命令mount umount、用户登陆查看和用户交互命令 w who last lastlog)
紧接着上一篇Linux的命令行的学习:Linux学习3---(文件的压缩和解压缩命令zip unzip tar.关机和重启命令shutdown reboot……) 1.挂载命令 简介 ...
- Linux常用命令速查-用户管理
◆ 用户组 ◆ 查看当前用户所属的用户组 1 groups 查看所有用户组 123456789 [root@node2 ~]# cat /etc/group root:x:0:bin:x:1:daem ...
- Linux常用命令学习笔记——基于CentOS 7
前言:最近在linux培训时复习了一下linux系统中一些常用的命令和用法,整理成了笔记,虽然些许零散,但希望对大家有所帮助. 目录 0.帮助指令 1.关机.重启.注销命令 2.文件和目录操作命令 3 ...
- Linux常用命令学习
1.ls命令 就是list的缩写,通过ls 命令不仅可以查看linux文件夹包含的文件,而且可以查看文件权限(包括目录.文件夹.文件权限)查看目录信息等等 常用参数搭配: ls -a 列出目录所有文 ...
- Linux常用命令学习1---(安装、文件系统、目录操作命令cd ls mv cp rm mkdir、链接命令ln……)
1.理解Linux的文件系统:分区和挂载点 挂载点和路径名无关 /根目录下的/boot完全可以时独立于 /的独立的挂载点,只要你设置就可以 linux安装时候,必须要有这两个分区 / 和 ...
- 五个知识体系之-Linux常用命令学习
1.ls命令 就是list的缩写,通过ls 命令不仅可以查看linux文件夹包含的文件,而且可以查看文件权限(包括目录.文件夹.文件权限)查看目录信息等等 常用参数搭配: ls -a 列出目录所有文 ...
- Linux常用命令学习随笔
1.ls命令 就是list的缩写,通过ls 命令不仅可以查看linux文件夹包含的文件,而且可以查看文件权限(包括目录.文件夹.文件权限)查看目录信息等等 常用参数搭配: ls -a 列出目录所有文 ...
- [转]Linux常用命令学习
转自 https://www.cnblogs.com/gaojun/p/3359355.html 1.ls命令 就是list的缩写,通过ls 命令不仅可以查看linux文件夹包含的文件,而且可以查看文 ...
- Linux常用命令-学习笔记
Linux命令格式: 命令 [命令参数] [命令对象] # 命令之间的参数和对象用单个空格进行分割 # "[]"代表可选,{}代表必选其中的一项,|代表或者的关系,<> ...
随机推荐
- net MVC 重定向总结
[HttpPost] public ActionResult StudentList(string StudName, string studName, DateTime BirthDay, Form ...
- “is null”与“=”的使用
普通的值可以进行"="操作,例如条件中一般都会这样出现:sUserName='张三',如果sUserName的值为null,要想找出所 有名字为null的记录时,不能这样用:sUs ...
- VOC2007检测任务的评估标准
VOC2007数据集使用mAP值作为检测算法检测结果的性能评估得分.mAP意思是mean Average Precision,Precision是指精度,Average Precision是指11个等 ...
- winform刷新UI界面
this.Invoke(new Action(() => { // 更新使用次数 this.labCount.Text = count; }));
- curl实现发送Get和Post请求(PHP)
1.CURL介绍 CURL 是一个利用URL语法规定来传输文件和数据的工具,支持很多协议,如HTTP.FTP.TELNET等.最爽的是,PHP也支持 CURL 库.本文将介绍 CURL 的一些高级特性 ...
- 在github上搭建hexo博客
准备工作 安装git 系统是win10家庭版,采用git v1.9.5版本,比较简单,一路next直到finsh完成安装. 安装node.js hexo是基于node.js驱动的一款快速.简单且功能强 ...
- [Unity3D]导入模型并且设置相应的属性
将资源拷贝到Assets中并设置 首先确保法线贴图的属性如下: 设置基本贴图和法线贴图 因为要发布到移动端,设置shader属性: 为了设置更好的反光效果,添加cubemap: 添加新的Materia ...
- C++ ## ... 实用
关于...的使用...在C宏中称为Variadic Macro,也就是变参宏.比如:#define myprintf(templt,...)fprintf(stderr,templt,__VA_ARG ...
- Android高手速成--第二部分 工具库
主要包括那些不错的开发库,包括依赖注入框架.图片缓存.网络相关.数据库ORM建模.Android公共库.Android 高版本向低版本兼容.多媒体相关及其他. 一.依赖注入DI 通过依赖注入减少Vie ...
- D3.js学习记录
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...