TL, DR: использовать su --login
или sudo
.
Debian устанавливает разные PATH
для обычных пользователей. В /etc/profile
, вы можете видеть, что по умолчанию резерв /sbin
для root:
if [ "`id -u`" -eq 0 ]; then PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" else PATH="/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games" fi export PATH
type ifconfig
говорит, что утилита находится в, /sbin/ifconfig
поэтому обычные пользователи не могут получить к ней доступ легко. Когда вы запускаете su
без аргументов, среда вызывающего пользователя сохраняется, включая PATH
переменную. sudo
с другой стороны, обеспечивает свежую среду и переопределяет вызывающего пользователя PATH
.
Причина, почему вы считаете, что su
неисправно происходит потому, что сброс PATH
и IFS
по умолчанию является наследие поведения. недавно бустер переключился на util-linux
реализацию, su
которая работает по-другому; смотрите /usr/share/doc/util-linux/NEWS.Debian.gz
для деталей.