多段SSHをする方法。
単純にSSHを多重化すると、エラーになる。
#ssh hostA "ssh hostB"
Pseudo-terminal will not be allocated because stdin is not a terminal.
hostAにログインした場合に仮想端末を割り当てられるので、その仮想端末からhostBにコマンド入力していて、hostBが仮想端末を割り当てられないってことかな。たぶん。
で、これを実現するのが、SSHの"-t"オプション
-t Force pseudo-tty allocation. This can be used to execute arbitrary screen-based programs on a remote machine, which can be very useful,
e.g. when implementing menu services. Multiple -t options force tty allocation, even if ssh has no local tty.
強制的に仮想端末を割り当てる。
これを指定するだけでおk。
2008年5月10日土曜日
snmptrapの設定について
LinuxでSNMPのtrapを受け取れるようにするには、snmptrapdをインストールすればよい。
※インストールについては、各ディストリビューションに依存するので割愛
とりあえず、動かせるようになったならば、/etc/snmp/snmptrapdを編集する
が、とりあえず、以下を記述すれば、メールは飛ぶようになる。
traphandle default /usr/bin/traptoemail -f <メールのfrom> -s <送付先メールアドレス>
※manページより
traphandle OID|default PROGRAM [ARGS ...]
traphandleはtrapを受けたら行う動作の指定
defaultだとtrapの種類によらず、PROGRAMを実行する。
OIDを指定すれば、そのOIDの種類によってPROGRAMの実行を分けることができる。
たとえば、上記のようにdefaultを記述しておけば、問答無用に/usr/bin/traptoemailを実行するわけ。
/usr/bin/traptoemailはsnmp-utilパッケージに付随する、標準出力をメールに整形して送付するプログラムというかPerlスクリプト。
とりあえずdefaultを設定すればおkだが、TRAPによってはメールを送付したくないとか、他の動作をさせたい場合、以下のようにOIDを個別に指定すればよい。
traphandle FOUNDRY-SN-TRAP-MIB::snTrapL4RealServerPortDown /root/bin/output_null.sh
これはOID=FOUNDRY-SN-TRAP-MIB::snTrapL4RealServerPortDownの場合、/root/bin/output_null.shを実行するというもの。
output_null.shは標準入力を/dev/nullに捨てるプログラム。
ちなみに、OIDはMIBを指定できるし、もしMIBファイルがない場合は数値でもおk(なはず)。。。
・snmptrapdの起動オプションについて
/etc/init.d/snmptrapdのデフォルトのオプションは以下のようになっていた。
-Lsd -p /var/run/snmptrapd.pid
-Lsdは
-L[efos]
Specify where logging output should be directed (standard error
or output, to a file or via syslog). See LOGGING OPTIONS in
snmpcmd(1) for details.
This option deprecates the -l -o -P and -s options.
つまり、ログ出力のオプション
ここではLsdと指定しているので、snmpcmdのmanによると、
-Ls FACILITY
Log messages via syslog, using the specified facility ('d' for
LOG_DAEMON, 'u' for LOG_USER, or '0'-'7' for LOG_LOCAL0 through
LOG_LOCAL7).
ということになり、LOG_DAEMONファシリィティで出力する。
-p /var/run/smtptrapd.pidはPIDファイルを作成する。
/etc/init.d/snmptrapdの中で、STOP時にPIDを参照するようになっているので、これは必修。
で、今回はOIDのFOUNDRY-SN-TRAP-MIB::snTrapL4RealServerPortDownで、後半部分だけほしかったので、-Osを追加
OPTIONS="-Lsd -Os -p /var/run/snmptrapd.pid"
→なぜなら、送付メールにそのまま出ると件名が長くてうざいから(;><)
てな感じで、とりあえず運用してみる。
時間があれば、ちょこちょこといじってみるつもり。
※インストールについては、各ディストリビューションに依存するので割愛
とりあえず、動かせるようになったならば、/etc/snmp/snmptrapdを編集する
が、とりあえず、以下を記述すれば、メールは飛ぶようになる。
traphandle default /usr/bin/traptoemail -f <メールのfrom> -s
※manページより
traphandle OID|default PROGRAM [ARGS ...]
traphandleはtrapを受けたら行う動作の指定
defaultだとtrapの種類によらず、PROGRAMを実行する。
OIDを指定すれば、そのOIDの種類によってPROGRAMの実行を分けることができる。
たとえば、上記のようにdefaultを記述しておけば、問答無用に/usr/bin/traptoemailを実行するわけ。
/usr/bin/traptoemailはsnmp-utilパッケージに付随する、標準出力をメールに整形して送付するプログラムというかPerlスクリプト。
とりあえずdefaultを設定すればおkだが、TRAPによってはメールを送付したくないとか、他の動作をさせたい場合、以下のようにOIDを個別に指定すればよい。
traphandle FOUNDRY-SN-TRAP-MIB::snTrapL4RealServerPortDown /root/bin/output_null.sh
これはOID=FOUNDRY-SN-TRAP-MIB::snTrapL4RealServerPortDownの場合、/root/bin/output_null.shを実行するというもの。
output_null.shは標準入力を/dev/nullに捨てるプログラム。
ちなみに、OIDはMIBを指定できるし、もしMIBファイルがない場合は数値でもおk(なはず)。。。
・snmptrapdの起動オプションについて
/etc/init.d/snmptrapdのデフォルトのオプションは以下のようになっていた。
-Lsd -p /var/run/snmptrapd.pid
-Lsdは
-L[efos]
Specify where logging output should be directed (standard error
or output, to a file or via syslog). See LOGGING OPTIONS in
snmpcmd(1) for details.
This option deprecates the -l -o -P and -s options.
つまり、ログ出力のオプション
ここではLsdと指定しているので、snmpcmdのmanによると、
-Ls FACILITY
Log messages via syslog, using the specified facility ('d' for
LOG_DAEMON, 'u' for LOG_USER, or '0'-'7' for LOG_LOCAL0 through
LOG_LOCAL7).
ということになり、LOG_DAEMONファシリィティで出力する。
-p /var/run/smtptrapd.pidはPIDファイルを作成する。
/etc/init.d/snmptrapdの中で、STOP時にPIDを参照するようになっているので、これは必修。
で、今回はOIDのFOUNDRY-SN-TRAP-MIB::snTrapL4RealServerPortDownで、後半部分だけほしかったので、-Osを追加
OPTIONS="-Lsd -Os -p /var/run/snmptrapd.pid"
→なぜなら、送付メールにそのまま出ると件名が長くてうざいから(;><)
てな感じで、とりあえず運用してみる。
時間があれば、ちょこちょこといじってみるつもり。
2008年5月6日火曜日
ubuntu8.04でのfirestarter
とりあえず、8.04にしてみました。
firestarterを自動起動にしようとおもったのですが、sudoではなくgksuで起動するそうです。
gksuとは、GTKのsudoコマンドで、suかsudoか自分で判断してくれるそうな。
以下、ハマったところ
・gksuの引数は1つのみで、実行したいコマンドの引数を入れるとエラーになるみたい。なので、 ""でくくる必要がある
・フルパスじゃないとダメ
以上をもって、以下のように自動起動を登録したらうまくいった。
gksu "/usr/sbin/firestarter --start-hidden"
※管理者権限で自動実行させようとおもったのだが、7.10の時と/etc/sudoersの記述が若干異なっているので、もうちょっと調べてからにしようと思う。
firestarterを自動起動にしようとおもったのですが、sudoではなくgksuで起動するそうです。
gksuとは、GTKのsudoコマンドで、suかsudoか自分で判断してくれるそうな。
以下、ハマったところ
・gksuの引数は1つのみで、実行したいコマンドの引数を入れるとエラーになるみたい。なので、 ""でくくる必要がある
・フルパスじゃないとダメ
以上をもって、以下のように自動起動を登録したらうまくいった。
gksu "/usr/sbin/firestarter --start-hidden"
※管理者権限で自動実行させようとおもったのだが、7.10の時と/etc/sudoersの記述が若干異なっているので、もうちょっと調べてからにしようと思う。
2008年3月30日日曜日
顔文字辞書をつかいたい( ゚д゚)
まずは、かなりはまった。。。orz
どこにはまったか。
1.IME用辞書をutf-8に変換する
→これはiconvを使えば余裕
$iconv -f MS932 -t UTF-8 ime_std.txt ime_std_utf8.txt
2.変換した辞書を、anthyの辞書形式にする
を
みたいにするわけです。
ちなみに、#T35が品詞(名詞)、500が頻度を表しているっぽい
→この頻度が抜けててうまくいかなかったのだろう。
ちなみに、変換に使用したスクリプトは以下
これを kao.rb のような名前で保存して、先ほどのutf-8の辞書を変換する
$ruby kao.rb < ime_std_utf8.txt > kao.txt
3.~/.anthyに"private_words_default"としてコピー
$cp kao.txt ~/.anthy/private_words_default
#すでに個人辞書を登録してある場合は、以下でもいいんでない?
$cat kao.txt >> ~/.anthy/private_word_default
これで、scimを再起動するだけで反映される
゚・*:.。..。.:*・゜ヽ( ´∀`)人(´∀` )ノ・゜゚・*:.。..。.:*
てな感じで、Ubuntuでも顔文字使えるようになってうれしいです。
以下反省
最初からそうしておけばよかったのに。。。orz
どこにはまったか。
- UTF-8は使えないとのこと
- anthyの辞書の形式
- 2.に伴う、変換スクリプトの仕様
1.IME用辞書をutf-8に変換する
→これはiconvを使えば余裕
$iconv -f MS932 -t UTF-8 ime_std.txt ime_std_utf8.txt
2.変換した辞書を、anthyの辞書形式にする
ぁぃ (゚Д゚)ノ ァィ 顔文字
を
ぁぃ #T35*500 (゚Д゚)ノ ァィ
みたいにするわけです。
ちなみに、#T35が品詞(名詞)、500が頻度を表しているっぽい
→この頻度が抜けててうまくいかなかったのだろう。
ちなみに、変換に使用したスクリプトは以下
#usr/lib/ruby -Ke
while line = gets
str = line.split(/\t/)
next unless str[2]
next unless str[2].chop == "顔文字"
print str[0]
print " #T35*500 "
print str[1]
print "\n"
end
これを kao.rb のような名前で保存して、先ほどのutf-8の辞書を変換する
$ruby kao.rb < ime_std_utf8.txt > kao.txt
3.~/.anthyに"private_words_default"としてコピー
$cp kao.txt ~/.anthy/private_words_default
#すでに個人辞書を登録してある場合は、以下でもいいんでない?
$cat kao.txt >> ~/.anthy/private_word_default
これで、scimを再起動するだけで反映される
゚・*:.。..。.:*・゜ヽ( ´∀`)人(´∀` )ノ・゜゚・*:.。..。.:*
てな感じで、Ubuntuでも顔文字使えるようになってうれしいです。
以下反省
- UTF-8も使えるようになったことに気づけなかった
- 辞書の形式が変わってたことに気づけなかった
最初からそうしておけばよかったのに。。。orz
2008年3月27日木曜日
firestarterを自動起動したい
まぁ、以下のURLに詳しく書いてありました。
http://ubuntuguide.org/wiki/Ubuntu:Feisty_ja/AddOnApplications
まずはvisudoで設定
$export EDITOR=vi
$sudo visudo
なんだけど、どうも環境変数がrootで反映されてないみたいなので、rootになってから設定
$su
#export EDITOR=vi
#visudo
Defaults !lecture,tty_tickets,!fqdn
を、変更
Defaults !lecture,tty_tickets,!fqdn,env_reset,env_keep+="DISPLAY HOME XAUTHORIZATION"
そして、以下を追記
user ALL= NOPASSWD: /usr/sbin/firestarter
で、保存する。
あとは、GNOMEのシステム→設定→セッションを開き、「自動起動するプログラム」タブで追加を選び、以下画面のように設定する

