rbenv:权限被拒绝

我跟随Ryan的RailsCast第339集。我已经安装了rbenv并且可以运行ruby -v 。 我退出了我的会话,当我试图回来时(通过来自root su deployer ,我收到了这个错误

 /home/deployer/.rbenv/bin/rbenv: line 20: cd: /root: Permission denied 

这是rbenv文件:

 #!/usr/bin/env bash set -e [ -n "$RBENV_DEBUG" ] && set -x resolve_link() { $(type -p greadlink readlink | head -1) "$1" } abs_dirname() { local cwd="$(pwd)" local path="$1" while [ -n "$path" ]; do cd "${path%/*}" local name="${path##*/}" path="$(resolve_link "$name" || true)" done pwd cd "$cwd" } if [ -z "${RBENV_ROOT}" ]; then RBENV_ROOT="${HOME}/.rbenv" else RBENV_ROOT="${RBENV_ROOT%/}" fi export RBENV_ROOT if [ -z "${RBENV_DIR}" ]; then RBENV_DIR="$(pwd)" else cd "$RBENV_DIR" 2>/dev/null || { echo "rbenv: cannot change working directory to \`$RBENV_DIR'" exit 1 } >&2 RBENV_DIR="$(pwd)" cd "$OLDPWD" fi export RBENV_DIR shopt -s nullglob bin_path="$(abs_dirname "$0")" for plugin_bin in "${RBENV_ROOT}/plugins/"*/bin; do bin_path="${bin_path}:${plugin_bin}" done export PATH="${bin_path}:${PATH}" hook_path="${RBENV_HOOK_PATH}:${RBENV_ROOT}/rbenv.d:/usr/local/etc/rbenv.d:/etc/rbenv.d:/usr/lib/rbenv/hooks" for plugin_hook in "${RBENV_ROOT}/plugins/"*/etc/rbenv.d; do hook_path="${hook_path}:${plugin_hook}" done export RBENV_HOOK_PATH="$hook_path" shopt -u nullglob command="$1" case "$command" in "" | "-h" | "--help" ) echo -e "rbenv 0.3.0\n$(rbenv-help)" >&2 ;; * ) command_path="$(command -v "rbenv-$command" || true)" if [ -z "$command_path" ]; then echo "rbenv: no such command \`$command'" >&2 exit 1 fi shift 1 exec "$command_path" "$@" ;; esac 

第20行是cd "$cwd"

当我尝试回到会话时,有关为什么会出现此错误的任何想法?

当您将用户切换到“部署者”时,您似乎处于/ root状态。 尝试确保您位于“部署者”可以访问的目录中。

信用额度为d11wtq