linux命令之用户管理及用户信息查询命令(上)
时间:2019-04-15
本文章向大家介绍linux命令之用户管理及用户信息查询命令(上),主要包括linux命令之用户管理及用户信息查询命令(上)使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
1.useradd:创建用户
该命令用于创建新的用户或者更改用户的信息。
参数 | 说明 |
-g | 指定用户对应的用户组,用户组 |
-s | 用户登录后使用的Shell名称 |
-u | 用户的ID值 |
示例:
1)useradd添加用户
[root@boxiaoyuan ~]# groupadd -g 111 boxiaoyuan [root@boxiaoyuan ~]# useradd -u 111 -g 111 boxiaoyuan
2.usermod:修改用户
该命令用于修改系统已经存在的用户的账号信息,参数和useradd类似。
3.userdel:删除用户
该命令用于删除指定的用户以及与该用户相关的文件,实际工作中应尽量不要使用userdel删除用户,而是使用在/etc/passwd里注释用户的方法。
4.groupadd:创建用户组
该命令用于创建新的用户组。
该命令的常用参数为-g:指定用户组的gid。
示例:
1)指定git创建用户
[root@boxiaoyuan ~]# groupadd -g 111 boxiaoyuan
[root@boxiaoyuan ~]# tail -l /etc/group cgred:x:493:: boxiaoyuan:x:111: [root@boxiaoyuan ~]# tail -l /etc/gshadow cgred:!:: boxiaoyuan:!::
5.passwd:修改用户密码
该命令可以修改用户密码及密码过期时间等。
常用的参数为--stdin:从标准输入读取密码字符串。
示例:
1)为用户设置密码
[root@boxiaoyuan ~]# useradd boxiaoyuan [root@boxiaoyuan ~]# passwd boxiaoyuan 更改用户 boxiaoyuan 的密码 。 新的 密码: 无效的密码: 它没有包含足够的不同字符 无效的密码: 是回文 重新输入新的 密码: passwd: 所有的身份验证令牌已经成功更新。 [root@boxiaoyuan ~]# su - boxiaoyuan [boxiaoyuan@boxiaoyuan ~]$ whoami boxiaoyuan
2)一条命令设置密码
[root@boxiaoyuan ~]# echo "123456" | passwd --stdin boxiaoyuan 更改用户 boxiaoyuan 的密码 。 passwd: 所有的身份验证令牌已经成功更新。
说明:该命令可以用来为用户批量设置密码。
6.su:切换用户
该命令用于将当前用户切换到指定用户或者以指定用户的身份执行命令。
参数 | 说明 |
- (常用) | 切换用户时,将用户的家目录,系统环境变量等初始为指定用户的 |
-c(常用) | 向Shell传递单个命令 |
示例:
1)切换用户的例子
[root@boxiaoyuan ~]# su - boxiaoyuan [boxiaoyuan@boxiaoyuan ~]$ pwd /home/boxiaoyuan [boxiaoyuan@boxiaoyuan ~]$ su - 密码: [root@boxiaoyuan ~]# pwd /root [root@boxiaoyuan ~]# su boxiaoyuan [boxiaoyuan@boxiaoyuan root]$ pwd /root [boxiaoyuan@boxiaoyuan root]$
说明:
1.普通用户切换到root用户,可以使用su -或su - root命令,但是需要输入密码。
2.root用户切换到普通用户,只需要使用su - 普通用户,不需要输入用户名和密码。
3.如果仅仅希望在某个用户下执行命令,可以使用su - 用户名 -c的方式。
注:本文内容为《跟老男孩学linux运维 核心系统命令实践》的学习笔记。
- namespace用法
- 全站缓存时代
- 洛谷P1962 斐波那契数列(矩阵快速幂)
- 负载均衡https转发会让服务器误判
- 凯撒加密之一个神奇的Python的API
- 10分钟搞懂TensorBoard用法
- 【最新TensorFlow1.4.0教程02】利用Eager Execution 自定义操作和梯度 (可在 GPU 运行)
- 清北集训Day1T3 LYK loves jumping(期望DP)
- C#进阶系列——WebApi 接口参数不再困惑:传参详解上
- MySQL之多表查询
- 万能pb_ds头文件—bits/extc++.h
- 区块链开发之Go语言—文件系统
- MySQL之单表查询
- C#进阶系列——WebApi 接口参数不再困惑:传参详解 下
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 数据库-实验二
- Rust Stable 1.45 中的 神奇 Bug 解读
- 快速提升Python数据分析能力的七个神奇方法
- 策略模式 - go篇
- bootstrapValidator的使用
- 工作队列
- O、Θ、Ω、o、ω,别再傻傻分不清了!
- SpringBoot一1(初次使用)+HelloWord
- 到底什么才是真正的空间复杂度?
- RabbitMQ都写了,RocketMQ怎么能落下?
- dotnet ConcurrentDictionary 的 GetOrAdd 性能比 TryGetValue 加 TryAdd 低
- CentOS7下升级GLIBC2.31
- 网络扫描利器Fing之Linux版本使用教程
- dotnet 通过依赖注入的 Scoped 给工作流注入相同的上下文信息
- 微信文章爬虫