これで、リブートしてみて自動起動すればおk
http://ubuntuguide.org/wiki/Ubuntu:Feisty_ja/AddOnApplications
まずはvisudoで設定
$export EDITOR=vi
$sudo visudo
なんだけど、どうも環境変数がrootで反映されてないみたいなので、rootになってから設定
$su
#export EDITOR=vi
#visudo
Defaults !lecture,tty_tickets,!fqdn
を、変更
Defaults !lecture,tty_tickets,!fqdn,env_reset,env_keep+="DISPLAY HOME XAUTHORIZATION"
そして、以下を追記
user ALL= NOPASSWD: /usr/sbin/firestarter
で、保存する。
あとは、GNOMEのシステム→設定→セッションを開き、「自動起動するプログラム」タブで追加を選び、以下画面のように設定する

これで、リブートしてみて自動起動すればおk
2chの辞書が使いたい
Ubuntu標準装備のAnthyに、2ch辞書が入ってるがデフォで有効になってないらしいので、有効にしてみる。
#sudo dpkg-reconfigure anthy
で、設定画面で2ch.tを選択すればおk
以下のように出力がでて、更新されたみたい。
Updating anthy.dic...file name prefix=[./] you can change this by -p option.
copying .///mkworddic/anthy.wdic (word_dic)
copying .///depgraph/anthy.dep (dep_dic)
copying .///calctrans/anthy.trans_info (trans_info)
copying .///calctrans/anthy.cand_info (cand_info)
copying .///calctrans/anthy.weak_words (weak_words)
copying .///calctrans/anthy.corpus_bucket (corpus_bucket)
copying .///calctrans/anthy.corpus_array (corpus_array)
/usr/bin/mkfiledic done.
done.
ちなみに、このあと確認しようとして、またdpkg-reconfigureを実行したのですが、取消ができず無限ループ状態になった。。。orz
#sudo dpkg-reconfigure anthy
で、設定画面で2ch.tを選択すればおk
以下のように出力がでて、更新されたみたい。
Updating anthy.dic...file name prefix=[./] you can change this by -p option.
copying .///mkworddic/anthy.wdic (word_dic)
copying .///depgraph/anthy.dep (dep_dic)
copying .///calctrans/anthy.trans_info (trans_info)
copying .///calctrans/anthy.cand_info (cand_info)
copying .///calctrans/anthy.weak_words (weak_words)
copying .///calctrans/anthy.corpus_bucket (corpus_bucket)
copying .///calctrans/anthy.corpus_array (corpus_array)
/usr/bin/mkfiledic done.
done.
ちなみに、このあと確認しようとして、またdpkg-reconfigureを実行したのですが、取消ができず無限ループ状態になった。。。orz
2008年3月20日木曜日
vaio typeTにUbuntuをインストールする
ノートPCにUbuntu7.10をインストールしてみた。
【PCスペック】
機種:vaio type T
型番:VGN-T91PS
【設定】
[キーボード]
|や\が入力できない
インストール時にUSを選択すると駄目
とりあえず、USでインストールを行う。
→のちにXの設定にて、キーボードを指定しなおしたら
入力できるようになった。
[Wireless]
標準ツールで問題なく接続
[Graphic]
インストール時に自動認識でうまくいかなかったので、VGAでインストールした後、
設定ツールで再設定を行う。
$ sudo dpkg-reconfigure xserver-xorg
・ビデオカードドライバの設定
→選択してあった”Intel”で設定
・識別子
→そのままエンター
・ビデオカードバス
→そのままエンター
・メモリ量
→空欄のまま
・カーネルフレームバッファ
→はい
・キーボードレイアウト
→自動認識
・レイアウトの設定
→”us”を選択
・キーボードルールセット
→xorg(デフォルト)
・キーボードモデルの設定
→pc101
・キーボードバリアントの設定
→空白
・キーボードオプション
→空白
・マウスポート
→/dev/input/mice
・マウスプロトコル
→"ImPS/2"を選択
・3ボタンマウスのエミュレータ
→はい
・モニタの自動認識
→はい
・モニタの識別子
→そのままエンター
・解像度の設定
→1280x800を指定
・モニタ特性
→Advancedを選択
・水平同期
→そのまま
・垂直リフレッシュ
→そのまま
・モニタ動機範囲
→はい
・色深度の設定
→24
[Sound]
スピーカーから鳴らず
イヤホンをつけると聞こえる
[ソフトウェア・ソース]
デフォルトではなにもしない状態だったので、設定
Ubuntuのソフトフェア
Canonicalによってサポートされるオープンソフトウェア(main)
コミュニティによるメンテナンスされるオープンソフトウェア(universe)
デバイス用のプロプライエタリなドライバ(restricted)
著作権もしくは法的な問題によって制限されたソフトウェア(multiverse)
ダウンロード先
日本のサーバーに変更
サードパーティのソフトウェア
全部にチェック
アップデート
重要なセキュリティアップデート
推奨アップデート
【PCスペック】
機種:vaio type T
型番:VGN-T91PS
【設定】
[キーボード]
|や\が入力できない
インストール時にUSを選択すると駄目
とりあえず、USでインストールを行う。
→のちにXの設定にて、キーボードを指定しなおしたら
入力できるようになった。
[Wireless]
標準ツールで問題なく接続
[Graphic]
インストール時に自動認識でうまくいかなかったので、VGAでインストールした後、
設定ツールで再設定を行う。
$ sudo dpkg-reconfigure xserver-xorg
・ビデオカードドライバの設定
→選択してあった”Intel”で設定
・識別子
→そのままエンター
・ビデオカードバス
→そのままエンター
・メモリ量
→空欄のまま
・カーネルフレームバッファ
→はい
・キーボードレイアウト
→自動認識
・レイアウトの設定
→”us”を選択
・キーボードルールセット
→xorg(デフォルト)
・キーボードモデルの設定
→pc101
・キーボードバリアントの設定
→空白
・キーボードオプション
→空白
・マウスポート
→/dev/input/mice
・マウスプロトコル
→"ImPS/2"を選択
・3ボタンマウスのエミュレータ
→はい
・モニタの自動認識
→はい
・モニタの識別子
→そのままエンター
・解像度の設定
→1280x800を指定
・モニタ特性
→Advancedを選択
・水平同期
→そのまま
・垂直リフレッシュ
→そのまま
・モニタ動機範囲
→はい
・色深度の設定
→24
[Sound]
スピーカーから鳴らず
イヤホンをつけると聞こえる
[ソフトウェア・ソース]
デフォルトではなにもしない状態だったので、設定
Ubuntuのソフトフェア
Canonicalによってサポートされるオープンソフトウェア(main)
コミュニティによるメンテナンスされるオープンソフトウェア(universe)
デバイス用のプロプライエタリなドライバ(restricted)
著作権もしくは法的な問題によって制限されたソフトウェア(multiverse)
ダウンロード先
日本のサーバーに変更
サードパーティのソフトウェア
全部にチェック
アップデート
重要なセキュリティアップデート
推奨アップデート
登録:
投稿 (Atom)