Public bug reported:

I was invoking bash as follows:

$ env -i bash

This caused this message to be printed:

$ env -i bash
> To run a command as administrator (user "root"), use "sudo <command>".
> See "man sudo_root" for details.

While I think I understand the rationale for the message, I found it
more confusing than helpful in this situation. I thought I had done
something wrong, or that there was some error with the new shell I was
starting.

The message is, I believe, caused by the following snippet in
/etc/bash.bashrc (note that the "env -i" part above causes $HOME to not
be set)

# sudo hint
if [ ! -e "$HOME/.sudo_as_admin_successful" ] && [ ! -e "$HOME/.hushlogin" ] ; 
then
    case " $(groups) " in *\ admin\ *)
    if [ -x /usr/bin/sudo ]; then
        cat <<-EOF
        To run a command as administrator (user "root"), use "sudo <command>".
        See "man sudo_root" for details.

        EOF
    fi
    esac
fi

It would perhaps be better if the if-statement also checked that $HOME
is set (to refer to an existing directory?) before checking if
$HOME/.sudo_as_admin_successful and $HOME/.hushlogin exist.

** Affects: bash (Ubuntu)
     Importance: Undecided
         Status: New

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1097473

Title:
  Invoking "env -i bash" unnecessarily results in confusing message

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/bash/+bug/1097473/+subscriptions

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to