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)
酷番叔酷番叔
上一篇 2小时前
下一篇 2小时前

相关推荐

  • linux下如何安装python

    在Linux系统中安装Python是开发环境搭建的基础步骤,常见方法包括包管理器安装、源码编译安装及虚拟环境配置,本文以主流发行版(如Ubuntu/Debian、CentOS/RHEL、Fedora)为例,详细说明不同场景下的安装流程及注意事项,通过包管理器安装(适合新手快速部署)包管理器安装是最简单的方式,但……

    2025年8月23日
    2000
  • Linux查看用户有哪些可靠方法?

    查看 /etc/passwd 文件(最直接)命令:cat /etc/passwd说明:所有用户信息存储在 /etc/passwd 文件中,每行代表一个用户,输出格式:用户名:密码占位符(x):用户ID(UID):组ID(GID):描述信息:家目录:默认Shelljohn:x:1001:1001:John Doe……

    2025年7月23日
    3200
  • 凌晨3点备份最安全?

    在Linux系统中,定时任务(又称计划任务)是自动化运维的核心功能,可通过cron和at两种工具实现,以下是详细操作指南:cron:周期性定时任务核心概念cron守护进程:系统后台服务,负责执行计划任务,crontab文件:存储任务配置,用户级文件位于/var/spool/cron/,系统级文件位于/etc/c……

    2025年7月19日
    3000
  • linux如何开启sshd

    Linux中,可通过执行sudo systemctl start sshd命令开启sshd服务,也可

    2025年8月15日
    1700
  • Linux新网卡驱动安装遇难题?

    准备工作确认网卡型号在终端执行:lspci | grep -i 'network\|ethernet' # PCI网卡lsusb | grep -i 'network\|ethernet' # USB网卡输出示例:03:00.0 Ethernet controller: Real……

    2025年7月18日
    3600

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信