web-dev-qa-db-ja.com

「ダム」に設定された$ TERMは、サスペンドの問題を引き起こします

11.04から11.10にアップグレードしました。これまでのところ、私はそれが大好きで、すべてがとてもきびきびしているようです。

今、私は1つの小さな問題を抱えています。ラップトップをサスペンドしようとすると、機能しません。代わりに、画面をフェードアウトし、ブロックして、すぐに復帰します。

/var/log/pm-suspend.logのログを確認しましたが、このフラグメントは関連しているようです:

/usr/lib/pm-utils/sleep.d/000kernel-change suspend suspend: success.
Running hook /usr/lib/pm-utils/sleep.d/00clear suspend suspend:
TERM environment variable not set.

/usr/lib/pm-utils/sleep.d/00clear suspend suspend: Returned exit code 1.
Sat Nov 19 12:23:20 CET 2011: Inhibit found, will not perform suspend
Sat Nov 19 12:23:20 CET 2011: Running hooks for resume

/usr/lib/pm-utils/sleep.d/00clearにある前述のスクリプトは次のとおりです。

#!/bin/bash
clear

手動で端末を開くと、$ TERMは "linux"または "xterm"に設定されます。ただし、00clearコマンドが実行されると、何らかの理由で$ TERMが「ダム」に設定されます。

2つの質問:

  • 00clearスクリプトを実行するときの$ TERMの正しい値は何ですか?
  • どこで設定できますか?

Webで解決策を探しましたが、通常の端末で$ TERMを構成する方法に関する情報しか見つかりませんでした(そして、これは適切に設定されています)。

4
julkiewicz

TERM設定を/etc/profile.d/setTERMの小さなスクリプトフラグメントに入れることができます。

# Set TERM to something reasonable  
TERM=<whatever>  
export TERM  

<whatever>の場合、man clearを読むとman terminfoに導かれ、端末タイプを選択する方法がわかります。

TERM/usr/share/terminfo/*/*のファイル名の1つに設定すると、clearは「画面をクリア」するために出力する文字のシーケンスを検索できます。

/usr/share/terminfoが空の場合は心配です。

私のシステムは示しています:

walt@wombat:~(0)$ dpkg -S /usr/share/terminfo  
ncurses-term, ncurses-bin: /usr/share/terminfo  
walt@wombat:~(0)$ apt-cache search ncurses-term\|ncurses-bin  
ncurses-bin - terminal-related programs and man pages  
ncurses-term - additional terminal type definitions  

clearを満足させるには、これらのパッケージの一方または両方が必要だと思います。

2
waltinator