最新消息:天气越来越冷,记得加一件厚衣裳

TERM environment variable not set

Docker w3sun 1237浏览 0评论

背景

基础架构已经在公司内部推广Flink作为新一代流式计算引擎 ,但由于历史原因和学习成本问题部分业务线尚未完成升级,部分业务不能仍然基于Mesos+Docker+Marathon+JStorm来构建实时计算应用。

[username@hostname ~]$ sudo docker ps
CONTAINER ID    		IMAGE                                     COMMAND            CREATED      STATUS      PORTS        NAMES
5dabb6db5e23    docker2.x.cn:port/jstorm/jstorm-supervisor:2.0.1  "/bin/sh -c 'sh -x /u"  4 months ago  Up 4 months           mesos-7a72fc35x
7081bf2f80f6    docker2.x.cn:port/jstorm/jstorm-supervisor:2.0.1  "/bin/sh -c 'sh -x /u"  4 months ago  Up 4 months           mesos-7a72fc35y
6d3a3ba3eec7    docker2.x.cn:port/jstorm/jstorm-supervisor:2.0.1  "/bin/sh -c 'sh -x /u"  4 months ago  Up 4 months           mesos-7a72fc35z

JStorm计算框架、数据、集群等任何一个环节出现问题诊断起来还是比较耗费时间的,尤其是在docker中进行异常分析。高峰期最会出现一个波峰,准备看看是不是业务代码引起来的,登入docker中执行top和clear发现都无法执行:

[username@hostname ~]$ sudo docker exec -it 5dabb6db5e23 /bin/bash
[root@hostname /]# top
TERM environment variable not set.
[root@hostname /]# clear
TERM environment variable not set.
[root@hostname /]# info
info: Terminal type `dumb' is not smart enough to run Info.

终端修复

可以看到系统提示当前终端是哑终端,什么是哑终端大概提一下。通常使用虚拟终端类型主要包括TELETYPE、DUMB、ANSI、VT52和VT100共5种终端类型,其中哑终端相对于其他比较“聪明”的计算机终端而言的是功能较为有限的计算机终端,不能执行诸如“删行”( clearing a line)、“清屏”(clearing ascreen)或“控制指针位置”(control  cursor  position)。

为了解决上述问题,将TERM设置成xterm即可:

[root@hostname /]# export TERM=xterm
[root@hostname /]# top

转载请注明:雪后西塘 » TERM environment variable not set

发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址