[解决] 抱歉,您必须拥有一个终端来执行 sudo

[摘要] Linux ssh执行远端服务器sudo命令时有如下报错:
sudo: sorry, you must have a tty to run sudo
sudo:抱歉,您必须拥有一个终端来执行 sudo

真实场景是在执行pssh的时候,在远端服务器执行sudo命令,有如下报错:

$ pssh -h testlist.txt -l fisher "sudo uptime" 
[1] 12:33:14 [FAILURE] 10.20.30.40 Exited with error code 1

非sudo情况下:

$ pssh -h testlist.txt -l fisher "uptime" 
[1] 12:32:27 [SUCCESS] 10.20.30.40

DEBUG:ssh方式执行远程sudo命令

$ ssh 10.20.30.40 "sudo uptime"
sudo:抱歉,您必须拥有一个终端来执行 sudo

网上搜了一下,解决办法是编辑 /etc/sudoers 文件,将Default requiretty注释掉。
sudo vi /etc/sudoers
#Default requiretty #注释掉 Default requiretty 一行

具体操作:

sudo sed -i 's/Defaults    requiretty/#Defaults    requiretty/g' /etc/sudoers
sudo cat /etc/sudoers | grep requiretty

u2

Related Posts

python cx-Oracle 驱动安装

安装oracle驱动 cx-Oracle驱动二进制版本下载地…

Read more

sqlalchemy.exc.TimeoutError: QueuePool limit of size 5 overflow 10 reached

Python3 + Flask + mysql5.7搭建的w…

Read more

You Missed

本地AI时代来临:Ollama + MemPalace工作流深度指南

  • u2
  • 4月 21, 2026
  • 96 views

Raycast深度解析:这个让Mac效率重装升级的东西,到底值不值?

  • u2
  • 4月 14, 2026
  • 78 views

GitHub 25K+星标!Onyx:开源可自托管的企业级AI聊天与RAG平台

  • u2
  • 4月 8, 2026
  • 188 views

InternVL-U 统一多模态模型

  • u2
  • 4月 3, 2026
  • 171 views
InternVL-U 统一多模态模型

Everything Claude Code:开源 Agent 性能优化框架

  • u2
  • 3月 31, 2026
  • 196 views

MiroFish:群体智能预测引擎,让未来在数字沙盘中预演

  • u2
  • 3月 29, 2026
  • 292 views