<?xml version="1.0" encoding="UTF-8"?>

<?xml-stylesheet type="text/xsl" media="screen" href="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=rss.en.xml" ?>
<rdf:RDF
  xmlns:dc="http://purl.org/dc/elements/1.1/"

  xmlns="http://purl.org/rss/1.0/"
  xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
  xmlns:content="http://purl.org/rss/1.0/modules/content/"
  xml:lang="ja">
 <channel rdf:about="http://www.tagus.org/modules/xpwiki/index.php">
  <title>tagus.org::Wiki</title>
  <link>http://www.tagus.org/modules/xpwiki/index.php</link>
  <description>xpWiki RecentChanges</description>
  <dc:date>2011-10-21T14:55:00+09:00</dc:date>
  <image rdf:resource="http://www.tagus.org/modules/xpwiki/index.phpmodule_icon.php" />
  <items>
   <rdf:Seq>
    <rdf:li rdf:resource="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FOpenSSH" />
    <rdf:li rdf:resource="http://www.tagus.org/modules/xpwiki/" />
    <rdf:li rdf:resource="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FVMware" />
    <rdf:li rdf:resource="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FUbuntu" />
    <rdf:li rdf:resource="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FSquid" />
    <rdf:li rdf:resource="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FShell" />
    <rdf:li rdf:resource="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FRedHat" />
    <rdf:li rdf:resource="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2Fqmail" />
    <rdf:li rdf:resource="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FPostgreSQL" />
    <rdf:li rdf:resource="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FPostfix" />
    <rdf:li rdf:resource="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FCourier" />
    <rdf:li rdf:resource="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FOpenSSL" />
    <rdf:li rdf:resource="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FPHP" />
    <rdf:li rdf:resource="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FPerl" />
    <rdf:li rdf:resource="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FSendmail" />

   </rdf:Seq>
  </items>
 </channel>
 <image rdf:about="http://www.tagus.org/modules/xpwiki/index.phpmodule_icon.php">
   <title>tagus.org::Wiki</title>
   <link>http://www.tagus.org/modules/xpwiki/index.php</link>
   <url>http://www.tagus.org/modules/xpwiki/index.phpmodule_icon.php</url>
 </image>

<item rdf:about="http://www.tagus.org/modules/xpwiki/index.php?LinuxDoc%2FOpenSSH">
 <title>LinuxDoc/OpenSSH</title>
 <link>http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FOpenSSH</link>
 <dc:date>2011-10-20T16:36:48+09:00</dc:date>
 <dc:creator>sleep</dc:creator>
 
 <description>鍵のパスフレーズ変更
鍵のパスフレーズ変更   
作成した鍵のパスフレーズを変更したい場合は、以下のコマンドを実行する。
% ssh-keygen -p
&amp;#35;br&amp;#182;
概要  
リモート通信を暗号化してくれるOpenSSHのTips
リンク  
OpenSSH
日本語ページ
目次  
秘密鍵・公開鍵でログイン
鍵のパスフレーズ変更
authorized_keysのオプション
rssh
Port Forward
&amp;nbsp;
秘密鍵・公開鍵でログイン   
アカウントのパスワードを使</description>
 <content:encoded><![CDATA[
 <dl><dt>Changes</dt><dd><ul><li>鍵のパスフレーズ変更</li></ul>
<div>
<h2>鍵のパスフレーズ変更   <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2>
<p>作成した鍵のパスフレーズを変更したい場合は、以下のコマンドを実行する。</p>
<div><pre>% ssh-keygen -p</pre></div>
<p>&#35;br</p><!--j0418024--></div></dd></dl><hr /><div>
<h2>概要  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FOpenSSH#n466998a" title="n466998a"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>リモート通信を暗号化してくれるOpenSSHのTips</p>
<!--n466998a--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>リンク  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FOpenSSH#ba0ab4ff" title="ba0ab4ff"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h3>
<ul><li><a href="http://www.openssh.com/" title="www.openssh.com/" target="_blank">OpenSSH</a></li>
<li><a href="http://www.openssh.com/ja/" title="www.openssh.com/ja/" target="_blank">日本語ページ</a></li></ul>
<!--ba0ab4ff--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>目次  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FOpenSSH#zb44155b" title="zb44155b"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h3>
<ul><li>秘密鍵・公開鍵でログイン</li>
<li>鍵のパスフレーズ変更</li>
<li>authorized_keysのオプション</li>
<li>rssh</li>
<li>Port Forward</li></ul>
<div>&nbsp;</div>
<!--zb44155b--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>秘密鍵・公開鍵でログイン <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FOpenSSH#i6b2b526" title="i6b2b526"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>アカウントのパスワードを使用せずに、鍵交換でログインする。</p>
<p>秘密鍵・公開鍵の作成から。</p>
<div><pre>% ssh-keygen -t dsa

-t dsa: DSAという鍵の種類で作成(SSH2で使用)。
-t rsa: RSAという鍵の種類で作成(SSH2で使用)。
-t rsa1: SSH1で使用する場合はこれで。</pre></div>
<p>以下のような出力が出る。<br />
普通に使うなら保存場所はデフォルトで。<br />
パスフレーズは任意のものを指定する。</p>
<div><pre>Generating public/private dsa key pair.
Enter file in which to save the key (/home/foo/.ssh/id_dsa):
Enter passphrase (empty for no passphrase):</pre></div>
<p>出来た公開鍵<strong>id_dsa.pub</strong>をログインしたいサーバへ<strong>authorized_keys</strong>というファイル名でコピーする。<br />
追記していけば複数の鍵でログインできるようになる。<br />
上書きしないように<strong>cp</strong>は使わない方がいいと思う。</p>
<div><pre>% mkdir -m 700 ~/.ssh
% cat id_dsa.pub &gt;&gt; ~/.ssh/authorized_keys</pre></div>
<p>いちいちパスフレーズを入力するのが煩わしい時は、<strong>.bash_profile</strong>や<strong>.zprofile</strong>に以下を記述しておく。</p>
<div><pre>eval `ssh-agent`
ssh-add .ssh/id_dsa</pre></div>
<p>コンソールにログインするときに以下のようにパスフレーズを尋ねられるので入力する。</p>
<div><pre>Agent pid 1335
Enter passphrase for .ssh/id_dsa:</pre></div>
<p>こうしておくと、以降はパスフレーズの入力を省略してSSHが使用できる。</p>
<div>&nbsp;</div>
<!--i6b2b526--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>鍵のパスフレーズ変更 <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FOpenSSH#j0418024" title="j0418024"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>作成した鍵のパスフレーズを変更したい場合は、以下のコマンドを実行する。</p>
<div><pre>% ssh-keygen -p</pre></div>
<div>&nbsp;</div>
<!--j0418024--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>authorized_keysのオプション <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FOpenSSH#ff0764dd" title="ff0764dd"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p><strong>authorized_keys</strong>の各鍵の先頭にオプションを入れられる。</p>
<p>以下のように記述すると、ホストを制限できる。</p>
<div><pre>from=&quot;192.168.xxx.xxx&quot; ssh-dss AAAAB3N............</pre></div>
<p>以下のように記述すると、そこに入れたコマンドした許可されない。</p>
<div><pre>command=&quot;ls -l .&quot; ssh-dss AAAAB3N............</pre></div>
<p>つなげて書くには<strong>,</strong>(カンマ)で区切る。</p>
<div><pre>from=&quot;192.168.xxx.xxx&quot;,command=&quot;ls -l .&quot; 
         ssh-dss AAAAB3N............</pre></div>
<p><strong>command=</strong>は意味ないと思うかもしれない。<br />
しかし、<strong>rsync</strong>とか<strong>scp</strong>だけを許可してバックアップのデータなどを送らせる専用ユーザなどで使用できる。<br />
ただ、以下のように書いただけでは動作しない。</p>
<div><pre>command=&quot;rsync&quot; ssh-dss AAAAB3N............</pre></div>
<p>どうやって書けばいいかは、クライアント機で実際に<strong>rsync</strong>を実行してみる。<br />
その時に、<strong>vv</strong>オプションで出力を冗長化する。</p>
<div><pre>rsync -e ssh -avvz testfile foo@bar:/home/foo/data/</pre></div>
<p>上記のように打つと以下のような出力になると思う。</p>
<div><pre>opening connection using ssh -l foo bar rsync --server 
    -vvlogDtprz . /home/foo/data/
building file list ...</pre></div>
<p>上記の<strong>rsyncから始まる部分</strong>をコピーして、使う。</p>
<div><pre>command=&quot;rsync --server -vvlogDtprz . /home/foo/data/&quot; 
  ssh-dss AAAAB3N............</pre></div>
<p>これで、この鍵を使用してログイン時の動作はコマンド一つに限定される。<br />
<strong>scp</strong>は使ってないので良くわからない。<br />
しかし、これだけでは制限を回避できる方法もあるらしい。<br />
やらないよりましだとは思うが…。</p>
<div>&nbsp;</div>
<!--ff0764dd--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>rssh <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FOpenSSH#a3c73764" title="a3c73764"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>scp,sftp,rsyncなどのコマンドだけに動作が制限されるシェル。<br />
一つ上の項目で書いたのと合わせて使用した。</p>
<p>ユーザ<strong>foo</strong>のログインシェルを<strong>rssh</strong>にする。</p>
<div><pre>% useradd -s /bin/rssh foo # 新規
% usermod -s /bin/rssh foo # 既存のユーザを変更</pre></div>
<p><strong>rssh.conf</strong>を編集する。</p>
<div><pre># ログのファシリティの設定。ここでは&quot;user&quot;にしてある。
logfacility = LOG_USER

# どのコマンドを許可するか。
# ここで設定するとデフォルトの設定になる。
#allowscp
#allowsftp
#allowcvs
#allowrdist
allowrsync

# umask
umask = 027

# ここでchrootするパスを設定すると、
# どのユーザでアクセスしてもここにchrootされるんだと思う。
# 未確認。
#chrootpath = /usr/local/chroot

# ディレクトリ名にスペースが入っているとき。
# 下記のように&quot;(クォート)で括る。
#chrootpath = &quot;/usr/local/my chroot&quot;

##########################################
# ここから下は各ユーザ毎に設定できる。
# &quot;user=ユーザ名:umask:許可・不許可:chrootのパス&quot;

# chrootしない時は下記のように。
# 最後の5桁の数字はそれぞれコマンドの許可・不許可を設定する。
# 0が不許可で、1が許可。
# 順番は、&quot;rsync,rdist,cvs,sftp,scp&quot;。
#user=rudy:077:00010

# cvsだけ許可、chrootなし。
#user=rudy:011:00100:  # cvs, with no chroot 

# rdistだけ許可、chrootなし。
#user=rudy:011:01000:  # rdist, with no chroot

# rsyncだけ許可、chrootなし。
#user=rudy:011:10000:  # rsync, with no chroot

# scpだけ許可、chrootあり。
#user=rudy:011:00001:/usr/local/mychroot

# ここもディレクトリ名にスペースが入っている時はクォートする。
#user=rudy:011:00010:&quot;/usr/local/my chroot&quot;

# 今回使用したのはこれ。
# fooにrsyncだけを許可。chrootのパスは/mychroot
user=foo:027:10000:/mychroot</pre></div>
<p>chrootしないなら、これだけで使用できる(<strong>rssh.conf</strong>はchrootしないように書き換える)。<br />
下記はchroot環境の準備。rsyncでのみ動作確認している。<br />
OSはRHEL4UP5。</p>
<p>使用するものをコピー。</p>
<div><pre>% mkdir -p /mychroot/usr/bin
% mkdir -p /mychroot/usr/libexec
% mkdir -p /mychroot/usr/libexec/bin
% cp -p /usr/bin/scp /mychroot/usr/bin/
% cp -p /usr/bin/rsync /mychroot/usr/bin/
% cp -p /usr/libexec/openssh/sftp-server /mychroot/usr/libexec/
% cp -p /usr/libexec/bin/rssh_chroot_helper 
      /mychroot/usr/libexec/bin/</pre></div>
<p>それぞれに必要なライブラリをコピーする。<br />
何が必要かは、以下のコマンドでわかるらしい。</p>
<div><pre>% ldd `which scp`

	libcrypto.so.4 =&gt; /lib/libcrypto.so.4 (0x00b1d000)
	libutil.so.1 =&gt; /lib/libutil.so.1 (0x00169000)
	libz.so.1 =&gt; /usr/lib/libz.so.1 (0x00cf1000)
	libnsl.so.1 =&gt; /lib/libnsl.so.1 (0x003dc000)
	libcrypt.so.1 =&gt; /lib/libcrypt.so.1 (0x00c43000)
	libselinux.so.1 =&gt; /lib/libselinux.so.1 (0x00b05000)
	libgssapi_krb5.so.2 =&gt; 
               /usr/lib/libgssapi_krb5.so.2 (0x001ee000)
	libkrb5.so.3 =&gt; /usr/lib/libkrb5.so.3 (0x00763000)
	libk5crypto.so.3 =&gt; /usr/lib/libk5crypto.so.3 (0x00f9f000)
	libcom_err.so.2 =&gt; /lib/libcom_err.so.2 (0x00e7d000)
	libresolv.so.2 =&gt; /lib/libresolv.so.2 (0x00821000)
	libc.so.6 =&gt; /lib/tls/libc.so.6 (0x00202000)
	libdl.so.2 =&gt; /lib/libdl.so.2 (0x00f05000)
	/lib/ld-linux.so.2 (0x005ca000)

% ldd `which rsync`

	libpopt.so.0 =&gt; /usr/lib/libpopt.so.0 (0x00b3f000)
	libresolv.so.2 =&gt; /lib/libresolv.so.2 (0x00791000)
	libc.so.6 =&gt; /lib/tls/libc.so.6 (0x00612000)
	/lib/ld-linux.so.2 (0x005f8000)</pre></div>
<p>上記で出力されたファイルを全てコピーする。</p>
<p><strong>rssh</strong>のドキュメントを見ていくと、<strong>/etc/ld.so</strong>'も全てコピーせよとある。</p>
<div><pre>% mkdir /mychroot/etc
% cp -rp /etc/ld.so' /mychroot/etc/</pre></div>
<p>パスワードファイルも必要みたい。</p>
<div><pre>% cp -p /etc/passwd /mychroot/etc/</pre></div>
<p>後で気づいたのだが、<strong>rssh</strong>が<strong>syslog</strong>に出力するタイムゾーンがずれていた。<br />
そのため、これもコピー。</p>
<div><pre>% cp -p /etc/localtime /mychroot/etc/</pre></div>
<p>これもドキュメントに従ってコピー。</p>
<div><pre>% cp -p /lib/libnss_files.so.' /mychroot/lib/</pre></div>
<p>ログの出力のためにこれがいるとのこと。</p>
<div><pre>% mkdir /mychroot/dev</pre></div>
<p>それから<strong>syslog</strong>を再起動する。<br />
再起動時に<strong>-a /mychroot/dev/log</strong>というオプションを付けるらしい。<br />
RHELなら<strong>/etc/init.d/syslog</strong>なんかに記述するのだと思う。</p>
<p>今回設定したサーバは、<strong>syslog-ng</strong>を使用していたので、<strong>/etc/syslog-ng/syslog-ng.conf</strong>に下記を追記した。</p>
<div><pre>unix-stream (&quot;/dev/log&quot;);

と、なっているところを…

unix-stream (&quot;/dev/log&quot;);
unix-stream (&quot;/mychroot/dev/log&quot;);</pre></div>
<p>これで<strong>syslog-ng</strong>を再起動する。<br />
<strong>/mychroot/dev/log</strong>というソケットファイルが出来ていればOK。</p>
<p>chrootするユーザのホームディレクトリもいると思う。</p>
<div><pre>% mkdir -p /mychroot/home/foo
% chown foo:foo /mychroot/home/foo</pre></div>
<p>これで自分の環境では動いた。</p>
<p>2009/03/13追記<br />
Debianでは<strong>rssh_chroot_helper</strong>に'suidビットが立っていない'。<br />
以下のようにすれば動作する。</p>
<div><pre>% chmod u+s rssh_chroot_helper</pre></div>
<div>&nbsp;</div>
<!--a3c73764--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>Port Forward <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FOpenSSH#s8acf7d1" title="s8acf7d1"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>こんな時に便利。</p>
<ol><li>社内LANのPC(mypc.example.com)から、</li>
<li>全然関係ない社外PC(stranger.example10.com)のポート3333番にTELNETでつなぎたい。</li>
<li>だけど間にFWがあるので3333番に通信できない。</li>
<li>だけどSSHで自分の家のLinux(myhome.example99.com)には繋げる。</li></ol>
<p>そんな時はSSHのトンネルを通してやる。<br />
ちょっとややこしいので図に書きたいが後日…。</p>
<div><pre>% ssh -L 10000:stranger.example10.com:3333 
      myhome.example99.com -l foo</pre></div>
<p>上記の意味は、</p>
<ol><li>localhost(この場合だと&quot;mypc.example.com&quot;)の10000番にアクセスすると、</li>
<li>stranger.example10.com の3333番へ、</li>
<li>ssh で myhome.example99.com へ張ったコネクションを使って通す。</li></ol>
<p>&quot;-l foo&quot;はmyhome.example99.comへSSH接続するユーザ名を入れる。</p>
<p>これで、以下のようにするとTELNETでstranger.example10.comの3333番へアクセスできるはず。</p>
<div><pre>% telnet localhost 10000</pre></div>
<p>これがFTPでもHTTPでもなんでも同様。</p><!--s8acf7d1--></div>


 ]]></content:encoded>
 <dc:identifier>http://www.tagus.org/modules/xpwiki/index.php?LinuxDoc%2FOpenSSH</dc:identifier>

</item>
<item rdf:about="http://www.tagus.org/modules/xpwiki/index.php?LinuxDoc">
 <title>LinuxDoc</title>
 <link>http://www.tagus.org/modules/xpwiki/</link>
 <dc:date>2011-07-27T14:51:55+09:00</dc:date>
 <dc:creator>webmaster</dc:creator>
 
 <description>Shell Tips
Squid Tips
Ubuntu Tips
VMware Tips&amp;#182;
Postfix Tips
PostgreSQL Tips
qmail Tips
RedHat Tips&amp;#182;
PHP Tips&amp;#182;
Perl Tips&amp;#182;
OpenSSL Tips&amp;#182;
ここより以下のページについて  
このページは、Linux中心にその他雑多なサーバやネットワークスイッチの設定に関するメモ書きです。
このサイトの情報を利用した結果、いかなる損害を</description>
 <content:encoded><![CDATA[
 <dl><dt>Changes</dt><dd><ul><li>Shell Tips</li>
<li>Squid Tips</li>
<li>Ubuntu Tips</li>
<li>VMware Tips</li></ul>&#182;<!--ADD_TEXT_SEP-->
<ul><li>Postfix Tips</li>
<li>PostgreSQL Tips</li>
<li>qmail Tips</li>
<li>RedHat Tips</li></ul>&#182;<!--ADD_TEXT_SEP-->
<ul><li>PHP Tips</li></ul>&#182;<!--ADD_TEXT_SEP-->
<ul><li>Perl Tips</li></ul>&#182;<!--ADD_TEXT_SEP-->
<ul><li>OpenSSL Tips</li></ul></dd></dl><hr /><div>
<h2>ここより以下のページについて  <a href="http://www.tagus.org/modules/xpwiki/#e484fc05" title="e484fc05"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>このページは、Linux中心にその他雑多なサーバやネットワークスイッチの設定に関するメモ書きです。<br />
このサイトの情報を利用した結果、いかなる損害を被ったとしても責任持ちません。<br />
自己責任でお願いしますね。</p>
<p>閲覧は自由ですが、作成・編集などは私しかできません。<br />
時系列で並べていないうえに、少し古い情報も多いかと思います。<br />
ぼちぼち整理中です。</p>
<p>記載の誤り、お問い合わせなどは下記まで。<br />
sleep@tagus.org</p>
<!--e484fc05--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>目次  <a href="http://www.tagus.org/modules/xpwiki/#q33bcc7a" title="q33bcc7a"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<ul><li><a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FApache" title="LinuxDoc/Apache (461d)">Apache Tips</a></li>
<li><a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FBind" title="LinuxDoc/Bind (461d)">Bind Tips</a></li>
<li><a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FCisco" title="LinuxDoc/Cisco (461d)">Cisco Tips</a></li>
<li><a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FCourier" title="LinuxDoc/Courier (249d)">Courier Tips</a></li>
<li><a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FCygwin" title="LinuxDoc/Cygwin (449d)">Cygwin Tips</a></li>
<li><a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FDebian" title="LinuxDoc/Debian (441d)">Debian Tips</a></li>
<li><a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FEtc" title="LinuxDoc/Etc (444d)">Etc Tips</a></li>
<li><a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FGnuPG" title="LinuxDoc/GnuPG (349d)">GnuPG Tips</a></li>
<li><a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FMailman" title="LinuxDoc/Mailman (349d)">Mailman Tips</a></li>
<li><a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FMutt" title="LinuxDoc/Mutt (349d)">Mutt Tips</a></li>
<li><a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FMySQL" title="LinuxDoc/MySQL (349d)">MySQL Tips</a></li>
<li><a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FOpenLDAP" title="LinuxDoc/OpenLDAP (349d)">OpenLDAP Tips</a></li>
<li><a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FOpenSSH" title="LinuxDoc/OpenSSH (2h)">OpenSSH Tips</a></li>
<li><a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FOpenSSL" title="LinuxDoc/OpenSSL (249d)">OpenSSL Tips</a></li>
<li><a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FPerl" title="LinuxDoc/Perl (339d)">Perl Tips</a></li>
<li><a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FPHP" title="LinuxDoc/PHP (339d)">PHP Tips</a></li>
<li><a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FPostfix" title="LinuxDoc/Postfix (85d)">Postfix Tips</a></li>
<li><a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FPostgreSQL" title="LinuxDoc/PostgreSQL (85d)">PostgreSQL Tips</a></li>
<li><a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2Fqmail" title="LinuxDoc/qmail (85d)">qmail Tips</a></li>
<li><a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FRedHat" title="LinuxDoc/RedHat (85d)">RedHat Tips</a></li>
<li><a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FSendmail" title="LinuxDoc/Sendmail (349d)">Sendmail Tips</a></li>
<li><a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FShell" title="LinuxDoc/Shell (85d)">Shell Tips</a></li>
<li><a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FSquid" title="LinuxDoc/Squid (85d)">Squid Tips</a></li>
<li><a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FUbuntu" title="LinuxDoc/Ubuntu (85d)">Ubuntu Tips</a></li>
<li><a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FVMware" title="LinuxDoc/VMware (85d)">VMware Tips</a></li></ul><!--q33bcc7a--></div>


 ]]></content:encoded>
 <dc:identifier>http://www.tagus.org/modules/xpwiki/index.php?LinuxDoc</dc:identifier>

