Linux系统如何更改文件权限并设置用户密码?

在Linux系统中,权限管理和密码设置是系统安全的核心操作,合理配置权限和密码能有效防止未授权访问和数据泄露,本文将详细讲解Linux中文件/目录权限的更改方法以及用户密码的设置与修改,帮助用户掌握基础且实用的系统管理技能。

linux 如何更改权限设置密码

Linux权限更改:chmod命令详解

Linux文件权限分为读(r)、写(w)、执行(x)三类,分别对应文件所有者(user)、所属组(group)和其他用户(other),通过chmod命令可灵活调整权限。

权限的数字表示法

数字表示法用0-7的数字组合对应权限,

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

通过将三类用户的权限数字相加,形成3位数的权限码。

  • 755:所有者权限7(rwx=4+2+1),所属组和其他用户权限5(r-x=4+1)
  • 644:所有者权限6(rw-),所属组和其他用户权限4(r–)

示例

# 修改文件权限为644(所有者读写,组和其他只读)
chmod 644 file.txt  
# 修改目录权限为755(所有者可读/写/进入,组和其他可读/进入)
chmod 755 /path/to/directory  

权限的符号表示法

符号表示法通过[ugoa][+-=][rwx]组合修改权限,

  • u(user)、g(group)、o(other)、a(all,所有用户)
  • (添加权限)、(取消权限)、(设置精确权限)

示例

linux 如何更改权限设置密码

# 给所有者添加执行权限
chmod u+x script.sh  
# 取消所属组的写权限
chmod g-w document.pdf  
# 设置其他用户无权限
chmod o= file.log  
# 为所有用户添加读权限
chmod a+r data.txt  

递归修改权限

对于目录及其内部所有文件/子目录,需使用-R选项递归生效。注意:递归修改可能带来安全风险,需谨慎操作。

# 递归设置目录及其内容权限为755(目录)和644(文件)
chmod -R 755 /var/www/html  # 目录需755才能进入和读取内容
find /var/www/html -type f -exec chmod 644 {} ;  # 单独设置文件权限为644

特殊权限说明

除基础权限外,Linux还有3种特殊权限,用于特定场景:

  • SUID(4):用户执行文件时,临时以文件所有者身份运行(如/usr/bin/passwd)。
    chmod u+s /usr/bin/passwd  # 设置SUID
  • SGID(2):用户进入目录后,临时以目录所属组身份创建文件(如团队共享目录)。
    chmod g+s /project/team_dir  # 设置SGID
  • Sticky Bit(1):限制其他用户删除文件(如/tmp目录,仅所有者可删除自己的文件)。
    chmod +t /public_share  # 设置Sticky Bit

Linux密码设置与管理

密码是用户身份验证的关键,Linux通过passwd命令管理用户密码,普通用户可修改自身密码,管理员(root)可管理所有用户密码。

普通用户修改自身密码

普通用户执行passwd命令,需输入当前密码验证身份,然后输入两次新密码(系统会检查密码复杂度,如长度、字符类型)。

passwd  # 提示输入当前密码和新密码

密码复杂度要求(默认由/etc/login.defs或PAM模块控制):

  • 长度通常≥8位
  • 包含大小写字母、数字、特殊字符

管理员修改其他用户密码

root用户可直接修改任意用户密码,无需原密码验证(常用于重置忘记的密码)。

linux 如何更改权限设置密码

passwd username  # root执行,直接输入两次新密码

高级密码管理选项

  • 锁定/解锁用户密码
    passwd -l username  # 锁定用户(无法登录,但密码仍保留)
    passwd -u username  # 解锁用户
  • 删除用户密码(允许无密码登录)
    passwd -d username  # 删除密码,登录时无需输入密码(不安全,谨慎使用)
  • 强制用户下次登录修改密码
    passwd -e username  # 下次登录时需强制修改密码

密码策略管理(chage命令)

通过chage命令可设置密码过期时间、警告天数等策略,增强安全性。

# 设置密码90天后过期,过期前7天警告,过期3天后禁用账户
chage -M 90 -W 7 -I 3 username  
# 查看用户密码策略
chage -l username  

权限与密码管理注意事项

  1. 权限最小化原则:仅授予必要的权限,避免过度开放(如777权限应尽量避免)。
  2. 密码安全:使用强密码(如大小写+数字+特殊字符组合),定期更换,避免重复使用。
  3. 特殊权限谨慎使用:SUID/SGID可能提升权限,需确保目标文件可信,避免安全漏洞。

相关问答FAQs

Q1:如何批量修改目录下所有文件的权限,同时保留目录权限不变?
A:使用find命令结合-exec选项,区分文件和目录类型:

# 递归修改所有文件权限为644,所有目录权限为755
find /path/to/directory -type f -exec chmod 644 {} ;  
find /path/to/directory -type d -exec chmod 755 {} ;  

Q2:如何查看用户密码的状态(如是否锁定、过期时间)?
A:通过passwd命令的-S选项(仅root可用)或chage -l查看详细状态:

# 查看用户密码简短状态(root可用)
passwd -S username  
# 查看用户密码详细策略(包括过期时间、最后修改日期等)
chage -l username  

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/25917.html

(0)
酷番叔酷番叔
上一篇 2025年9月19日 07:31
下一篇 2025年9月19日 07:49

相关推荐

  • Linux各编辑器保存文件终极指南?

    命令行编辑器Nano 编辑器保存操作:编辑完成后,按 Ctrl + O(Write Out),底部提示 File Name to Write: 时,按 Enter 确认文件名(默认使用打开时的文件名),看到 [ Wrote X lines ] 即保存成功,退出:按 Ctrl + X,Vim / Vi 编辑器保存……

    2025年7月19日
    10500
  • Linux下如何安装NVIDIA显卡驱动?

    在Linux系统上安装NVIDIA显卡驱动是提升图形性能、支持CUDA加速等应用的关键步骤,尤其对于需要GPU加速计算、游戏或专业图形设计的用户而言,本文将详细介绍在主流Linux发行版(如Ubuntu/Debian、RHEL/CentOS)上安装NVIDIA驱动的完整流程,包括准备工作、驱动获取、安装步骤、配……

    2025年9月21日
    24700
  • img文件有什么秘密?

    .img 文件(磁盘映像文件)本质上是存储设备(如硬盘、USB 驱动器、光盘、软盘)或文件系统的完整扇区级副本,它包含了原始设备的所有数据,包括分区表、文件系统结构以及实际的文件内容,在 Linux 中处理 .img 文件通常涉及将其“挂载”到目录树中以访问其内容,或者使用特定工具提取其中的文件,重要提示:来源……

    2025年6月14日
    12700
  • linux如何删除回收站文件

    Linux系统中的“回收站”并非像Windows那样由系统统一内置的功能,而是依赖于桌面环境或第三方工具实现,不同的桌面环境(如GNOME、KDE、XFCE)会自带回收站机制,通常将删除的文件移动到用户主目录下的特定隐藏文件夹中;而命令行环境下,用户可能需要借助trash-cli等工具实现类似功能,本文将详细说……

    2025年9月18日
    8800
  • Linux下如何查看进程号?

    在Linux系统中,进程是程序执行的基本单位,每个进程都会被分配一个唯一的进程号(PID,Process ID),用于系统对进程的标识和管理,查看进程号是系统管理和故障排查中的基础操作,无论是终止异常进程、分析资源占用,还是调试程序,都需要先定位到目标进程的PID,本文将详细介绍Linux系统中查看进程号的多种……

    2025年9月24日
    8900

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信