2 votos

Cambiar sudo prompt en MacOS

Estoy tratando de cambiar el prompt sudo por defecto que se utiliza en MacOS para que coincida con lo que estoy acostumbrado en linux. Quiero saber que se espera que ponga mi sudo y no otra contraseña.

He probado la ENV SUDO_PROMPT variable prompt primero

 set SUDO_PROMPT '[sudo] %p : '

 echo $SUDO_PROMPT
[sudo] %p :

 sudo -v
Password:
sudo: a password is required

Esto no funciona.

Desde el documentación sudo

passprompt_override
The password prompt specified by passprompt will normally only be used if the 
password prompt provided by systems such as PAM matches the string “Password:”. 
If passprompt_override is set, passprompt will always be used. This flag is off 
by default.

Sin embargo, cuando traté de añadir esto al archivo sudoers sigo recibiendo un error. Supongo que no entiendo cómo se supone que funciona la anulación de los valores predeterminados en sudo. No hay varios buenos ejemplos de configuración de banderas booleanas en línea que pude encontrar.

sudo visudo /etc/sudoers
Password:
#
# Sample /etc/sudoers file.
#
# This file MUST be edited with the 'visudo' command as root.
#
# See the sudoers man page for the details on how to write a sudoers file.

##
# Override built-in defaults
##
Defaults    env_reset
Defaults    env_keep += "BLOCKSIZE"
Defaults    env_keep += "COLORFGBG COLORTERM"
Defaults    env_keep += "__CF_USER_TEXT_ENCODING"
Defaults    env_keep += "CHARSET LANG LANGUAGE LC_ALL LC_COLLATE LC_CTYPE"
Defaults    env_keep += "LC_MESSAGES LC_MONETARY LC_NUMERIC LC_TIME"
Defaults    env_keep += "LINES COLUMNS"
Defaults    env_keep += "LSCOLORS"
Defaults    env_keep += "SSH_AUTH_SOCK"
Defaults    env_keep += "TZ"
Defaults    env_keep += "DISPLAY XAUTHORIZATION XAUTHORITY"
Defaults    env_keep += "EDITOR VISUAL"
Defaults    env_keep += "HOME MAIL"

Defaults    lecture_file = "/etc/sudo_lecture"

# Defaults  passprompt = '[sudo] password for %p: '

#Defautls   passprompt_override

4voto

Si utiliza Bash o Zsh, las variables deben establecerse con

export SUDO_PROMPT='[sudo] %p: '

Si utiliza Fish, utilice set -x para que la variable esté disponible para los procesos hijos

set -x SUDO_PROMPT '[sudo] %p: '

0voto

ledhed Puntos 41

Para mí, la diferencia de utilizar fish [set][1] función

vim ~/.config/fish/config.fish
set -x SUDO_PROMPT '[sudo] %p : '

Esto es en lugar de simplemente establecer la variable, el -x para exportar. Hacerlo de esta manera no funcionará.

set SUDO_PROMPT '[sudo] %p : '

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X