</item>
<item rdf:about="http://www.tagus.org/modules/xpwiki/index.php?LinuxDoc%2FVMware">
 <title>LinuxDoc/VMware</title>
 <link>http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FVMware</link>
 <dc:date>2011-07-27T14:49:47+09:00</dc:date>
 <dc:creator>sleep</dc:creator>
 
 <description>
 
  Table of contents
 
 
   概要 
 リンク 
 目次 
 コマンドラインでVM作成  
 vmware-server-consoleのキーマップ  
 物理サーバから VMware Server へレストア  
 
概要  
VMware Server のTIPS (主に1系)
リンク  
VMware
目次  
コマンドラインでVM作成
vmware-server-consoleのキーマップ
物理サーバから VMware Server へレストア
&amp;nbsp;</description>
 <content:encoded><![CDATA[
 <div>
<div>
 <div>
  Table of contents
 </div>
 <div>
  <ul><li> 概要 
<ul><li> リンク </li>
<li> 目次 </li></ul></li>
<li> コマンドラインでVM作成  </li>
<li> vmware-server-consoleのキーマップ  </li>
<li> 物理サーバから VMware Server へレストア  </li></ul>
 </div>
</div>
<h2>概要  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FVMware#kef23ccb" title="kef23ccb"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>VMware Server のTIPS (主に1系)</p>
<!--kef23ccb--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>リンク  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FVMware#ze415830" title="ze415830"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h3>
<ul><li><a href="http://www.vmware.com/" title="www.vmware.com/" target="_blank">VMware</a></li></ul>
<!--ze415830--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>目次  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FVMware#i78f4f1c" title="i78f4f1c"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h3>
<ul><li>コマンドラインでVM作成</li>
<li>vmware-server-consoleのキーマップ</li>
<li>物理サーバから VMware Server へレストア</li></ul>
<div>&nbsp;</div>
<!--i78f4f1c--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>コマンドラインでVM作成 <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FVMware#b56a10e8" title="b56a10e8"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>コマンドラインを使ってVMを作成した時のメモ。<br />
<strong>vmware-server-console</strong>がどうも調子悪い…。</p>
<p>まずはVMを格納するディレクトリ作成。</p>
<div><pre>% mkdir /var/lib/vmware/virtual_machines/test-server</pre></div>
<p>ディスク(.vmdkファイル)作成。<br />
<strong>vmware-vdiskmanager</strong>というコマンドを使用する。</p>
<div><pre>% vmware-vdiskmanager -c -a lsilogic -s 40Gb -t 2 
    /var/lib/vmware/virtual_machines/test-server/test-server.vmdk</pre></div>
<p>以下はオプションの説明。</p>
<div><pre>-c : ディスクを新規に作成する。
-a : アダプター(ide,buslogic,lsilogic)の指定。
-s : サイズ(Gb,Mb,Kb)の指定。
-t : ディスクタイプ(0,1,2,3)の指定。

ディスクタイプ
0 : 動的にサイズが変わるディスク(分割なし)。
1 : 動的にサイズが変わるディスク(2GB毎に分割)。
2 : サイズ固定のディスク(分割なし)。
3 : サイズ固定のディスク(2GB毎に分割)。</pre></div>
<p>コンフィグファイル('.vmx)を作成する。<br />
.vmxファイルの詳細なオプションは、&quot;このサイト:<a href="http://sanbarrow.com/vmx.html" title="sanbarrow.com/vmx.html" target="_blank">http://sanbarrow.com/vmx.html</a> を参考にすると良い。<br />
以下に例を記載。</p>
<div><pre>#!/opt/vmware/bin/vmware
config.version = &quot;8&quot;
virtualHW.version = &quot;4&quot;

scsi0.present = &quot;TRUE&quot;
scsi0.virtualDev = &quot;lsilogic&quot; # アダプター
memsize = &quot;512&quot;
scsi0:0.present = &quot;TRUE&quot;
scsi0:0.fileName = &quot;vmnfs01.vmdk&quot; # ディスクファイル
scsi0:0.writeThrough = &quot;TRUE&quot;
ide1:0.present = &quot;TRUE&quot;
ide1:0.deviceType = &quot;cdrom-image&quot; # CDROMにイメージファイルを使用
ide1:0.fileName = 
    &quot;/home/staguchi/sources/CentOS-5.2-i386-netinstall.iso&quot;
floppy0.startConnected = &quot;FALSE&quot;
floppy0.fileName = &quot;/dev/fd0&quot;
Ethernet0.present = &quot;TRUE&quot;
Ethernet0.connectionType = &quot;bridged&quot; # ネットワークをブリッジにする
displayName = &quot;test-server&quot;
guestOS = &quot;other26xlinux&quot; # ゲストOSの種類
priority.grabbed = &quot;normal&quot;
priority.ungrabbed = &quot;normal&quot;
powerType.powerOff = &quot;hard&quot;
powerType.powerOn = &quot;hard&quot;
powerType.suspend = &quot;hard&quot;
powerType.reset = &quot;hard&quot;

# createにしておくと適当なUUIDを作成してくれる。
uuid.action = &quot;create&quot;

scsi0:0.redo = &quot;&quot;

# generatedにしておくと適当なMACアドレスを作成してくれる。
ethernet0.addressType = &quot;generated&quot;

floppy0.present = &quot;FALSE&quot;</pre></div>
<p>次がVMを登録するコマンド。<br />
<strong>.vmx</strong>はフルパスで指定する。</p>
<div><pre>% vmware-cmd -s register 
    /var/lib/vmware/virtual_machines/test-server/test-server.vmx</pre></div>
<p>これで<strong>vmware-server-console</strong>を起動すると、<strong>test-server</strong>が見えていると思う。<br />
ゲストOSを入れてやれば使えるようになる。</p>
<p>UUIDとMACアドレスは作成されて、<strong>test-server.vmx</strong>に追記されているはず。</p>
<div><pre>ethernet0.generatedAddress = &quot;00:0c:29:40:32:9f&quot;
uuid.location = &quot;56 4d d1 dd 7d 04 2e 79-6a cc 1d b5 c0 40 32 9f&quot;
uuid.bios = &quot;56 4d d1 dd 7d 04 2e 79-6a cc 1d b5 c0 40 32 9f&quot;
ethernet0.generatedAddressOffset = &quot;0&quot;</pre></div>
<div>&nbsp;</div>
<!--b56a10e8--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>vmware-server-consoleのキーマップ <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FVMware#uf8e3436" title="uf8e3436"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p><strong>vmware-server-console</strong>(以下VSC)をインストールした。<br />
バーチャルサーバにログインすると、&quot;_&quot;(アンダーバー)や矢印のキーが効かなくなってしまう。<br />
一度抜けて、ローカル(VSCが入っているPC)のキーコードを見る。<br />
以下のコマンドを実行する。</p>
<div><pre>% xev</pre></div>
<p>キーを打ったり、マウスを動かしたりすると色々と文字列が出る。<br />
例えば、&quot;_&quot;を打つと以下のような出力になる。</p>
<div><pre>KeyRelease event, serial 30, synthetic NO, window 0x240.....
  state 0x1, keycode 211 (keysym 0x5f, underscore),.....
  XLookupString gives 1 bytes: (5f) &quot;_&quot;</pre></div>
<p>その中の<strong>keycode</strong>の後の番号がキーコード。<br />
これを割り当ててやると、&quot;_&quot;が出力されるようになる。<br />
日本語キーボードの場合は、<strong>${VSC_INSTALL_PATH}/lib/vmware-server-console/xkeymap/jp106</strong>を参照する。<br />
<strong>${VSC_INSTALL_PATH}</strong>はVSCをインストールしたディレクトリ。<br />
個人の環境によって少々異なると思う。</p>
<div><pre>Print                   = 0x137
KP_Divide               = 0x135
Alt_R                   = 0x138
Meta_R                  = 0x138
F21                     = 0x15b
Super_L                 = 0x15b
F22                     = 0x15c
Super_R                 = 0x15c
Menu                    = 0x15d
Hyper_R                 = 0x15d
Hiragana_Katakana       = 0x070
kana_RO                 = 0x073
.......................
.......................</pre></div>
<p>その中の<strong>kana_RO</strong>という行の右の値を覚えておく。<br />
この値とさっきのキーコード(ここでは211)を組み合わせる設定を<strong>~/.vmware/preferences</strong>に書く。</p>
<div><pre>xkeymap.useKeycodeMapIfXFree86 = true
xkeymap.keycode.211 = 0x073</pre></div>
<p>他のキーも、</p>
<ol><li>キーコードを探す。</li>
<li>キーマップを探す。</li>
<li>それぞれの値の組合せをpreferencesに書く。</li></ol>
<p>でいけると思う。<br />
自分のところの矢印キーはこんな感じになった。</p>
<div><pre>xkeymap.keycode.111 = 0x148
xkeymap.keycode.113 = 0x14b
xkeymap.keycode.114 = 0x14d
xkeymap.keycode.116 = 0x150</pre></div>
<div>&nbsp;</div>
<!--uf8e3436--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>物理サーバから VMware Server へレストア <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FVMware#t4a3e1c2" title="t4a3e1c2"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>サーバ(以下物理サーバ)のダンプを取って、それをVMwareの仮想サーバへレストアするときのメモ。</p>
<p>環境:</p>
<ul><li>ホストOS: Debian (etch)</li>
<li>ゲストOS: RHEL4 or RHEL5</li>
<li>物理サーバOS: ゲストOSと同じ(当然ながら)</li>
<li>VMware バージョン: VMware Server 1.0.7</li></ul>
<p>用意するもの:</p>
<ul><li>ゲストOSのインストールCD</li>
<li>Knoppix: ※今回使用したバージョンは、<strong>5.1.1J</strong></li></ul>
<p>VMware Server のインストール方法は &quot;別のページ:./debian#vmserver に書いてある。</p>
<p>物理サーバのパーティション構成: ※サイズは使用量</p>
<div><pre>/dev/sda1 /boot  16MB
/dev/sda2 /usr  1.6GB
/dev/sda3 /     238MB
/dev/sda5 /opt  580MB
/dev/sda6 /home 150MB
/dev/sda7 swap    1GB
/dev/sda8 swap    1GB
/dev/sda9 /var    4GB</pre></div>
<p>まずはパーティション毎にダンプを取得する。</p>
<div><pre>% dump -0f - /dev/sda1 | gzip &gt; dump_boot.gz
% dump -0f - /dev/sda2 | gzip &gt; dump_usr.gz
% dump -0f - /dev/sda3 | gzip &gt; dump_root.gz
% dump -0f - /dev/sda5 | gzip &gt; dump_opt.gz
% dump -0f - /dev/sda6 | gzip &gt; dump_home.gz
% dump -0f - /dev/sda9 | gzip &gt; dump_var.gz</pre></div>
<p>取得したダンプは他のサーバでNFSでマウントできるようにしておくこと。<br />
次にVMwareが入っているマシンへ行って新規に仮想マシンを作成する。<br />
操作方法は省略するが、注意点だけ以下に記載する。</p>
<ul><li>RHEL5の場合、仮想ハードディスクのタイプは<strong>IDE</strong>を選ぶ。今回のケースでは<strong>SCSI</strong>(推奨となっているが)では動作しなかった。</li>
<li>RHEL4は<strong>SCSI</strong>で動作した。</li>
<li>仮想ハードディスクの容量は物理サーバの使用量よりは大きく取っておく。パーティションサイズと同じにする必要はない。</li></ul>
<p>次は作成した仮想サーバを<strong>OS(ここではRHEL4 or 5)のインストールCDを使って</strong>起動する。<br />
インストール画面に行くと思うのでプロンプトのところで以下を入力。</p>
<div><pre>linux rescue</pre></div>
<p>そうするとレスキュー画面に行く。<br />
IPの設定ダイアログも出るのでネットワークにつながるようにしておくこと。<br />
シェルのプロンプトへいくので、パーティションとファイルシステムを作成する。<br />
物理サーバと同じパーティション番号にしておくと良い。<br />
容量はさっきも言った通りダンプが入る大きさならOK。<br />
スワップも動けば適当で(小さくしても)良いと思う。</p>
<div><pre>% fdisk /dev/hda
% mke2fs -j /dev/hda1
% mke2fs -j /dev/hda2
% mke2fs -j /dev/hda3
% mke2fs -j /dev/hda5
% mke2fs -j /dev/hda6
% mke2fs -j /dev/hda9</pre></div>
<p>ここで一度仮想サーバをシャットダウンする。<br />
それから今度はKnoppixで起動するのだが、ここでまた注意点を記述する。</p>
<ul><li><strong>OSのインストールCDを使用して</strong>パーティション・ファイルシステムの作成する。</li></ul>
<ul><li>Knoppixでもできると思われるかもしれないが、今回のケースだとKnoppixの<strong>fsck</strong>や<strong>mkfs</strong>のバージョンが新し過ぎて実際の起動時に固まってしまったため。&lt;br /&gt;レストアしようとするOSの<strong>fsck</strong>や<strong>mkfs</strong>のバージョンがKnoppixのものより新しければ、Knoppixを最初に起動してファイルシステムを作っても動くだろう。</li></ul>
<p>と、いうわけでここからKnoppixで仮想サーバを起動して作業する。<br />
Knoppixのブートプロンプトで、</p>
<div><pre>knoppix dma 2</pre></div>
<p>として、起動したら作成したファイルシステムをマウントする。<br />
hdaやsdaなどは各自の環境に置き換えること。</p>
<div><pre>% mount -t ext3 /dev/hda1 /mnt/hda1
% mount -t ext3 /dev/hda1 /mnt/hda2
% mount -t ext3 /dev/hda1 /mnt/hda3
% mount -t ext3 /dev/hda1 /mnt/hda5
% mount -t ext3 /dev/hda1 /mnt/hda6
% mount -t ext3 /dev/hda1 /mnt/hda9</pre></div>
<p>最初に取得しておいたダンプを置いてあるサーバにNFSマウントする。</p>
<div><pre>% mkdir /mnt/nfsdir
% /etc/init.d/portmap start
% /etc/init.d/nfs-common start
% mount -t nfs nfsserver:/foo/bar/dir /mnt/nfsdir

# &quot;nfsserver&quot;は任意のマシン名。
# &quot;/foo/bar/dir&quot;はマウントするディレクトリ。</pre></div>
<p>マウントできたら、レストアする。</p>
<div><pre>% cd /mnt/hda1
% gunzip -c /mnt/nfsdir/dump_boot.gz | restore -xf -
% cd /mnt/hda2
% gunzip -c /mnt/nfsdir/dump_usr.gz | restore -xf -
% cd /mnt/hda3
% gunzip -c /mnt/nfsdir/dump_root.gz | restore -xf -
% cd /mnt/hda5
% gunzip -c /mnt/nfsdir/dump_opt.gz | restore -xf -
% cd /mnt/hda6
% gunzip -c /mnt/nfsdir/dump_home.gz | restore -xf -
% cd /mnt/hda9
% gunzip -c /mnt/nfsdir/dump_var.gz | restore -xf -</pre></div>
<p>それからマウントした仮想ハードディスクをアンマウント。</p>
<div><pre>% umount /mnt/hda1
% umount /mnt/hda2
% umount /mnt/hda3
% umount /mnt/hda5
% umount /mnt/hda6
% umount /mnt/hda9</pre></div>
<p><strong>chroot</strong>するために以下のように本物のディレクトリ構成っぽく(？)マウントし直す。<br />
一番最初に&quot;/&quot;をマウントして、その後でそれぞれのパーティションをマウントすること。</p>
<div><pre>% mkdir /mnt/chroot_server
% mount -t ext3 /dev/hda3 /mnt/chroot_server
% mount -t ext3 /dev/hda1 /mnt/chroot_server/boot
% mount -t ext3 /dev/hda2 /mnt/chroot_server/usr
% mount -t ext3 /dev/hda5 /mnt/chroot_server/opt
% mount -t ext3 /dev/hda6 /mnt/chroot_server/home
% mount -t ext3 /dev/hda9 /mnt/chroot_server/var</pre></div>
<p><strong>chroot</strong>する。</p>
<div><pre>% chroot /mnt/chroot_server</pre></div>
<p>以下に編集するファイルをリストする(編集方法はまた後日)。<br />
元のサーバのパーティション名を現在のものに書き換えるのが主。</p>
<ul><li>/boot/grub/menu.lst</li>
<li>/boot/grub/device.map</li>
<li>/etc/fstab</li>
<li>/etc/mtab</li></ul>
<p>元のサーバで使用していたNICの代わりにVMwareの仮想NICのモジュールをロードするように<strong>/etc/modprobe.conf</strong>の<strong>ethX</strong>の部分を変更する。</p>
<div><pre>alias eth0 pcnet32
alias eth1 pcnet32</pre></div>
<p>ここでKnoppixを終了し、再びOSのインストールCDを使って、レスキューモードで起動する。<br /></p>
<p>起動したら、<strong>chroot</strong>する。</p>
<div><pre>% chroot /mnt/sysimage</pre></div>
<p>SCSIのモジュールも合ったものをロードするように<strong>modprobe.conf</strong>を編集する。<br />
OSのインストールCDを使ってレスキューモードで起動した時に、ロードされるモジュールが出力されているので、それを参考にすると良い。<br />
自分はこのように書き換えた。</p>
<div><pre>alias scsi_hostadapter mptbase
alias scsi_hostadapter1 mptspi
alias scsi_hostadapter2 mptscsi
alias scsi_hostadapter3 ata_piix</pre></div>
<p>もう1台やった時はこんな風になった。</p>
<div><pre>alias scsi_hostadapter mptbase
alias scsi_hostadapter1 mptctl
alias scsi_hostadapter2 mptscsih
alias scsi_hostadapter3 ata_piix</pre></div>
<p>カーネルのバージョンによって多少変わってくるらしい。<br />
上記で動作しているが、必要ないものを無駄にロードしている可能性もある。</p>
<p><strong>modprobe.conf</strong>の編集が終わったら<strong>initrdイメージ</strong>を作り直す。</p>
<div><pre>% cd /boot
% mkinitrd initrd-new.img 2.6.9-20.0.2.ELsmp

# initrd-new.img : 新規に作成するイメージの名前。任意。
# 2.6.9..... : 使用しているカーネルのバージョン名。
# /lib/modules以下を参考に。</pre></div>
<p><strong>/boot/grub/menu.lst</strong>を編集する。<br />
新規に作成したinitrdイメージ(<strong>initrd-new.img</strong>)を読み込むようにすること。</p>
<p>あとはGRUBをMBRにインストールする。</p>
<div><pre>% grub-install /dev/hda</pre></div>
<p>chrootを抜ける。</p>
<div><pre>% exit</pre></div>
<p>とりあえずここまでで起動はしてNICは認識されると思う。<br />
途中で止まるような場合は、<strong>menu.lst</strong>の設定を見直したり、<strong>mkinitrd</strong>でイメージを作成しなおしたりしてみると改善されるかも。</p>
<p>手順を見ていくと、OSのCDイメージでNFSマウントさえ出来れば、Knoppix必要ないね。<br />
もしかしたらやれるのかもしれないが、未確認。</p><!--t4a3e1c2--></div>


 ]]></content:encoded>
 <dc:identifier>http://www.tagus.org/modules/xpwiki/index.php?LinuxDoc%2FVMware</dc:identifier>

</item>
<item rdf:about="http://www.tagus.org/modules/xpwiki/index.php?LinuxDoc%2FUbuntu">
 <title>LinuxDoc/Ubuntu</title>
 <link>http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FUbuntu</link>
 <dc:date>2011-07-27T14:45:31+09:00</dc:date>
 <dc:creator>sleep</dc:creator>
 
 <description>
 
  Table of contents
 
 
   概要 
 目次 
 USBメモリへのインストール  
 ちょっとした設定のメモ  
 ホームディレクトリの整理 
 テキストログイン 
 ブート画面もテキストにする 
 時刻調整 
 言語設定 
 SSH key 
 
概要  
UbuntuのTips
リンク
ubuntu
ubuntu Japanese Team
目次  
USBメモリへのインストール
ちょっとした設定のメモ
&amp;nbsp;
USBメモリへのインストール   
日本語版</description>
 <content:encoded><![CDATA[
 <div>
<div>
 <div>
  Table of contents
 </div>
 <div>
  <ul><li> 概要 
<ul><li> 目次 </li></ul></li>
<li> USBメモリへのインストール  </li>
<li> ちょっとした設定のメモ  
<ul><li> ホームディレクトリの整理 </li>
<li> テキストログイン </li>
<li> ブート画面もテキストにする </li>
<li> 時刻調整 </li>
<li> 言語設定 </li>
<li> SSH key </li></ul></li></ul>
 </div>
</div>
<h2>概要  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FUbuntu#ud724683" title="ud724683"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>UbuntuのTips</p>
<p>リンク</p>
<ul><li><a href="http://www.ubuntu.com/" title="www.ubuntu.com/" target="_blank">ubuntu</a></li>
<li><a href="http://www.ubuntulinux.jp/" title="www.ubuntulinux.jp/" target="_blank">ubuntu Japanese Team</a></li></ul>
<!--ud724683--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>目次  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FUbuntu#r2d5ec48" title="r2d5ec48"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h3>
<ul><li>USBメモリへのインストール</li>
<li>ちょっとした設定のメモ</li></ul>
<div>&nbsp;</div>
<!--r2d5ec48--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>USBメモリへのインストール <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FUbuntu#tec0c460" title="tec0c460"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>日本語版の8.10での話。</p>
<p>Live CDで起動して、「インストール」アイコンをクリック。<br />
インストール先に差してあるUSBメモリを指定。<br />
「拡張」ってところで<strong>grub</strong>のインストール先もUSBメモリを指定。</p>
<p>これだけで良かったはずだけど、「フォーマットに失敗...」みたいなメッセージが出てしまった。<br />
一度再起動して、<strong>fdisk</strong>でパーティションを手動で切る。</p>
<div><pre>% fdisk /dev/sdb</pre></div>
<p>それからファイルシステムを作成。</p>
<div><pre>% mke2fs -j /dev/sdb1
% mke2fs -j /dev/sdb2
% mkswap /dev/sdb3</pre></div>
<p>これでインストールをやり直したらうまくいった。<br />
USBメモリで起動後、アップデート。</p>
<div><pre>% apt-get update
% apt-get -u upgrade</pre></div>
<p>追加パッケージをインストール。</p>
<div><pre>% apt-get install lv rxvt rxvt-ml rxvt-unicode-ml 
      vim vim-nox zsh iproute hping3 msmtp ncftp 
      imagemagick gpicview network-manager-' startupmanager</pre></div>
<p>いらないものをアンインストール。<br />
<strong>tracker</strong>というのはデスクトップの検索をしてくれるらしい。<br />
重いからいらないというような記述を見つけたので削除。</p>
<div><pre>% apt-get --purge remove tracker</pre></div>
<!--tec0c460--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>ちょっとした設定のメモ <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FUbuntu#kd727256" title="kd727256"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<!--kd727256--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>ホームディレクトリの整理  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FUbuntu#vf48f1f6" title="vf48f1f6"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h3>
<p>ホームディレクトリに、ごちゃごちゃと日本語のディレクトリができている。<br />
コマンドラインだと扱いずらいので英語名に変更。</p>
<div><pre>% LANG=C xdg-user-dirs-gtk-update</pre></div>
<!--vf48f1f6--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>テキストログイン  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FUbuntu#g415b99c" title="g415b99c"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h3>
<p>テキストログインにしたかったので、<strong>gdm</strong>を起動しないようにする。</p>
<div><pre>% update-rc.d -f gdm remove</pre></div>
<!--g415b99c--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>ブート画面もテキストにする  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FUbuntu#k2f1fdd7" title="k2f1fdd7"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h3>
<p>startup-managerから設定。</p>
<!--k2f1fdd7--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>時刻調整  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FUbuntu#g273d2a8" title="g273d2a8"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h3>
<p>BIOSの時刻が9時間戻ってしまう(UTCになってしまう)。<br />
<strong>/etc/default/rcS</strong>の以下の行を編集して修正する。</p>
<div><pre>UTC=no</pre></div>
<p>それから以下を実行。</p>
<div><pre>% /etc/init.d/hwclock.sh restart</pre></div>
<!--g273d2a8--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>言語設定  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FUbuntu#tca8a39e" title="tca8a39e"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h3>
<p>ターミナルからコマンドラインでいじっている時は、メッセージが日本語なのがうっとおしい。<br />
<strong>.bash_profile</strong>とか<strong>.zshenv</strong>に以下のように書いてみた。</p>
<div><pre>LANG=en_US.UTF-8
export LANG</pre></div>
<p>ログインしなおしてみると、gnomeのメニューなんかも全て英語になってしまった。<br />
以下のようにしても同じだった。</p>
<div><pre>LC_MESSAGES=en_US.UTF-8
export LC_MESSAGES</pre></div>
<p>そこで、上記の2行だけを書いたファイルを作成(ここでは.lcmessages)。<br />
それから立ち上げたターミナルで次のようにする。</p>
<div><pre>% source .lcmessages</pre></div>
<p>いちいち手動でやるのがなんだかいまいち…。<br />
それと、ターミナルから<strong>firefox</strong>とか立ち上げるとメニューとかが英語になる。<br />
<strong>date</strong>コマンドの表示も日本語がいやだったので、<strong>.lcmessages</strong>は最終的にこうなった。</p>
<div><pre>LC_MESSAGES=en_US.UTF-8
LC_TIME=en_US.UTF-8
export LC_MESSAGES LC_TIME</pre></div>
<!--tca8a39e--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>SSH key  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FUbuntu#rca282e9" title="rca282e9"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h3>
<p>テキストログインで<strong>.bash_profile</strong>とか<strong>.zprofile</strong>で設定した<strong>ssh-agent</strong>が動いているにもかかわらず、ターミナルを立ち上げるとそれが効いてない。<br />
上で作成した<strong>.lcmessages</strong>にこれも追記した。</p>
<div><pre>LC_MESSAGES=en_US.UTF-8
LC_TIME=en_US.UTF-8
export LC_MESSAGES LC_TIME

eval `ssh-agent`
ssh-add .ssh/id_dsa</pre></div><!--rca282e9--></div>


 ]]></content:encoded>
 <dc:identifier>http://www.tagus.org/modules/xpwiki/index.php?LinuxDoc%2FUbuntu</dc:identifier>

</item>
<item rdf:about="http://www.tagus.org/modules/xpwiki/index.php?LinuxDoc%2FSquid">
 <title>LinuxDoc/Squid</title>
 <link>http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FSquid</link>
 <dc:date>2011-07-27T14:41:43+09:00</dc:date>
 <dc:creator>sleep</dc:creator>
 
 <description>
 
  Table of contents
 
 
   概要 
 リンク 
 目次 
 インストール  
 ログの見方  
 ログ解析  
 webalizer  
 sarg  
 
概要  
プロキシサーバのsquidのTips
リンク  
squid
目次  
インストール
ログの見方
ログ解析
webalizer
sarg
&amp;nbsp;
インストール   
ソースから構築・インストール。
% tar xvfj squid-2.5.STABLE10.tar.bz2
% cd squid</description>
 <content:encoded><![CDATA[
 <div>
<div>
 <div>
  Table of contents
 </div>
 <div>
  <ul><li> 概要 
<ul><li> リンク </li>
<li> 目次 </li></ul></li>
<li> インストール  </li>
<li> ログの見方  </li>
<li> ログ解析  
<ul><li> webalizer  </li>
<li> sarg  </li></ul></li></ul>
 </div>
</div>
<h2>概要  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FSquid#u3e9b90e" title="u3e9b90e"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>プロキシサーバのsquidのTips</p>
<!--u3e9b90e--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>リンク  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FSquid#dc941202" title="dc941202"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h3>
<ul><li><a href="http://www.squid-cache.org/" title="www.squid-cache.org/" target="_blank">squid</a></li></ul>
<!--dc941202--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>目次  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FSquid#f62f30b1" title="f62f30b1"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h3>
<ul><li>インストール</li>
<li>ログの見方</li>
<li>ログ解析
<ul><li>webalizer</li>
<li>sarg</li></ul></li></ul>
<div>&nbsp;</div>
<!--f62f30b1--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>インストール <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FSquid#g5d1a51c" title="g5d1a51c"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>ソースから構築・インストール。</p>
<div><pre>% tar xvfj squid-2.5.STABLE10.tar.bz2
% cd squid-2.5.STABLE10
% ./configure
% make
% make install</pre></div>
<p>コンフィグファイルを編集。編集した行のみ書く。</p>
<div><pre># リクエストポートの設定。
# 任意のポートを指定
http_port 1234

# ICPポートの設定。0にすると無効になる。
icp_port 0

# キャッシュディレクトリの指定。
cache_dir ufs /var/cache/squid 100 16 256

# アクセスログの設定。
cache_access_log /var/log/squid/access.log

# キャッシュログの設定。
cache_log /var/log/squid/cache.log

# キャッシュストアログの設定。
cache_store_log /var/log/squid/store.log

# pidファイルの設定。
pid_filename /var/run/squid/squid.pid

# なぜかこれを設定しないと起動できなかった。
# 通常は/etc/hostsを読むらしいんだけど、自分のはちゃんと設定されてないらしい。
visible_hostname www.hogehoge.net

# &quot;acl なんたらかんたら&quot;って書いてある行に追加。
# アクセスしてくるクライアントのIPアドレスなりドメイン名なりで指定する。
# &quot;our_networks&quot;は任意の名前でいい。
acl our_networks src 123.123.123.123/29
acl our_networks src 10.10.10.0/24

# ↑で設定した&quot;our_networks&quot;からの接続を許可。
http_access allow our_networks

# それ以外は拒否。多分デフォルトで書いてあると思う。
# 必ず↑の下に書く事。
http_access deny all

# 何かあったときにメールを送る送信先。
# ここでは&quot;root&quot;にした。
cache_mgr root

# &quot;root&quot;でsquidをスタートした後有効になるユーザ。
# デフォルトは&quot;nobody&quot;
cache_effective_user nobody</pre></div>
<p>インストール完了後、confファイルに合わせてキャッシュとログのディレクトリを作成。<br />
confファイル中の&quot;<strong>cache_effective_user</strong>&quot;に設定されているユーザの書き込み権限がなくてはいけない。<br />
ここではデフォルトの<strong>nobody</strong>ユーザのまま。</p>
<div><pre>% mkdir -m 770 /var/log/squid
% chown root:nobody /var/log/squid
% mkdir -m 770 /var/cache/squid
% chown root:nobody /var/cache/squid</pre></div>
<p><strong>捕捉</strong><br />
上記ではセキュリティ上問題があるかもしれない。<br />
nobody&quot;だとphpなんかでいじれる可能性もあると思う。<br />
squid&quot;ユーザとグループを作成した方がいいかもね。</p>
<p>これで起動するはずだったんだけど、なぜか起動しなかった。<br />
&quot;<strong>-z</strong>&quot;オプションをつけてキャッシュディレクトリがなければ作成してやらなければいけないらしい。</p>
<div><pre>% /usr/local/squid/sbin/squid -z &amp;</pre></div>
<p>3回目からは&quot;-z&quot;オプションはいらない。<br />
マシン起動時にsquidも起動させるには以下の文を/etc/rc.local(RedHatの場合)に書いておく。</p>
<div><pre>if [ -x /usr/local/squid/bin/squid ]; then
	/usr/local/squid/bin/squid &amp;
fi</pre></div>
<p>起動方法については、他にもいろいろやり方はあると思う。</p>
<div>&nbsp;</div>
<!--g5d1a51c--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>ログの見方 <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FSquid#i562f66d" title="i562f66d"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>自分なりのメモ。</p>
<p><strong>TCP_HIT</strong>
要求された情報がキャッシュの中から見付かった。</p>
<p><strong>TCP_MISS</strong>
キャッシュの中にはなかったのでオリジナルの情報を持つサーバにアクセスした。</p>
<p><strong>TCP_REFRESH_HIT</strong>
情報はキャッシュの中にあったが、すでに古くなっていたためオリジナルの情報にIf-Modified-Since付きでアクセスした。<br />
しかしサーバからは「キャッシュの中にある状態から更新されていない」という返事があった。</p>
<p><strong>TCP_REFRESH_MISS</strong>
上と同様にサーバにアクセスしより新しい情報を得られた。</p>
<p><strong>TCP_REF_FAIL_HIT</strong>
上と同様にサーバにアクセスしたがアクセスに失敗したためにキャッシュ中の古い情報をクライアントに送った。</p>
<p><strong>TCP_CLIENT_REFRESH</strong>
クライアントからPragma: no-cache付きのアクセスが行われたため、キャッシュ中に情報があるかどうかは関係なくオリジナルのサーバにアクセスした。</p>
<p><strong>TCP_IMS_HIT</strong>
クライアントからIf-Modified-Since付きのアクセスがあったため、サーバにIf-Modified-Since付きでアクセスを行ったがキャッシュ中の情報が十分新しかったためそれを返した。</p>
<p><strong>TCP_IMS_MISS</strong>
上と同様にアクセスした結果、より新しい情報が得られた。</p>
<p><strong>TCP_SWAPFAIL</strong>
キャッシュ中にあるはずの情報が実はなかった(エラー)。</p>
<p><strong>TCP_DENIED</strong>
そのアクセスを拒絶した。</p>
<div>&nbsp;</div>
<!--i562f66d--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>ログ解析 <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FSquid#p665ff77" title="p665ff77"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>以下の二つのツールを試してみた。</p>
<ul><li>webalizer</li>
<li>sarg</li></ul>
<p>ログはRHELのサーバから持ってきて、Debian(etch)上で解析を行う。</p>
<!--p665ff77--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>webalizer <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FSquid#w9e7a206" title="w9e7a206"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h3>
<p>インストール。</p>
<div><pre>% apt-get install webalizer

※画像関係のライブラリがSuggestedでずらずら上がってきたので全部入れた。</pre></div>
<p><strong>/etc/webalizer.conf</strong>と言うのが設定ファイル。<br />
コマンドラインで指定しない限りは上記ファイルを見に行くようだ。<br />
今回は違う場所へコピーして自分なりに編集を加える。</p>
<div><pre>% cp /etc/webalizer.conf ~/.webalizer_squid.conf</pre></div>
<p>以下は自分が編集した箇所の抜粋。<br />
いまいちよくわかっていない箇所もある。<br />
わかる所だけコメントをつける。</p>
<div><pre># Cronで実行する時は、下記ログファイルを見に行くらしい。
# コマンドラインで手動で使用するときは、ログファイルを明示的に指定してやる。
# よって、今回はコメントアウト。
#LogFile /var/log/apache2/access.log.1

# clf : Apache形式のログファイルを解析。
# squid : Squid形式のログファイルを解析。
# ftp : ftp形式のログファイルを解析。
LogType	squid

# 結果の出力先。
OutputDir /var/www/webalizer/myhostname

# 履歴を記録するファイル。
# 複数のサーバのログを解析するときは一意な名前にしておく。
HistoryName	webalizer_squid.hist

# インクリメント。
Incremental	yes

# インクリメントの履歴を記録するファイル。
IncrementalName	webalizer_squid.current

# 出力結果に表示されるタイトル。
ReportTitle Usage statistics for

HostName myhostname

# それぞれ上位何位まで表示させるか。
#TopSites	100
#TopKSites       10
TopURLs	100
#TopKURLs        10
#TopReferrers    30
#TopAgents       15
#TopCountries    30
TopEntry	300
#TopExit         10
#TopSearch       20
#TopUsers        20

PageType	htm'
PageType	cgi
PageType	php3
PageType	php

# &quot;Hide&quot;は集計はするが、出力はしない。
# ここでは画像ファイルは全て出力しないようにしている。
HideURL		'.gif
HideURL		'.GIF
HideURL		'.jpg
HideURL		'.JPG
HideURL		'.png
HideURL		'.PNG
HideURL		'.ra

# &quot;Ignore&quot;は集計にも含めない。
IgnoreSite	localhost

#IgnoreURL example.com
#IgnoreURL 192.168.1.xxx

IgnoreReferrer	localhost

#GroupDomains	1

# &quot;Group&quot;は文字通り一つのグループとして集計してくれる。
#GroupURL	mail.yahoo.co.jp
#GroupURL	mail.yahoo.com
#GroupURL	mail.goo.ne.jp
#GroupURL	mail.google.com
#GroupURL	mail.excite.co.jp

#HideURL	mail.yahoo.co.jp
#HideURL	mail.yahoo.com
#HideURL	mail.goo.ne.jp
#HideURL	mail.google.com
#HideURL	mail.excite.co.jp

# テキストにダンプすることもできる。
DumpPath	/var/www/webalizer/renoir/dump
#DumpHeader	no
#DumpExtension	tab

# この項目のうちどれか一つを&quot;yes&quot;にしないと、ダンプしてくれない。
#DumpSites	no
#DumpURLs	no
#DumpReferrers	no
#DumpAgents	no
#DumpUsers	no
#DumpSearchStr  no</pre></div>
<p>編集後、以下のようにconfファイルとログファイルを指定して実行してみた。</p>
<div><pre>% webalizer -c ~/.webalizer_squid.conf ${logdir}/access.log.1</pre></div>
<p>以下のようなエラーが立て続けに出力される。</p>
<div><pre>Error: Skipping record (bad date): 
        [01/jan/1970:09:03:12 -0000] ......
        No valid records found!</pre></div>
<p>おかしいなと思ってログファイルの中身を見てみた。<br />
以下のような出力になっていた。</p>
<div><pre>192.168.xxx.xx - - [17/Mar/2008:04:02:34 +0900] &quot;GET .....
10.10.xxx.xxx - - [17/Mar/2008:04:02:39 +0900] &quot;GET .....
192.168.xxx.xxx - - [17/Mar/2008:04:02:41 +0900] &quot;GET .....</pre></div>
<p>Squidのデフォルトでは下記のようにUNIXタイムスタンプ形式で日時が記録される。</p>
<div><pre>1205995824.832     52 192.168.xx.xxx TCP_MISS/302 .....
1205995824.972     43 192.168.xxx.xxx TCP_MISS/302 ....
1205996028.900   1313 192.168.xxx.xxx TCP_REFRESH_MISS/</pre></div>
<p>解析するサーバの<strong>squid.conf</strong>には以下の記述があった。<br />
そのため、Apacheと同様の形式で出力されていたようだ。</p>
<div><pre>emulate_httpd_log on</pre></div>
<p>と、いうことで再度<strong>~/.webalizer_squid.conf</strong>を書き換える。</p>
<div><pre>LogType clf</pre></div>
<p>これでなんとか解析結果が出力されるようになった。</p>
<div><pre>% webalizer -c ~/.webalizer_squid.conf ${logdir}/access.log.1</pre></div>
<p>ただし、本来ならリファラーが出力されていなければいけないフィールドの値がおかしいらしく、以下のエラーが頻発する。</p>
<div><pre>Warning: Truncating oversized referrer field.....</pre></div>
<p>まあ、でもとりあえず取れたからよしとしよう。</p>
<!--w9e7a206--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>sarg <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FSquid#h983a83d" title="h983a83d"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h3>
<p>後日...書かないかも。</p><!--h983a83d--></div>


 ]]></content:encoded>
 <dc:identifier>http://www.tagus.org/modules/xpwiki/index.php?LinuxDoc%2FSquid</dc:identifier>

</item>
<item rdf:about="http://www.tagus.org/modules/xpwiki/index.php?LinuxDoc%2FShell">
 <title>LinuxDoc/Shell</title>
 <link>http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FShell</link>
 <dc:date>2011-07-27T14:36:45+09:00</dc:date>
 <dc:creator>sleep</dc:creator>
 
 <description>
 
  Table of contents
 
 
   概要 
 リンク 
 目次 
 Unixtimeの変換  
 xargs  
 ループ制御: break, continue  
 diffでパッチ作成  
 リモート接続のタイムアウト  
 Perlの呼出し  
 リダイレクト  
 条件の評価  
 変数の文字数  
 配列の要素数  
 zshrc  
 シェルスクリプトのデバッグ  
 getopts  
 IPアドレスを正規表現で記述  
 
概要  
主にBシェル系のTip</description>
 <content:encoded><![CDATA[
 <div>
<div>
 <div>
  Table of contents
 </div>
 <div>
  <ul><li> 概要 
<ul><li> リンク </li>
<li> 目次 </li></ul></li>
<li> Unixtimeの変換  </li>
<li> xargs  </li>
<li> ループ制御: break, continue  </li>
<li> diffでパッチ作成  </li>
<li> リモート接続のタイムアウト  </li>
<li> Perlの呼出し  </li>
<li> リダイレクト  </li>
<li> 条件の評価  </li>
<li> 変数の文字数  </li>
<li> 配列の要素数  </li>
<li> zshrc  </li>
<li> シェルスクリプトのデバッグ  </li>
<li> getopts  </li>
<li> IPアドレスを正規表現で記述  </li></ul>
 </div>
</div>
<h2>概要  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FShell#w98eb32d" title="w98eb32d"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>主にBシェル系のTips</p>
<!--w98eb32d--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>リンク  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FShell#c995a789" title="c995a789"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h3>
<!--c995a789--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>目次  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FShell#q5deb60e" title="q5deb60e"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h3>
<ul><li>Unixtimeの変換</li>
<li>xargs</li>
<li>ループ制御: break, continue</li>
<li>diffでパッチ作成</li>
<li>リモート接続のタイムアウト</li>
<li>Perlの呼出し</li>
<li>リダイレクト</li>
<li>条件の評価</li>
<li>変数の文字数</li>
<li>配列の要素数</li>
<li>zshrc</li>
<li>シェルスクリプトのデバッグ</li>
<li>getopts</li>
<li>IPアドレスを正規表現で記述</li></ul>
<div>&nbsp;</div>
<!--q5deb60e--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>Unixtimeの変換 <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FShell#e94ff356" title="e94ff356"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>通常の日付を<strong>unixtime</strong>へ変換するには<strong>date</strong>コマンドが使える。</p>
<div><pre>% date +'%s'

1216274712

% date -d '2008-01-01 00:00' +'%s'

1199113200</pre></div>
<p>逆を今まで知らなかった。<br />
<strong>date</strong>では出来ないらしい。<strong>awk</strong>でいける。</p>
<div><pre>% echo 1216274712 | awk '{print strftime(&quot;%c&quot;,$1)}'

Thu 17 Jul 2008 03:05:12 PM JST

% echo 1199113200 | awk '{print strftime(&quot;%c&quot;,$1)}'

Tue 01 Jan 2008 12:00:00 AM JST

% echo 1199113200 | awk '{print strftime(&quot;%Y-%m-%d %H:%M:%S&quot;,$1)}'

2008-01-01 00:00:00</pre></div>
<div>&nbsp;</div>
<!--e94ff356--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>xargs <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FShell#r5134dac" title="r5134dac"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p><strong>grep</strong>などでディレクトリ全体を指定すると、「引数が長すぎる」とエラーを返されることがある。</p>
<div><pre>% grep &quot;str&quot; Maildir/'

zsh: argument list too long: egrep</pre></div>
<p>こんな時は<strong>xargs</strong>というコマンドを使用すると良いらしい。以下のように使用する。</p>
<div><pre>% echo Maildir/' | xargs grep &quot;srt&quot;

% echo Maildir/' | xargs grep &quot;srt&quot; /dev/null</pre></div>
<p><strong>grep</strong>の引数に<strong>/dev/null</strong>を指定しておくと、検索でヒットした文字列の前にファイル名が表示される。</p>
<p><strong>find</strong>を使用してそれに<strong>grep</strong>をかける時もある。</p>
<div><pre>% find Maildir -exec grep &quot;str&quot; {} ;</pre></div>
<p>上記だとファイルの数だけ<strong>grep</strong>が実行されて時間がかかる。<br />
下記のようにすると実行時間の短縮になるらしい。</p>
<div><pre>% find Maildir -print | xargs grep &quot;str&quot; /dev/null</pre></div>
<p>しかし、<strong>xargs</strong>は入力を全て終えるまで(正確にはARG_MAXを越えるまで)<strong>grep</strong>を実行しないため、体感的に遅く感じることもある。<br />
そういうときは、<strong>-n</strong>オプションを指定してやると良い。</p>
<div><pre>% find Maildir -print | xargs -n 10 grep &quot;str&quot; /dev/null</pre></div>
<p>上記のようにしておくと、10回入力があるたびに<strong>grep</strong>を実行してくれる。</p>
<div>&nbsp;</div>
<!--r5134dac--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>ループ制御: break, continue <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FShell#p45f6ba3" title="p45f6ba3"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p><strong>for</strong>,<strong>while</strong>,<strong>until</strong>などのループから途中で抜けたい時は<strong>break</strong>を使う。<br />
下記のようにすると、<strong>a</strong>しか出力されない。</p>
<div><pre>for str in a b c
	do
	if [ $str = &quot;b&quot; ]; then
		break
	fi
	echo $str
done</pre></div>
<p><strong>continue</strong>はループの中の処理の途中で抜けるが、再度ループの先頭へ戻りたい場合に使用する。<br />
下記のようにすると、<strong>a</strong>と<strong>c</strong>しか出力されない。</p>
<div><pre>for str in a b c
	do
	if [ $str = &quot;b&quot; ]; then
		continue
	fi
	echo $str
done</pre></div>
<div>&nbsp;</div>
<!--p45f6ba3--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>diffでパッチ作成 <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FShell#q5967284" title="q5967284"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p><strong>file1</strong>を元に、<strong>file2</strong>を編集する。</p>
<div><pre># file1

始まり
これはテストで作成したファイルです。
この下の行に一行追加する予定です。
終わり

# file2

始まり
これはテストで作成したファイルです。
この下の行に一行追加する予定です。
一行追加しました。
終わり</pre></div>
<p>パッチは以下のようにして作成できる。</p>
<div><pre>% diff -c file1 file2 &gt; patch1

# patch1

''' file1	2009-03-18 11:44:15.000000000 +0900
--- file2	2009-03-18 11:44:04.000000000 +0900
'''''''''''''''
''' 1,5 ''''
--- 1,6 ----
  始まり
  これはテストで作成したファイルです。
  この下の行に一行追加する予定です。
+ 一行追加しました。
  終わり</pre></div>
<p>パッチを当てるときは、こんな風にしてやれば良い。</p>
<div><pre>% patch file1 patch1</pre></div>
<p>こうすると、<strong>file1</strong>が<strong>file2</strong>と同じ内容になっているはず。</p>
<div>&nbsp;</div>
<!--q5967284--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>リモート接続のタイムアウト <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FShell#yfb81219" title="yfb81219"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>telnetやsshで接続して来ているユーザが一定時間アイドルしている時に切断する。</p>
<p>bashなら<strong>/etc/profile</strong>を編集。</p>
<div><pre>TMOUT=1800 # 数値は秒</pre></div>
<p>cshなら<strong>/etc/csh.cshrc</strong>を編集。</p>
<div><pre>set autologout=30 # 数値は分</pre></div>
<p>まあ、<strong>~/.bashrc</strong>や<strong>~/.cshrc</strong>を編集すれば上書きできちゃうんだけど…。</p>
<p>SSH2同士の通信なら<strong>/etc/ssh/sshd_config</strong>の以下のパラメータが使用できるらしい。</p>
<div><pre>ClientAliveInterval 600
ClientAliveCountMax 3</pre></div>
<p>動作未確認ですが参考まで。</p>
<div>&nbsp;</div>
<!--yfb81219--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>Perlの呼出し <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FShell#o9a93a6f" title="o9a93a6f"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>シェルスクリプトの中でPerlをコマンドで呼び出す。<br />
例えばランダムな数を欲しいときにPerlを使用した場合は、以下のように書く。</p>
<div><pre>#!/bin/sh

n=10
i=`perl -e &quot;print int(rand($n));&quot;` # ここでperlを呼出し

echo $i</pre></div>
<p>上記シェルスクリプトを実行すると、は0から9までのランダムな整数を出力する。</p>
<div>&nbsp;</div>
<!--o9a93a6f--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>リダイレクト <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FShell#taa746a4" title="taa746a4"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>標準出力をfile1へ、標準エラー出力をfile2へ</p>
<div><pre>% command 1&gt; file1 2&gt; file2</pre></div>
<p>標準出力も標準エラー出力もfile_allへ</p>
<div><pre>% command 2&gt;&amp;1 file_all</pre></div>
<p>出力をファイルと画面の両方にだすにはパイプでつないで<strong>tee</strong>と言うコマンドを使う。</p>
<div><pre>% command 2&gt;&amp;1 file_all | tee</pre></div>
<div>&nbsp;</div>
<!--taa746a4--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>条件の評価 <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FShell#q4e08f8b" title="q4e08f8b"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>if文などでの条件評価。</p>
<p>ファイルの評価。</p>
<div><pre>-d ディレクトリ(であれば真)
-f 通常のファイル
-L シンボリックリンク
-r 読み取り可能ファイル
-s ファイルサイズがゼロより大きく、空ではない
-w 書き込み可能ファイル
-u suidビットが設定されているファイル
-x 実行可能ファイル</pre></div>
<p>文字列の評価。</p>
<div><pre>=    2つの文字列が等しい
!=   等しくない
-z   文字列がnull
-n   nullではない</pre></div>
<p>数値の評価。</p>
<div><pre>-eq 等しい
-ne 等しくない
-gt 大きい
-ge 以上
-lt 小さい(未満)
-le 以下</pre></div>
<p>論理演算子。</p>
<div><pre>-a AND
-o OR
!  NOT</pre></div>
<div>&nbsp;</div>
<!--q4e08f8b--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>変数の文字数 <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FShell#b9e18c41" title="b9e18c41"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>変数に入れた文字列の文字数を取得するには、以下のように書けばいいらしい。</p>
<div><pre>#!/bin/sh

string=&quot;hello&quot;
echo ${#string}</pre></div>
<p>上記のスクリプトの結果は5になるはず。</p>
<div>&nbsp;</div>
<!--b9e18c41--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>配列の要素数 <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FShell#i15cbee9" title="i15cbee9"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>例</p>
<div><pre>array=(
	foo1
	foo2
	foo3
)</pre></div>
<p>上記のような配列の要素数を表示するには、以下のようにする。</p>
<div><pre>% echo ${#array[']}</pre></div>
<p>この例の場合、出力は&quot;3&quot;になるはず。</p>
<div>&nbsp;</div>
<!--i15cbee9--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>zshrc <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FShell#q6bdf12e" title="q6bdf12e"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>備忘録として設定内容をぼちぼち書き足していく。<br />
※bashrcから残してあるのもついでに。</p>
<div><pre># 補間機能を有効にする。
# ls -[Tab]とかしてみると良くわかる。
autoload -U compinit
compinit

# cd -[Tab]してみると良くわかる。
setopt auto_pushd
setopt pushd_ignore_dups

# 補間候補を詰めて表示。
setopt list_packed
# aliasを設定したコマンドにも補間機能を使用できるように。
setopt complete_aliases

# ビープ音を鳴らさないようにする
setopt NO_beep

# '/'を自動的に消さないように。
setopt noautoremoveslash

# -v: キーバインドを&quot;vi&quot;ライクにする
# -e: キーバインドを&quot;Emacs&quot;ライクにする
# 明示的に指定しなくても、$EDITORでも判断してくれるらしい
bindkey -v
#bindkey -e

# 上記&quot;-v&quot;を設定すると、Ctrl-Rでインクリメントサーチが効かなくなるので追加
bindkey '^R' history-incremental-search-backward
# 同じく、Alt-qでバッファースタックが効かなくなるので追加。
setopt noflowcontrol
bindkey '^q' push-line-or-edit

# プロキシの設定
http_proxy=&quot;http://proxy.example.com:8080&quot;;export http_proxy
ftp_proxy=&quot;http://proxy.example.com:8080&quot;;export ftp_proxy

# ログアウトすると、コマンド履歴を消去する
SAVEHIST=0

# コマンド履歴を残しておきたいときは以下のように。
#HISTFILE=~/.zsh_history #履歴ファイル
#HISTSIZE=10000
#SAVEHIST=10000
#直前に重複したコマンド履歴を削除
#setopt hist_ignore_dups
#重複したコマンド履歴を削除
#setopt hist_ignore_all_dups
#端末間で履歴を共有
#setopt share_history
#履歴を上書きではなく追記。
#setopt append_history
#履歴をインクリメンタルに追記。
#setopt inc_append_history

# プロンプト
# WINDOWっていうのを使うとscreenを使用するときに番号がでる
PROMPT=&quot;%m${WINDOW:+[$WINDOW]} %~%# &quot;

# lsをカラー表示
eval `dircolors -b .dircolors`
alias ls='ls --color'

# 上記を設定した時は&quot;-c&quot;をつけないとちゃんと表示されない
# 'ls --color=auto'にしておけばいいらしいけど…
alias lv='lv -c'

# ついでに&quot;L&quot;でlvにパイプできるように
# &quot;ls L&quot;で&quot;ls | lv -c&quot;と同じになる
alias -g L='|lv -c'

# さらについでにデフォルトのページャーに
PAGER=&quot;lv -c&quot;</pre></div>
<div>&nbsp;</div>
<!--q6bdf12e--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>シェルスクリプトのデバッグ <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FShell#sd8a7b19" title="sd8a7b19"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>bashの場合、以下のようにする。<br />
実行したいシェルスクリプトが<strong>example.sh</strong>だとすると、</p>
<div><pre>% /bin/bash -x example.sh</pre></div>
<p>以上のように、&quot;-x&quot;を付加する。<br />
<strong>example.sh</strong>の一行目を以下のように編集しても良いらしい。</p>
<div><pre>#!/bin/sh
↓
#!/bin/sh -x</pre></div>
<div>&nbsp;</div>
<!--sd8a7b19--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>getopts <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FShell#a3fd2c32" title="a3fd2c32"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>書き方のメモだけ(良く忘れるので…)。</p>
<p>例</p>
<div><pre>option_a=&quot;false&quot;
option_b=&quot;&quot;

while getopts :ab:c OPTIONS
	do
	case $OPTIONS in
		a) option_a=&quot;true&quot;
			;;
		b) option_b=&quot;$OPTARG&quot;
			;;
		c) echo &quot;this is option -c&quot;
			;;
		?) #usage: echo &quot;`basename $0` [-a|-c] [-b text]&quot;
			exit 1
			;;
	esac
done</pre></div>
<div>&nbsp;</div>
<!--a3fd2c32--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>IPアドレスを正規表現で記述 <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FShell#a804cd01" title="a804cd01"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>こんな感じになるらしい。</p>
<div><pre>((25[0-5]|(2[0-4]|1[0-9]|[1-9])?[0-9]).)
{3}(25[0-5]|(2[0-4]|1[0-9]|[1-9])?[0-9])

# 上記2行を全部つなげる。</pre></div><!--a804cd01--></div>


 ]]></content:encoded>
 <dc:identifier>http://www.tagus.org/modules/xpwiki/index.php?LinuxDoc%2FShell</dc:identifier>

