sudo -k 立即失效当前用户的 sudo 密码缓存,下次执行 sudo 需重新输入密码;它清空认证票据而非删除文件,仅影响当前终端会话,适用于共享电脑、脚本收尾或调试权限问题。

用 sudo -k 就能立刻让当前的 sudo 密码缓存失效,下次执行 sudo 命令时必须重新输入密码。
为什么需要 -k 参数
sudo 默认会把密码缓存 5 分钟(时间可在 /etc/sudoers 中配置),期间重复执行 sudo 不再要求输密码。这虽方便,但也带来安全风险——比如你离开终端时别人可能趁机执行敏感操作。-k 就是主动“清票”,让这张 5 分钟的认证票据立即作废。
怎么使用 -k
- 直接运行
sudo -k,不带其他命令,它只清除时间戳文件,不执行任何操作 - 执行后,再运行
sudo whoami或任意 sudo 命令,系统会立即提示输入密码 - 它只影响当前用户在当前终端会话中的缓存,不影响其他终端或用户
-k 和 -K 的区别
-k(小写)让当前缓存“过期”,下次 sudo 触发密码重输;-K(大写)则直接删除整个时间戳文件(通常位于 /var/run/sudo/ 或 /run/sudo/),效果更彻底,但日常使用 -k 已足够。
配合场景建议
- 共享电脑或临时离开前,顺手敲一次
sudo -k - 脚本中执行完高危操作后,加一句
sudo -k防止后续误操作提权 - 调试权限问题时,用
-k排除缓存干扰,确保每次都是真实认证流程











