<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ja">
		<id>http://hagio.org/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=192.168.1.10</id>
		<title>Wikinote - 利用者の投稿記録 [ja]</title>
		<link rel="self" type="application/atom+xml" href="http://hagio.org/wiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=192.168.1.10"/>
		<link rel="alternate" type="text/html" href="http://hagio.org/wiki/index.php?title=%E7%89%B9%E5%88%A5:%E6%8A%95%E7%A8%BF%E8%A8%98%E9%8C%B2/192.168.1.10"/>
		<updated>2026-04-28T07:03:39Z</updated>
		<subtitle>利用者の投稿記録</subtitle>
		<generator>MediaWiki 1.24.1</generator>

	<entry>
		<id>http://hagio.org/wiki/index.php?title=%E3%81%9D%E3%81%AE%E4%BB%96&amp;diff=21</id>
		<title>その他</title>
		<link rel="alternate" type="text/html" href="http://hagio.org/wiki/index.php?title=%E3%81%9D%E3%81%AE%E4%BB%96&amp;diff=21"/>
				<updated>2009-01-24T03:04:05Z</updated>
		
		<summary type="html">&lt;p&gt;192.168.1.10: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;居候していた部屋の荷物を自宅に持ち込みました。&lt;br /&gt;
&lt;br /&gt;
: ''やるべきことは、遠くにぼんやり見えるものを見ることではなく、''&lt;br /&gt;
:: ''手近にはっきり見えるものを行うことである。-- トーマス・カーライル''&lt;br /&gt;
&lt;br /&gt;
== Apache ==&lt;br /&gt;
* /etc/httpd/conf/httpd.conf&lt;br /&gt;
とりあえず編集したとこ&lt;br /&gt;
 ServerName hagio.org:80&lt;br /&gt;
 DocumentRoot &amp;quot;/home/hagio/public_html&amp;quot;&lt;br /&gt;
 &amp;lt;Directory &amp;quot;/home/hagio/public_html&amp;quot;&amp;gt;&lt;br /&gt;
 ...&lt;br /&gt;
 DirectoryIndex intex.html index.html.var index.php&lt;br /&gt;
&lt;br /&gt;
 $ chmod 711 /home/hagio&lt;br /&gt;
 $ chmod 755 /home/hagio/public_html&lt;br /&gt;