</item>
<item rdf:about="http://www.tagus.org/modules/xpwiki/index.php?LinuxDoc%2FRedHat">
 <title>LinuxDoc/RedHat</title>
 <link>http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FRedHat</link>
 <dc:date>2011-07-27T14:31:12+09:00</dc:date>
 <dc:creator>sleep</dc:creator>
 
 <description>
 
  ページ内コンテンツ
 
 
   概要 
 リンク 
 目次 
 useradd  
 groupadd  
 RPMパッケージ化  
 megaraid2  
 カーネルアップデート時 
 e1000  
 RedHat 9 on kernel 2.6  
 Kickstart  
 adaptec RAID (I2O)  
 Bonding (ボンディング)  
 複数のBonding (ボンディング) 
 src.rpm から SPECファイルだけを取り出す  
 yum  
 </description>
 <content:encoded><![CDATA[
 <dl><dt>Changes</dt><dd><div>
<div>
 <div>
  ページ内コンテンツ
 </div>
 <div>
  <ul><li> 概要 </li>
<li> リンク 
<ul><li> 目次 </li></ul></li>
<li> useradd  </li>
<li> groupadd  </li>
<li> RPMパッケージ化  </li>
<li> megaraid2  
<ul><li> カーネルアップデート時 </li></ul></li>
<li> e1000  </li>
<li> RedHat 9 on kernel 2.6  </li>
<li> Kickstart  </li>
<li> adaptec RAID (I2O)  </li>
<li> Bonding (ボンディング)  
<ul><li> 複数のBonding (ボンディング) </li></ul></li>
<li> src.rpm から SPECファイルだけを取り出す  </li>
<li> yum  </li>
<li> apt ミラーサイト  </li>
<li> シングルユーザモード時にパスワード認証  </li>
<li> apt for RH9  </li></ul>
 </div>
</div>
<h2>概要  <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2>
<!--i190a338--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>リンク  <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2>
<!--e18e26a1--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>目次  <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h3>
<!--qde38be7--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>useradd   <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2>
<!--te0ef86b--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>groupadd   <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2>
<!--v6126739--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>RPMパッケージ化   <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2>
<!--v6ced50c--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>megaraid2   <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2>
<!--j8e20c03--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>カーネルアップデート時  <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h3>
<p>aptでカーネルをupdateすると<strong>megaraid2</strong>がないってエラーになる。<br />
しょうがないからカーネルのソースから再構築。<br />
ちょっと上の方でダウンロードしてきた.zipの中に、<strong>megaraid2.h</strong>と<strong>megaraid2.c</strong>があるから用意しておく。</p>
<div><pre>% apt-get install kenrel-source-2.4.20.xxx
% cp megaraid2.h megaraid2.c /usr/src/linux-2.4/drivers/scsi/
% cd /usr/src/linux-2.4
% make mrproper</pre></div>
<p>次にファイルを編集。
1 &quot;megaraid.h&quot;の「.vary_io....」っていう行を削除。
2 &quot;/usr/src/linux-2.4/drivers/scsi/Config.in&quot;に以下の一行を追加。</p>
<div><pre>- dep_tristate 'AMI MegaRAID2 support' CONFIG_SCSI_MEGARAID2 $CONFIG_SCSI</pre></div>
<p>3 &quot;/usr/src/linux-2.4/drivers/scsi/Makefile&quot;に以下の一行を追加。</p>
<div><pre>- obj-$(CONFIG_SCSI_MEGARAID2) += megaraid2.o</pre></div>
<p>以下カーネル再構築＆モジュール作成手順。<br />
カーネルのコンフィグは今まで使用していたカーネルのものをそのままコピーする。</p>
<div><pre>% cd /usr/src/linux-2.4
% cp /boot/config-2.4.xxxxx .config
% make oldconfig</pre></div>
<p>oldconfigを実行すると今までになかったコンフィグメニューをどうするか聞いて来る。<br />
MEGARAID2は必ず&quot;m&quot;と答えておく。</p>
<div><pre>% make dep
% make bzImage
% make modules
% cp arch/i386/boot/bzImage /boot/vmlinuz.xxx
% cp System.map /boot/System.map.xxx
% ln -sf /boot/System.map.xxx /boot/systemmap
% make modules_install</pre></div>
<p>SCSIからLinuxを起動する場合には以下のようにしなければならないらしい。</p>
<div><pre>% mkinitrd -f /boot/initrd-2.4.20.xxx.img 2.4.20.xxx</pre></div>
<p>後はこれに合わせてブートローダを編集して終り。<br />
<strong>/etc/modules.conf</strong>に以下の一行があるか確認すること。</p>
<div><pre>alias scsi_hostadapter megaraid2</pre></div>
<!--r17b7dcc--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>e1000   <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2>
<!--jc7040ad--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>RedHat 9 on kernel 2.6   <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2>
<!--l54168a8--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>Kickstart   <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2>
<ol><li>ext2ファイルシステムを作成したFDを用意。</li>
<li>1.に編集したファイルを&quot;ks.cfg&quot;というファイル名でコピー。</li>
<li>CDROMとFDをセットして機械を立ち上げる。</li>
<li>インストールの最初のブート画面で、&quot;linux ks=floppy&quot;と打つ。</li></ol>
<!--x978c663--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>adaptec RAID (I2O)   <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2>
<!--w320223c--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>Bonding (ボンディング)   <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2>
<p>&#35;br</p>
<!--cc61076d--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>複数のBonding (ボンディング)  <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h3>
<!--c6dc2db6--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>src.rpm から SPECファイルだけを取り出す   <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2>
<!--t0af611c--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>yum   <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2>
<!--wafa1627--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>apt ミラーサイト   <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2>
<!--z08fc8df--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>シングルユーザモード時にパスワード認証   <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2>
<!--x1e41b74--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>apt for RH9   <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2><!--yd80c24f--></div></dd></dl><hr /><div>
<div>
 <div>
  Table of contents
 </div>
 <div>
  <ul><li> 概要 </li>
<li> リンク 
<ul><li> 目次 </li></ul></li>
<li> useradd  </li>
<li> groupadd  </li>
<li> RPMパッケージ化  </li>
<li> megaraid2  
<ul><li> カーネルアップデート時 </li></ul></li>
<li> e1000  </li>
<li> RedHat 9 on kernel 2.6  </li>
<li> Kickstart  </li>
<li> adaptec RAID (I2O)  </li>
<li> Bonding (ボンディング)  
<ul><li> 複数のBonding (ボンディング) </li></ul></li>
<li> src.rpm から SPECファイルだけを取り出す  </li>
<li> yum  </li>
<li> apt ミラーサイト  </li>
<li> シングルユーザモード時にパスワード認証  </li>
<li> apt for RH9  </li></ul>
 </div>
</div>
<h2>概要  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FRedHat#i190a338" title="i190a338"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>RedHatのTips(ここの情報もだいぶ古くなってきました)</p>
<!--i190a338--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>リンク  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FRedHat#e18e26a1" title="e18e26a1"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<ul><li><a href="http://www.redhat.com/" title="www.redhat.com/" target="_blank">redhat.com</a></li>
<li><a href="http://www.jp.redhat.com/" title="www.jp.redhat.com/" target="_blank">日本サイト</a></li></ul>
<!--e18e26a1--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>目次  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FRedHat#qde38be7" title="qde38be7"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h3>
<ul><li>useradd</li>
<li>groupadd</li>
<li>RPMパッケージ化</li>
<li>megaraid2</li>
<li>e1000</li>
<li>RedHat 9 on kernel 2.6</li>
<li>Kickstart</li>
<li>adaptec RAID (I2O)</li>
<li>Bonding (ボンディング)</li>
<li>src.rpm から SPECファイルだけを取り出す</li>
<li>yum</li>
<li>apt ミラーサイト</li>
<li>シングルユーザモード時にパスワード認証</li>
<li>apt for RH9</li></ul>
<div>&nbsp;</div>
<!--qde38be7--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>useradd <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FRedHat#te0ef86b" title="te0ef86b"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p><strong>useradd</strong>ってOSによって若干違う気がする。<br />
ので、RHELでの(固有っぽい)オプションをメモする。<br />
<strong>man useradd</strong>で出てこないもので、RHELのドキュメントに書いてあるものを記載。</p>
<div><pre>-M: ホームディレクトリを作成しない。
-n: ユーザ用プライベートグループを作成しない。
-r: 500以下のUIDで、システムアカウントを作成。</pre></div>
<p>以下、RHELで<strong>useradd</strong>するときの備考。</p>
<div><pre>'-u'でUIDを指定する場合、501以上を指定する。
'-n'を指定しないと、勝手にユーザ名と同じ名のグループが作成される。
'-M'を指定しなければ、勝手にホームディレクトリが作成される。</pre></div>
<p><strong>foo</strong>というユーザを作成するとする。
RHELで以下のようにすると、</p>
<div><pre>% useradd foo

※UIDとGIDは501以上の空いている数値で揃えられるみたい。</pre></div>
<p>manページに書いてある通りのオプションだと、下記を実行したのと同じ。</p>
<div><pre>% groupadd foo
% useradd -g foo -m foo</pre></div>
<div>&nbsp;</div>
<!--te0ef86b--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>groupadd <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FRedHat#v6126739" title="v6126739"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>前述の<strong>useradd</strong>と同様にRHEL固有っぽいオプションのメモ。</p>
<div><pre>-r: 500以下のGIDでシステムグループを作成。
-f: グループが既にある場合はエラー終了。</pre></div>
<div>&nbsp;</div>
<!--v6126739--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>RPMパッケージ化 <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FRedHat#v6ced50c" title="v6ced50c"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p><strong>/usr/share/info/dir</strong>を更新するようなものをRPMにするとき。
以下のようにすると良いかも。</p>
<ul><li><strong>%install</strong> のところで <strong>rm</strong>。</li>
<li><strong>%post</strong> のところで <strong>install-info</strong>。</li>
<li><strong>%preun</strong> のところで <strong>install-info --delete</strong>。</li></ul>
<div>&nbsp;</div>
<!--v6ced50c--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>megaraid2 <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FRedHat#j8e20c03" title="j8e20c03"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>RAIDに&quot;LSI MEGARAID SCSI 320-2&quot;って言うのを使っている機械があった。<br />
RH9を入れようとしたんだけどディスクを認識してくれない。<br />
以下、インストール手順。</p>
<p>LSIのページをたどってドライバーをダウンロード。<br />
<strong>dr_2.10.9.0-rhel9-kernels.zip</strong>ってやつだった(2005/08/24現在)。</p>
<ul><li>&quot;ダウンロード先:<a href="http://www.lsilogic.com/products/megaraid/scsi_320_2.html" title="www.lsilogic.com/products/megaraid/scsi_320_2.html" target="_blank">http://www.lsilogic.com/products/megaraid/scsi_320_2.html</a></li></ul>
<p>入手したら解凍・展開する。</p>
<div><pre>% unzip dr_2.10.9.0-rhel9-kernels.zip
% gunzip megaraid2-v2.10.9.0-rhl90-kernels.img.gz</pre></div>
<p><strong>megaraid2-v2.10.9.0-rhl90-kernels.img</strong>っていうのができる。<br />
それをフォーマットしたフロッピーにコピー。</p>
<div><pre>% fdformat /dev/floppy/0u1440
% mke2fs /dev/fd0
% dd if=megaraid2-v2.10.9.0-rhl90-kernels.img of=/dev/fd0</pre></div>
<p>できたフロッピーをサーバに突っ込んでRH9のインストール開始。<br />
ブートプロンプトに以下のように入れる。</p>
<div><pre>linux noprobe dd</pre></div>
<p>「どのメディアからモジュールをコピーしますか？」みたいなダイアログが出るからフロッピーを選択。<br />
適当に進むと追加モジュールを選ぶ画面に進むので、&quot;megaraid2なんちゃらかんちゃら&quot;を選択。<br />
これで後は普通に行けます。</p>
<!--j8e20c03--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>カーネルアップデート時  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FRedHat#r17b7dcc" title="r17b7dcc"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h3>
<p>aptでカーネルをupdateすると<strong>megaraid2</strong>がないってエラーになる。<br />
しょうがないからカーネルのソースから再構築。<br />
ちょっと上の方でダウンロードしてきた.zipの中に、<strong>megaraid2.h</strong>と<strong>megaraid2.c</strong>があるから用意しておく。</p>
<div><pre>% apt-get install kenrel-source-2.4.20.xxx
% cp megaraid2.h megaraid2.c /usr/src/linux-2.4/drivers/scsi/
% cd /usr/src/linux-2.4
% make mrproper</pre></div>
<p>次にファイルを編集。</p>
<p>1 &quot;megaraid.h&quot;の「.vary_io....」っていう行を削除。
2 &quot;/usr/src/linux-2.4/drivers/scsi/Config.in&quot;に以下の一行を追加。</p>
<div><pre>- dep_tristate 'AMI MegaRAID2 support' CONFIG_SCSI_MEGARAID2 $CONFIG_SCSI</pre></div>
<p>3 &quot;/usr/src/linux-2.4/drivers/scsi/Makefile&quot;に以下の一行を追加。</p>
<div><pre>- obj-$(CONFIG_SCSI_MEGARAID2) += megaraid2.o</pre></div>
<p>以下カーネル再構築＆モジュール作成手順。<br />
カーネルのコンフィグは今まで使用していたカーネルのものをそのままコピーする。</p>
<div><pre>% cd /usr/src/linux-2.4
% cp /boot/config-2.4.xxxxx .config
% make oldconfig</pre></div>
<p>oldconfigを実行すると今までになかったコンフィグメニューをどうするか聞いて来る。<br />
MEGARAID2は必ず&quot;m&quot;と答えておく。</p>
<div><pre>% make dep
% make bzImage
% make modules
% cp arch/i386/boot/bzImage /boot/vmlinuz.xxx
% cp System.map /boot/System.map.xxx
% ln -sf /boot/System.map.xxx /boot/systemmap
% make modules_install</pre></div>
<p>SCSIからLinuxを起動する場合には以下のようにしなければならないらしい。</p>
<div><pre>% mkinitrd -f /boot/initrd-2.4.20.xxx.img 2.4.20.xxx</pre></div>
<p>後はこれに合わせてブートローダを編集して終り。<br />
<strong>/etc/modules.conf</strong>に以下の一行があるか確認すること。</p>
<div><pre>alias scsi_hostadapter megaraid2</pre></div>
<div>&nbsp;</div>
<!--r17b7dcc--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>e1000 <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FRedHat#jc7040ad" title="jc7040ad"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>インテルのe1000PROっていうLANカードを認識しなかった。<br />
よってインテルのサイトから最新のドライバを持って来て入れた。<br />
まずは使用しているカーネルと同じバージョンのソースをインストール。</p>
<div><pre>% rpm -ivh kernel-source#2.4.20-8_2.4.20-8_i386.rpm</pre></div>
<p>それから以下のようにやればrpmパッケージが作られる。<br />
'.tar.gzは適宜置き換えること。</p>
<div><pre>% rpmbuild -tb e1000-6.2.15.tar.gz</pre></div>
<p>できたrpmをインストール。</p>
<div><pre>% rpm -ivh 
     /usr/src/redhat/RPMS/i386/e1000-6.2.15-1.i386.rpm
% rpm -ivh 
    /usr/src/redhat/RPMS/i386/
    e1000-debuginfo-6.2.15-1.i386.rpm</pre></div>
<p>ドライバをロードしてみて使用できるか確認。<br />
ifconfig とか ping とかでテストする。</p>
<div><pre>% modprobe e1000</pre></div>
<p>起動時にロードされるように/etc/modules.confに以下の記述を加える。<br />
eth' はそれぞれの環境によって変わる。<br />
ここではeth0とeth1の二つのLANカードがあると仮定する。</p>
<div><pre>alias eth0 e1000
alias eth1 e1000</pre></div>
<p>後はIPアドレスを割り振ってやればいい。</p>
<div>&nbsp;</div>
<!--jc7040ad--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>RedHat 9 on kernel 2.6 <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FRedHat#l54168a8" title="l54168a8"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>途中経過をメモ。</p>
<p>まずは<strong>module-init-tools</strong>の最新をいれる。<br />
ソースを解凍・展開。</p>
<div><pre>% tar xvfj module-init-tools-3.2.2.tar.bz2
% cd module-init-tools-3.2.2</pre></div>
<p>RH9の場合、/sbin以下に入っているので<strong>--prefix=/</strong>をオプションに追加。</p>
<div><pre>% ./configure --prefix=/</pre></div>
<p>初めていれる時に過去の<strong>insmod</strong>と互換性を保つために以下のコマンドを実行する。</p>
<div><pre>% make moveold</pre></div>
<p>コンパイル、インストール</p>
<div><pre>% make
% make install</pre></div>
<p><strong>modprobe.conf</strong>を作成する。<strong>/etc/modules.conf</strong>を見てそれに基づいて作ってくれるらしい。</p>
<div><pre>% ./generate-modprobe.conf /etc/modprobe.conf</pre></div>
<p>ここからカーネルのコンパイル、インストール。<br />
2.4系の時と若干手順が違う。make dep とか必要ないみたい。<br />
ソースを解凍・展開。</p>
<div><pre>% tar xvfj linux-2.6.14.6.tar.bz2
% cd linux-2.6.14.6</pre></div>
<p>元のカーネルのコンフィグをコピーする。</p>
<div><pre>% cp /boot/config-2.4.20-43.9.legacysmp .config
% make oldconfig (とりあえず全部デフォルトで答えておいた)</pre></div>
<p>↑を元にコンフィグを修正。</p>
<div><pre>% make menuconfig</pre></div>
<p>↑最低限、<strong>CONFIG_EXT3_FS=y</strong>にしておく
↑一部ちゃんとモジュールをロードしてくれないのがあった。それは&quot;m&quot;ではなく&quot;y&quot;で答えた。
具体的には<strong>rtl8169</strong>って言うチップを使っているギガビットのLANカード。</p>
<p>以下の4行は通常のコンパイルとインストール。</p>
<div><pre>% make bzImage
% make modules
% make modules_install
% make install</pre></div>
<p>sysfsと言うのをマウントするためにディレクトリ作成。</p>
<div><pre>% mkdir /sys</pre></div>
<p>2.4系からの細かい修正。<br />
それぞれのファイルをviで編集した。</p>
<div><pre>% sudo vi /etc/rc.sysinit

1. /proc/ksyms → /proc/kallsyms
2. &quot;mount -f /proc&quot; の行の下に &quot;mount -f /sys&quot; を追記。
3. &quot;action $&quot;Mounting proc filesystem: &quot; mount -n -t proc /proc proc&quot; の行の下に↓を追記。
   &quot;action $&quot;Mounting sysfs filesystem: &quot; mount -n -t sysfs /sys /sys&quot;
4. /proc/bus/usb → /sys/bus/usb
5. needusbstorage=
   if [ $usb = &quot;1&quot; ]; then
   needusbstorage=`LC_ALL=C grep -e &quot;^I.'Cls=08&quot; /sys/bus/usb/devices 2&gt;/dev/null`
   action $&quot;Initializing USB HID interface: &quot; modprobe hid 2&gt; /dev/null
   action $&quot;Initializing USB keyboard: &quot; modprobe keybdev 2&gt; /dev/null
   action $&quot;Initializing USB mouse: &quot; modprobe mousedev 2&gt; /dev/null
   fi

↑を↓に

   needusbstorage=
   if [ $usb = &quot;1&quot; ]; then
   needusbstorage=`LC_ALL=C grep -e &quot;^I.'Cls=08&quot; /sys/bus/usb/devices 2&gt;/dev/null`
   action $&quot;Initializing USB HID interface: &quot; modprobe usbhid 2&gt; /dev/null
   action $&quot;Initializing USB keyboard: &quot; modprobe usbkbd 2&gt; /dev/null
   action $&quot;Initializing USB mouse: &quot; modprobe usbmouse 2&gt; /dev/null
   fi</pre></div>
<p>これもsysfsをマウントするために記述。</p>
<div><pre>% vi fstab

&quot;none /sys sysfs defaults 0 0&quot; を追記。</pre></div>
<p>rc.sysinitを編集したのに合わせる。</p>
<div><pre>% vi /etc/init.d/halt

&quot;awk '$2 ~ /^/$|^/proc|^/dev/{next}&quot;

↑の行を↓に

&quot;awk '$2 ~ /^/$|^/proc|^/sys|^/dev/{next}&quot;</pre></div>
<p>自動で<strong>menu.lst</strong>に2.6の設定まで書いてくれてた。マザーボードによって以下の編集が必要だった。</p>
<div><pre>% vi /boot/grub/menu.lst

# カーネルのオプションに以下を追加。
apm=off acpi=off</pre></div>
<p>これでリブートすれば動くはず。<br />
2.4をまた起動するときは、<strong>rc.sysinit</strong>,<strong>fstab</strong>,<strong>halt</strong>等を元に戻す。<br />
戻さなくてもusb関係でエラーが出る以外は一応立ち上がる。</p>
<div>&nbsp;</div>
<!--l54168a8--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>Kickstart <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FRedHat#x978c663" title="x978c663"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>RedHatを全て同じ設定(パッケージ選択やその他諸々)でインストールしたい時に手順を大幅に省いてくれるものらしい。<br />
Fedora Core 5 で試してみた。</p>
<p>まず1台普通に入れてから雛型のファイルを持って来る。<br />
<strong>/root/anaconda-ks.cfg</strong> って言うファイルがインストール時にできた雛型ファイルなのでそれをコピーする。<br />
雛型を編集して自分なりに作成したファイルを例として記載する。</p>
<div><pre># Kickstart file automatically generated by anaconda.

#upgrade か install かの違い。
install

#コメントアウトしているが↓を使わずにCDからインストールするのはこの行を使う。
#ネットワークインストールの時には2行目のようにURLを指定する。
# cdrom
url --url http://www.example.com/fc5

#デフォルトの言語の指定。日本語にしたい場合は、 ja_JP.UTF-8 とか ja_JP.eucJP とかにする。
lang en_US.UTF-8

#使用するキーマップ
keyboard jp106

#Xの設定。
xconfig --driver &quot;vesa&quot; --videoram 16384 --resolution 800x600 --depth 16

#モニタの設定。
monitor --hsync 30-96 --vsync 50-160

#ネットワークの設定。
network --device eth0 --bootproto static --ip 192.168.254.197 
    --netmask 255.255.255.0  --gateway 192.168.254.254 
    --nameserver 58.158.185.18,61.204.18.58 --hostname sp-relay1

#rootのパスワード。暗号化されている。
rootpw --iscrypted $1$CwSmbe4s$OG1ZGtl0jaL7B1tkiy7sA1

#ファイアーウォールの設定。ここでは22(SSH)だけオープンしている。
firewall --enabled --port=22:tcp --port=22:tcp

authconfig --enableshadow --enablemd5

#SELinuxの設定。
selinux --disabled

#タイムゾーン
timezone Asia/Tokyo

bootloader --location=mbr --driveorder=hda

#ここからしばらくはパーティションの設定。
#削除するパーティションの選択。ここでは全て。
clearpart --all
#LVMを使用してその上に実際の論理ヴォリュームを作成している。
part /boot --fstype ext3 --size=250 --grow --maxsize=250
part pv.100001 --size=13000 --grow --maxsize=13000
part pv.100000 --size=13000 --grow --maxsize=13000
part swap --size=512 --grow --maxsize=512
volgroup VolGroup00 --pesize=32768 pv.100000 pv.100001 logvol /usr 
    --fstype ext3 --name=LogVol01 --vgname=VolGroup00 --size=6144
logvol /var --fstype ext3 --name=LogVol03 --vgname=VolGroup00 --size=8192
logvol /tmp --fstype ext3 --name=LogVol02 --vgname=VolGroup00 --size=1024
logvol /home --fstype ext3 --name=LogVol04 --vgname=VolGroup00 --size=8192
logvol / --fstype ext3 --name=LogVol00 --vgname=VolGroup00 --size=1024

※ここからパッケージ選択。
%packages
@base
@core
comps-extras
cracklib-dicts
gnome-mime-data
kon2-fonts
man-pages-ja
pciutils-devel
rmt
tzdata

ここから下はインストール後に実行したいシェルコマンドを入力できる。
%post</pre></div>
<p>このファイルを色々と編集するとそれによってインストールの動作が変わる。<br />
例えば、 &quot;network&quot; から始まる行をコメントアウトしておけばネットワーク設定の画面が出るし、 &quot;lang&quot; の行をコメントアウトすれば言語設定の画面が出る。<br />
他は全てファイルにある通りに自動でインストールしてくれる。<br />
実際にインストール時に使用するには、</p>
<ol><li>ext2ファイルシステムを作成したFDを用意。</li>
<li>1.に編集したファイルを&quot;ks.cfg&quot;というファイル名でコピー。</li>
<li>CDROMとFDをセットして機械を立ち上げる。</li>
<li>インストールの最初のブート画面で、&quot;linux ks=floppy&quot;と打つ。</li></ol>
<p>これでスタートするはず。<br />
2.でファイル名を他のものにした場合は、4.でファイル名を指定もできる。<br />
例えば、&quot;ks_version1.cfg&quot;と言うファイルで保存した場合は、以下のようにしてやれば良い。</p>
<div><pre>linux ks=floppy:/ks_version1.cfg</pre></div>
<div>&nbsp;</div>
<!--x978c663--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>adaptec RAID (I2O) <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FRedHat#w320223c" title="w320223c"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>インストール時に表題のドライバ(型番忘れた)がロードされない。<br />
ブート時のプロンプトに以下の文字列を打ってから起動する。</p>
<div><pre>boot: linux dd</pre></div>
<p>これでダイアログを進んで行くと、モジュールをロードする所へ行く。<br />
以下のモジュールを手動でロードする。</p>
<div><pre>I2O......(詳しい名前忘れた)</pre></div>
<p>とりあえずの覚え書き。</p>
<div>&nbsp;</div>
<!--w320223c--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>Bonding (ボンディング) <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FRedHat#cc61076d" title="cc61076d"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>NICを2枚差して同じIPアドレスを設定して、プライマリが落ちた場合、セカンダリにフェイルオーバーする仕組み。<br />
/etc/sysconfig/network-scripts以下に<strong>ifcfg-bond0</strong>と言うファイルを作ってやる。</p>
<div><pre>DEVICE=bond0
BOOTPROTO=none
ONBOOT=yes
NETWORK=192.168.1.0
NETMASK=255.255.255.0
IPADDR=192.168.1.11
USERCTL=no</pre></div>
<p>組み合わせたいNICの設定。<br />
今回は、eth0 と eth2 に設定することにする。<br />
<strong>/etc/sysconfig/network-scripts/ifcfg-eth0</strong>を下記のように編集。</p>
<div><pre>DEVICE=eth0
BOOTPROTO=none
ONBOOT=yes
MASTER=bond0
SLAVE=yes
USERCTL=no</pre></div>
<p><strong>/etc/sysconfig/network-scripts/ifcfg-eth2</strong>を下記のように編集。</p>
<div><pre>DEVICE=eth2
BOOTPROTO=none
ONBOOT=yes
MASTER=bond0
SLAVE=yes
USERCTL=no</pre></div>
<p>有効にするには、カーネルのモジュールをロードしなければいけない。<br />
<strong>/etc/modprobe.conf</strong>に以下を記述する。</p>
<div><pre>alias bond0 bonding
options bond0 mode=1 miimon=300

※mode=x で挙動が変わる。
mode=0 : ロードバランシング
mode=1 : アクティブ/スタンバイ</pre></div>
<p>以下のコマンドで有効になるはず。</p>
<div><pre>% ifup bond0</pre></div>
<div>&nbsp;</div>
<!--cc61076d--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>複数のBonding (ボンディング)  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FRedHat#c6dc2db6" title="c6dc2db6"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h3>
<p>複数のボンディングの設定をするにはさらに追加の設定がいる。<br />
bond0は通常でいいが、bond1以降が正常にあがらない。<br />
RHEL4での話だったと思う(どのバージョンだったかは忘れた)。</p>
<p>新たに&quot;bond1&quot;を&quot;eth1&quot;と&quot;eth3&quot;で作ったとする。<br />
/etc/sysconfig/network-scripts/ifcfg-bond1</p>
<div><pre>DEVICE=bond1
BOOTPROTO=none
ONBOOT=yes
NETWORK=192.168.2.0
NETMASK=255.255.255.0
IPADDR=192.168.2.22
USERCTL=no</pre></div>
<p>/etc/sysconfig/network-scripts/ifcfg-eth1</p>
<div><pre>DEVICE=eth1
BOOTPROTO=none
ONBOOT=yes
MASTER=bond1
SLAVE=yes
USERCTL=no</pre></div>
<p>/etc/sysconfig/network-scripts/ifcfg-eth3</p>
<div><pre>DEVICE=eth3
BOOTPROTO=none
ONBOOT=yes
MASTER=bond1
SLAVE=yes
USERCTL=no</pre></div>
<p>&quot;modules.conf&quot;に少し修正が必要。</p>
<div><pre>alias bond0 bonding
options bond0 mode=1 miimon=300
# ↓この一行を追記する
install bond1 /sbin/modprobe bonding -o bond1 mode=1 miimon=300</pre></div>
<p>これでOK。</p>
<div><pre>% ifup bond1</pre></div>
<div>&nbsp;</div>
<!--c6dc2db6--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>src.rpm から SPECファイルだけを取り出す <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FRedHat#t0af611c" title="t0af611c"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>以下のコマンドでいける。</p>
<div><pre>% rpm2cpio example.src.rpm | cpio -i &quot;'.spec&quot;</pre></div>
<div>&nbsp;</div>
<!--t0af611c--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>yum <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FRedHat#wafa1627" title="wafa1627"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>Fedoraでyumを使う。</p>
<p>PGPキーをインポートする。</p>
<div><pre>% rpm --import /usr/share/rhn/RPM-GPG-KEY-fedora
% rpm --import /usr/share/doc/fedora-release-'/RPM-GPG-KEY'</pre></div>
<p>アップデート</p>
<div><pre>% yum update</pre></div>
<p>インストール</p>
<div><pre>% yum install (packages)</pre></div>
<div>&nbsp;</div>
<!--wafa1627--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>apt ミラーサイト <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FRedHat#z08fc8df" title="z08fc8df"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>良く使うものだけここへ書いておく。<br />
全て<strong>/etc/apt/sources.list</strong>の書式。</p>
<p>日本</p>
<ul><li>rpm <a href="http://ftp.riken.go.jp/pub/Linux/fedoralegacy/apt" title="ftp.riken.go.jp/pub/Linux/fedoralegacy/apt" target="_blank">http://ftp.riken.go.jp/pub/Linux/fedoralegacy/apt</a> redhat/9/i386 os updates legacy-utils</li></ul>
<p>香港</p>
<ul><li>rpm <a href="http://ftp.bylinux.net/pub/mirror/fedoralegacy/apt" title="ftp.bylinux.net/pub/mirror/fedoralegacy/apt" target="_blank">http://ftp.bylinux.net/pub/mirror/fedoralegacy/apt</a> redhat/9/i386 os updates legacy-utils</li></ul>
<p>中国</p>
<ul><li>rpm <a href="http://ftp.hostrino.com/pub/fedoralegacy/apt" title="ftp.hostrino.com/pub/fedoralegacy/apt" target="_blank">http://ftp.hostrino.com/pub/fedoralegacy/apt</a> redhat/9/i386 os updates legacy-utils</li></ul>
<div>&nbsp;</div>
<!--z08fc8df--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>シングルユーザモード時にパスワード認証 <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FRedHat#x1e41b74" title="x1e41b74"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>RedHat9のデフォルトは、シングルユーザモードで起動するとパスワード無しでログインできてしまう。<br />
これをログイン時にパスワードを要求するには、/etc/inittabに以下の一行を書き加える。</p>
<div><pre>~~:S:wait:/sbin/sulogin</pre></div>
<p>Debianは元々この行があった。</p>
<div>&nbsp;</div>
<!--x1e41b74--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>apt for RH9 <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FRedHat#yd80c24f" title="yd80c24f"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>※2009/03/13現在、よく知らないけどもうやってないんじゃないかなあ…。昔はこんなこともあったってことで残しておきます。</p>
<p>しばらく見ていなかったら<strong>apt</strong>のパッケージがいつの間にかアップグレードされていた。<br />
Fedora Legacy Projectという所で引き続きaptを使用したアップグレードのサポートをしてくれているとのこと。</p>
<p>インストール。<br />
(下記の2,3行目は続けて一行で入力する)</p>
<div><pre>% rpm -ivh 
http://download.fedora.us/fedora/redhat/9/i386/RPMS.stable/
apt-0.5.5cnc6-0.fdr.8.rh90.i386.rpm</pre></div>
<p><strong>/etc/apt/sources.list</strong>を下記のように編集。<br />
(これも続けて一行で書く)</p>
<div><pre>rpm http://download.fedoralegacy.org/apt 
    redhat/9/i386 os updates legacy-utils</pre></div>
<p>パッケージをPGPで検証しているため、鍵をインポートしておく。</p>
<div><pre>% rpm --import 
	http://www.fedoralegacy.org/FEDORA-LEGACY-GPG-KEY</pre></div>
<p>以上の手順でaptをインストールしてからアップグレードすればいいらしい。</p>
<div><pre>% apt-get upgrade</pre></div><!--yd80c24f--></div>


 ]]></content:encoded>
 <dc:identifier>http://www.tagus.org/modules/xpwiki/index.php?LinuxDoc%2FRedHat</dc:identifier>

