当前位置: 首页 > news >正文

Linux用户管理命令详解

一、用户创建与管理

1.1 useradd命令详解

useradd是Linux系统中最基础的用户创建命令,功能强大参数较多,需要深入理解。

基本语法
useradd [选项] 用户名
核心参数详解

用户基本信息设置

# 创建用户时添加注释信息
useradd -c "Web Application User" webuser# 指定用户ID(UID)
useradd -u 1500 appuser# 指定用户过期时间(YYYY-MM-DD格式)
useradd -e 2024-12-31 tempuser# 设置密码过期天数
useradd -f 7 tempuser

家目录与Shell设置

# 创建用户并自动创建家目录
useradd -m newuser# 创建用户但不创建家目录
useradd -M serviceuser# 指定家目录路径
useradd -d /opt/appuser -m appuser# 指定用户登录Shell
useradd -s /sbin/nologin serviceuser
useradd -s /bin/bash normaluser

用户组设置

# 指定用户主组(初始组)
useradd -g developers devuser# 指定用户附加组(可多个)
useradd -G developers,admin,sshusers adminuser# 不创建与用户同名的组
useradd -N genericuser
实用示例

示例1:创建标准Web应用用户

useradd -m -s /bin/bash -c "Web Server User" -G www-data,sshusers webadmin

示例2:创建系统服务用户

useradd -r -s /sbin/nologin -d /opt/service -c "Service Account" serviceuser

示例3:创建临时用户

useradd -m -s /bin/bash -e 2024-12-31 -f 7 tempuser

1.2 usermod命令:用户属性修改

usermod命令用于修改已存在用户的属性,参数与useradd类似。

常用修改操作
# 修改用户注释信息
usermod -c "Updated Description" username# 修改用户家目录
usermod -d /new/home -m username# 修改用户登录Shell
usermod -s /bin/zsh username# 修改用户主组
usermod -g newgroup username# 修改用户附加组(替换原有附加组)
usermod -G group1,group2 username# 添加用户到新附加组(保留原有组)
usermod -aG newgroup username# 修改用户名
usermod -l newname oldname# 锁定用户账户
usermod -L username# 解锁用户账户
usermod -U username

1.3 userdel命令:用户删除

# 仅删除用户账户,保留家目录
userdel username# 删除用户及其家目录
userdel -r username# 强制删除用户(即使用户正在登录)
userdel -f username

1.4 passwd命令:密码管理

# 设置用户密码
passwd username# 修改当前用户密码
passwd# 锁定用户密码
passwd -l username# 解锁用户密码
passwd -u username# 强制用户下次登录时修改密码
passwd -e username# 设置密码过期天数
passwd -x 30 username# 设置密码最小使用天数
passwd -n 7 username# 设置密码过期前警告天数
passwd -w 7 username

二、权限管理命令

2.1 chmod命令:文件权限修改

chmod命令用于修改文件和目录的访问权限,是Linux权限管理的核心命令。

权限表示方法

数字表示法

  • 4 = 读取权限 ®
  • 2 = 写入权限 (w)
  • 1 = 执行权限 (x)
  • 0 = 无权限

常用权限组合

  • 7 = rwx (4+2+1)
  • 6 = rw- (4+2+0)
  • 5 = r-x (4+0+1)
  • 4 = r-- (4+0+0)
基本用法

数字模式

# 文件所有者:读写执行,组用户:读写,其他用户:读
chmod 764 filename# 目录所有者:读写执行,组用户:读执行,其他用户:无权限
chmod 750 dirname# 递归修改目录及其所有内容的权限
chmod -R 755 dirname

符号模式

# 给文件所有者添加执行权限
chmod u+x filename# 给组用户移除写权限
chmod g-w filename# 给其他用户添加读权限
chmod o+r filename# 同时给所有用户添加执行权限
chmod a+x filename# 复制权限(复制其他用户的权限设置)
chmod u=g filename  # 文件所有者权限设置为与组用户相同
chmod g=u filename  # 组用户权限设置为与文件所有者相同
高级用法

特殊权限设置

# 设置SUID(Set User ID)权限
chmod u+s filename# 设置SGID(Set Group ID)权限
chmod g+s dirname# 设置Sticky Bit权限
chmod +t dirname

2.2 chown命令:文件所有权修改

chown命令用于修改文件或目录的所有者和所属组。

基本语法
chown [选项] [所有者][:[]] 文件/目录
常用用法

修改所有者

# 将文件所有者改为newuser
chown newuser filename# 递归修改目录及其所有内容的所有者
chown -R newuser dirname

修改所属组

# 将文件所属组改为newgroup
chown :newgroup filename# 同时修改所有者和所属组
chown newuser:newgroup filename# 使用冒号分隔的另一种写法
chown newuser.newgroup filename

批量修改

