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  公共  模板  视频  图片  文档  下载  音乐  桌面
相关推荐
liuyunshengsir1 分钟前
linux 下新增用户后无法使用TAB补全功能的最佳解决方法
linux·运维·服务器
书生执笔画浮沉13 分钟前
rpmrebuild
linux·centos·rpm
乌托邦的逃亡者2 小时前
Dockerfile的配置和使用
linux·运维·docker·容器
小此方2 小时前
Re:Linux系统篇(三)指令篇 · 二:十二个高频指令精讲+重定向操作+“一切皆文件“深入理解
linux·运维·服务器
十五年专注C++开发2 小时前
MobaXterm:Windows 远程工作全能工具箱
linux·windows·mobaxterm
wohehe2 小时前
Android项目工程化-Github Actions
linux·github
REDcker3 小时前
Linux disown命令详解 后台作业脱管与终端退出
linux·运维·chrome
cyber_两只龙宝3 小时前
【Oracle】Oracle之SQL的转换函数和条件表达式
linux·运维·数据库·sql·云原生·oracle
努力努力再努力wz3 小时前
【Linux网络系列】深入理解 I/O 多路复用:从 select 痛点到 poll 高并发服务器落地,基于 Poll、智能指针与非阻塞 I/O与线程池手写一个高性能 HTTP 服务器!(附源码)
java·linux·运维·服务器·c语言·c++·python
努力努力再努力wz3 小时前
【Linux网络系列】万字硬核解析网络层核心:IP协议到IP 分片重组、NAT技术及 RIP/OSPF 动态路由全景
java·linux·运维·服务器·数据结构·c++·python