</item>
<item rdf:about="http://www.tagus.org/modules/xpwiki/index.php?LinuxDoc%2Fqmail">
 <title>LinuxDoc/qmail</title>
 <link>http://www.tagus.org/modules/xpwiki/?LinuxDoc%2Fqmail</link>
 <dc:date>2011-07-27T14:22:45+09:00</dc:date>
 <dc:creator>sleep</dc:creator>
 
 <description>
 
  Table of contents
 
 
   概要 
 リンク 
 目次 
 queue-fix  
 qmail + clamav + qmail-scanner でウィルスチェック  
 qmailのpop3dでAPOP  
 
概要  
MTAのqmailのTips
リンク  
qmail
日本語の解説ページ
目次  
queue-fix
qmail + clamav + qmail-scanner でウィルスチェック
qmailのpop3dでAPOP
&amp;nbsp;
queu</description>
 <content:encoded><![CDATA[
 <div>
<div>
 <div>
  Table of contents
 </div>
 <div>
  <ul><li> 概要 
<ul><li> リンク </li>
<li> 目次 </li></ul></li>
<li> queue-fix  </li>
<li> qmail + clamav + qmail-scanner でウィルスチェック  </li>
<li> qmailのpop3dでAPOP  </li></ul>
 </div>
</div>
<h2>概要  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2Fqmail#s3d55f2c" title="s3d55f2c"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>MTAのqmailのTips</p>
<!--s3d55f2c--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>リンク  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2Fqmail#d63414bf" title="d63414bf"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h3>
<ul><li><a href="http://cr.yp.to/qmail.html" title="cr.yp.to/qmail.html" target="_blank">qmail</a></li>
<li><a href="http://www.qmail.jp/qmail.html" title="www.qmail.jp/qmail.html" target="_blank">日本語の解説ページ</a></li></ul>
<!--d63414bf--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>目次  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2Fqmail#d4a0081b" title="d4a0081b"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h3>
<ul><li>queue-fix</li>
<li>qmail + clamav + qmail-scanner でウィルスチェック</li>
<li>qmailのpop3dでAPOP</li></ul>
<div>&nbsp;</div>
<!--d4a0081b--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>queue-fix <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2Fqmail#s66f4ae9" title="s66f4ae9"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>キューの整合性が失われているときにqmailのログにこんなメッセージが残っていることがある。</p>
<div><pre>..... warning: unable to stat mess/1867/.......</pre></div>
<p>この症状を直すには queue-fix と言うものを使うといいらしい。</p>
<p>ソースを展開</p>
<div><pre>% tar xvfz queue-fix.tar.gz
% cd queue-fix-1.4</pre></div>
<p>qmailをコンパイル時に<strong>conf-split</strong>を変更している場合は<strong>queue-fix.c</strong>というファイルの以下の行にその値をいれる。<br />
下記の<strong>120</strong>というのがその値。</p>
<div><pre>#define SPLIT_NUM 120</pre></div>
<p>それからmakeする。</p>
<div><pre>% make</pre></div>
<p>queue-fix と言うバイナリが出来上がるので以下のように実行するとキューの整合性を保ってくれる。<br />
実行前にqmail自体を停止しておく事。<br />
<strong>/var/qmail/queue</strong>という所は各自のキューディレクトリを指定する。</p>
<div><pre>% ./queue-fix -i /var/qmail/queue</pre></div>
<div>&nbsp;</div>
<!--s66f4ae9--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>qmail + clamav + qmail-scanner でウィルスチェック <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2Fqmail#nf29c807" title="nf29c807"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>※まだ書き掛け</p>
<p>clamav インストール</p>
<div><pre>% apt-get install clamav clamav-daemon</pre></div>
<p>↑の時にダイアログに答える。<br />
とりあえず、デーモンで自動更新ができるようにしておくといいと思う。</p>
<p>qmail-scannerでclamavを使用する場合には、起動ユーザをqscandにしないとちゃんと動かないとどこかの記述であった。<br />
ユーザ作成。</p>
<div><pre>% groupadd qscand
% useradd -g qscand -s /bin/false qscand</pre></div>
<p>/etc/clamav/clamd.confの以下の行を編集する。</p>
<div><pre>User clamav

↑を↓に

User qscand</pre></div>
<p>↑の関係で以下のようにする。</p>
<div><pre>% chmod 775 /var/run/clamav
% chgrp qscand /var/run/clamav</pre></div>
<p>※自分ではこうしたのだが他の方法でも良いと思う。<br />
clamavのパッケージをアップデートする時に毎回やらなくてはいけないかもしれないし…。</p>
<p>qmail-scanner インストール時に必要な物をインストール。</p>
<div><pre>% apt-get install maildrop tnef perl-suid unzip perl</pre></div>
<p>qmail-scannerはDebianのパッケージにないみたい。<br />
ソースからインストール。</p>
<div><pre>% tar xvfz qmail-scanner-2.01.tgz
% cd qmail-scanner-2.01
% ./configure 
	--scanners &quot;clamdscan&quot;  ※clamavでウイルススキャンする場合
	--admin root  ※管理者の宛先
	--domain example.org  ※ドメイン
	--notify admin  ※ウイルスを検知した時に誰に通知するか？
	--install ※インストール</pre></div>
<p>インストール後、</p>
<div><pre>% vi /var/spool/qscan/quarantine-events.txt</pre></div>
<p>※後づけのエントリーもある</p>
<div><pre>% setuidgid qmaild /usr/sbin/qmail-scanner-queue.pl -g
% vi /etc/qmail/service/smtpd/run</pre></div>
<p>※↑ちょっと気をつける</p>
<div>&nbsp;</div>
<!--nf29c807--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>qmailのpop3dでAPOP <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2Fqmail#j9d7631e" title="j9d7631e"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>表題を実現するための手順のメモ。Debian (Sarge) でのお話。</p>
<p>まずはAPOP認証の為に従来の<strong>checkpassword</strong>ではなく<strong>checkpw</strong>を使用する。</p>
<p>インストール</p>
<div><pre>% apt-get install checkpw</pre></div>
<p><strong>checkpw</strong>を使用する場合は、<strong>~/Maildir/.password</strong>と言うファイルを作成して、その中にパスワードをいれておく。<br />
これがAPOP認証時のパスワードになる。<br />
パーミッション設定も含めてコマンドラインで記述。</p>
<div><pre>% echo 'PASSWORD' &gt; ~/Maildir/.password
% chmod 600 ~/Maildir/.password</pre></div>
<p>APOP認証はメールソフトによって出来たりできなかったりする。<br />
よってAPOPとPOP3を共有して使うことにする。<br />
<strong>apt-get install checkpw</strong>で以下のファイルができるので、それを<strong>/usr/local/bin</strong>にコピーする。</p>
<div><pre>% install -m 755 -o root -g root 
      /usr/local/share/doc/examples/selectcheckpw 
      /usr/local/bin/</pre></div>
<p><strong>selectcheckpw</strong>の中身を編集。
<strong>checkpw</strong>のパスを環境に合わせて書き換える。
自分の場合を例に記述。</p>
<div><pre>% vi /usr/local/bin/selectcheckpw

exec //bin/checkapoppw ...

↑となっているところを、↓のように編集。2行あると思うが2行とも。

exec /usr/bin/checkapoppw ...</pre></div>
<p>pop3dのrunスクリプトを書き換える。以下は自分の例。</p>
<div><pre>#!/bin/sh

exec env - PATH=&quot;$PATH:/usr/local/bin:/var/qmail/bin&quot; 
tcpserver -v -x /etc/tcpserver/tcp.pop3.cdb -R -H -l0 0 pop3 
softlimit -m 4000000 
qmail-popup `cat /etc/qmail/me` 
selectcheckpw 
loginlog 
qmail-pop3d Maildir 2&gt;&amp;1</pre></div>
<p>これでpop3dを再起動すればOK。</p><!--j9d7631e--></div>


 ]]></content:encoded>
 <dc:identifier>http://www.tagus.org/modules/xpwiki/index.php?LinuxDoc%2Fqmail</dc:identifier>

