Hatena::ブログ(Diary)

いろんなメモ

2011-02-09

Google日本語入力をEmacsで使う

http://d.hatena.ne.jp/supermassiveblackhole/20100609/1276059762

ここを参考に進めたのですがちょっと詰まったりしたのでメモします

詰まったのはEmacsの設定の部分


;; ibus-mode

(require 'ibus)

;; Turn on ibus-mode automatically after loading .emacs

(add-hook 'after-init-hook 'ibus-mode-on)

;; Use C-SPC for Set Mark command

(ibus-define-common-key ?\C-\s nil)

;; Use C-/ for Undo command

(ibus-define-common-key ?\C-/ nil)

;; Change cursor color depending on IBus status

(setq ibus-cursor-color '("limegreen" "white" "blue"))

(global-set-key "\C-\\" 'ibus-toggle)


としたのですが、*Messageをみると

python-xlib library is required

というエラーが

sudo aptitude search python-xlib

で調べてみたら未インストールだったのでインストール

しかしまだ動かない

*Messageに

Couldn't receive data from agent.

というエラーが

http://semiblackharp.blogspot.com/2010/06/ibus-mozc.html

https://groups.google.com/group/vine-users-forum/browse_thread/thread/d9bbaf4ec0df0030?hl=ja

http://friendfeed.com/koko1000ban/56620d99/ibus-el-0-2-couldn-t-receive-data-from-agent

あたりに報告はあったけど解決策はなし。

ただ、2番目のURL

>自分の環境だと,C-\ キーでquailが起動してしまうようです

というのを踏まえて、起動のキーを

(global-set-key [M-henkan] 'ibus-toggle)

というふうに、Meta-変換に変えてみた

そしたらうまくいった!

多分quailと競合してよくわかんなくなってたんだろうと

あと最初に紹介したURLには触れられてないですが

ibus.el公式には

http://www11.atwiki.jp/s-irie/pages/21.html

>ibus-modeを有効にするには、XIMを無効化してキーイベントを横取りされないようにする必要があります。ターミナルから以下のようにEmacsを起動します。

>XMODIFIERS=@im=none emacs

>Emacs利用時に常にXIMを無効にしたい場合は、上記の方法よりもXリソースを設定する方がよいでしょう。ホームディレクトリの.Xresourcesファイルに

>Emacs*useXIM: false

>という行を追加し、ターミナルからコマンド

>xrdb ~/.Xresources

>を実行するか、一旦ログアウトしてXサーバ再起動した後、Emacsを起動します

という記述があった。これやらないと入力できないので注意!

以上でGoogle日本語入力Emacsで使えるようになりました!

2011-01-13

Net-Snmpv3とMRTG導入(作業メモ)

作業メモです。いつかまとめます。

SNMPv3を導入してみることにした。

v1、v2との違いは

・認証に暗号化がされている

っていうことみたい。

わりとパブリックな使い方を想定しているのでやっぱセキュリティにはこだわりたいたいなーということでv3を使いたい

でもWebを調べてみるけど、どれもv1,v2の物ばかり。

いろいろ試行錯誤しながら記録していきます。

インストールは一緒なので省略

なんか最新の5.6.1はmakeでエラーがでたので、5.5を導入した

cp EXAMPLE.conf /usr/local/share/snmp/snmpd.conf

で設定ファイルをコピー

設定で大きく違うのはユーザの設定のところらしい

http://www.itmedia.co.jp/enterprise/articles/0705/16/news011_3.html

ここに設定例があるんだけど、せっかくだしEXAMPLEを見ながら考えてみることにする

ユーザーの種類は

・rwuser

・rouser

の2種類がある。

rwuserは読み書き可能

rouserは読みのみ

EXAMPLE.confは

# Full read-only access for SNMPv3

rouser authOnlyUser

# Full write access for encrypted requests

# Remember to activate the 'createUser' lines above

#rwuser authPrivUser priv

# It's no longer typically necessary to use the full 'com2sec/group/access' configuration

# r[ou]user and r[ow]community, together with suitable views, should cover most requirements


こんな感じになってる

Remember to activate 'createUser' lines above

って書いてあるのでそこもみてみる

###############################################################################

#

# SNMPv3 AUTHENTICATION

#

# Note that these particular settings don't actually belong here.

# They should be copied to the file /var/net-snmp/snmpd.conf

# and the passwords changed, before being uncommented in that file *only*.

# Then restart the agent

# createUser authOnlyUser MD5 "remember to change this password"

# createUser authPrivUser SHA "remember to change this one too" DES

# createUser internalUser MD5 "this is only ever used internally, but still change the password"

# If you also change the usernames (which might be sensible),

# then remember to update the other occurances in this example config file to match.


調べてみるとrwuserやrouserを書いただけでは接続できなくて、このcreateUserってのを設定しないといけないぽい

まーパスワードとかを暗号化するんだから当然か。

ただいろんなところにみられるのは

createUserの記述は

「/var/net-snmp/snmpd.conf」に書けっていう話。

locateで調べてみたけどnet-snmpなんてフォルダは存在しない。

net-snmpが自動生成するファイルってことなんで、とりあえずv2でいいからsnmpを起動してみることに

confはとりあえず

sysLocation *

syscontact *@*

rwuser snmproot priv

rouser guest priv

として末尾に

# for v2,v1

# readable and writable from only local host

rwcommunity hogeprivate localhost

#read only user

rocommunity hogepublic

こんな感じで追記。

v1,v2についてはあとで消すつもりなので、制限は特に付けなかった



んで起動してみる

/usr/local/sbin/snmpd start

しかしps aux|grep snmpでみてみると起動していないっぽい

http://www.marronkun.net/linux/other/snmpmrtg_000042.html

にあった

/usr/local/sbin/snmpd -Lsd -Lf /dev/null -p /var/run/snmpd -a

で実行してみると起動できた

[*]$ snmpget -c hogeprivate -v 1 localhost .1.3.6.1.2.1.1.4.0

SNMPv2-MIB::sysContact.0 = STRING: *@*

と取れていることがわかる

起動スクリプト

http://www.marronkun.net/linux/other/snmpmrtg_000042.html

からコピペしてつくっておく

このときchmod 744を忘れない


起動してsnmpwalkとか試してしばらくしていると

[*]$ sudo updatedb

[*]$ sudo locate snmpd.conf

(略)

/var/net-snmp/snmpd.conf

できてた!のでこれを編集してv3のアカウントをつくることにする

まずはsnmpdをstopする

/var/net-snmp/snmpd.confの中身は

#

# net-snmp (or ucd-snmp) persistent data file.

#

############################################################################

# STOP STOP STOP STOP STOP STOP STOP STOP STOP

#

# **** DO NOT EDIT THIS FILE ****

#

# STOP STOP STOP STOP STOP STOP STOP STOP STOP

############################################################################

#

# DO NOT STORE CONFIGURATION ENTRIES HERE.

# Please save normal configuration tokens for snmpd in SNMPCONFPATH/snmpd.conf.

# Only "createUser" tokens should be placed here by snmpd administrators.

# (Did I mention: do not edit this file?)

#

まーつまり管理者のcreateUserだけここに書けよ?

他のユーザはコマンドで作れよってことみたい

そのあたりは

http://codezine.jp/article/detail/3028

に書いてありますね

/etc/net-snmp/snmpd.conf に

createUser snmproot MD5 h0geh0ge DES predicti0n |

を追記し

/usr/local/share/snmp/snmpd.confに

rwuser snmproot priv

を書く

(rouserはコメントアウトしました)

んでsnmpdをstart

/etc/net-snmp/snmpd.confのcreateUserが消えて

usmUser 1 3 0x80001f8880d25a525fceaa234d00000000 0x736e6d70726f6f7400 0x736e6d70726f6f7400 NULL .1.3.6.1.6.3.10.1.1.2 0x785f381af364dcef4e05a108ab37c756 .1.\

3.6.1.6.3.10.1.2.2 0x35f4e7f55eb7cdd43e664ab96839933c 0x

暗号化されている!

[seki@bosho4-ohma ~]$ snmpget -c hogeprivate -v 3 -l authPriv -u snmproot -a MD5 -A h0geh0ge -X predicti0n localhost .1.3.6.1.2.1.1.4.0

SNMPv2-MIB::sysContact.0 = STRING: ohma@ohma.ohma

暗号化されたユーザでsnmpgetができた!

ユーザ一覧をチェックしてみる

[seki@bosho4-ohma ~]$ snmpwalk -v 2c -c hogeprivate localhost SNMP-USER-BASED-SM-MIB::usmUserStatus

SNMP-USER-BASED-SM-MIB::usmUserStatus."......ZR_..#M...."."snmproot" = INTEGER: active(1)

SNMP-USER-BASED-SM-MIB::usmUserStatus."......ZR_..#M...."."internalUser" = INTEGER: active(1)

したのはなんだろう・・・?

とりあえずおいといてモニタリングの設定に入る

MRTGの導入

とりあえずインストール

wget http://oss.oetiker.ch/mrtg/pub/mrtg.tar.gz

GDがないということでインストール

wget http://www.libgd.org/releases/gd-2.0.35.tar.gz

tar xvfz gd-1.8.4.tar.gz

cd gd-2.0.35

インストールミスる

env CPPFLAGS="-I../zlib-1.2.3 -I../libpng-1.2.8" LDFLAGS="-L../zlib-1.2.3 -L../libpng-1.2.8" ./configure --disable-shared \

で環境を整えてやってやる必要があるみたい

参照:http://www.ksknet.net/cat13/zlib_libpng_gd.html

make

sudo make install

GDインストール完了

./configure --prefix==/usr/local/mrtg-2

make

sudo make install

インストール完了!



MRTGとv3の連携はできなかった><ので普通の設定をば

2010-10-30

Emacsの設定をやりなおしてみた

よくわかんないころにいろいろ突っ込んだおかげで、

今自分のEmacsで何ができて何ができないのか分からなくなってきたので再設定してみました。

.emacsを消すだけで設定がリセットされるっていうのがいいですよね

某窓だと設定ファイルなにか消すと依存がどうとかで起動しなくなるとかありますし。

ubulog: Emacsのとりあえず最低限の環境を整える

を参考にとりあえずやってみました。

ただ範囲選択の部分に関してはうごかず。

バッファ関係は前は上手く使えてなかったからそのあたり使えるようになりたいです。

あとはAnythingとかperl用の設定とかをとりあえずやろうかなと思ってます。

それと今回はチュートリアルもちゃんとしたいですね。

2010-10-26

テスト

作ってみた。

学習したこととかをアウトプットしていこうと思います。

mixiとかだとディープなことはなかなか書けないし、

こういうのは名刺がわりになるみたいな話もあるので。

飽きない程度の頻度でやっていきます。