# 修改目录下所有文件的所有者
chown -R newuser /path/to/directory# 仅修改目录下所有文件(不包括子目录)的所有者
chown newuser /path/to/directory/*

2.3 chgrp命令:组所有权修改

chgrp命令专门用于修改文件或目录的所属组。

# 修改文件所属组
chgrp newgroup filename# 递归修改目录所属组
chgrp -R newgroup dirname# 修改多个文件的所属组
chgrp newgroup file1 file2 file3

三、在线用户监控

3.1 w命令:综合用户信息

w命令显示当前登录用户的详细信息,包括用户正在执行的进程。

# 显示所有在线用户信息
w# 不显示表头
w -h# 指定刷新间隔(秒)
w -i 5# 使用短格式显示
w -s

输出字段解释

12:34:56    # 系统当前时间
up 10 days   # 系统运行时间
2 users      # 当前在线用户数
load average: 0.05, 0.02, 0.00  # 系统负载(1分钟、5分钟、15分钟)USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
username pts/0   192.168.1.100    10:30    0.00s  0.12s  0.01s -bash

3.2 who命令:用户登录信息

who命令显示当前登录用户的基本信息。

# 显示当前登录用户
who# 显示系统启动时间、运行时间和登录用户数
who -b -d -l -p -r -t -T# 显示所有登录记录
who -a# 显示用户的主机名或IP地址
who -u

3.3 users命令:简单用户列表

users命令以简洁方式显示当前登录用户。

# 显示所有登录用户名(用空格分隔)
users# 统计登录用户数
users | wc -w

3.4 last命令:用户登录历史

last命令显示用户登录历史记录,包括当前和过去的登录会话。

# 显示所有用户的登录历史
last# 显示特定用户的登录历史
last username# 显示最近的n条登录记录
last -n 10# 显示完整的登录/登出时间
last -F# 显示主机名
last -a# 显示系统关机和重启记录
last -x# 显示特定时间段的登录记录
last -s "2024-01-01" -t "2024-01-31"

3.5 lastlog命令:最近登录记录

lastlog命令显示所有用户最近一次登录的信息。

# 显示所有用户的最近登录记录
lastlog# 显示特定用户的最近登录记录
lastlog -u username# 显示最近n天内登录的用户
lastlog -t 30# 显示UID在指定范围内的用户
lastlog -u 1000-2000

四、用户信息查询

4.1 id命令:用户身份识别

id命令显示用户和组的UID和GID信息。

# 显示当前用户信息
id# 显示特定用户信息
id username# 仅显示用户ID
id -u# 仅显示组ID
id -g# 显示所有组ID
id -G# 显示名称而非数字
id -n

4.2 groups命令:用户组信息

# 显示当前用户所属的所有组
groups# 显示特定用户所属的所有组
groups username

4.3 finger命令:用户详细信息

# 显示用户详细信息
finger username# 显示所有登录用户信息
finger# 显示用户计划任务
finger -l username

五、高级用户管理

5.1 批量用户管理

# 批量创建用户(结合循环)
for user in user1 user2 user3; douseradd -m -s /bin/bash $userecho "$user:Password123" | chpasswdchage -d 0 $user  # 强制首次登录修改密码
done# 批量删除用户
for user in user1 user2 user3; douserdel -r $user
done

5.2 用户活动监控

# 监控用户登录活动
watch -n 5 'who -u'# 监控用户CPU使用情况
watch -n 2 'ps aux --sort=-%cpu | head -10'# 查看用户进程
ps -u username# 查看用户打开的文件
lsof -u username

5.3 安全检查

# 检查无密码用户
awk -F: '($2 == "") {print $1}' /etc/shadow# 检查UID为0的非root用户
awk -F: '($3 == 0) {print $1}' /etc/passwd# 检查可登录用户
grep -v 'nologin\|false' /etc/passwd# 定期审查用户权限
find /home -type f -perm -o+w -exec ls -l {} \;

六、故障排除

6.1 常见问题及解决方案

问题1:无法创建用户

# 检查用户是否已存在
id username# 检查UID是否冲突
awk -F: '{print $3}' /etc/passwd | sort -n# 检查磁盘空间
df -h

问题2:用户无法登录

# 检查用户Shell
grep username /etc/passwd# 检查账户是否锁定
passwd -S username# 检查家目录权限
ls -ld /home/username

问题3:权限设置不生效

# 检查文件系统权限
ls -l filename# 检查SELinux状态
getenforce# 检查文件系统挂载选项
mount | grep $(df filename --output=target | tail -1)
http://www.dtcms.com/a/521407.html

相关文章:

  • STM32F4串口通信乱码
  • 网站虚拟交易技术怎么做大型新型网站
  • 易讯网站建设为企业做网站
  • vLLM/Docker 部署Qwen2.5-VL-32B模型
  • 广州设计网站建设电子商务网站建设与维护考试题
  • 单片机的开发(未完待续,有时间写)
  • 酒店内容推荐系统:这5个技术坑90%的人都踩过!
  • 定制型网站开发网站建设服务哪便宜
  • 十大下载网站免费安装网站扫二维码怎么做
  • 口碑好的合肥网站建设多说wordpress
  • JetPack 6系统中,默认启用的自动更新机制不完全依赖 unattended-upgrades 包
  • 企业网站开发服务器山东兴华建设集团网站
  • 建设工程网上质检备案网站中英文网站如何做思路
  • 网站不排名一切等于零今天的新闻直播
  • 学seo网站推广好吗网站用户建设的设计与实现
  • 滇中引水工程建设管理局网站安卓aso优化
  • 盐城网站开发招代理松江车墩网站建设
  • asp.net企业网站后台管理系统企业管理软件系统网
  • 现在手机网站用什么做wordpress推广码
  • POI的概念解析及电子地图与POI的联系和区别分析
  • 建什么网站 做 cpa服务器搭建网站环境
  • **标题:发散创新:智能交通系统的深度探究与实现**摘要:本文将详细
  • DDIM(Diffusion)个人总结
  • Radamsa的TCP客户端/服务器模式用法
  • 【Flutter 问题系列第 86 篇】解决 Google Play 提示应用必须支持 16 KB 内存页面大小问题的方案
  • 南京网站设计建设公司电话添加网站描述
  • 网站建设具体步骤应该怎么做ps怎么制作网页
  • 此网站无法提供安全连接 建设银行seo在线优化排名
  • 网站 架构 设计企业做营销网站
  • 网站建设用途网页制作教程视频 网盘