</item>
<item rdf:about="http://www.tagus.org/modules/xpwiki/index.php?LinuxDoc%2FPostgreSQL">
 <title>LinuxDoc/PostgreSQL</title>
 <link>http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FPostgreSQL</link>
 <dc:date>2011-07-27T14:19:30+09:00</dc:date>
 <dc:creator>sleep</dc:creator>
 
 <description>
 
  Table of contents
 
 
   概要 
 リンク 
 目次 
 パラメータの変更点  
 ユーザ追加・権限付与  
 
概要  
データベースのPostgreSQLのTips
リンク  
PostgreSQL
日本PostgreSQLユーザ会
目次  
パラメータの変更点
ユーザ追加・権限付与
&amp;nbsp;
パラメータの変更点   
postgresql.confのパラメータが8系から一部変わったらしい。
とりあえず気づいたものだけ箇条書きであげておく。
tcpip_</description>
 <content:encoded><![CDATA[
 <div>
<div>
 <div>
  Table of contents
 </div>
 <div>
  <ul><li> 概要 
<ul><li> リンク </li>
<li> 目次 </li></ul></li>
<li> パラメータの変更点  </li>
<li> ユーザ追加・権限付与  </li></ul>
 </div>
</div>
<h2>概要  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FPostgreSQL#v2192aa8" title="v2192aa8"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>データベースのPostgreSQLのTips</p>
<!--v2192aa8--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>リンク  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FPostgreSQL#yfffaa97" title="yfffaa97"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h3>
<ul><li><a href="http://www.postgresql.org/" title="www.postgresql.org/" target="_blank">PostgreSQL</a></li>
<li><a href="http://www.postgresql.jp/" title="www.postgresql.jp/" target="_blank">日本PostgreSQLユーザ会</a></li></ul>
<!--yfffaa97--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>目次  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FPostgreSQL#y38a3945" title="y38a3945"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h3>
<ul><li>パラメータの変更点</li>
<li>ユーザ追加・権限付与</li></ul>
<div>&nbsp;</div>
<!--y38a3945--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>パラメータの変更点 <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FPostgreSQL#s3a2ef81" title="s3a2ef81"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p><strong>postgresql.conf</strong>のパラメータが8系から一部変わったらしい。<br />
とりあえず気づいたものだけ箇条書きであげておく。</p>
<div><pre>tcpip_socket → listen_addresses
syslog → log_destination
sort_mem → work_mem, maintenance_mem</pre></div>
<p>ログの出力に関して色々と変更点があるらしい。</p>
<div>&nbsp;</div>
<!--s3a2ef81--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>ユーザ追加・権限付与 <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FPostgreSQL#a0b22f29" title="a0b22f29"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>ユーザ<strong>foo</strong>を追加する。</p>
<div><pre>CREATE USER foo ENCRYPTED PASSWORD 'password';</pre></div>
<p>ユーザ<strong>foo</strong>にテーブル<strong>hoge1,hoge2,hoge3</strong>に対するUPDATEの権限を付与する。</p>
<div><pre>GRANT UPDATE ON hoge1,hoge2,hoge3 TO foo;</pre></div><!--a0b22f29--></div>


 ]]></content:encoded>
 <dc:identifier>http://www.tagus.org/modules/xpwiki/index.php?LinuxDoc%2FPostgreSQL</dc:identifier>

