Skip to main content
 首页 » 编程设计

linux之如何使用脚本在远程服务器上设置 `sudo su postgres`

2026年04月16日54lori

我敢肯定这个问题已经被提出了数千次,但我仍然找不到答案,或者我太笨了。在这里。
我正在尝试 ssh 服务器,然后进行 postgresql 数据库备份。我试过了。

#!/bin/sh 
ssh admin@myserver 'NOW=$(date +"%m-%d-%Y"); cd /home/open/backup; sudo su postgres; pg_dump v2 > v2-$NOW.sql;' 

问题是,当我执行 sudo su postgres 时,它要求输入密码,但它们卡住了。任何指示都会有所帮助。

请您参考如下方法:

您可以编辑 /etc/sudoers 以允许用户 admin 以 postgres 身份运行命令而无需密码:

admin ALL=(postgres) NOPASSWD: ALL 

如果您愿意,您也可以将其缩小到特定命令而不是全部。