wsl(ubuntu)创建用户

我们打卡ubuntu窗口,如果没有创建用户,那么默认是root用户

用户的增删改查

查询所有的用户列表

bash 复制代码
cat /etc/passwd | cut -d: -f1
  1. cat /etc/passwd: 这个命令用于显示 /etc/passwd 文件的内容。/etc/passwd 文件包含了系统上所有用户的基本信息。每一行都代表一个用户,格式如下:
bash 复制代码
username:password:UID:GID:GECOS:home_directory:shell
  1. |: 这是一个管道符号,用于将一个命令的输出作为另一个命令的输入。
  2. cut -d: -f1: 这个命令用于从输入中切割出字段。-d: 指定字段的分隔符为冒号(:),-f1 指定要输出的字段为第一个字段。
cut

一个文本处理工具

bash 复制代码
cut [-bn][file] 或 cut [-c][file] 或 cut [-df][file]

cut 命令可以通过针对某一行的信息,配合参数的控制,截取出想要的信息。它接受三种选取定位方式:字节(bytes)定位、字符(characters)定位和域(fields)定位。具体如下:

  1. 字节定位:选项 -b。例如,要截取每一行的第3个字符,可以执行 cut -b 3。如果需要连续定位,如第1至第9位,可以简写为 1-9;多个定位可以用逗号隔开,如 1-9,11,13
  2. 字符定位:选项 -c。以字符为单位进行分割。
  3. 域定位:选项 -f,并与 -d 一起使用。依据 -d 的分隔字符将一段信息分割成为数段,用 -f 取出第几段的意思。例如,将 PATH 变量取出,找出第五个路径,可以使用 echo $PATH | cut -d':' -f5

查询登录的用户

whoami

查询用户是否存在

id name

查询指定用户的详细信息

getent passwd <用户名>

添加用户

bash 复制代码
useradd username

给用户指定密码

bash 复制代码
passwd username

如果第一次没有给root用户指定密码,那么我们可以先使用命令指定一个密码

修改用户

bash 复制代码
usermod --help

修改用户名

bash 复制代码
usermod -l new_username old_username

删除用户

删除用户

bash 复制代码
userdel username

删除用户所在的目录,但是用户还在

bash 复制代码
rm -rf username

用户切换

普通用户切换到root

bash 复制代码
sudo -s

切换的时候我们可能会遇到以下错误

这说明当前用户没有权限来切换用户,我们可以用以下命令解决

  1. 我们在打卡一个root的终端
  2. 然后在终端中运行如下命令
bash 复制代码
usermod -aG sudo zhangsan
  1. 这个命令表示给zhangsan执行sudo的命令的权限
  2. 检查一下张三是否拥有sudo命令权限,
bash 复制代码
id zhangsan

切换到username

bash 复制代码
su username

用户组

简化用户管理和权限分配,linux系统的用户组操作

查看所有的组

bash 复制代码
cat /etc/group

添加用户组

bash 复制代码
groupadd usergroup

删除用户组

bash 复制代码
groupdel usergroup

将用户添加到用户组

bash 复制代码
sudo usermod -aG newgroup username

从组中删除用户

bash 复制代码
sudo gpasswd -d username newgroup

修改组属性

bash 复制代码
sudo chgrp

如下,将组"newgroup"的组标识符(GID)更改为1001

bash 复制代码
sudo chgrp -v 1001 newgroup
相关推荐
市场部需要一个软件开发岗位3 分钟前
JAVA开发常见安全问题:纵向越权
java·数据库·安全
海奥华26 分钟前
mysql索引
数据库·mysql
酉鬼女又兒40 分钟前
每天一个Linux命令_printf
linux·运维·服务器
翼龙云_cloud41 分钟前
国际云代理商:2026年国际云注册风控升级实战指南 8 大平台无卡解决方案对比
服务器·阿里云·云计算
Trouvaille ~1 小时前
TCP Socket编程实战(三):线程池优化与TCP编程最佳实践
linux·运维·服务器·网络·c++·网络协议·tcp/ip
2601_949593651 小时前
深入解析CANN-acl应用层接口:构建高效的AI应用开发框架
数据库·人工智能
javachen__1 小时前
mysql新老项目版本选择
数据库·mysql
June`1 小时前
高并发网络框架:Reactor模式深度解析
linux·服务器·c++
Dxy12393102161 小时前
MySQL如何高效查询表数据量:从基础到进阶的优化指南
数据库·mysql
Dying.Light1 小时前
MySQL相关问题
数据库·mysql