</item>
<item rdf:about="http://www.tagus.org/modules/xpwiki/index.php?LinuxDoc%2FPostfix">
 <title>LinuxDoc/Postfix</title>
 <link>http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FPostfix</link>
 <dc:date>2011-07-27T14:15:32+09:00</dc:date>
 <dc:creator>sleep</dc:creator>
 
 <description>
 
  ページ内コンテンツ
 
 
   概要 
 リンク 
 目次 
 Logwatch  
 ケーススタディ: 複数のサーバへのリレー  
 ケーススタディ: メールゲイトウェイサーバ  
 二つのPostfixを違うIPアドレスで1台のサーバに共存させる  
 IMSS関連  
 BCCの扱い 
 インストール・設定  
 SSL(TLS)通信  
 aliases  
 
概要  
リンク  
目次  
Logwatch   
ケーススタディ: 複数のサーバへのリレー   
ケーススタ</description>
 <content:encoded><![CDATA[
 <dl><dt>Changes</dt><dd><div>
<div>
 <div>
  ページ内コンテンツ
 </div>
 <div>
  <ul><li> 概要 
<ul><li> リンク </li>
<li> 目次 </li></ul></li>
<li> Logwatch  </li>
<li> ケーススタディ: 複数のサーバへのリレー  </li>
<li> ケーススタディ: メールゲイトウェイサーバ  </li>
<li> 二つのPostfixを違うIPアドレスで1台のサーバに共存させる  </li>
<li> IMSS関連  
<ul><li> BCCの扱い </li></ul></li>
<li> インストール・設定  </li>
<li> SSL(TLS)通信  </li>
<li> aliases  </li></ul>
 </div>
</div>
<h2>概要  <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2>
<!--qe9d9fd1--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>リンク  <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h3>
<!--d8912159--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>目次  <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h3>
<!--x045e6ce--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>Logwatch   <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2>
<!--c57520d5--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>ケーススタディ: 複数のサーバへのリレー   <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2>
<!--w6aa2668--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>ケーススタディ: メールゲイトウェイサーバ   <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2>
<!--jfafb7c1--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>二つのPostfixを違うIPアドレスで1台のサーバに共存させる   <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2>
<!--nc4901e0--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>IMSS関連   <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2>
<!--jb0380c9--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>BCCの扱い  <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h3>
<p><strong>always_bcc</strong>,<strong>recipient_bcc_maps</strong>などを<strong>main.cf</strong>に設定していると設定したBCC宛てに2通送られてしまう。<br />
その時は<strong>master.cf</strong>の<strong>localhost:10026</strong>の箇所に以下のオプションを追記してやる。</p>
<div><pre>-o receive_override_options=no_address_mappings</pre></div>
<p><strong>localhost:10026</strong>の項の全文はこんな感じ。</p>
<div><pre>localhost:10026 inet n - n - 20 smtpd
  -o content_filter=
  -o smtpd_timeout=$imss_timeout
  -o local_recipient_maps=
  -o relay_recipient_maps=
  -o myhostname=postfix.imss70
  -o smtpd_client_restrictions=
  -o receive_override_options=no_address_mappings,
         no_unknown_recipient_checks</pre></div>
<!--j41a4507--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>インストール・設定   <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2>
<p><strong>main.cf.debian</strong>っていうのがDebian固有の設定らしい？ので、上記二つのファイルを結合して<strong>main.cf</strong>を作った。</p>
<!--r66303b3--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>SSL(TLS)通信   <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2>
<!--uef1ee81--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>aliases   <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2><!--hb7e8892--></div></dd></dl><hr /><div>
<div>
 <div>
  Table of contents
 </div>
 <div>
  <ul><li> 概要 
<ul><li> リンク </li>
<li> 目次 </li></ul></li>
<li> Logwatch  </li>
<li> ケーススタディ: 複数のサーバへのリレー  </li>
<li> ケーススタディ: メールゲイトウェイサーバ  </li>
<li> 二つのPostfixを違うIPアドレスで1台のサーバに共存させる  </li>
<li> IMSS関連  
<ul><li> BCCの扱い </li></ul></li>
<li> インストール・設定  </li>
<li> SSL(TLS)通信  </li>
<li> aliases  </li></ul>
 </div>
</div>
<h2>概要  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FPostfix#qe9d9fd1" title="qe9d9fd1"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>MTAのPostifxのTips</p>
<!--qe9d9fd1--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>リンク  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FPostfix#d8912159" title="d8912159"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h3>
<ul><li><a href="http://www.postfix.org/" title="www.postfix.org/" target="_blank">The Postfix Home Page</a></li>
<li><a href="http://www.postfix-jp.info/" title="www.postfix-jp.info/" target="_blank">Postfixのぺーじ</a></li></ul>
<!--d8912159--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>目次  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FPostfix#x045e6ce" title="x045e6ce"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h3>
<ul><li>Logwatch</li>
<li>ケーススタディ: 複数のサーバへのリレー</li>
<li>ケーススタディ: メールゲイトウェイサーバ</li>
<li>二つのPostfixを違うIPアドレスで1台のサーバに共存させる</li>
<li>IMSS関連</li>
<li>インストール・設定</li>
<li>SSL(TLS)通信</li>
<li>aliases</li></ul>
<div>&nbsp;</div>
<!--x045e6ce--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>Logwatch <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FPostfix#c57520d5" title="c57520d5"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>Postfixのバージョンによって配送のログの出力形式が多少違っている。<br />
Logwatchのバージョンによっては上記に追随しきれていないらしい。<br />
その場合は、<strong>Unmatched Entries</strong>に通常の配送のログが延々とリストされてしまう。</p>
<div><pre>''Unmatched Entries''

6003A235009E: to=&lt;foo@example.com&gt;, orig_to=&lt;root&gt;, 
    relay=local, delay=0.21, 
    delays=0.09/0.1/0/0.02, dsn=2.0.0, status=sent 
    (delivered to maildir)
....
....
....
F003A23500A8: to=&lt;foo@example.com&gt;, 
    relay=mail1.hostingxxxx.ne.jp[219.xxx.xxx.61]:25, 
    delay=0.06, delays=0.01/0/0.03/0.02, dsn=2.0.0, 
    status=sent (250 Message queued)
8DC0823500A8: to=&lt;foo@example.com&gt;, 
    relay=mail1.hostingxxxx.ne.jp[219.xxx.xxx.61]:25, 
    delay=0.46, delays=0.03/0.01/0.03/0.4, dsn=2.0.0, 
    status=sent (250 Message queued)</pre></div>
<p>自分の環境でもそうなってしまったので、Logwatchのエントリを書き換えた。<br /></p>
<p><strong>/etc/log.d/scripts/services/postfix</strong>のログのエントリの所へ下記を追記する。</p>
<div><pre>( $ThisLine =~ m/^[a-zA-Z0-9]+: to=&lt;.'&gt;, relay=.', 
      delay=.', delays=.', dsn=.', 
      status=(sent|deferred)/ ) or
( $ThisLine =~ m/^[a-zA-Z0-9]+: to=&lt;.'&gt;, relay=.', 
      conn_use=.', delay=.', delays=.', dsn=.', 
      status=(sent|deferred)/ ) or</pre></div>
<p>他にも<strong>Unmatched Entries</strong>に含めたくないものがあれば書き足してもいい。<br />
例えば、<strong>statistics:</strong>で始まるPostfixの統計情報などを含めたくない場合は、下記のように追記する。</p>
<div><pre>( $ThisLine =~ m/^statistics: / ) or</pre></div>
<p>Perlスクリプトなので他にも色々カスタマイズしようはあると思う。</p>
<div>&nbsp;</div>
<!--c57520d5--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>ケーススタディ: 複数のサーバへのリレー <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FPostfix#w6aa2668" title="w6aa2668"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>以下の3台のメールサーバがあるとする。</p>
<ul><li>mailgw01 : 192.168.100.10  : メールゲイトウェイサーバ</li>
<li>mailsv01 : 192.168.100.100 : 内部メールサーバ1</li>
<li>mailsv02 : 192.168.100.200 : 内部メールサーバ2</li></ul>
<p><strong>mailgw01</strong>で受信したメールを、<strong>mailsv01/02</strong>へ並列してリレーしたい場合は以下のようにする。</p>
<p><strong>mailgw01</strong>の<strong>main.cf</strong>に<strong>recipient_bcc_maps</strong>を設定する。</p>
<div><pre>recipient_bcc_maps = regexp:$config_directory/recipient_bcc</pre></div>
<p><strong>recipient_bcc</strong>の中身。<br />
<strong>xxxxx@example.com<strong>へ来たメールを</strong>xxxxx@copy.example.com</strong>にBccする。</p>
<div><pre>/^(.')@example.com$/ $1@copy.example.com</pre></div>
<p><strong>transport_maps</strong>を設定。</p>
<div><pre>transport_maps = hash:$config_directory/transport</pre></div>
<p><strong>transport</strong>の中身。<br />
<strong>xxxxx@example.com<strong>は</strong>mailsv01<strong>へ、</strong>xxxxx@copy.example.com</strong>は<strong>mailsv02</strong>へリレーする。</p>
<div><pre>copy.example.com smtp:[192.168.100.200]
example.com smtp:[192.168.100.100]</pre></div>
<p><strong>mailsv01</strong>は通常通り<strong>example.com</strong>へ来たメールを受信できればいいのでそのまま。</p>
<p><strong>mailsv02</strong>は<strong>xxxxx@copy.example.com<strong>宛てに来たメールを受信して、</strong>xxxxx@example.com</strong>にエンベロープとヘッダーアドレスを書き換えなければならない。<br />
<strong>main.cf</strong>に<strong>recipient_canonical_maps</strong>を追記する。</p>
<div><pre>recipient_canonical_maps =
	regexp:$config_directory/recipient_canonical</pre></div>
<p><strong>recipient_canonical</strong>の中身。</p>
<div><pre>/^(.')@copy.example.com$/ $1@example.com</pre></div>
<p>これでいけるはず。</p>
<div>&nbsp;</div>
<!--w6aa2668--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>ケーススタディ: メールゲイトウェイサーバ <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FPostfix#jfafb7c1" title="jfafb7c1"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>外部インターネットからのSMTPを受け付けて、内部メールサーバへ転送。<br />
またはその逆を行うメール中継のためのサーバの場合。</p>
<p>自分宛てにメールが来ないように設定。<br />
自分から出す(システムなどの)メールも<strong>xxxxx@example.com</strong>のようにしておく。</p>
<div><pre>myhostname = gateway.example.com
mydomain = example.com
myorigin = $mydomain
mydestination =</pre></div>
<p>ローカル配送は全てエラーにするために<strong>error</strong>というモジュール(というのか？)に渡す。<br />
ローカルでの受信者検証も無効にしておく。</p>
<div><pre>local_recipient_maps =
local_transport = error:local mail delivery is disabled</pre></div>
<p>内部へリレーするドメインのリストは別途設定。</p>
<div><pre>relay_domains = hash:$config_directory/relay_domains</pre></div>
<p>内部へリレーするメールアドレスの受信者検証するにはこんな感じ。<br />
下記の例ではLDAP認証なども使用している。</p>
<div><pre>relay_recipient_maps =
	ldap:$config_directory/ldap_aliases.conf
	hash:$config_directory/aliases</pre></div>
<p><strong>ldap_aliases.conf</strong>の中身(の例)。<br />
LDAPサーバの設定によって変わっていくと思う。</p>
<div><pre>server_host = ldap01.example.com, ldap02.example.com
domain = example.com, xxx.example.com
search_base = dc=example,dc=com
query_filter = 
    (&amp;(objectClass=CourierMailAccount)(mail=%s)
    (defaultdelivery=0))
result_attribute = mailaddress, maildrop
bind = no</pre></div>
<p><strong>aliases</strong>の中身(の例)。</p>
<div><pre>postmaster: root
root: admin</pre></div>
<p><strong>transport_maps</strong>で中継先のサーバを指定してやる。</p>
<div><pre>transport_maps = hash:$config_directory/transport</pre></div>
<p><strong>transport</strong>の中身(の例)。</p>
<div><pre>example.com        smtp:[192.168.100.10]
xxx.example.com    smtp:[192.168.100.20]
'                  :</pre></div>
<p>RFCの規則で、<strong>xxxxx@自分のIPアドレス</strong>のメールは受け取るのが正しいらしい。<br />
そのための設定が以下。</p>
<div><pre>virtual_alias_maps =
	hash:/etc/aliases, hash:$config_directory/virtual
parent_domain_matches_subdomains =
	debug_peer_list smtpd_access_maps
smtpd_recipient_restrictions =
	permit_mynetworks reject_unauth_destination</pre></div>
<p><strong>virtual</strong>の中身(の例)。</p>
<div><pre>postmaster        postmaster@gateway.example.com</pre></div>
<div>&nbsp;</div>
<!--jfafb7c1--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>二つのPostfixを違うIPアドレスで1台のサーバに共存させる <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FPostfix#nc4901e0" title="nc4901e0"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>下記のような条件を例にする。</p>
<ul><li>Postfix01 IP:192.168.100.100</li></ul>
<ul><li>Postfix02 IP:192.168.100.200</li></ul>
<p>当然ながら、Postfixを違うディレクトリに入れて、サーバにIPアドレスを二つ持たせる。<br />
その手順は省略する。</p>
<p>何を書きたいかというとバインドするアドレスの設定の仕方。<br />
どうも<strong>inet_interfaces</strong>にIPアドレスを指定するのはよろしくないらしい。<br />
そうすると、各IPアドレスで外部からの接続は待ち受けできるが、Postfix01 → Postfix02間の通信がうまくできないとのこと。<br />
<strong>inet_interfaces</strong>はPostfix01/02とも下記のように'allにする'。</p>
<div><pre>inet_interfaces = all</pre></div>
<p>それから<strong>master.cf</strong>の<strong>smtpd</strong>の項でバインドするIPアドレスを指定する。<br />
まずはPostfix01。</p>
<div><pre>192.168.100.100:smtp inet n - n - - smtpd</pre></div>
<p>次はPostfix02。</p>
<div><pre>192.168.100.200:smtp inet n - n - - smtpd</pre></div>
<p>これでIPアドレス毎に待ち受けできて、01/02間も正常に通信できる。</p>
<div>&nbsp;</div>
<!--nc4901e0--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>IMSS関連 <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FPostfix#jb0380c9" title="jb0380c9"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>IMSS導入時の注意点など。</p>
<!--jb0380c9--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>BCCの扱い  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FPostfix#j41a4507" title="j41a4507"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h3>
<p><strong>always_bcc</strong>,<strong>recipient_bcc_maps</strong>などを<strong>main.cf</strong>に設定していると設定したBCC宛てに2通送られてしまう。<br />
その時は<strong>master.cf</strong>の<strong>localhost:10026</strong>の箇所に以下のオプションを追記してやる。</p>
<div><pre>-o receive_override_options=no_address_mappings</pre></div>
<p><strong>localhost:10026</strong>の項の全文はこんな感じ。</p>
<div><pre>localhost:10026 inet n - n - 20 smtpd
  -o content_filter=
  -o smtpd_timeout=$imss_timeout
  -o local_recipient_maps=
  -o relay_recipient_maps=
  -o myhostname=postfix.imss70
  -o smtpd_client_restrictions=
  -o receive_override_options=no_address_mappings,
         no_unknown_recipient_checks</pre></div>
<div>&nbsp;</div>
<!--j41a4507--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>インストール・設定 <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FPostfix#r66303b3" title="r66303b3"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>今さらインストール手順載せるのか…。Debian etch でのお話し。</p>
<div><pre>% apt-get install postfix</pre></div>
<p>インストール時に何もコンフィグしなかったので、main.cf すらない。<br />
/usr/share/postfix 以下にあるのでコピーする。</p>
<div><pre>% cd /usr/share/postfix
% cp main.cf.debian main.cf.dist /etc/postfix/</pre></div>
<p><strong>main.cf.debian</strong>っていうのがDebian固有の設定らしい？ので、上記二つのファイルを結合して<strong>main.cf</strong>を作った。</p>
<div><pre>% cd /etc/postfix
% cat main.cf.debian main.cf.dist &gt; main.cf</pre></div>
<p>編集した箇所は以下の通り。<br />
今回はメールゲイトウエイが他にあって外向けのメールは全てそこへリレーする。</p>
<div><pre>myhostname = bar.example.com
mydomain = example.com
myorigin = $mydomain
inet_interfaces = $myhostname, localhost

# 自身がメールゲイトウェイの場合は、&quot;$mydomain&quot;も加える。
mydestination = $myhostname, localhost.$mydomain, localhost

mynetworks_style = host
mynetworks = 127.0.0.0/8
relayhost = smtp.example.com
home_mailbox = Maildir/

# ここから下は値が空のままだった。
# インストール時に設定すればちゃんと書いてくれるんだろうな…。
# とりあえずわからない所は空のまま、じゃ動かなかったのでコメントアウト。
sendmail_path = /usr/sbin/sendmail
newaliases_path = /usr/bin/newaliases
mailq_path = /usr/bin/mailq
#setgid_group =
#html_directory =
manpage_directory = /usr/share/man
sample_directory = /usr/share/postfix
readme_directory = /usr/share/doc/postfix</pre></div>
<p>作りながらこれを書いているのでまだ動かしていない。<br />
これにSSL使ったりするように設定してから起動するつもり。</p>
<div>&nbsp;</div>
<!--r66303b3--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>SSL(TLS)通信 <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FPostfix#uef1ee81" title="uef1ee81"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>まずはサーバの秘密鍵と証明書を作る。<br />
実際には Apache で使用しているものをコピーしてきただけなのだが、一応手順を書いておく。</p>
<p>最初に秘密鍵の作成。</p>
<div><pre>% openssl genrsa -rand ./.testfile -des3 -out server.key 2048</pre></div>
<p>秘密鍵は他人に読まれないように。</p>
<div><pre>% chmod 600 server.key</pre></div>
<p>Postfix起動時に上記で入力したパスフレーズを入れなくてもいいように秘密鍵に署名する。</p>
<div><pre>% openssl rsa -in server.key -out server.key</pre></div>
<p>独自に秘密鍵を使って証明書を発行。</p>
<div><pre>% openssl req -new -key server.key -out server.csr
% openssl x509 -in server.csr -out server.crt 
      -req -signkey server.key</pre></div>
<p>作成したものを以下に保存した。</p>
<div><pre>% mkdir -m 700 /etc/postfix/ssl.key
% mkdir /etc/postfix/ssl.crt
% install -m 600 server.key /etc/postfix/ssl.key
% cp server.crt /etc/postfix/ssl.crt</pre></div>
<p>main.cfに以下を追記。</p>
<div><pre># 証明書
smtpd_tls_cert_file = /etc/postfix/ssl.crt/server.crt
# 秘密鍵
smtpd_tls_key_file = /etc/postfix/ssl.key/server.key

smtpd_tls_session_cache_database = 
                    btree:/etc/postfix/smtpd_scache
smtpd_use_tls = yes</pre></div>
<div>&nbsp;</div>
<!--uef1ee81--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>aliases <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FPostfix#hb7e8892" title="hb7e8892"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>/etc/aliases を書き換えたときは以下のコマンドを打つ。</p>
<div><pre>% postalias /etc/aliases</pre></div><!--hb7e8892--></div>


 ]]></content:encoded>
 <dc:identifier>http://www.tagus.org/modules/xpwiki/index.php?LinuxDoc%2FPostfix</dc:identifier>

</item>
<item rdf:about="http://www.tagus.org/modules/xpwiki/index.php?LinuxDoc%2FCourier">
 <title>LinuxDoc/Courier</title>
 <link>http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FCourier</link>
 <dc:date>2011-02-13T01:34:15+09:00</dc:date>
 <dc:creator>sleep</dc:creator>
 
 <description>&amp;#35;br
SSLクライアント認証   &amp;#182;
SSLクライアント認証   &amp;#182;
SSLクライアント認証
SSLクライアント認証   
クライアント証明書を使用した認証を設定する。
クライアント証明書の発行の仕方は、クライアント証明書を参照のこと。
クライアント証明書を発行したCAのCRTを指定する。
ここで指定したCAからの接続だけを許可するようになる。
TLS_TRUSTCERTS=/etc/courier/client_cacert.pem
下記の一行でクライアント認証を</description>
 <content:encoded><![CDATA[
 <dl><dt>Changes</dt><dd><p>&#35;br</p>
<div>
<h2>SSLクライアント認証   <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2><!--se516db4--></div>&#182;<!--ADD_TEXT_SEP-->
<div>
<h2>SSLクライアント認証   <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2><!--g885dcaa--></div>&#182;<!--ADD_TEXT_SEP-->
<ul><li>SSLクライアント認証</li></ul>
<div>
<h2>SSLクライアント認証   <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2>
<p>クライアント証明書を使用した認証を設定する。<br />
クライアント証明書の発行の仕方は、クライアント証明書を参照のこと。</p>
<p>クライアント証明書を発行したCAのCRTを指定する。<br />
ここで指定したCAからの接続だけを許可するようになる。</p>
<div><pre>TLS_TRUSTCERTS=/etc/courier/client_cacert.pem</pre></div>
<p>下記の一行でクライアント認証を強制する。</p>
<div><pre>TLS_VERIFYPEER=REQUIREPEER</pre></div><!--j6fe3a7a--></div>&#182;<!--ADD_TEXT_SEP-->
<div>
<h2>インストール   <img src="http://www04.tagus.org:20080/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2>
<!--o238170b--></div>
<div>
<div><img src="http://www04.tagus.org:20080/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>SSL証明書   <img src="http://www04.tagus.org:20080/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2><!--f5605b2b--></div></dd></dl><hr /><div>
<div>
 <div>
  Table of contents
 </div>
 <div>
  <ul><li> 概要 
<ul><li> リンク </li>
<li> 目次 </li></ul></li>
<li> インストール  </li>
<li> SSL証明書  </li>
<li> SSLクライアント認証  </li></ul>
 </div>
</div>
<h2>概要  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FCourier#y93f609f" title="y93f609f"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>CourierのIMAPサーバを構築した時のTips</p>
<!--y93f609f--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>リンク  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FCourier#g9e6f292" title="g9e6f292"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h3>
<ul><li><a href="http://www.courier-mta.org/" title="www.courier-mta.org/" target="_blank">Courier Mail Server</a></li></ul>
<!--g9e6f292--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>目次  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FCourier#a5d0f350" title="a5d0f350"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h3>
<ul><li>インストール</li>
<li>SSL証明書</li>
<li>SSLクライアント認証</li></ul>
<div>&nbsp;</div>
<!--a5d0f350--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>インストール <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FCourier#o238170b" title="o238170b"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>Debian etch でのお話し。<br />
インストールは以下の通り。他にも必要な物が付随してインストールされる。</p>
<div><pre>% apt-get install courier-imap courier-imap-ssl</pre></div>
<p>とりあえずは、localhost からのアクセスだけに制限した。<br />
<strong>/etc/courier/imapd</strong>を書き換える。</p>
<div><pre>ADDRESS=127.0.0.1</pre></div>
<p><strong>/etc/crourier/imapd-ssl</strong>も書き換える。</p>
<div><pre>SSLADDRESS=127.0.0.1</pre></div>
<p>各サービスを再起動して設定を反映させる。</p>
<div><pre>% /etc/init.d/courier-imap restart
% /etc/init.d/courier-imap-ssl restart</pre></div>
<p>このままだと平文のパスワードを使用してアクセスすることになるので気持ち悪い。<br />
そこでCRAM-MD5認証を使用するように設定する。<br />
<strong>/etc/courier/authdaemonrc</strong>を書き換える。</p>
<div><pre># 以前は、&quot;authuserdb&quot;が&quot;authcram&quot;になっていたらしい。
# etch からの変更点みたいだ。
authmodulelist=&quot;authcram authpam&quot;</pre></div>
<p><strong>/etc/courier/imapd</strong>の以下の行を書き換える。</p>
<div><pre>IMAP_CAPABILITY=&quot;IMAP4rev1 UIDPLUS CHILDREN NAMESPACE 
    THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA 
    AUTH=CRAM-MD5 AUTH=CRAM-SHA1 AUTH=CRAM-SHA256 IDLE&quot;

# 上記は全て一行でつながっている。</pre></div>
<p>次にuserdbと言うユーザとパスワードのDBを用意する。<br />
ここでは&quot;foo&quot;と言うユーザの設定をする。<br />
あらかじめディレクトリを作成する。</p>
<div><pre>% mkdir -m 700 /etc/courier/userdb</pre></div>
<p>/etc/passwd から&quot;foo&quot;の情報を持ってくる。</p>
<div><pre>% pw2userdb |
	grep foo &gt;&gt; /etc/courier/userdb/users</pre></div>
<p>ユーザのパスワードの設定。<br />
プロンプトが出てくるのでパスワードを入力して設定すること。</p>
<div><pre>% userdbpw -hmac-md5 |
	userdb users/foo set imap-hmac-md5pw</pre></div>
<p>データベースの作成。</p>
<div><pre>% makeuserdb</pre></div>
<p>これで、courier-authdaemon,courier-imap,courier-imap-sslを再起動してやればOK。</p>
<div>&nbsp;</div>
<!--o238170b--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>SSL証明書 <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FCourier#f5605b2b" title="f5605b2b"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>Debian etch だと、インストール時にSSL証明書も勝手に作成してくれる。<br />
しかし、コモンネーム(CN)などが適当なので作り直すことにした。<br />
まずは、秘密鍵の作成。</p>
<div><pre>% openssl genrsa -rand ./.testfile -des3 
	-out server.key 2048</pre></div>
<p>上記で作成した秘密鍵からCAへ提出する申請書(CSR)を作成。</p>
<div><pre>% openssl req -new -days 365 -key server.key -out server.csr</pre></div>
<p><strong>server.csr</strong>をCAへ送って証明書を発行してもらう。<br />
ここまでは、&quot;Apache:apache なんかに書いてあるのと同じ。<br />
しかし、courier-imap は秘密鍵と証明書を一つにしないと動かないらしい。<br />
ここでは送られてきた証明書を、<strong>server.crt</strong>とする。</p>
<div><pre>% cat server.crt server.key &gt; server.pem</pre></div>
<p>できた<strong>server.pem</strong>を読み込むように<strong>/etc/courier/imapd-ssl</strong>を書き換え。</p>
<div><pre>TLS_CERTFILE=/etc/courier/server.pem</pre></div>
<p>サービス再起動。</p>
<div><pre>% /etc/init.d/courier-imap-ssl restart</pre></div>
<div>&nbsp;</div>
<!--f5605b2b--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>SSLクライアント認証 <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FCourier#se516db4" title="se516db4"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>クライアント証明書を使用した認証を設定する。<br />
クライアント証明書の発行の仕方は、<a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FOpenSSL#clientcert" title="LinuxDoc/OpenSSL (2d)">クライアント証明書</a>を参照のこと。</p>
<p>クライアント証明書を発行したCAのCRTを指定する。<br />
ここで指定したCAからの接続だけを許可するようになる。</p>
<div><pre>TLS_TRUSTCERTS=/etc/courier/client_cacert.pem</pre></div>
<p>下記の一行でクライアント認証を強制する。</p>
<div><pre>TLS_VERIFYPEER=REQUIREPEER</pre></div><!--se516db4--></div>


 ]]></content:encoded>
 <dc:identifier>http://www.tagus.org/modules/xpwiki/index.php?LinuxDoc%2FCourier</dc:identifier>

</item>
<item rdf:about="http://www.tagus.org/modules/xpwiki/index.php?LinuxDoc%2FOpenSSL">
 <title>LinuxDoc/OpenSSL</title>
 <link>http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FOpenSSL</link>
 <dc:date>2011-02-13T01:22:32+09:00</dc:date>
 <dc:creator>sleep</dc:creator>
 
 <description>クライアント証明書
クライアント証明書   
% cp -p openssl.cnf openssl_client.cnf
% vi openssl_client.cnf
# 以下の行を編集する。デフォルトではコメントアウトされているはず。
----------------------------------------------------------------------
[ usr_cert ]
nsCertType = client, email
------------------</description>
 <content:encoded><![CDATA[
 <dl><dt>Changes</dt><dd><ul><li>クライアント証明書</li></ul>
<div>
<h2>クライアント証明書   <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2>
<div><pre>% cp -p openssl.cnf openssl_client.cnf
% vi openssl_client.cnf

# 以下の行を編集する。デフォルトではコメントアウトされているはず。
----------------------------------------------------------------------
[ usr_cert ]
nsCertType = client, email
----------------------------------------------------------------------</pre></div><!--xbf42300--></div>&#182;<!--ADD_TEXT_SEP-->
<div><pre>	-new -x509 -newkey rsa -out cacert.pem 
	-keyout private/cakey.pem
	-noout -in cacert.pem
	-out server.key 2048</pre></div>
<div>
<h3>クライアント証明書  <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h3>
<p>クライアントを認証する時などに使う証明書の発行。
まずはクライアント証明書用の秘密鍵とCSRを同時に作成する。</p>
<div><pre>% openssl req -new -keyout client.key -out client.csr
% chmod 600 client.key</pre></div>
<p>CAで使用する<span style="color:blue">クライアント用の<strong>openssl.cnf</strong></span>を作成する。
&lt;pre&gt;
% cp -p openssl.cnf openssl_client.cnf
% vi openssl_client.cnf</p>
<p>&#35; 以下の行を編集する。デフォルトではコメントアウトされているはず。</p>
<hr />
<p>[ usr_cert ]
nsCertType = client, email</p>
<hr />
<p>&lt;/pre&gt;</p>
<p>CAでクライアント証明書を発行する。</p>
<div><pre>% openssl ca -config openssl_client.cnf 
	-in client.csr -out client.crt</pre></div>
<p>クライアント側でインポートするために、PKCS12という形式に変換。<br />
CAの証明書も使用する。</p>
<div><pre>% openssl pkcs12 -export 
	-in client.crt -inkey client.key -certfile cacert.pem 
	-name www.example.com -caname example.com -out client.p12</pre></div>
<p>Windowsでは、コピーした&quot;<strong>client.p12</strong>&quot;をクリックするとインストールできる。</p><!--r13e287e--></div></dd></dl><hr /><div>
<div>
 <div>
  Table of contents
 </div>
 <div>
  <ul><li> 概要 
<ul><li> リンク </li>
<li> 目次 </li></ul></li>
<li> 内部認証局(CA)  </li>
<li> CAへの証明書発行依頼(CSR)  </li>
<li> CAでの証明書発行  </li>
<li> クライアント側でのCA証明書のインポート  
<ul><li> Windows </li>
<li> Linux </li></ul></li>
<li> クライアント証明書  </li></ul>
 </div>
</div>
<h2>概要  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FOpenSSL#rba19f01" title="rba19f01"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>暗号化通信してくれるOpenSSLのTips</p>
<!--rba19f01--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>リンク  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FOpenSSL#i63f1602" title="i63f1602"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h3>
<ul><li><a href="http://www.openssl.org/" title="www.openssl.org/" target="_blank">OpenSSL</a></li>
<li><a href="http://www.infoscience.co.jp/technical/openssl/" title="www.infoscience.co.jp/technical/openssl/" target="_blank">OpenSSL日本語サイト</a></li></ul>
<!--i63f1602--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>目次  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FOpenSSL#n5cdc324" title="n5cdc324"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h3>
<ul><li>内部認証局(CA)</li>
<li>CAへの証明書発行依頼(CSR)</li>
<li>CAでの証明書発行</li>
<li>クライアント側でのCA証明書のインポート</li>
<li>クライアント証明書</li></ul>
<div>&nbsp;</div>
<!--n5cdc324--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>内部認証局(CA) <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FOpenSSL#f75ac723" title="f75ac723"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>SSLの証明書を発行したりできる内部認証局(CA)を作成する。<br />
いわゆるオレオレ認証局である。独自に作っても公式には認証されない。</p>
<p>まずは必要なディレクトリ・ファイルを作成。<br />
今回は<strong>/usr/local/ssl/CA</strong>以下に作る。</p>
<div><pre>% mkdir /usr/local/ssl/CA
% mkdir -m 700 /usr/local/ssl/CA/private
% mkdir /usr/local/ssl/CA/certs
% mkdir /usr/local/ssl/CA/crl
% mkdir /usr/local/ssl/CA/newcerts
% echo &quot;00&quot; &gt; /usr/local/ssl/CA/serial
% touch /usr/local/ssl/CA/index.txt</pre></div>
<p>CA用の<strong>openssl.cnf</strong>を作る。<br />
これにしか使わなければインストール時に作成されたオリジナルを編集してもいい。<br />
今回はCA内にコピーして使用する。</p>
<div><pre>% cp -p /usr/local/ssl/openssl.cnf /usr/local/ssl/CA/</pre></div>
<p>以下は設定のサンプル。書き換えたところだけ抜粋。<br />
必要なところにはコメントも入れてある。</p>
<div><pre># CAのルート(トップ？)ディレクトリの指定
dir = /usr/local/ssl/CA

# 証明書を作成するときのデフォルトの有効期限
default_days = 365

# デフォルトの暗号化の長さ(ビット長っていうのかな？)
default_bits = 2048

# デフォルトの国・市町村・会社・組織名など
countryName_default = JP
stateOrProvinceName_default = Kanagawa
localityName_default = Yokohama-shi, Nantoka-ku
0.organizationName_default = Kaisha no name Inc.
organizationalUnitName_default = System Section
emailAddress_default = rootca@example.com

# デフォルトの局名(適当にそれっぽい名前でいいんじゃないかな…)
commonName_default = Kaisha no Root CA</pre></div>
<p>ここまで終わったら、CAの秘密鍵の作成をする。<br />
<strong>cacert.pem</strong>や<strong>private/cakey.pem</strong>は<strong>openssl.cnf</strong>の記述に合わせているので、よくわからない場合はこのままにしておくこと。</p>
<div><pre>% openssl req -days 365 -batch -config ./openssl.cnf 
	-new -x509 -newkey rsa -out cacert.pem 
	-keyout private/cakey.pem</pre></div>
<p>オプションの説明: (コメントないところは不明)</p>
<div><pre>-days nnn ※有効期限(openssl.cnf 通りで良ければ不要)
-batch ※余計なことを聞かないで自動にやる？らしい…
-config ※コンフィグファイルの指定
-new
-x509
-newkey rsa
-out file ※出力する署名ファイル名
-keyout file ※出力する秘密鍵ファイル名</pre></div>
<p>作成した秘密鍵のパーミッションを変更する。<br />
root しか読み書きできないように。</p>
<div><pre>% chmod 600 private/cakey.pem</pre></div>
<p>&quot;serial&quot;を更新する。<br />
サーバーの証明書を発行するときは勝手にインクリメントしてくれるが、今回は例外なので手動で行う。</p>
<div><pre>% echo &quot;01&quot; &gt; serial</pre></div>
<p>これで認証局の作成は完了。<br />
作成した署名鍵の確認をするには以下の二通りのコマンドがある。</p>
<div><pre>% openssl x509 -subject -dates -fingerprint 
	-noout -in cacert.pem
% openssl x509 -text -noout -in cacert.pem</pre></div>
<div>&nbsp;</div>
<!--f75ac723--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>CAへの証明書発行依頼(CSR) <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FOpenSSL#j689d46d" title="j689d46d"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>作成したCAへ各サーバ(または自機のWebサーバなど)から証明書の発行を依頼する手順。<br />
今回の例はApacheでhttpsを利用するために証明書の発行を依頼する手順を記述する。</p>
<p>まずはサーバの側での秘密鍵の作成から。</p>
<div><pre>% openssl genrsa -rand ./.testfile -des3 
	-out server.key 2048

※-rand は乱数ファイル名、-out は秘密鍵名で任意で良い。</pre></div>
<p>次にCAへの申請書を上記で作成した秘密鍵を基に作成する。</p>
<div><pre>% openssl req -new -days 3650 -key server.key -out server.csr

※-days は有効期限、-key は秘密鍵名、-out は申請書ファイル名</pre></div>
<p>以上で作成は済んだので、後はCAに<strong>server.csr</strong>を送って署名・証明書を発行してもらう。</p>
<div>&nbsp;</div>
<!--j689d46d--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>CAでの証明書発行 <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FOpenSSL#y29e3d72" title="y29e3d72"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>CSRから依頼された証明書を発行する手順。<br /></p>
<p>送られてきたCSR(server.csr)をCAディレクトリにコピーして、それに署名する。</p>
<div><pre>% cp server.csr /usr/local/ssl/CA/
% cd /usr/local/ssl/CA
% openssl ca -config ./openssl.cnf -in server.csr 
      -keyfile private/cakey.pem 
      -cert cacert.pem -out server.crt</pre></div>
<p>これでできた証明書(server.crt)をサーバへ送ってやる。<br />
サーバ側ではこの証明書と自ら作成した秘密鍵を組み合わせてSSL通信を実現する。</p>
<p>以下は参考までに...。<br />
証明書を発行するたびに以下の処理が行われる。</p>
<ol><li>&quot;serial&quot;に書いてある番号がインクリメントされる。</li>
<li>newcert/nn.pem というサーバの証明書のコピーが作成される(&quot;nn.pem&quot;の&quot;nn&quot;は&quot;serial&quot;の番号)。</li></ol>
<p>CAの判断で証明書を破棄するときは、コピーに対して処理を行えば良い。</p>
<div><pre>% openssl ca -revoke newcert/nn.pem</pre></div>
<div>&nbsp;</div>
<!--y29e3d72--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>クライアント側でのCA証明書のインポート <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FOpenSSL#b50ac767" title="b50ac767"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<!--b50ac767--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>Windows  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FOpenSSL#f1e76fed" title="f1e76fed"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h3>
<p>クライアントPCにCAの証明書をインポートしておくと警告がでなくなる。</p>
<p>まずはCAでインポート用の証明書を発行。</p>
<div><pre>%openssl x509 -in cacert.pem -outform DER -out cacert.der</pre></div>
<p>出来た<strong>cacert.der</strong>をクライアント機にコピーして、インポートする。<br />
Windowsだと持って来た<strong>cacert.der</strong>をクリックすると、「証明書のインストール」っていうボタンが出てくるのでそれを押せばあとはウィザードでいけるらしい。</p>
<!--f1e76fed--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>Linux  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FOpenSSL#nb3597d7" title="nb3597d7"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h3>
<p>まずは適当なディレクトリを作成。</p>
<div><pre>% mkdir -m 700 /home/bar/.ca_cert</pre></div>
<p>CAのCRTをコピー。</p>
<div><pre>% cp cacert.pem /home/bar/.ca_cert</pre></div>
<p>fetchmailなどで使用する場合はハッシュしておかなければいけないらしい。</p>
<div><pre>% c_rehash /home/bar/.ca_cert</pre></div>
<p>fetchmailで使うには、.fetchmailrcを編集する。<br />
以下のように一行書き加えるだけでいいらしい。<br />
ハッシュしたディレクトリを指定する。</p>
<div><pre>sslcertpath &quot;/home/bar/.ca_cert&quot;</pre></div>
<p>msmtpで使用するには、.msmtpを編集する。<br />
ディレクトリではなく、証明書ファイルを直接指定する。<br />
ハッシュしなくてもこれはいいのかも。</p>
<div><pre>tls_trust_file /home/bar/.ca_cert/cacert.pem</pre></div>
<p>Debian etch だと、グローバルな証明書ファイル類が&quot;/etc/ssl/certs&quot;というディレクトリにある。<br />
その中の&quot;ca-certificates.crt&quot;ってファイルに&quot;cacert.pem&quot;を追記してハッシュしても良かったみたい。<br />
やっていいのか知らないけど。</p>
<div><pre>% c_rehash /etc/ssl/certs</pre></div>
<p>これでfetchmailもmsmtpも動いた。<br />
こうしておけばシステム全体で使えるんじゃないだろうか(多分)。</p>
<!--nb3597d7--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>クライアント証明書 <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FOpenSSL#xbf42300" title="xbf42300"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>クライアントを認証する時などに使う証明書の発行。
まずはクライアント証明書用の秘密鍵とCSRを同時に作成する。</p>
<div><pre>% openssl req -new -keyout client.key -out client.csr
% chmod 600 client.key</pre></div>
<p>CAで使用する<span style="color:blue">クライアント用の<strong>openssl.cnf</strong></span>を作成する。</p>
<div><pre>% cp -p openssl.cnf openssl_client.cnf
% vi openssl_client.cnf

# 以下の行を編集する。デフォルトではコメントアウトされているはず。
----------------------------------------------------------------------
[ usr_cert ]
nsCertType = client, email
----------------------------------------------------------------------</pre></div>
<p>CAでクライアント証明書を発行する。</p>
<div><pre>% openssl ca -config openssl_client.cnf 
	-in client.csr -out client.crt</pre></div>
<p>クライアント側でインポートするために、PKCS12という形式に変換。<br />
CAの証明書も使用する。</p>
<div><pre>% openssl pkcs12 -export 
	-in client.crt -inkey client.key -certfile cacert.pem 
	-name www.example.com -caname example.com -out client.p12</pre></div>
<p>Windowsでは、コピーした&quot;<strong>client.p12</strong>&quot;をクリックするとインストールできる。</p><!--xbf42300--></div>


 ]]></content:encoded>
 <dc:identifier>http://www.tagus.org/modules/xpwiki/index.php?LinuxDoc%2FOpenSSL</dc:identifier>

</item>
<item rdf:about="http://www.tagus.org/modules/xpwiki/index.php?LinuxDoc%2FPHP">
 <title>LinuxDoc/PHP</title>
 <link>http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FPHP</link>
 <dc:date>2010-11-15T17:43:28+09:00</dc:date>
 <dc:creator>sleep</dc:creator>
 
 <description>
 
  ページ内コンテンツ
 
 
   概要 
 リンク 
 目次 
 Aapache設定  
 mbstring  
 文字列の判定  
 pear (4.4.2)  
 
概要  
リンク  
目次  
Aapache設定   
PHP4
PHP5
mbstring   
文字列の判定   
pear (4.4.2)   &amp;#182;
 
  Table of contents
 
 
   概要 
 リンク 
 目次 
 Aapache設定  
 mbstring  
 文字列の判定 </description>
 <content:encoded><![CDATA[
 <dl><dt>Changes</dt><dd><div>
<div>
 <div>
  ページ内コンテンツ
 </div>
 <div>
  <ul><li> 概要 
<ul><li> リンク </li>
<li> 目次 </li></ul></li>
<li> Aapache設定  </li>
<li> mbstring  </li>
<li> 文字列の判定  </li>
<li> pear (4.4.2)  </li></ul>
 </div>
</div>
<h2>概要  <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2>
<!--r20986c6--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>リンク  <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h3>
<!--o1d18a83--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>目次  <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h3>
<!--o183b0ab--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>Aapache設定   <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2>
<p>PHP4
PHP5</p>
<!--v156d71d--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>mbstring   <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2>
<!--h1a25690--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>文字列の判定   <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2>
<!--k2da9dcd--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>pear (4.4.2)   <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2><!--uee75148--></div></dd></dl><hr /><div>
<div>
 <div>
  Table of contents
 </div>
 <div>
  <ul><li> 概要 
<ul><li> リンク </li>
<li> 目次 </li></ul></li>
<li> Aapache設定  </li>
<li> mbstring  </li>
<li> 文字列の判定  </li>
<li> pear (4.4.2)  </li></ul>
 </div>
</div>
<h2>概要  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FPHP#r20986c6" title="r20986c6"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>スクリプト言語のPHPのTips</p>
<!--r20986c6--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>リンク  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FPHP#o1d18a83" title="o1d18a83"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h3>
<ul><li><a href="http://www.php.net/" title="www.php.net/" target="_blank">PHP: Hypertext Preprocessor</a></li>
<li><a href="http://www.php.gr.jp/" title="www.php.gr.jp/" target="_blank">日本PHPユーザー会 (Japan PHP User Group)</a></li></ul>
<!--o1d18a83--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>目次  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FPHP#o183b0ab" title="o183b0ab"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h3>
<ul><li>Aapache設定</li>
<li>mbstring</li>
<li>文字列の判定</li>
<li>4.4.2でのpear</li></ul>
<div>&nbsp;</div>
<!--o183b0ab--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>Aapache設定 <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FPHP#v156d71d" title="v156d71d"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>今更ながら、ちらっと書いておく。</p>
<p>PHP4</p>
<div><pre>LoadModule php4_module modules/libphp4.so</pre></div>
<p>PHP5</p>
<div><pre>LoadModule php5_module modules/libphp5.so</pre></div>
<p>拡張子<strong>.php</strong>のファイルをPHPとして扱いたい場合。</p>
<div><pre>&lt;FilesMatch .php$&gt;
	SetHandler application/x-httpd-php
&lt;/FilesMatch&gt;</pre></div>
<p><strong>.php, .php2, .php3, .php4, .php5, php6, phtml</strong>のファイルをPHPとして扱いたい場合。</p>
<div><pre>&lt;FilesMatch &quot;.ph(p[2-6]?|tml)$&quot;&gt;
	SetHandler application/x-httpd-php
&lt;/FilesMatch&gt;</pre></div>
<p><strong>.phps</strong>ファイルをPHPソースファイルとして扱う場合。</p>
<div><pre>&lt;FilesMatch &quot;.phps$&quot;&gt;
	SetHandler application/x-httpd-php-source
&lt;/FilesMatch&gt;</pre></div>
<div>&nbsp;</div>
<!--v156d71d--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>mbstring <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FPHP#h1a25690" title="h1a25690"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>PHPスクリプトの文字コードはeuc-jp。<br />
出力されるHTMLの文字コードはshift_jis。<br />
DBへ入力されたフォーム等を書き込む時の文字コードはeuc-jp。<br />
Linux上でスクリプトを書いているが、携帯向けなのでShift_JISで出力させてやりたい時などにあてはまる状況だと思う。<br />
↑のような構成での php.ini の書き方のメモ。</p>
<div><pre>output_buffering = On
output_handler = mb_output_handler
default_charset = &quot;EUC-JP&quot;
mbstring.language = Japanese
mbstring.internal_encoding = EUC-JP
mbstring.http_input = auto
mbstring.http_output = Shift_JIS
mbstring.encoding_translation = On
mbstring.substitute_character = none;</pre></div>
<p>こんな感じで動いた。&lt;bj /&gt;
あ、ちなみにDebianでの php.ini の場所は、<strong>/etc/php4/apache2/php.ini</strong>だった。</p>
<div>&nbsp;</div>
<!--h1a25690--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>文字列の判定 <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FPHP#k2da9dcd" title="k2da9dcd"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>if文で文字列があるかないか評価する時は、</p>
<div><pre>if($string) {
}

または、

if(!$string) {
}</pre></div>
<p>だけでいい。文字列があればtrueで、なければfalseだそうだ。</p>
<div>&nbsp;</div>
<!--k2da9dcd--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>pear (4.4.2) <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FPHP#uee75148" title="uee75148"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>4.4.2をソースからインストールすると付属のpearのインストールにエラーが出る。<br />
しょうがないので後からpearを再インストールする。</p>
<div><pre>% lynx -source http://go-pear.org/ | php</pre></div>
<p>これで動くようになった。</p><!--uee75148--></div>


 ]]></content:encoded>
 <dc:identifier>http://www.tagus.org/modules/xpwiki/index.php?LinuxDoc%2FPHP</dc:identifier>

</item>
<item rdf:about="http://www.tagus.org/modules/xpwiki/index.php?LinuxDoc%2FPerl">
 <title>LinuxDoc/Perl</title>
 <link>http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FPerl</link>
 <dc:date>2010-11-15T17:38:21+09:00</dc:date>
 <dc:creator>sleep</dc:creator>
 
 <description>
 
  Table of contents
 
 
   概要 
 リンク 
 目次 
 モジュール一覧取得  
 モジュールインストール  
 CPAN  
 
概要  
スクリプト言語のPerlに関するTips
リンク  
Perl
CPAN
目次  
モジュール一覧取得
モジュールインストール
CPAN
&amp;nbsp;
モジュール一覧取得   
現在インストールされているモジュールの一覧を取る。
% find `perl -e 'print join(&amp;quot; &amp;quot;, @INC</description>
 <content:encoded><![CDATA[
 <div>
<div>
 <div>
  Table of contents
 </div>
 <div>
  <ul><li> 概要 
<ul><li> リンク </li>
<li> 目次 </li></ul></li>
<li> モジュール一覧取得  </li>
<li> モジュールインストール  </li>
<li> CPAN  </li></ul>
 </div>
</div>
<h2>概要  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FPerl#y4b90a4f" title="y4b90a4f"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>スクリプト言語のPerlに関するTips</p>
<!--y4b90a4f--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>リンク  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FPerl#udb0a867" title="udb0a867"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h3>
<ul><li><a href="http://www.perl.com/" title="www.perl.com/" target="_blank">Perl</a></li>
<li><a href="http://www.cpan.org/" title="www.cpan.org/" target="_blank">CPAN</a></li></ul>
<!--udb0a867--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>目次  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FPerl#p2f51399" title="p2f51399"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h3>
<ul><li>モジュール一覧取得</li>
<li>モジュールインストール</li>
<li>CPAN</li></ul>
<div>&nbsp;</div>
<!--p2f51399--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>モジュール一覧取得 <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FPerl#kce10888" title="kce10888"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>現在インストールされているモジュールの一覧を取る。</p>
<div><pre>% find `perl -e 'print join(&quot; &quot;, @INC)'` 
      -type f -name &quot;'.pm&quot; &gt; mod.txt
% find `perl -e 'print join(&quot; &quot;, @INC)'` 
      -type f -name &quot;'.pl&quot; &gt; mod.txt</pre></div>
<div>&nbsp;</div>
<!--kce10888--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>モジュールインストール <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FPerl#s2078e5b" title="s2078e5b"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>手動でモジュールをインストールする場合。<br />
ソースを展開してそこへ移動してから、</p>
<div><pre>% perl Makefile.PL
% make
% make install</pre></div>
<div>&nbsp;</div>
<!--s2078e5b--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>CPAN <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FPerl#xdc17248" title="xdc17248"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>CPANを使用してモジュールをインストールする。<br />
以下のコマンドで初期設定をする。</p>
<div><pre>% perl -MCPAN -e shell</pre></div>
<p>色々と入力項目が出るので答える。<br />
全ての設定が終わると以下のプロンプトがでるはず。</p>
<div><pre>% cpan &gt;</pre></div>
<p>例えば、<strong>Jcode.pm</strong>をインストールしたいときは以下のようにする。</p>
<div><pre>% cpan&gt; install Jcode</pre></div><!--xdc17248--></div>


 ]]></content:encoded>
 <dc:identifier>http://www.tagus.org/modules/xpwiki/index.php?LinuxDoc%2FPerl</dc:identifier>

</item>
<item rdf:about="http://www.tagus.org/modules/xpwiki/index.php?LinuxDoc%2FSendmail">
 <title>LinuxDoc/Sendmail</title>
 <link>http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FSendmail</link>
 <dc:date>2010-11-05T15:47:34+09:00</dc:date>
 <dc:creator>sleep</dc:creator>
 
 <description>
 
  ページ内コンテンツ
 
 
   概要 
 リンク 
 目次 
 sendmail.mc  
 リレーホストの設定  
 
概要  
リンク  
目次  
リレーホストの設定
sendmail.mc   
リレーホストの設定   &amp;#182;
 
  ページ内コンテンツ
 
 
   概要 
 リンク 
 目次 
 sendmail.mc  
 リレーホストの設定  
 
概要  
リンク  
目次  
sendmail.mc   
&amp;#35;br
リレーホストの設定   &amp;#182;</description>
 <content:encoded><![CDATA[
 <dl><dt>Changes</dt><dd><div>
<div>
 <div>
  ページ内コンテンツ
 </div>
 <div>
  <ul><li> 概要 
<ul><li> リンク </li>
<li> 目次 </li></ul></li>
<li> sendmail.mc  </li>
<li> リレーホストの設定  </li></ul>
 </div>
</div>
<h2>概要  <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2>
<!--y8e55044--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>リンク  <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h3>
<!--m7e2cf6b--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>目次  <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h3>
<ul><li>リレーホストの設定</li></ul>
<!--ybcdc5bf--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2><strong>sendmail.mc</strong>   <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2>
<!--q174d371--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>リレーホストの設定   <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2><!--cc88c2ec--></div>&#182;<!--ADD_TEXT_SEP-->
<div>
<div>
 <div>
  ページ内コンテンツ
 </div>
 <div>
  <ul><li> 概要 
<ul><li> リンク </li>
<li> 目次 </li></ul></li>
<li> sendmail.mc  </li>
<li> リレーホストの設定  </li></ul>
 </div>
</div>
<h2>概要  <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2>
<!--y66a1e1c--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>リンク  <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h3>
<!--ab938e7e--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>目次  <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h3>
<!--yfda18db--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2><strong>sendmail.mc</strong>   <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2>
<p>&#35;br</p>
<!--a489af0d--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>リレーホストの設定   <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2><!--md391670--></div>&#182;<!--ADD_TEXT_SEP-->
<div>
<div>
 <div>
  ページ内コンテンツ
 </div>
 <div>
  <ul><li> 概要 
<ul><li> リンク </li>
<li> 目次 </li></ul></li>
<li> sendmail.mc  </li>
<li> リレーホストの設定  </li></ul>
 </div>
</div>
<h2>概要  <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2>
<!--pb882b8e--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>リンク  <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h3>
<!--b983ee43--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>目次  <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h3>
<!--m95ab4ee--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2><strong>sendmail.mc</strong>   <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2>
<p><strong>Sendmail</strong>の設定変更を行う場合、直接<strong>sendmail.cf</strong>を書き換えることは普通やらない(らしい)。<br /></p>
<!--b16d19c2--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>リレーホストの設定   <img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></h2>
<p><strong>sendmail.mc</strong>の以下の行を編集する。<br />
&quot;relayhost.example.com&quot;は、任意のリレーホストを指定する。</p>
<div><pre>dnl define(`SMART_HOST',`smtp.your.provider')dnl
↓
define(`SMART_HOST',`relayhost.example.com')dnl</pre></div>
<p><strong>sendmail.cf</strong>に変更を反映させる。</p>
<div><pre>% m4 /etc/mail/sendmail.mc &gt; /etc/mail/sendmail.cf</pre></div>
<p><strong>Sendmail</strong>を再起動する。</p>
<div><pre>% /etc/init.d/sendmail restart</pre></div><!--tbd5e9e4--></div></dd></dl><hr /><div>
<div>
 <div>
  Table of contents
 </div>
 <div>
  <ul><li> 概要 
<ul><li> リンク </li>
<li> 目次 </li></ul></li>
<li> sendmail.mc  </li>
<li> リレーホストの設定  </li></ul>
 </div>
</div>
<h2>概要  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FSendmail#y8e55044" title="y8e55044"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p>メールサーバのSendmailのTips</p>
<!--y8e55044--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>リンク  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FSendmail#m7e2cf6b" title="m7e2cf6b"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h3>
<ul><li><a href="http://www.sendmail.org/" title="www.sendmail.org/" target="_blank">Sendmail.com</a></li></ul>
<!--m7e2cf6b--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h3>目次  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FSendmail#ybcdc5bf" title="ybcdc5bf"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h3>
<ul><li><strong>sendmail.mc</strong></li>
<li>リレーホストの設定</li></ul>
<div>&nbsp;</div>
<!--ybcdc5bf--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2><strong>sendmail.mc</strong> <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FSendmail#q174d371" title="q174d371"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p><strong>Sendmail</strong>の設定変更を行う場合、直接<strong>sendmail.cf</strong>を書き換えることは普通やらない(らしい)。<br />
代わりに<strong>sendmail.mc</strong>を編集し、コマンドを使って<strong>sendmail.cf</strong>に書き出すと言う方法がある。</p>
<p>以下のコマンドがそれ。</p>
<div><pre>% m4 /etc/mail/sendmail.mc &gt; /etc/mail/sendmail.cf</pre></div>
<p><strong>m4</strong>というコマンドは少々癖がある(らしい)。<br />
そのため、<strong>sendmail.mc</strong>の編集時には以下のところを注意する。</p>
<ul><li><strong>dnl</strong>という文字列が行頭にあった場合、その行はコメント。</li>
<li>不要な改行が入ってしまうため、設定の行末に<strong>dnl</strong>を記述しておく。</li></ul>
<p>以降の項も設定変更の場合は上記方法を使用する。</p>
<div>&nbsp;</div>
<!--q174d371--></div>
<div>
<div><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=arrow_up.png" alt="Page Top" width="16" height="16" /></div><h2>リレーホストの設定 <a></a>  <a href="http://www.tagus.org/modules/xpwiki/?LinuxDoc%2FSendmail#cc88c2ec" title="cc88c2ec"><img src="http://www.tagus.org/modules/xpwiki/skin/loader.php?src=anchor.png" alt="anchor.png" height="12" width="12" /></a></h2>
<p><strong>sendmail.mc</strong>の以下の行を編集する。<br />
&quot;relayhost.example.com&quot;は、任意のリレーホストを指定する。</p>
<div><pre>dnl define(`SMART_HOST',`smtp.your.provider')dnl
↓
define(`SMART_HOST',`relayhost.example.com')dnl</pre></div>
<p><strong>sendmail.cf</strong>に変更を反映させる。</p>
<div><pre>% m4 /etc/mail/sendmail.mc &gt; /etc/mail/sendmail.cf</pre></div>
<p><strong>Sendmail</strong>を再起動する。</p>
<div><pre>% /etc/init.d/sendmail restart</pre></div><!--cc88c2ec--></div>


 ]]></content:encoded>
 <dc:identifier>http://www.tagus.org/modules/xpwiki/index.php?LinuxDoc%2FSendmail</dc:identifier>

</item>

</rdf:RDF>
