运行 TOP 命令时出现错误:
>top
'xterm': unknown terminal type.
> echo $TERM
xterm
> echo $DISPLAY
DYSPLAY: Undefined variable.
> cat /etc/redhat-release
Red Hat Enterprise Linux Server release 6.3 (Santiago)
> ls /usr/share/terminfo/
1 2 3 4 5 6 7 8 9 a A b c d e E f g h i j k l L m M n N o p P q Q r s t u v w x X z
> ls /usr/share/terminfo/x/xterm
/usr/share/terminfo/x/xterm
我的Root也有这个问题。
TOP 使用 xterm 吗?
我该怎么办?
尝试添加
export TERM=linux
在 .bashrc 文件的末尾(/home/myuser/.bashrc、/root/.bashrc)。问题是终端定义“xterm”未定义
这是导致
top
终端问题的另一个可能原因。
我也遇到了同样的问题(在一个特定的 SLES 11.3 盒子上) - 无论我将
TERM
设置为(默认为 xterm
),顶部都会显示“unknown terminal type
”。/usr/share/terminfo
文件都很好,/etc/termcap
和我的 ncurses 库也很好。
然后我注意到top作为另一个用户运行得很好,所以这一定是环境问题。 我追踪到
LD_LIBRARY_PATH
,它被设置为/opt/PostgreSQL/9.3/pgAdmin3/lib:/opt/PostgreSQL/9.3/lib:
问题在于 PostgreSQL 提供了自己的
libncurses.so.5
库(以及许多其他库),而 top
无法与它一起使用。
如果我取消设置
LD_LIBRARY_PATH
,或者将 PostgreSQL 的库设置为到 /usr/lib/libncurses.so
的软链接,那么 top
会再次正常工作。
您可以尝试使用以下参数来代替顶部吗
顶部-n 2 -b
它对我有用