解决Msys2终端报"Unable to use a TTY"错误

环境

  • OS:Windows 10
  • MSYS2 20230718

问题描述

使用kubectl来操作Kubernetes集群一切,唯一的错误就是进入到某个容器里面报"Unable to use a TTY":

$ kubectl -n <ns> exec -it POD -- sh
Unable to use a TTY - input is not a terminal or the right kind of file

解决

下载winpty

wget https://github.com/rprichard/winpty/releases/download/0.4.3/winpty-0.4.3-msys2-2.7.0-x64.tar.gz

另种解决方案

 pacman -S winpty

将二进制exe解压至/usr/bin目录,使用一个别名

alias k='winpty kubectl'

再执行k exec -it xx,一片祥和。

2024/08/24更新备忘

已知该问题在 20240727 版本中解决。