Linux中的常见命令——用户管理命令

1、useradd添加新用户

基本语法

语法 功能描述
useradd 用户名 添加新用户
useradd -g 组名 用户名 添加新用户到某个组

实操案例

1、添加一个新用户【此时的用户是没有密码的】
[root@centos100 ~]# cd /home
[root@centos100 home]# ls
www  zss
[root@centos100 home]# useradd wgh
[root@centos100 home]# ls
wgh  www  zss
2、创建用户的时候更改该用户主目录的名称

默认创建用户的时候会在home文件夹下创建一个与用户同名的文件夹【该用户的主目录】,也可以在创建用户的时候设置该用户主目录的名称。

// 当前用户还是叫david,只不过其主目录的名字叫dave
[root@centos100 home]# useradd -d /home/dave david
[root@centos100 home]# ls
dave  wgh  www  zss

2、passwd设置用户密码

基本语法

语法 功能描述
passwd 用户名 设置用户密码

实操案例

给创建的用户设置密码【输入的密码是不在控制台显示的,输入完之后直接按回车键即可】

[root@centos100 home]# passwd wgh
更改用户 wgh 的密码 。
新的 密码:
无效的密码: 密码少于 8 个字符
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。

3、id查看用户是否存在

基本语法

id 用户名

实操实例

查看某个用户是否存在

[root@centos100 home]# id zss
uid=1000(zss) gid=1000(zss) 组=1000(zss),10(wheel)
[root@centos100 home]# id zs
id: zs: no such user

4、cat / etc / passwd查看创建的所有用户

实操案例

查看创建的所有用户

[root@centos100 ~]# cat /etc/passwd

5、su(switch user)切换用户

基本语法

语法 功能描述
su 用户名称 切换用户,只能获得用户的执行权限,不能获得环境变量
su - 用户名称 切换到用户并获得该用户的环境变量及执行权限

实操实例

1、切换用户
[root@centos100 ~]# su zss
[zss@centos100 root]$ 
[zss@centos100 root]$ cd ~
[zss@centos100 ~]$ pwd
/home/zss
[zss@centos100 ~]$ su wgh
密码:
[wgh@centos100 zss]$ 
[wgh@centos100 zss]$ ll
ls: 无法打开目录.: 权限不够
2、exit回退到上一个用户
[wgh@centos100 ~]$ exit
exit
[zss@centos100 ~]$ exit
exit
[root@centos100 ~]# 

6、userdel删除用户

基本语法

语法 功能描述
userdel 用户名 删除用户,但保存用户主目录
userdel -r 用户名 用户和用户主目录都删除

选项说明

选项 功能
-r 删除用户的同时,删除与用户相关的所有文件

实操实例

1、删除用户但保存用户主目录
[root@centos100 ~]# userdel wgh
[root@centos100 ~]# cd /home
[root@centos100 home]# ls
dave  wgh  www  zss
[root@centos100 home]# id wgh
id: wgh: no such user
// 如果不想要被删除的用户的主目录了也可以直接删除【但是在实际工作当中最好不要该用户的主目录删除】
[root@centos100 home]# rm -rf wgh/
[root@centos100 home]# ls
dave  www  zss
2、删除用户和用户主目录
[root@centos100 home]# userdel -r david
[root@centos100 home]# ls
www  zss
[root@centos100 home]# id david
id: david: no such user

7、who查看登录用户信息

基本语法

语法 功能描述
whoami 显示自身用户名称
who am i 显示登录用户的用户名

实例实操

1、显示自身用户名称
[zss@centos100 root]$ whoami
zss
2、显示登录用户的用户名
[zss@centos100 root]$ who am i
root     pts/0        2024-08-27 13:34 (192.168.153.1)

8、sudo设置普通用户具有root权限

基本语法

sudo 命令

实例实操

使用wgh用户查看root下的文件

vbnet 复制代码
[root@centos100 ~]# su wgh
[wgh@centos100 root]$ ls
ls: 无法打开目录.: 权限不够
[wgh@centos100 root]$ sudo ls

我们信任您已经从系统管理员那里了解了日常注意事项。
总结起来无外乎这三点:

    #1) 尊重别人的隐私。
    #2) 输入前要先考虑(后果和风险)。
    #3) 权力越大,责任越大。

[sudo] wgh 的密码:
wgh 不在 sudoers 文件中。此事将被报告。

修改配置文件

vbnet 复制代码
[root@centos100 ~]#vim /etc/sudoers
vbnet 复制代码
修改 /etc/sudoers 文件,找到下面一行(101行),在root下面添加一行,如下:

\## Allow root to run any commands anywhere
root  ALL=(ALL)   ALL
wgh  ALL=(ALL)   ALL
vbnet 复制代码
或者配置成采用sudo命令时,不需要输入密码

\## Allow root to run any commands anywhere
root   ALL=(ALL)   ALL
atguigu  ALL=(ALL)   NOPASSWD:ALL

修改完毕,现在可以用wgh帐号登录,然后用命令 sudo ,即可获得root权限进行操作。

[wgh@centos100 root]$ sudo ls
[sudo] wgh 的密码:
anaconda-ks.cfg  info  initial-setup-ks.cfg  公共  模板  视频  图片  文档  下载  音乐  桌面
相关推荐
我的K840939 分钟前
Flink整合Hudi及使用
linux·服务器·flink
1900431 小时前
linux6:常见命令介绍
linux·运维·服务器
Camellia-Echo1 小时前
【Linux从青铜到王者】Linux进程间通信(一)——待完善
linux·运维·服务器
Linux运维日记1 小时前
k8s1.31版本最新版本集群使用容器镜像仓库Harbor
linux·docker·云原生·容器·kubernetes
我是唐青枫1 小时前
Linux dnf 包管理工具使用教程
linux·运维·服务器
编程修仙2 小时前
Collections工具类
linux·windows·python
芝麻团坚果2 小时前
对subprocess启动的子进程使用VSCode python debugger
linux·ide·python·subprocess·vscode debugger
写点什么啦3 小时前
[debug]不同的window连接ubuntu的vscode后无法正常加载kernel
linux·vscode·ubuntu·debug
wellnw3 小时前
[ubuntu]编译共享内存读取出现read.c:(.text+0x1a): undefined reference to `shm_open‘问题解决方案
linux·ubuntu
不爱学习的YY酱3 小时前
【操作系统不挂科】<CPU调度(13)>选择题(带答案与解析)
java·linux·前端·算法·操作系统