小编tim*_*tim的帖子

为什么`postgres` 需要一个shell?

在我的 Debian Wheezy系统中,我注意到 postgres 用户“postgres”,即“PostgreSQL 管理员”,/bin/bash用作 shell。但是,我无法弄清楚为什么需要这样做。将此更改为/bin/false仍然允许我使用命令psql.

那么,为什么系统用户postgres需要一个 shell,它必须是专门的/bin/bash吗?

shell postgresql accounts

13
推荐指数
1
解决办法
1670
查看次数

使用 sudo 超时信息更新 Zsh 提示

我希望我的 Zsh 提示显示我的sudo凭据是否已缓存。到目前为止,我所拥有的应该有助于解释我想要实现的目标。

function sudo-warning {
    if sudo -nl &>/dev/null; then
        echo -n " %{${fg[red]}%}%{$reset_color%}"
    # optionally, show a locked lock if no sudo credentials active
    #else
    #    echo -n " %{${fg[blue]}%}%{$reset_color%}"
    fi  
}

# Update prompt every 10 seconds
TMOUT=10
TRAPALRM() {
    zle reset-prompt
}

PROMPT='%n$(sudo-warning) '
Run Code Online (Sandbox Code Playgroud)

问题是sudo -nl &>/dev/null更新上次sudo调用的时间戳,因此永远不会超时。那么,有没有办法在更新超时本身的情况下获取有关是否sudo仍然缓存我的凭据的信息?

prompt zsh sudo

6
推荐指数
1
解决办法
318
查看次数

更改 zsh 进程替换 '=()' 的位置

zsh显然/tmp/zshXXXXXX用于存储由使用=(). 例如,

$ echo =(echo test)
/tmp/zsh4RmpQZ
Run Code Online (Sandbox Code Playgroud)

但是,我想更改位置以/run使用我的tmpfs坐骑。

是否有配置选项zsh可以使用=()?更改进程替换中临时文件的(默认)位置?

zsh process-substitution

5
推荐指数
1
解决办法
186
查看次数

标签 统计

zsh ×2

accounts ×1

postgresql ×1

process-substitution ×1

prompt ×1

shell ×1

sudo ×1