&lt;br /&gt;
* 方針&lt;br /&gt;
** エンコーディング：UTF-8&lt;br /&gt;
&lt;br /&gt;
== awk ==&lt;br /&gt;
* 参考 URL&lt;br /&gt;
** [http://www.kt.rim.or.jp/~kbk/gawk/gawk_toc.html The GAWK Manual] (2.15.6)&lt;br /&gt;
** [http://www.kt.rim.or.jp/~kbk/gawk-30/index.html AWK Language Programming] (3.0.4)&lt;br /&gt;
* 基本構文&lt;br /&gt;
 awk [-F sep] 'command' [file ...]&lt;br /&gt;
* 組み込み変数&lt;br /&gt;
** FS - フィールドセパレータ&lt;br /&gt;
** NR - 現レコード数&lt;br /&gt;
** NF - フィールド数&lt;br /&gt;
** OFS - 出力フィールドセパレータ (print のカンマ区切りのセパレータ)&lt;br /&gt;
** ORS - 出力レコードセパレータ&lt;br /&gt;
* 演算子&lt;br /&gt;
** ~ - マッチしたら真 ($0 ~ /re/)&lt;br /&gt;
** 他はほぼ C と同じ&lt;br /&gt;
* 制御構文&lt;br /&gt;
** &amp;lt;code&amp;gt;break&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;continue&amp;lt;/code&amp;gt; - for や while の中で使う&lt;br /&gt;
** &amp;lt;code&amp;gt;next&amp;lt;/code&amp;gt; - 次のレコードへ処理を移す&lt;br /&gt;
** &amp;lt;code&amp;gt;exit&amp;lt;/code&amp;gt; - 残りのレコードは見ないで処理を中断&lt;br /&gt;
* 配列&lt;br /&gt;
** &amp;lt;code&amp;gt;array[i]&amp;lt;/code&amp;gt; - 一次元配列&lt;br /&gt;
** &amp;lt;code&amp;gt;array[i,j,k]&amp;lt;/code&amp;gt; - 三次元配列&lt;br /&gt;
** &amp;lt;code&amp;gt;array[str]&amp;lt;/code&amp;gt; - 連想配列&lt;br /&gt;
*** &amp;lt;code&amp;gt;for (x in array) ...&amp;lt;/code&amp;gt; ですべてのキーを取り出し可能&lt;br /&gt;
*** &amp;lt;code&amp;gt;if (str in array) ...&amp;lt;/code&amp;gt; でキー str があるかどうか&lt;br /&gt;
*** &amp;lt;code&amp;gt;array[str] = array[str] &amp;quot;hoge&amp;quot;&amp;lt;/code&amp;gt; で連結可能&lt;br /&gt;
* その他&lt;br /&gt;
** 変数の初期化は不要&lt;br /&gt;
** print $1 $2 で連結出力、カンマ区切りでスペース&lt;br /&gt;
** &amp;lt;code&amp;gt;{ print $0; } = { print; } = &amp;lt;/code&amp;gt;&lt;br /&gt;
** 配列は参照渡し&lt;br /&gt;
** -f program で自作ライブラリを複数取り込める&lt;br /&gt;
** $n (n &amp;gt; 0) を書き換えると、$0 も書き換わる&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== sed ==&lt;br /&gt;
* 基本構文&lt;br /&gt;
 sed [-n] [-e command] [-f command_file] [file ...]&lt;br /&gt;
; -n&lt;br /&gt;
: マッチしなかったら表示しない&lt;br /&gt;
&lt;br /&gt;
* アドレス&lt;br /&gt;
** &amp;lt;code&amp;gt;n&amp;lt;/code&amp;gt; - n 行目のみ (最終行 : $)&lt;br /&gt;
** &amp;lt;code&amp;gt;m,n&amp;lt;/code&amp;gt; - m 行目から n 行目まで&lt;br /&gt;
** &amp;lt;code&amp;gt;n,/str/&amp;lt;/code&amp;gt; - n 行目から str がマッチする行まで&lt;br /&gt;
*: ※ アドレスの後に &amp;lt;code&amp;gt;!&amp;lt;/code&amp;gt; を付けると否定&lt;br /&gt;
* コマンド&lt;br /&gt;
** p - 出力&lt;br /&gt;
** d - 削除&lt;br /&gt;
** y - 一文字置換 (tr コマンドと一緒)&lt;br /&gt;
** s - 置換&lt;br /&gt;
** q - 終了&lt;br /&gt;
* フラグ&lt;br /&gt;
** g - 同一行中のマッチをすべて置換&lt;br /&gt;
&lt;br /&gt;
== make ==&lt;br /&gt;
* http://www.unixuser.org/~euske/doc/makefile/&lt;br /&gt;
* コマンドの前に '-' をつけると、エラーが発生しても make を続ける&lt;br /&gt;
* コマンドの前に '@' をつけると、コマンドを標準出力に表示しない&lt;br /&gt;
&lt;br /&gt;
== grep ==&lt;br /&gt;
* or をとりたい場合：-e オプションで羅列&lt;br /&gt;
例）&lt;br /&gt;
 $ ifconfig | grep -e &amp;quot;^\w&amp;quot; -e inet&lt;br /&gt;
* 検索文字列をハイライト表示&lt;br /&gt;
.bashrc に以下を追加しておく。&lt;br /&gt;
 export GREP_COLOR='1;37;41'&lt;br /&gt;
 alias grep='grep --color=auto'&lt;br /&gt;
&lt;br /&gt;
== ネットワーク ==&lt;br /&gt;
ソースより厳密な説明書はない。&lt;br /&gt;
=== ネットワーク起動の流れ ===&lt;br /&gt;
&lt;br /&gt;
==== &amp;lt;code&amp;gt;/etc/init.d/network&amp;lt;/code&amp;gt; スクリプト ====&lt;br /&gt;
# &amp;lt;code&amp;gt;/etc/init.d/functions&amp;lt;/code&amp;gt; を実行 (主に関数定義)&lt;br /&gt;
#* 内容はそのうち読む。&lt;br /&gt;
# &amp;lt;code&amp;gt;/etc/sysconfig/network&amp;lt;/code&amp;gt; を読む (設定ファイル)&lt;br /&gt;
# &amp;lt;code&amp;gt;NETWORKING=no&amp;lt;/code&amp;gt;でなければ、以下に進む&lt;br /&gt;
# カレントディレクトリを &amp;lt;code&amp;gt;/etc/sysconfig/network-scripts/&amp;lt;/code&amp;gt; に変更&lt;br /&gt;
# &amp;lt;code&amp;gt;./network-functions&amp;lt;/code&amp;gt; を実行 (関数定義)&lt;br /&gt;
#* ネットワーク関係の関数定義。これもそのうち読む。&lt;br /&gt;
# 処理すべきインターフェースを取得&lt;br /&gt;
#* [[雑記#/etc/sysconfig/network-scripts/ifcfg-&amp;lt;if&amp;gt;|こちら]]で少し詳しく解説。&lt;br /&gt;
# &amp;lt;code&amp;gt;NETWORKING_IPV6=yes&amp;lt;/code&amp;gt; ならば、&amp;lt;code&amp;gt;/etc/sysconfig/network-scripts/init.ipv6-global start pre&amp;lt;/code&amp;gt; を実行&lt;br /&gt;
#* &amp;lt;code&amp;gt;/etc/sysconfig/network&amp;lt;/code&amp;gt; に &amp;lt;code&amp;gt;NETWORKING_IPV6=no # '''this option has no effect.'''&amp;lt;/code&amp;gt; とあるが、これはどういう意味だろうか？&lt;br /&gt;
# &amp;lt;code&amp;gt;sysctl -e -p /etc/sysctl.conf&amp;lt;/code&amp;gt; を実行&lt;br /&gt;
#* &amp;lt;code&amp;gt;-e&amp;lt;/code&amp;gt; オプションは、未知のキーによるエラーを無視する。&lt;br /&gt;
#* &amp;lt;code&amp;gt;-p&amp;lt;/code&amp;gt; オプションは、読み込むファイルを指定する。&lt;br /&gt;
# &amp;lt;code&amp;gt;./ifup ifcfg-lo&amp;lt;/code&amp;gt; を実行。&lt;br /&gt;
#* いつものログ (&amp;quot;Bringing up loopback interface&amp;quot;) は、&amp;lt;code&amp;gt;action&amp;lt;/code&amp;gt; というコマンドで出力していると思われる。(&amp;lt;code&amp;gt;/etc/init.d/functions&amp;lt;/code&amp;gt; で定義されている。)&lt;br /&gt;
# 以下は、各 (リアル) インターフェース毎に実行される&lt;br /&gt;
## &amp;lt;code&amp;gt;DEVICE, TYPE, SLAVE&amp;lt;/code&amp;gt; 値をセット&lt;br /&gt;
## &amp;lt;code&amp;gt;DEVICE&amp;lt;/code&amp;gt; がなければ、ifcfg-* の * の部分を DEVICE に設定&lt;br /&gt;
## &amp;lt;code&amp;gt;SLAVE=yes&amp;lt;/code&amp;gt; なら、次のインターフェースへ&lt;br /&gt;
## &amp;lt;code&amp;gt;ONBOOT=no&amp;lt;/code&amp;gt; がなければ、&amp;lt;code&amp;gt;is_available ''IF''&amp;lt;/code&amp;gt; を実行&lt;br /&gt;
##* この関数の中身を調査すること。&lt;br /&gt;
## &amp;quot;Bringing up interface ''IF'':&amp;quot; を表示し、&amp;lt;code&amp;gt;./ifup ''IF'' boot&amp;lt;/code&amp;gt; を実行&lt;br /&gt;
# スタティックルーティングの設定&lt;br /&gt;
#* &amp;lt;code&amp;gt;/etc/sysconfig/static-routes&amp;lt;/code&amp;gt; を 1 行ずつ &amp;lt;code&amp;gt;/sbin/route add&amp;lt;/code&amp;gt; しているようだが、渡し方にテクが見られるので、後で調べること。&lt;br /&gt;
# &amp;lt;code&amp;gt;NETWORKING_IPV6=yes&amp;lt;/code&amp;gt; ならば、&amp;lt;code&amp;gt;/etc/sysconfig/network-scripts/init.ipv6-global start post&amp;lt;/code&amp;gt; を実行&lt;br /&gt;
# 再度 &amp;lt;code&amp;gt;sysctl -e -p /etc/sysctl.conf&amp;lt;/code&amp;gt; を実行&lt;br /&gt;
# &amp;lt;code&amp;gt;touch /var/lock/subsys/network&amp;lt;/code&amp;gt; を実行&lt;br /&gt;
&lt;br /&gt;
==== /etc/sysconfig/network-scripts/ifup スクリプト ====&lt;br /&gt;
# &amp;lt;code&amp;gt;/etc/init.d/functions&amp;lt;/code&amp;gt; を実行&lt;br /&gt;
# カレントディレクトリを &amp;lt;code&amp;gt;/etc/sysconfig/network-scripts/&amp;lt;/code&amp;gt; に変更&lt;br /&gt;
# &amp;lt;code&amp;gt;./network-functions&amp;lt;/code&amp;gt; を実行&lt;br /&gt;
# &amp;lt;code&amp;gt;/etc/sysconfig/network&amp;lt;/code&amp;gt; を読む&lt;br /&gt;
# &amp;lt;code&amp;gt;need_config コンフィグファイル&amp;lt;/code&amp;gt; を実行&lt;br /&gt;
# ルート以外 (&amp;lt;code&amp;gt;$UID != 0&amp;lt;/code&amp;gt;) ならば、以下を実行&lt;br /&gt;
## &amp;lt;code&amp;gt;source_config&amp;lt;/code&amp;gt;&lt;br /&gt;
## ルート以外のユーザが up 可能なら、&amp;lt;code&amp;gt;/usr/sbin/usernetctl $CONFIG up&amp;lt;/code&amp;gt;&lt;br /&gt;
# &amp;lt;code&amp;gt;source_config&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;code&amp;gt;/etc/sysconfig/network&amp;lt;/code&amp;gt; 設定ファイル ===&lt;br /&gt;
参考：[http://www.redhat.com/docs/manuals/enterprise/RHEL-5-manual/ja-JP/Deployment_Guide/s2-sysconfig-network.html 15.1.22. /etc/sysconfig/network]&lt;br /&gt;
; &amp;lt;code&amp;gt;NETWORKING=yes|no&amp;lt;/code&amp;gt;&lt;br /&gt;
: &amp;lt;code&amp;gt;/etc/rc.d/init.d/network&amp;lt;/code&amp;gt; を見ると以下のようになっているため、NETWORKING=no 以外はすべて yes とみなされるようだ。よって、必須ではないと思われる。&lt;br /&gt;
 # Check that networking is up.&lt;br /&gt;
 [ &amp;quot;${NETWORKING}&amp;quot; = &amp;quot;no&amp;quot; ] &amp;amp;&amp;amp; exit 0&lt;br /&gt;
; &amp;lt;code&amp;gt;HOSTNAME=ホスト名&amp;lt;/code&amp;gt;&lt;br /&gt;
: FQDN を記述する。/etc/sysconfig/network-scripts/ifup-post で設定される。&lt;br /&gt;
; &amp;lt;code&amp;gt;GATEWAY=デフォルトゲートウェイの IP アドレス&amp;lt;/code&amp;gt;&lt;br /&gt;
; &amp;lt;code&amp;gt;GATEWAYDEV=ゲートウェイデバイス (eth0 等)&amp;lt;/code&amp;gt;&lt;br /&gt;
: /etc/sysconfig/network-scripts/ifup-eth0 で設定されているようだが、詳細がよくわからない。&lt;br /&gt;
; &amp;lt;code&amp;gt;NISDOMAIN=NISドメイン名&amp;lt;/code&amp;gt;&lt;br /&gt;
: NIS は、Network Information Service の略。/etc/rc.d/init.d/ypbind で用いられる。&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;code&amp;gt;/etc/sysconfig/network-scripts/ifcfg-&amp;lt;if&amp;gt;&amp;lt;/code&amp;gt; 設定ファイル ===&lt;br /&gt;
参考：[http://www.redhat.com/docs/en-US/Red_Hat_Enterprise_Linux/5.2/html/Deployment_Guide/s2-networkscripts-interfaces-eth0.html 14.2.1. Ethernet Interfaces]&lt;br /&gt;
&lt;br /&gt;
; &amp;lt;code&amp;gt;ONBOOT=yes|no&amp;lt;/code&amp;gt;&lt;br /&gt;
: network スクリプトによると、やはり no でなければ yes と言ったことと同じであるようだ。'''嫌なら嫌とはっきり言いましょう。'''ちなみに、grep は'''パターンが出現しなければ 1''' となる。-L オプションは、パタンが出現しないときにファイル名を出力するものだが、単に 1 個見つかったらそれ以上検索しないようにしているだけだと思われる。&lt;br /&gt;
        if LANG=C egrep -L &amp;quot;^ONBOOT=['\&amp;quot;]?[Nn][Oo]['\&amp;quot;]?&amp;quot; ifcfg-$i &amp;gt; /dev/null ; then&lt;br /&gt;
                # this loads the module, to preserve ordering&lt;br /&gt;
            is_available $i&lt;br /&gt;
            continue&lt;br /&gt;
        fi&lt;br /&gt;
; &amp;lt;code&amp;gt;DEVICE=デバイス名&amp;lt;/code&amp;gt;&lt;br /&gt;
: 設定がない場合、ifcfg-* の * の部分がデバイス名となる。そのため、ifcfg ファイルは適当な名前を付けるとネットワークに支障をきたす恐れがあるので注意。'''ifcfg ファイルのバックアップは、別ディレクトリに置くかまたは拡張子を必ず .bak か .orig で行うこと。'''なぜなら、&amp;lt;code&amp;gt;/etc/rc.d/init.d/network&amp;lt;/code&amp;gt; では以下の部分で読むべきコンフィグファイルを探しているが、ls をフィルタにかけているだけの原始的設計のため。&lt;br /&gt;
 # find all the interfaces besides loopback.&lt;br /&gt;
 # ignore aliases, alternative configurations, and editor backup files&lt;br /&gt;
 interfaces=$(ls ifcfg* | \                               ★ ifcfg で始まるファイル名&lt;br /&gt;
         LANG=C sed -e &amp;quot;$__sed_discard_ignored_files&amp;quot; \   ★ 無視するファイル名を削除&lt;br /&gt;
                -e '/\(ifcfg-lo\|:\|ifcfg-.*-range\)/d' \ ★ lo 及び仮想 IP を削除&lt;br /&gt;
                -e '/ifcfg-[A-Za-z0-9\._-]\+$/ { s/^ifcfg-//g;s/[0-9]/ &amp;amp;/}' | \&lt;br /&gt;
                                      ★ ifcfg- 部分を削除し、数字部分を分離&lt;br /&gt;
         LANG=C sort -k 1,1 -k 2n | \ ★インターフェース名でソート？ -k 2n ってなんだ？&lt;br /&gt;
         LANG=C sed 's/ //')          ★分離していた数字部分を再び結合&lt;br /&gt;
: &amp;lt;code&amp;gt;$__sed_discard_ignored_files&amp;lt;/code&amp;gt; は &amp;lt;code&amp;gt;/etc/rc.d/init.d/functions&amp;lt;/code&amp;gt; で定義されている。拡張子が .bak か .orig でなければならない理由。あ、~ (チルダ) でも良いのね。&lt;br /&gt;
 # A sed expression to filter out the files that is_ignored_file recognizes&lt;br /&gt;
 __sed_discard_ignored_files='/\(~\|\.bak\|\.orig\|\.rpmnew\|\.rpmorig\|\.rpmsave\)$/d'&lt;br /&gt;
: どういう出力になるか、メモしておこう。&lt;br /&gt;
 [hagio@k-hagio-ab2 lab]$ ll&lt;br /&gt;
 total 0&lt;br /&gt;
 -rw-rw-r-- 1 hagio hagio 0 Jan 16 15:12 ifcfg-bond0&lt;br /&gt;
 -rw-rw-r-- 1 hagio hagio 0 Jan 16 15:12 ifcfg-eth0&lt;br /&gt;
 -rw-rw-r-- 1 hagio hagio 0 Jan 16 15:13 ifcfg-eth0:0      ★IP エイリアス&lt;br /&gt;
 -rw-rw-r-- 1 hagio hagio 0 Jan 16 15:13 ifcfg-eth0~       ★バックアップ&lt;br /&gt;
 -rw-rw-r-- 1 hagio hagio 0 Jan 16 15:12 ifcfg-eth1&lt;br /&gt;
 -rw-rw-r-- 1 hagio hagio 0 Jan 16 15:13 ifcfg-eth1.backup ★バックアップ&lt;br /&gt;
 -rw-rw-r-- 1 hagio hagio 0 Jan 16 15:13 ifcfg-eth1.bak    ★バックアップ&lt;br /&gt;
 -rw-rw-r-- 1 hagio hagio 0 Jan 16 15:16 ifcfg-hage        ★ハゲ☆インターフェース&lt;br /&gt;
 -rw-rw-r-- 1 hagio hagio 0 Jan 16 15:12 ifcfg-lo&lt;br /&gt;
 [hagio@k-hagio-ab2 lab]$ ls ifcfg* | LANG=C sed - &amp;quot;...&lt;br /&gt;
 bond0&lt;br /&gt;
 eth0&lt;br /&gt;
 eth1&lt;br /&gt;
 eth1.backup ★アウトー！！&lt;br /&gt;
 hage        ★DEVICE=デバイス名 が正しく設定されていればセーフ&lt;br /&gt;
; &amp;lt;code&amp;gt;HWADDR=MACアドレス&amp;lt;/code&amp;gt;&lt;br /&gt;
: ifup-eth でチェックされる。&lt;br /&gt;
; &amp;lt;code&amp;gt;BOOTPROTO=none|dhcp|bootp&amp;lt;/code&amp;gt;&lt;br /&gt;
: static などというものはない！(dhcp と bootp 以外は意味を持たない)&lt;br /&gt;
; &amp;lt;code&amp;gt;IPADDR=IPアドレス&amp;lt;/code&amp;gt;&lt;br /&gt;
:* &amp;lt;code&amp;gt;NETMASK=ネットマスク&amp;lt;/code&amp;gt;&lt;br /&gt;
:* &amp;lt;code&amp;gt;NETWORK=ネットワークアドレス&amp;lt;/code&amp;gt;&lt;br /&gt;
:* &amp;lt;code&amp;gt;BROADCAST=ブロードキャストアドレス&amp;lt;/code&amp;gt;&lt;br /&gt;
:: これらは IP アドレスさえ設定すれば、&amp;lt;code&amp;gt;ipcalc&amp;lt;/code&amp;gt; コマンドで自動的に計算される。&lt;br /&gt;
; &amp;lt;code&amp;gt;DHCP_HOSTNAME=DHCPホスト名&amp;lt;/code&amp;gt;&lt;br /&gt;
: DHCP サーバに送るホスト名。/etc/dhclient-&amp;lt;if&amp;gt;.conf に以下のように追記される。&lt;br /&gt;
 $ cat /etc/dhclient-eth0.conf &lt;br /&gt;
 send host-name &amp;quot;k-hagio-ab2&amp;quot;;  # temporary RHL ifup addition&lt;br /&gt;
; &amp;lt;code&amp;gt;MASTER=bonding インターフェース名&amp;lt;/code&amp;gt;&lt;br /&gt;
: bonding で使用する。SLAVE も設定が必要。&lt;br /&gt;
; &amp;lt;code&amp;gt;SLAVE=yes|no&amp;lt;/code&amp;gt;&lt;br /&gt;
: bonding で利用する。MASTER によって制御されるかどうかを示す。興味深いことに、こちらの設定は yes 以外はすべて意味がない。'''MASTER にとって、yes と言わない SLAVE は存在価値がないのだ。'''&lt;br /&gt;
; &amp;lt;code&amp;gt;BONDING_OPTS=オプション&amp;lt;/code&amp;gt;&lt;br /&gt;
: bonding で利用するオプション。ifup-eth によって、/sys/class/net/デバイス名/bonding/ 配下にファイルが作られる。&lt;br /&gt;
; &amp;lt;code&amp;gt;SRCADDR=IPアドレス&amp;lt;/code&amp;gt;&lt;br /&gt;
: 送信パケットの IP アドレス&lt;br /&gt;
; &amp;lt;code&amp;gt;USRCTL=yes|no&amp;lt;/code&amp;gt;&lt;br /&gt;
: ルートユーザ以外がこのインターフェースを制御できるかどうか&lt;br /&gt;
; &amp;lt;code&amp;gt;ETHTOOL_OPTS=オプション&amp;lt;/code&amp;gt;&lt;br /&gt;
: ethtool に渡されるパラメタ&lt;br /&gt;
    if [ -n &amp;quot;$ETHTOOL_OPTS&amp;quot; ] ; then&lt;br /&gt;
        /sbin/ethtool -s ${REALDEVICE} $ETHTOOL_OPTS&lt;br /&gt;
    fi&lt;br /&gt;
&lt;br /&gt;
=== &amp;lt;code&amp;gt;/etc/sysconfig/static-routes&amp;lt;/code&amp;gt; ===&lt;br /&gt;
: ルーティング (行頭の any より後ろが &amp;lt;code&amp;gt;route add&amp;lt;/code&amp;gt; にそのまま渡される。)&lt;br /&gt;
&lt;br /&gt;
=== netfilter ===&lt;br /&gt;
カーネルの高機能なパケットフィルタリングシステム。&lt;br /&gt;
&lt;br /&gt;
: ''私は真にわかりやすい説明を思いついたが、この余白はそれを書くには狭すぎる。-- hagio''&lt;br /&gt;
&lt;br /&gt;
つ [http://www.google.co.jp/search?q=iptables Google 先生]&lt;br /&gt;
&lt;br /&gt;
=== tcp_wrappers ===&lt;br /&gt;
/etc/hosts.* を用いたアクセス制御を提供する。&lt;br /&gt;
&lt;br /&gt;
基本的な構文&lt;br /&gt;
 daemon_list: client_list[:options]&lt;br /&gt;
* &amp;lt;code&amp;gt;daemon_list&amp;lt;/code&amp;gt;&lt;br /&gt;
** コンマ区切りの実行ファイル名リスト (サービス名ではない)&lt;br /&gt;
** ワイルドカードである ALL, EXCEPT も利用可能&lt;br /&gt;
* &amp;lt;code&amp;gt;client_list&amp;lt;/code&amp;gt;&lt;br /&gt;
** コンマ区切りの以下の要素からなるリスト&lt;br /&gt;
*** IP アドレス&lt;br /&gt;
*** ホスト名&lt;br /&gt;
*** ドットで終わるネットワーク (例：10.34.125.)&lt;br /&gt;
*** ドットで始まるドメイン名 (例：.hoge.org)&lt;br /&gt;
*** ネットワーク／ネットマスク (例：192.168.1.0/255.255.255.0) ※/24 ぢゃダメ&lt;br /&gt;
** ワイルドカード&lt;br /&gt;
*** ALL - すべてにマッチ&lt;br /&gt;
*** EXCEPT - 除外リストを指定できる&lt;br /&gt;
 例)&lt;br /&gt;
 sshd: ALL EXCEPT .hoge.org&lt;br /&gt;
他にもあるけどマニアックすぎる... (LOCAL, UNKNOWN, KNOWN, PARANOID)&lt;br /&gt;
&lt;br /&gt;
サービスが tcp_wrappers に対応しているかどうかの判別には、&lt;br /&gt;
&amp;lt;code&amp;gt;ldd&amp;lt;/code&amp;gt; を使って &amp;lt;code&amp;gt;libwrap&amp;lt;/code&amp;gt; がリンクされているか確認すればよい。&lt;br /&gt;
 [root@localhost root]# ldd /usr/sbin/httpd | grep libwrap&lt;br /&gt;
 [root@localhost root]# ldd /usr/sbin/sshd | grep libwrap&lt;br /&gt;
        libwrap.so.0 =&amp;gt; /usr/lib/libwrap.so.0 (0x00b2e000)&lt;br /&gt;
ということで、httpd (Apache) は /etc/hosts.* ではアクセス制御ができない。&lt;br /&gt;
&lt;br /&gt;
== Excel ==&lt;br /&gt;
* 時刻などの書式のデータを文字列に変換するには&lt;br /&gt;
# Excel で変換したいデータをコピーする&lt;br /&gt;
# テキストエディタにペーストする&lt;br /&gt;
# Excel にペーストする&lt;br /&gt;
&lt;br /&gt;
== PowerPoint ==&lt;br /&gt;
* ファイルサイズを小さくする&lt;br /&gt;
# 保存オプションの「高速保存」をオフにする&lt;br /&gt;
# あらびっくり&lt;br /&gt;
&lt;br /&gt;
== VMware ==&lt;br /&gt;
* [http://d.hatena.ne.jp/pyopyopyo/20081011/p1 VMware Server 2.0 をコマンドラインから操作する方法]&lt;br /&gt;
* 電源 ON&lt;br /&gt;
 # vmware-vim-cmd vmsvc/power.on 16&lt;br /&gt;
&lt;br /&gt;
== 教訓 ==&lt;br /&gt;
* 自分が納得しなければ、相手を納得させることはできない。&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== リンク ==&lt;br /&gt;
* [http://www.mediawiki.org/wiki/Help:Formatting/ja MediaWiki の書式]&lt;br /&gt;
* [http://lwn.net/Articles/299483/ LPC: Booting Linux in five seconds] (LWN.net)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Linux ルータ構築手順メモ ==&lt;br /&gt;
マシン：Express5800/110Ge どノーマル&lt;br /&gt;
# Ethernet ポートが 1 つしかないので、NIC を買ってぶっ挿す (Realtek RTL-8169 チップだった)&lt;br /&gt;
# 起動時 F2 で BIOS 設定に移行し、&amp;quot;Advanced&amp;quot; で &amp;quot;Reset Configuration Data&amp;quot; を [Yes] にする&lt;br /&gt;
# 起動すると、kudzu により各種設定が行われる。&lt;br /&gt;
 [root@localhost ~]# cat /etc/modprobe.conf&lt;br /&gt;
 alias eth0 e1000e&lt;br /&gt;
 alias scsi_hostadapter ahci&lt;br /&gt;
 alias eth1 r8169 ★&lt;br /&gt;
 [root@localhost ~]# cat /etc/sysconfig/network-scripts/ifcfg-eth1&lt;br /&gt;
 # Realtek Semiconductor Co., Ltd. RTL-8169 Gigabit Ethernet&lt;br /&gt;
 DEVICE=eth1&lt;br /&gt;
 ONBOOT=no ★デフォルトは yes&lt;br /&gt;
 #BOOTPROTO=dhcp ★コメントアウトする&lt;br /&gt;
 HWADDR=00:0a:79:98:df:13&lt;br /&gt;
# PPPoE の設定を行う&lt;br /&gt;
 [root@localhost ~]# adsl-setup &lt;br /&gt;
 &lt;br /&gt;
 Welcome to the ADSL client setup.  First, I will run some checks on&lt;br /&gt;
 your system to make sure the PPPoE client is installed properly...&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 LOGIN NAME&lt;br /&gt;
 &lt;br /&gt;
 Enter your Login Name (default root): xxxxx@yyyy&lt;br /&gt;
 &lt;br /&gt;
 INTERFACE&lt;br /&gt;
 &lt;br /&gt;
 Enter the Ethernet interface connected to the ADSL modem&lt;br /&gt;
 For Solaris, this is likely to be something like /dev/hme0.&lt;br /&gt;
 For Linux, it will be ethX, where 'X' is a number.&lt;br /&gt;
 (default eth0): eth1&lt;br /&gt;
 &lt;br /&gt;
 Do you want the link to come up on demand, or stay up continuously?&lt;br /&gt;
 If you want it to come up on demand, enter the idle time in seconds&lt;br /&gt;
 after which the link should be dropped.  If you want the link to&lt;br /&gt;
 stay up permanently, enter 'no' (two letters, lower-case.)&lt;br /&gt;
 NOTE: Demand-activated links do not interact well with dynamic IP&lt;br /&gt;
 addresses.  You may have some problems with demand-activated links.&lt;br /&gt;
 Enter the demand value (default no): no&lt;br /&gt;
 &lt;br /&gt;
 DNS&lt;br /&gt;
 &lt;br /&gt;
 Please enter the IP address of your ISP's primary DNS server.&lt;br /&gt;
 If your ISP claims that 'the server will provide dynamic DNS addresses',&lt;br /&gt;
 enter 'server' (all lower-case) here.&lt;br /&gt;
 If you just press enter, I will assume you know what you are&lt;br /&gt;
 doing and not modify your DNS setup.&lt;br /&gt;
 Enter the DNS information here: server&lt;br /&gt;
 &lt;br /&gt;
 PASSWORD&lt;br /&gt;
 &lt;br /&gt;
 Please enter your Password: &lt;br /&gt;
 Please re-enter your Password: &lt;br /&gt;
 &lt;br /&gt;
 USERCTRL&lt;br /&gt;
 &lt;br /&gt;
 Please enter 'yes' (three letters, lower-case.) if you want to allow&lt;br /&gt;
 normal user to start or stop DSL connection (default yes): yes&lt;br /&gt;
 &lt;br /&gt;
 FIREWALLING&lt;br /&gt;
 &lt;br /&gt;
 Please choose the firewall rules to use.  Note that these rules are&lt;br /&gt;
 very basic.  You are strongly encouraged to use a more sophisticated&lt;br /&gt;
 firewall setup; however, these will provide basic security.  If you&lt;br /&gt;
 are running any servers on your machine, you must choose 'NONE' and&lt;br /&gt;
 set up firewalling yourself.  Otherwise, the firewall rules will deny&lt;br /&gt;
 access to all standard servers like Web, e-mail, ftp, etc.  If you&lt;br /&gt;
 are using SSH, the rules will block outgoing SSH connections which&lt;br /&gt;
 allocate a privileged source port.&lt;br /&gt;
 &lt;br /&gt;
 The firewall choices are:&lt;br /&gt;
 0 - NONE: This script will not set any firewall rules.  You are responsible&lt;br /&gt;
           for ensuring the security of your machine.  You are STRONGLY&lt;br /&gt;
           recommended to use some kind of firewall rules.&lt;br /&gt;
 1 - STANDALONE: Appropriate for a basic stand-alone web-surfing workstation&lt;br /&gt;
 2 - MASQUERADE: Appropriate for a machine acting as an Internet gateway&lt;br /&gt;
                 for a LAN&lt;br /&gt;
 Choose a type of firewall (0-2): 2&lt;br /&gt;
 &lt;br /&gt;
 Start this connection at boot time&lt;br /&gt;
 &lt;br /&gt;
 Do you want to start this connection at boot time?&lt;br /&gt;
 Please enter no or yes (default no):yes&lt;br /&gt;
 &lt;br /&gt;
 ** Summary of what you entered **&lt;br /&gt;
 &lt;br /&gt;
 Ethernet Interface: eth1&lt;br /&gt;
 User name:          xxxxx@yyyy&lt;br /&gt;
 Activate-on-demand: No&lt;br /&gt;
 DNS addresses:      Supplied by ISP's server&lt;br /&gt;
 Firewalling:        MASQUERADE&lt;br /&gt;
 User Control:       yes&lt;br /&gt;
 Accept these settings and adjust configuration files (y/n)? y&lt;br /&gt;
 Adjusting /etc/sysconfig/network-scripts/ifcfg-ppp0&lt;br /&gt;
 Adjusting /etc/ppp/chap-secrets and /etc/ppp/pap-secrets&lt;br /&gt;
   (But first backing it up to /etc/ppp/chap-secrets.bak)&lt;br /&gt;
   (But first backing it up to /etc/ppp/pap-secrets.bak)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
 Congratulations, it should be all set up!&lt;br /&gt;
 &lt;br /&gt;
 Type '/sbin/ifup ppp0' to bring up your xDSL link and '/sbin/ifdown ppp0'&lt;br /&gt;
 to bring it down.&lt;br /&gt;
 Type '/sbin/adsl-status /etc/sysconfig/network-scripts/ifcfg-ppp0'&lt;br /&gt;
 to see the link status.&lt;br /&gt;
# セキュリティ向上のため、不要なサービスを停止する&lt;br /&gt;
:* apmd, atd, cups, sendmail など。まだありそう&lt;br /&gt;
# ip_forward を許可する&lt;br /&gt;
 # vi /etc/sysctl.conf&lt;br /&gt;
 　：&lt;br /&gt;
 # Controls IP packet forwarding&lt;br /&gt;
 net.ipv4.ip_forward = 1 ★&lt;br /&gt;
 　：&lt;br /&gt;
# iptables 設定用のシェルスクリプトを書く ([http://www.dream-seed.com/pukiwiki/index.php?Linux%2Fiptables%A4%C7%A5%EB%A1%BC%A5%BF%A4%F2%BA%EE%A4%EB 参考])&lt;br /&gt;
 #!/bin/sh&lt;br /&gt;
 &lt;br /&gt;
 IPTABLES='/sbin/iptables'&lt;br /&gt;
 &lt;br /&gt;
 # リセット&lt;br /&gt;
 $IPTABLES -F&lt;br /&gt;
 $IPTABLES -t nat -F&lt;br /&gt;
 &lt;br /&gt;
 # ポリシーの設定&lt;br /&gt;
 $IPTABLES -P INPUT DROP&lt;br /&gt;
 $IPTABLES -P FORWARD DROP&lt;br /&gt;
 $IPTABLES -P OUTPUT ACCEPT&lt;br /&gt;
 &lt;br /&gt;
 # INPUT チェイン&lt;br /&gt;
 $IPTABLES -A INPUT -p icmp -j ACCEPT&lt;br /&gt;
 #$IPTABLES -A INPUT -p tcp --dport 80 -j ACCEPT&lt;br /&gt;
 $IPTABLES -A INPUT -i lo -j ACCEPT&lt;br /&gt;
 $IPTABLES -A INPUT -i eth0 -s 192.168.1.0/24 -j ACCEPT&lt;br /&gt;
 $IPTABLES -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT&lt;br /&gt;
 &lt;br /&gt;
 # FORWARD チェイン&lt;br /&gt;
 $IPTABLES -A FORWARD -i eth0 -o ppp0 -s 192.168.1.0/24 -j ACCEPT&lt;br /&gt;
 $IPTABLES -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT&lt;br /&gt;
 &lt;br /&gt;
 # POSTROUTING チェイン&lt;br /&gt;
 $IPTABLES -t nat -A POSTROUTING -o ppp0 -s 192.168.1.0/24 -j MASQUERADE&lt;br /&gt;
 &lt;br /&gt;
 # 設定の確認&lt;br /&gt;
 $IPTABLES -L&lt;br /&gt;
 $IPTABLES -t nat -L&lt;br /&gt;
&lt;br /&gt;
# Linux をルータとして使うための Mac の設定&lt;br /&gt;
:* システム環境設定 → Ethernet&lt;br /&gt;
 構成：手入力&lt;br /&gt;
 IP アドレス：192.168.1.11&lt;br /&gt;
 サブネットマスク：255.255.255.0&lt;br /&gt;
 ルーター：192.168.1.10 (Linux の IP アドレス)&lt;br /&gt;
 DNS サーバ：xxx.xxx.xx.xx (Linux 上での dig の結果) ★固定でいいのか？&lt;br /&gt;
 検索ドメイン：&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
ここまで完了。Mac からネットが使えるようになった。&lt;br /&gt;
&lt;br /&gt;
トド (To Do)&lt;br /&gt;
* サーバ名を考える&lt;br /&gt;
* iptables をマスターする&lt;br /&gt;
* Apache + PHP を動かす (日記システムを作り直すか？)&lt;br /&gt;
* DHCP を立てた方がいいのか？&lt;br /&gt;
* DNS はどうするか？&lt;br /&gt;
* 固定 IP オプションを申し込むか？&lt;/div&gt;</summary>
		<author><name>192.168.1.10</name></author>	</entry>

	<entry>
		<id>http://hagio.org/wiki/index.php?title=Bash&amp;diff=20</id>
		<title>Bash</title>
		<link rel="alternate" type="text/html" href="http://hagio.org/wiki/index.php?title=Bash&amp;diff=20"/>
				<updated>2009-01-24T03:03:41Z</updated>
		
		<summary type="html">&lt;p&gt;192.168.1.10: 新しいページ: '== bash == * &amp;lt;code&amp;gt;export&amp;lt;/code&amp;gt; は、その変数を子プロセスに引き継ぐ場合に用いる。 * Meta キーは ESC キーで代用可。(Poderosa では有用)  ===...'&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== bash ==&lt;br /&gt;
* &amp;lt;code&amp;gt;export&amp;lt;/code&amp;gt; は、その変数を子プロセスに引き継ぐ場合に用いる。&lt;br /&gt;
* Meta キーは ESC キーで代用可。(Poderosa では有用)&lt;br /&gt;
&lt;br /&gt;
=== 起動時の設定ファイルの読み込み順序 ===&lt;br /&gt;
* ログインシェルの場合 (ログイン時、su - user 時など)&lt;br /&gt;
*# &amp;lt;code&amp;gt;/etc/profile&amp;lt;/code&amp;gt;&lt;br /&gt;
*# &amp;lt;code&amp;gt;/etc/profile.d/*.sh&amp;lt;/code&amp;gt;&lt;br /&gt;
*# &amp;lt;code&amp;gt;~/.bash_profile&amp;lt;/code&amp;gt;&lt;br /&gt;
*# &amp;lt;code&amp;gt;~/.bashrc&amp;lt;/code&amp;gt;&lt;br /&gt;
*# &amp;lt;code&amp;gt;/etc/bashrc&amp;lt;/code&amp;gt;&lt;br /&gt;
* ログインシェルでない場合 (bash 実行時、su user 時など)&lt;br /&gt;
*# &amp;lt;code&amp;gt;~/.bashrc&amp;lt;/code&amp;gt;&lt;br /&gt;
*# &amp;lt;code&amp;gt;/etc/bashrc&amp;lt;/code&amp;gt;&lt;br /&gt;
*# &amp;lt;code&amp;gt;/etc/profile.d/*.sh&amp;lt;/code&amp;gt;&lt;br /&gt;
以下のコマンドで確認できる。&lt;br /&gt;
 # strace -f -e trace=open -o su-bash.strace su - hagio&lt;br /&gt;
&lt;br /&gt;
=== シェルスクリプト ===&lt;br /&gt;
* $# - 引数の個数なので、スクリプト名は含まない。&lt;br /&gt;
* [http://www.linux.or.jp/JF/JFdocs/Bash-Prog-Intro-HOWTO.html BASH Programming - Introduction HOW-TO]&lt;br /&gt;
&lt;br /&gt;
=== コマンド ===&lt;br /&gt;
* 行末までキル：C-k&lt;br /&gt;
* 行頭までキル：C-u&lt;br /&gt;
* 前単語をキル：C-w&lt;br /&gt;
* ヤンク：C-y&lt;br /&gt;
* 直前のコマンドの最後の引き数を挿入：M-. (これは便利)&lt;br /&gt;
* キャンセル：C-g&lt;br /&gt;
* 後方検索：C-r (これらは使い方が難しい)&lt;br /&gt;
* 前方検索：C-s&lt;br /&gt;
* 最終行へ：M-&amp;gt; (Poderosa では打ちにくい…)&lt;br /&gt;
&lt;br /&gt;
=== .bashrc ===&lt;br /&gt;
カスタマイズしたものに慣れてしまうと、素の状態にすぐに適応できなくなってしまうので良くないが、&lt;br /&gt;
それでも背に腹は代えられないモノたち。&lt;br /&gt;
 alias ..='cd ..'&lt;br /&gt;
 alias la='ls -a'&lt;br /&gt;
 alias ll='ls -l' # Red Hat では標準&lt;br /&gt;
 alias lla='ls -la'&lt;br /&gt;
 alias llh='ls -lh'&lt;br /&gt;
 alias s='screen'&lt;br /&gt;
 alias grep='grep -i --color=auto'&lt;br /&gt;
 &lt;br /&gt;
 # 自動 ls&lt;br /&gt;
 function cd { builtin cd $@; ls }&lt;br /&gt;
 # Ctrl-s でのストップ機能を止める&lt;br /&gt;
 stty stop undef&lt;/div&gt;</summary>
		<author><name>192.168.1.10</name></author>	</entry>

	<entry>
		<id>http://hagio.org/wiki/index.php?title=%E3%83%A1%E3%82%A4%E3%83%B3%E3%83%9A%E3%83%BC%E3%82%B8&amp;diff=19</id>
		<title>メインページ</title>
		<link rel="alternate" type="text/html" href="http://hagio.org/wiki/index.php?title=%E3%83%A1%E3%82%A4%E3%83%B3%E3%83%9A%E3%83%BC%E3%82%B8&amp;diff=19"/>
				<updated>2009-01-24T03:02:31Z</updated>
		
		<summary type="html">&lt;p&gt;192.168.1.10: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;このページは今のところ公開の予定はありません。&lt;br /&gt;
&lt;br /&gt;
[http://hagio.org サイトトップへ]&lt;br /&gt;
&lt;br /&gt;
* 覚え書き&lt;br /&gt;
** [[bash]]&lt;br /&gt;
&lt;br /&gt;
* [[雑記]]&lt;br /&gt;
: そのうち、ページを分けるなど整理する予定。&lt;br /&gt;
&lt;br /&gt;
== はじめましょう ==&lt;br /&gt;
* [http://meta.wikimedia.org/wiki/%E3%83%98%E3%83%AB%E3%83%97:%E7%9B%AE%E6%AC%A1 ユーザーズガイド]&lt;br /&gt;
* [http://www.mediawiki.org/wiki/Manual:Configuration_settings/ja 設定リスト]&lt;br /&gt;
* [http://www.mediawiki.org/wiki/Manual:FAQ/ja MediaWiki FAQ]&lt;br /&gt;
* [https://lists.wikimedia.org/mailman/listinfo/mediawiki-announce MediaWiki リリース情報メーリングリスト]&lt;/div&gt;</summary>
		<author><name>192.168.1.10</name></author>	</entry>

	</feed>