ひさしぶりにDebianでiptablesをいじる機会があって、「/etc/init.d/iptables」があるものだと思っていたらなかったという話。
woodyまではあったそれがsargeからは「/usr/share/doc/iptables/examples/oldinitdscript.gz」として外されてて、lennyではそれすらもなくなってる、という経緯らしい。
理由は、「/etc/init.d」にあると順番によってはiptablesのルールが有効になる前に他のサービスが上がってしまって、一次的に無防備になるのを防ぐためだとか。(だったらその旨を書いてどこかに置いておいてくれたらいいのに・・・。)
で、どうするかというと、
- 「/etc/network/interfaces」で対象NICの「pre-up」と「post-down」にそれぞれルールの追加、削除を書く。
- 「/etc/network/if-pre-up.d」と「/etc/network/if-post-down.d」にそれぞれルールの追加、削除スクリプトを書いて置く。
のいずれかがいまのスタイルらしいです。短いときはNICのファイルに、長いときには単独のファイルで、と。
ただ、単独のファイルで置いた場合はNICの数ぶんだけスクリプトが走るので、ルールが重複して登録されることがあります。
対策は、
#!/bin/sh
if [ "$IFACE" = "eth0" ]; then
iptables -A INPUT -i eth0 なんとか
iptables -A INPUT -i eth0 かんとか
fi
ってな感じで$IFACEで判断してやればよし。
これ、Debian徹底入門のP603にしっかり書いてありました。
(本を持っていることをすっかり忘れててkomagataさんに相談し、本で見たっていう話を聞いて思い出したという経緯が・・・。本を持ってるだけじゃダメです、という典型的な例でございました。)
Debian — Debian 「lenny」 リリース情報
Debian GNU/Linux 5.0.0 は 2009 年 2 月 14 日 にリリースされました。このリリースは プレスリリース や リリースノート に挙げたような多くの 大規模な変更を含んでいます。
lennyがstableになったということで、coLinuxイメージを作ってみたのでメモを更新しました。
あまり、というかほとんど需要はない気がしますが・・・。
[ref.] メモ/coLinux用RootFSイメージをDebianのISOイメージから作成
シェルのリダイレクトを「こわいものなし」というくらい完全に理解しよう – 檜山正幸のキマイラ飼育記
パイプ記号「|」や逐次実行の記号「;」を含んだ長いコマンドラインも、1つのコマンドとその引数、それとリダイレクト指定からなる“成分”に分解できます。こういった成分をなんと呼ぶか僕は知らないので、仮に「コマンド実行単位」とでも呼びましょう。
いままではほぼ丸暗記状態で、ちょっと複雑になると分からなくなっていたのだけれど、この説明でバチッときた。
そうか、自分はバラし方を知らなかったんだ。
わかりやすい説明、ありがとうございましたっっ。
Ctrl-aだとなんか使いにくいscreenのメタキーをどうするか悩む。
とりあえずCtrl-zにしてみた。いいかんじ。
あと、screen -Rを.zprofileの最後に追加。必要なときになって起動してないことを思い出すもんで、ね。
いつの間にか休刊してたのか。
数年前これを頼りにLinuxをさわり始めたので、感慨深い。
[via] 一度 tty から起動したプロセス (csh/ksh 版)
subtech – Pink Blossom Diary StrikerS – 一度 tty から起動したプロセス
をバックグラウンドで動かしてシェルから抜けた後も動かし続けるにはどうしたらいいんだろ。時間がかかる処理を screen を起動させずフォアグラウンドで実行しちゃって ssh 切れてイヤン、ということが時々ある。
一度 C-z で suspend させてから切り離しさせることってできるのかしら。あと標準入出力の差し替えってできるのかしら。
追記
typoさん情報(thx!)に disown (bash/zsh 組み込み)でいけることを教えてもらった!あとは標準出力/エラー出力をどうにかできれば…。
disown知らなかった。いままでこういう状況になったときにはPC立ち上げっぱなしで帰ってました。
得てしてこれが必要になるときって終電に乗るかどうか気にしてる。
あと、
一度 tty から起動したプロセス (csh/ksh 版) – にぽたん研究所
元記事の人はbgした後シェルを抜ける状況をいっているんだとおもわれ。(t)csh なら bg で exit すればそのまま走りますけど、zsh だと
rock% perl -e ‘1 while 1′
^Z
zsh: suspended perl -e ‘1 while 1′
rock% bg
[1] + continued perl -e ‘1 while 1′
rock% exit
zsh: you have running jobs.
rock% exit
zsh: warning: 1 jobs SIGHUPed
で殺されちゃうので。
(t)cshならbgのプロセスは殺されないんだ。
こういうことって小さいようだけど、知ってると知らないの差は大きい。
etchがリリースされたってことで、
メモ/coLinux用RootFSイメージをDebianのISOイメージから作成
を更新しました。
Last-modified: 2006-03-25 (土) 00:44:38 (392d)
だったのでほぼ一年ぶり。すべて実際にやり直しながら更新したのでつまずくことはないはず。(はず。)
ちなみにすべてThinkPad X31 2672-PHJで作業してます。
インストール/アンインストールを繰り返して「ローカル エリア接続 n」のnが増えまくってしまった人へのヒント:
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Network\{foo}\{bar}\Connection
使うたびに忘れているのでメモ。
$ cmd > /dev/null 2>&1
いっつも>と&の順番がわからなくなっちゃうんだよなー。
滅多に使わない、そして使ったときにはこんな基本的なこと忘れないだろと思うんだけど、必要になるたびにアレ?てことになるのでメモ。
ps -ef | awk '/hoge/ && !/awk/ {print $2}'
なにがしたいかっていうと、こういうこと。
ps -ef | awk '/hoge/ && !/awk/ {print $2}' | xargs kill -9
乱暴だなぁ。
疑問が解決したようなしないような。
# apt-get --help | tail -1
この APT は Super Cow Powers 化されています。
# apt-get moo
(__)
(oo)
/------\/
/ | ||
* /\---/\
~~ ~~
...."Have you mooed today?"...
# aptitude --help | tail -1
aptitudeはスーパー牛さんパワーなど持っていません
# aptitude moo
このプログラムはイースターエッグはありません。
イースターエッグの有無を書いているだけ?なの?ん?
[ref.] aptitude –help – http://saikyoline.jp/weblog/2006/02/aptitude_help.html