トップ «前の日記(2012-10-18) 最新 次の日記(2012-10-20)» 編集

muneda's diary


2012-10-19 曇のち雨 [長年日記]

_1 emacs-nox

emacsをインストールしようとしたら依存関係で一緒にインストールされるパッケージが非常に多かったのでnoxにしてみた.どうせXの上で開かないし.

そしたらこれまで使ってきた.emacsファイルでエラーが出てあれこれ困る.

Symbol's function definition is void: mouse-wheel-mode
Symbol's function definition is void: iswitchb-default-keybindings
Symbol's function definition is void: tool-bar-mode
Symbol's function definition is void: scroll-bar-mode

とりあえずemacs-noxを消してemacsに変えたらエラーはほとんど消えたけどなんかス ゴい敗北感あり.これらの設定はXの上でウィンドウサイズを変更するところで明示的に消すようにしているからいらないのかもと思い直す.emacsを消して再度emacs-noxにしてこれらをコメントアウトすると起動するようになった.

ただ他の環境ではまだ古いバージョンを使っていたりするのでEmacs24以上の場合のみ使うという風にしておいた.

あと期せずしてEmacs24になったのだがこれまでマイナーモードを無効化しようと引数にnilを指定できたのだがこれは期待どおりに動かなくなったらしい.ちゃんと-1と書けと.nilと書いたらenableになると書かれてた.

知らなかったのだがFedora17 の時点でもうEmacs24になってるみたい.やっぱり開発するんならちゃんとバージョンアップに付いて行かないと.毎回少しずつならすぐに対応できそうだが,あれもこれもいっぺんにやらないととなると大変だしね.

Tags: Emacs

_2 chsh: setpwnam failed

デフォルトのシェルをzshに変更しようとしたら以下のエラーが発生してうまく行かず.

$ chsh -s /bin/zsh tmuneda
Changing shell for tmuneda.
Password:
chsh: setpwnam failed
Shell *NOT* changed.  Try again later.: Permission denied

ググったらすぐに原因が出てきた.

環境はKVMゲストなんだが,ホストはSELinuxを使えるようにと意図的に有効にしてあるのでゲストはなしでもいいかな.ということでさっくりとSELinux無効にして再チャレンジ.

$ chsh -s /bin/zsh tmuneda
Changing shell for tmuneda.
Password:
Shell changed.

さっくりと完了.

Tags: Linux

_3 CONFIG_NF_NAT_IPV4

なんかの拍子でKVMホストを再起動したらゲストが起動できなくなってしまった.

# virsh start guest-1
error: Failed to start domain guest-1
error: internal error Network 'default' is not active

どうもNetworkが有効になっていないらしいので確認する.

# virsh net-list --all
Name                 State      Autostart
-----------------------------------------
default              inactive   yes

あら本当.

# virsh net-info default
Name            default
UUID            166cd5e6-22e2-4e08-b6c5-7f255b9e3de8
Active:         no
Persistent:     yes
Autostart:      yes
Bridge:         virbr0

デバイスはvirbr0らしいのでこれに関するエラーメッセージが出てないか確認してみたところ

# dmesg|grep virbr0
device virbr0-nic entered promiscuous mode
device virbr0-nic left promiscuous mode
virbr0: port 1(virbr0-nic) entered disabled state

なんかこんなメッセージが.ググってみたが本メッセージに関する有効な内容は見つけられず.追加であれこれコマンドを叩いていると

# virsh net-start default
error: Failed to start network default
error: failed to add iptables rule to enable masquerading

新しいキーワード発見.libvirtのログを見ると

17:24:23.114: 18940: error : virCommandWait:2178 : internal error
Child process (/sbin/iptables --table nat --insert POSTROUTING
--source 192.168.122.0/24 ! --destination 192.168.122.0/24 --jump
MASQUERADE) status unexpected: exit status 3 (ここまで本当は一行)
17:24:23.114: 18940: error : networkAddMasqueradingIptablesRules:971 :
failed to add iptables rule to enable masquerading (ここまで本当は一行)

という文字列を発見.どうもNATがうまく動いてない?でしばらくあれこれしているうちにさっきとはカーネルバージョンが違っていたことを思い出す.さっきまではRHEL6のどれかだったけど,今動いているのは自分でビルドした3.6.0+(3.6と3.7-rc1の間).NATをキーに.configを見ていくと3.6.0+にCONFIG_NF_NAT_IPV4というのがあり有効になってないことが発覚.これか!

author	Patrick McHardy <kaber@trash.net>
Sun, 26 Aug 2012 17:14:06 +0000 (19:14 +0200)
committer	Pablo Neira Ayuso <pablo@netfilter.org>
Thu, 30 Aug 2012 01:00:14 +0000 (03:00 +0200)
commit	c7232c9979cba684c50b64c513c4a83c9aa70563

netfilter: add protocol independent NAT core

Convert the IPv4 NAT implementation to a protocol independent core and address family specific modules.

Signed-off-by: Patrick McHardy <kaber@trash.net>

これによりCONFIG_NF_NATはIPv4, IPv6共通のコア部品となり,IPv4 NATを使うには明にCONFIG_NF_NAT_IPV4が設定されなければなくなった.

基本的に現在のマシンで動くconfigファイルを一回作るとあとはそれを使いまわすから,今回みたいにCONFIGの意味が変わった時に意図せず機能が使えなくなってしまう.これまでは自分には必要のない機能だったが,必要でもうまいこと動いてたらしい.全部の変更を追うなんて現実的ではないのだが,実際みんなどうやってるんだろうか.個人的にはいつもgit pullしたあとの初回make時にはmake menuconfigして全て見ないことにしている.

Tags: Linux Kernel
本日のツッコミ(全2件) [ツッコミを入れる]
_ dice_K247 (2012-10-21 03:20)

emacs-noxでググってら、こんな所でドンピシャHIT!<br>実は密かに長年日記の長年読者だったりしますww

_ muneda (2012-10-21 04:18)

マジすかw


過去の日記
2002|05|06|07|08|09|10|11|12|
2003|01|02|03|04|05|06|07|08|09|10|11|12|
2004|01|02|03|04|05|06|07|08|09|10|11|12|
2005|01|02|03|04|05|06|07|08|09|10|11|12|
2006|01|02|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|06|07|08|09|10|11|12|
2013|01|02|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|05|06|
トップ «前の日記(2012-10-18) 最新 次の日記(2012-10-20)» 編集