前言

LinuxMint系统默认显示星号,这个感觉是非常好的体验,虽然有人觉得不安全,不过无所谓了,好用才是关键

配置

这个设置在 /etc/sudoers.d/0pwfeedback 这里

这个文件里面就一行

Defaults pwfeedback

如果不想显示星号,加个感叹号就行

Defaults !pwfeedback

一键配置脚本

同时我写了一个脚本,可以一键开启或关闭 sudo 输入密码时的星号显示功能。

# 开启星号显示
curl -sSL https://gist.github.com/Deali-Axy/409d3d22099a6547f92f761a8cfeeab4/raw/e684032255024fe085663e29487ac0107abd06c6/pwfeedback.sh | sudo bash -s on

# 关闭星号显示
curl -sSL https://gist.github.com/Deali-Axy/409d3d22099a6547f92f761a8cfeeab4/raw/e684032255024fe085663e29487ac0107abd06c6/pwfeedback.sh | sudo bash -s off

下面是脚本源码

保存为 pwfeedback.sh 并赋予可执行权限:

chmod +x pwfeedback.sh

脚本内容如下:

#!/bin/bash
# 一键配置 sudo 密码输入是否显示星号
# 用法: ./pwfeedback.sh on|off

set -e

CONFIG_FILE="/etc/sudoers.d/0pwfeedback"

if [ "$EUID" -ne 0 ]; then
  echo "请使用 root 或 sudo 运行该脚本"
  exit 1
fi

case "$1" in
  on)
    echo "Defaults pwfeedback" > "$CONFIG_FILE"
    echo "已开启:sudo 输入密码时会显示星号 (*)"
    ;;
  off)
    echo "Defaults !pwfeedback" > "$CONFIG_FILE"
    echo "已关闭:sudo 输入密码时不显示星号"
    ;;
  *)
    echo "用法: $0 {on|off}"
    exit 1
    ;;
esac

这样就可以用以下命令切换:

# 开启星号显示
sudo ./pwfeedback.sh on
# 关闭星号显示
sudo ./pwfeedback.sh off

参考