<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Linuxいじり改</title>
	<atom:link href="http://linux.ijiri.info/feed/" rel="self" type="application/rss+xml" />
	<link>http://linux.ijiri.info</link>
	<description>本サイトは、自分用の備忘録を兼ねた、サーバ構築メモです。</description>
	<lastBuildDate>Mon, 23 Jan 2012 15:28:21 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>MODxにはまる</title>
		<link>http://linux.ijiri.info/modx/modx-fan/</link>
		<comments>http://linux.ijiri.info/modx/modx-fan/#comments</comments>
		<pubDate>Sat, 11 Feb 2006 14:24:29 +0000</pubDate>
		<dc:creator>momomoclub</dc:creator>
				<category><![CDATA[MODxいじり]]></category>
		<category><![CDATA[Gentoo]]></category>
		<category><![CDATA[MODx]]></category>

		<guid isPermaLink="false">http://linux.ijiri.info/?p=130</guid>
		<description><![CDATA[今日は土曜日でもあり、MODxをいじりまわしていたのですが、私の知っているCMSとはまったく違っていて、理解の追いついていな現段階での感想は、  「なんかすごい！」  そろそろ「XOOPSいじり」を始めようかと思っていた [...]]]></description>
			<content:encoded><![CDATA[<p>今日は土曜日でもあり、MODxをいじりまわしていたのですが、私の知っているCMSとはまったく違っていて、理解の追いついていな現段階での感想は、 <br />
<strong>「なんかすごい！」</strong> <br />
そろそろ<strong>「XOOPSいじり」</strong>を始めようかと思っていたのですが、こりゃ<strong>「MODxいじり」</strong>になりそーです^^</p>
<p>もう少し理解が進んだら、こちらでも紹介して行こうと思いますが、現在わかっている範囲で目に付いた特徴は、<br />
・AJAXを使っていて、コンテンツ編集が高機能。<br />
・ページの構成は、テンプレートでページ全体を記述し、その中に「パーツ」を埋め込んでいく感じ。<br />
・「パーツ」には、「テンプレート変数」「チャンク」「スニペット」といったものがある。これらは、すべて管理者が定義できる。<br />
・「テンプレート変数」はブログシステムでは、よく使われるもので、テンプレートの中に特定の記法で記述しておくと、記事名とか投稿日時とかに置き換わる。 ・「チャンク」HTMLで記述された部品。例えば、Login用のサイドバーとか・・。<br />
・「スニペット」PHPで記述された関数のようなもの。パラメータを渡すことができる。例えば、コメントフォームやログインフォームの部品など。<br />
・プラグイン可能。(他の部品との違いがまだよくわかってません)<br />
・モジュール可能。(プラグインとどう違うのか・・・？)<br />
・各コンテンツは、階層構造で管理。<br />
・バックアップ機能あり。</p>
<p>まだまだ知らない機能がたくさんありそうですが、玄箱コンテンツは、MODxを使って構築して行こうと思ってます。<br />
Hug-worldの「Linuxいじり」と「玄箱自宅サーバ」の使い分けは、前者が「ブログ」中心、後者が「まとめ」といった方向になると思います。</p>
]]></content:encoded>
			<wfw:commentRss>http://linux.ijiri.info/modx/modx-fan/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MODｘの基本設定</title>
		<link>http://linux.ijiri.info/modx/config-modx/</link>
		<comments>http://linux.ijiri.info/modx/config-modx/#comments</comments>
		<pubDate>Fri, 10 Feb 2006 12:06:13 +0000</pubDate>
		<dc:creator>momomoclub</dc:creator>
				<category><![CDATA[MODxいじり]]></category>
		<category><![CDATA[Gentoo]]></category>
		<category><![CDATA[MODx]]></category>

		<guid isPermaLink="false">http://linux.ijiri.info/?p=122</guid>
		<description><![CDATA[インストールの後は、MODxの基本的なシステム設定をやってしまいます。 ブラウザから、「MODxルート/manager/」にアクセスすると、次のような画面が表示されます。 「installディレクトリが残っている」と警告 [...]]]></description>
			<content:encoded><![CDATA[<p>インストールの後は、MODxの基本的なシステム設定をやってしまいます。 ブラウザから、「MODxルート<code>/manager/</code>」にアクセスすると、次のような画面が表示されます。<br />
<img class="alignnone size-full wp-image-123" title="MODx" src="http://linux.ijiri.info/wp-content/uploads/2012/01/modx2.gif" alt="MODx" width="450" height="369" /></p>
<p>「installディレクトリが残っている」と警告が出ているので、削除しておきます。</p>
<pre># rm -rf install</pre>
<p>次に日本語化します。<br />
前回ダウンロードしてきた<code>japanese-euc.inc.zip</code>を解凍して、「MODxルート<code>/manager/includes/lang/</code>」の下にコピーします。 上の画面の「<code>Administration-System configuration</code>」よりの「<code>Site setting</code>」タブより、<br />
・<code>Language: Japanese-euc</code><br />
・<code>Character Encoding: Japanese(EUC)-euc-jp</code>を選択し、「save」します。 上の管理画面は、次のように日本語化されて、作業がやりやすくなりました。<br />
<img class="alignnone size-full wp-image-124" title="MODx" src="http://linux.ijiri.info/wp-content/uploads/2012/01/modx3.gif" alt="MODx" width="450" height="315" /></p>
<p>基本設定を続けます。<br />
管理画面「管理-MODx設定」の「サイト設定」のタブを開き、<br />
・サイト名：<code>momomo.homelinux.com</code><br />
・公開デフォルト：yes にして「保存」します。<br />
「フレンドリURL」というのが、静的HTML生成に関連するオプションのようです。 「フレンドリURL」タブより、<br />
・フレンドリURLの使用：yes を選ぶと、フレンドリURLを使用した際の詳細オプション入力が現れます。とりあえず、デフォルトのまま「保存」しました。<br />
 このフレンドリURLを有効にするには、各ディレクトリにある「<code>ht.access</code>」という名のファイルを「<code>.htaccess</code>」にリネームします。 <code>apache</code>の設定で、<br />
・<code>AllowOverride</code>が有効になっていること<br />
・<code>mod_rewrite</code>モジュールが有効になっていること<br />
を確認します。 </p>
<p>基本的な設定は、以上です。 これからは、MODxの使い方を理解しながら、コンテンツを作成して行く予定です。</p>
]]></content:encoded>
			<wfw:commentRss>http://linux.ijiri.info/modx/config-modx/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MODxを使ってみるか・・・</title>
		<link>http://linux.ijiri.info/modx/try-modx/</link>
		<comments>http://linux.ijiri.info/modx/try-modx/#comments</comments>
		<pubDate>Thu, 09 Feb 2006 14:41:21 +0000</pubDate>
		<dc:creator>momomoclub</dc:creator>
				<category><![CDATA[MODxいじり]]></category>
		<category><![CDATA[MODx]]></category>

		<guid isPermaLink="false">http://linux.ijiri.info/?p=114</guid>
		<description><![CDATA[玄箱自宅サーバを何(CMS)で構築しようか、色々迷ってます。 とりあえず当初の予定通りxoopsを入れてみました。 インストール方法は、xoopsが使えるレンタルサーバなどに詳しい説明があるので、ここでは省略します。 ( [...]]]></description>
			<content:encoded><![CDATA[<p>玄箱自宅サーバを何(CMS)で構築しようか、色々迷ってます。<br />
とりあえず当初の予定通りxoopsを入れてみました。</p>
<p>インストール方法は、xoopsが使えるレンタルサーバなどに詳しい説明があるので、ここでは省略します。<br />
(<code>mysql</code>を導入していなかったので、その前に<code>emerge mysql</code>しました)</p>
<p>それなりの重さだけれども、xoopsにするか・・・使えないこともないし・・・。公開されているモジュールも多いし・・・。 なにか吹っ切れないものがある・・・。 と ・・・<br />
<code><strong>MODx???</strong></code><br />
聞きなれない名前・・・ 試しにインストールしてみたら、<br />
これ、行けるかも。</p>
<p>AJAXを使っていてUIが楽しい、何よりも気に入ったのが、mod_rewriteを使った静的HTMLに対応していること。<br />
日本語ドキュメントがほとんどないので、少し時間がかかりましたが、インストール自体は簡単です。<br />
<a href="http://modxcms.com/" target="_blank">本家サイト</a>から、<code>MODx-0.9.1.tar.gz</code>をダウンロードしてきます。<br />
<a href="http://www.1km.info/cms_review/modx.html" target="_blank">フォーラム</a>から、EUC日本語化ファイル <code>japanese-euc.inc.zip</code> もダウンロード。<br />
mysqlで、modx用のデータベースとユーザを作成して、</p>
<pre># tar zxvf MODx-0.9.1.tar.gz</pre>
<p>ディレクトリ<code>MODx-0.9.1</code>を適当な名前に変えてドキュメントルートとする。 ブラウザから、玄箱にアクセスすると</p>
<pre>Unable to load configuration settings  Please run the MODx <span style="text-decoration: underline;">install utility</span></pre>
<p>こんな画面が出たので、<span style="text-decoration: underline;">install utility</span>をクリック。</p>
<p><img class="alignleft size-full wp-image-116" title="MODx" src="http://linux.ijiri.info/wp-content/uploads/2006/02/modx1.gif" alt="MODx" width="450" height="332" /><br />
<br class="clear" /><br />
ほう、なかなか美しい。<br />
[Next]をクリックして、インストールを進めます。 License Agreementのメッセージの画面が出たので、</p>
<pre>□ I agree to the terms set out in this license.</pre>
<p>のチェックボックスをチェックして[Next]クリック。<br />
次の画面で、<code>New Installation</code>を選んで[Next]クリック。<br />
・<code>Database Name:</code> 用意したmysqlデータベース名<br />
・<code>Table prefix: modx_</code> <br />
・<code>Database host: localhost</code> <br />
・<code>Database login name: 用意したmysqlユーザ名</code> <br />
・<code>Database password: 上のユーザ名のパスワード</code> <br />
・<code>Administrator username: 管理者ユーザ名</code> <br />
・<code>Administrator password: 管理者パスワード</code> <br />
・<code>Confirm password: ↑と同じもの</code>を入力して、[Next]クリック。<br />
次の画面は、そのまま[Next]クリック。<br />
次の画面で、ファイル属性の警告が出たので、指示通り</p>
<pre># chmod 777 assets/cache assets/images assets/export manager/includes
# chmod 666 assets/cache/*</pre>
<p>として、[Retry]をクリック。 チェックはすべてOKになったので、[Install now]をクリックすると・・・ インストールはうまくいったようです。 次は、システムの基本的な設定を行います。 </p>
<p>・・・(To be continued)</p>
]]></content:encoded>
			<wfw:commentRss>http://linux.ijiri.info/modx/try-modx/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>玄箱Webサーバ稼動</title>
		<link>http://linux.ijiri.info/gentoo/kurobox-apache/</link>
		<comments>http://linux.ijiri.info/gentoo/kurobox-apache/#comments</comments>
		<pubDate>Tue, 07 Feb 2006 01:49:44 +0000</pubDate>
		<dc:creator>momomoclub</dc:creator>
				<category><![CDATA[Gentooいじり]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[Gentoo]]></category>
		<category><![CDATA[玄箱]]></category>

		<guid isPermaLink="false">http://linux.ijiri.info/?p=101</guid>
		<description><![CDATA[USE="mysql"でemerge --newuse worldしたので、apache2、php、mysqlによるxoopsが使える環境になりました。 Webサーバを公開するにあたり、ダイナミックDNSを使うことにしま [...]]]></description>
			<content:encoded><![CDATA[<p><code>USE="mysql"</code>で<code>emerge --newuse world</code>したので、<code>apache2</code>、<code>php</code>、<code>mysql</code>によるxoopsが使える環境になりました。 Webサーバを公開するにあたり、ダイナミックDNSを使うことにします。</p>
<p>メジャーなところで、<a href="http://www.dyndns.com/" target="_blank">dyndns.com</a>に登録しました。<code>homelinux.com</code>というサブドメインを使って<code>momomo.homelinux.com</code>としました。(現在は利用していません)<code>apache</code>の設定を少しばかり変更します。</p>
<p><code>/etc/apache2/httpd.conf</code></p>
<pre>#AddDefaultCharset ISO-8859-1
AddDefaultCharset EUC-JP</pre>
<p>バーチャルホストの機能を使い、外からの<code>momomo.homelinux.com</code>でアクセスされた時のドキュメントを<code>/var/www/momomo</code>下に、LANからプライベートドキュメントとしてアクセスするドキュメントをデフォルトの<code>/var/www/localhost/htdocs</code>下に置くことにします。</p>
<p><code>/etc/apache2/vhosts.d/00_default_vhost</code>を編集して</p>
<pre>NameVirtualHost *:80
ServerAdmin webmaster@momomo.homelinux.com
DocumentRoot /var/www/momomo
ServerName momomo.homelinux.com
ErrorLog /var/log/apache2/momomo-error.log
CustomLog /var/log/apache2/momomo-access.log common
ServerName kuro
DocumentRoot "/var/www/localhost/htdocs"
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from 192.168.11.0/24</pre>
<p>これで、LAN内から<code>http://kuro/</code>でアクセスした時はプライベートなドキュメントに、<code>http://momomo.homelinux.com/</code>でアクセスされた時は公開用のドキュメントにと、振り分けられるわけです。 <br />
<strong>名前ベースのバーチャルホストを使用するには、注意が必要です。</strong> <strong><code>Allow from 192.168.11.0/24</code></strong>とLAN内からのみのアクセスに限定しないと、ちょっとしたおまじないで、プライベートなはずの<code>http://kuro/</code>にアクセスされてしまうからです。デフォルトランレベルに登録して</p>
<pre># rc-update add apache2 default</pre>
<p>apacheを起動します。</p>
<pre># /etc/init.d/apache2 start</pre>
<p>次に、ルータの設定で、ポート80を玄箱に向けて、外からアクセスできるようにします。 DDNSクライアントを立ち上げるところですが、ルータにその機能があったのでDDSNの設定もルータにて行いました。 まだコンテンツまったくなしでつまらないですが、良かったら試しにアクセスしてみて下さい。(現在稼働していません)<br />
<a href="http://momomo.homelinux.com/" target="_blank">http://momomo.homelinux.com/</a> </p>
]]></content:encoded>
			<wfw:commentRss>http://linux.ijiri.info/gentoo/kurobox-apache/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>分散クロスコンパイル環境の構築</title>
		<link>http://linux.ijiri.info/gentoo/build-cross-compiler/</link>
		<comments>http://linux.ijiri.info/gentoo/build-cross-compiler/#comments</comments>
		<pubDate>Sun, 05 Feb 2006 11:00:49 +0000</pubDate>
		<dc:creator>momomoclub</dc:creator>
				<category><![CDATA[Gentooいじり]]></category>
		<category><![CDATA[crossdev]]></category>
		<category><![CDATA[Gentoo]]></category>
		<category><![CDATA[玄箱]]></category>

		<guid isPermaLink="false">http://linux.ijiri.info/?p=104</guid>
		<description><![CDATA[パワー不足の玄箱でGentooを運用して行くには、少しでもコンパイルの速度を上げないとGentooが生きて来ないだろう、ということで・・・ ボロPC(とは言え、Pentium III 800MHz)に、コンパイルをお手伝 [...]]]></description>
			<content:encoded><![CDATA[<p>パワー不足の玄箱でGentooを運用して行くには、少しでもコンパイルの速度を上げないとGentooが生きて来ないだろう、ということで・・・</p>
<p>ボロPC(とは言え、Pentium III 800MHz)に、コンパイルをお手伝いさせようと、前回は、PowerPC(玄箱)のコンパイル環境をPentiumeIII上に構築したわけです。</p>
<p>今回は、分散コンパイルさせるために、<code>distcc</code>の導入です。<br />
既に、玄箱には、<code>distcc</code>は導入してあるので、ボロPCにも入れます。ついでに、<code>ccache</code>も入れてしまいます。</p>
<p><strong>ボロPCで:</strong></p>
<pre># emerge distcc ccache</pre>
<p>色々と試行錯誤がありましたが、最終的に次のようになりました。</p>
<p><strong>玄箱側の設定：</strong><br />
<code>/etc/make.conf</code>の内容:</p>
<pre>CFLAGS="-O2 -mcpu=603e -fno-strict-aliasing -pipe -fsigned-char"
CHOST="powerpc-unknown-linux-gnu"
CXXFLAGS="${CFLAGS}"
PORTDIR=/var/portage
DISTDIR=/var/portage/distfiles
PKGDIR=/var/portage/packages
RPMDIR=/var/portage/rpm
PORTDIR_OVERLAY="/var/overlays/kurobox"
RSYNC_EXCLUDEFROM=/etc/portage/rsync_excludes
GENTOO_MIRRORS="http://mirror.gentoo.gr.jp/"
SYNC="rsync://192.168.11.101/gentoo-portage"
PORTAGE_TMPDIR=/var/tmp
MAKEOPTS="-j6"
FEATURES="ccache distcc"
DISTCC_DIR="${PORTAGE_TMPDIR}/.distcc"
CCACHE_SIZE="2G"
CCACHE_DIR="/var/tmp/ccache"</pre>
<p><strong>ホストの指定：</strong></p>
<pre># distcc-config --set-hosts 192.168.11.101</pre>
<p><code>/usr/lib/distcc/powerpc-unknown-linux-gnu-wrapper</code>を次の内容で新規に作成する。</p>
<pre>#!/bin/bash exec /usr/lib/distcc/bin/powerpc-unknown-linux-gnu-g${0:$[-2]} "$@"</pre>
<p>これは、<code>powerpc-unknown-linux-gnu-gcc</code>のようにフルネームではなく、gccと短い名前で呼ばれたときに、フルネームで呼ばれたかのように見せかけるラッパーです。<br />
コンパイラが起動されたときに<code>distcc</code>を実行するように、シンボリックリンクをはります。</p>
<pre># cd /usr/lib/distcc/bin
# chmod a+x powerpc-unknown-linux-gnu-wrapper
# ln -s powerpc-unknown-linux-gnu-wrapper c++
# ln -s powerpc-unknown-linux-gnu-wrapper cc
# ln -s powerpc-unknown-linux-gnu-wrapper g++
# ln -s powerpc-unknown-linux-gnu-wrapper gcc
# ln -s /usr/bin/distcc powerpc-unknown-linux-gnu-c++
# ln -s /usr/bin/distcc powerpc-unknown-linux-gnu-g++
# ln -s /usr/bin/distcc powerpc-unknown-linux-gnu-gcc</pre>
<p>デフォルトランレベルに<code>distcc</code>と<code>ccache</code>を登録しておきます。</p>
<pre># rc-update add distcc default
# rc-update add ccache default</pre>
<p><strong>ボロPC側の設定：</strong><br />
<code>/etc/make.conf</code>の内容:</p>
<pre>CFLAGS="-Os -march=pentium4 -pipe"
CHOST="i686-pc-linux-gnu"
CXXFLAGS="${CFLAGS}"
GENTOO_MIRRORS="http://mirror.gentoo.gr.jp"
SYNC="rsync://rsync.jp.gentoo.org/gentoo-portage"
PORTDIR_OVERLAY="/usr/local/portage"
PORTAGE_TMPDIR=/var/tmp
MAKEOPTS="-j2"
FEATURES="ccache"
CCACHE_SIZE="2G"
CCACHE_DIR="/var/tmp/ccache"</pre>
<p>こちらは、お手伝いをするだけなので、設定はこれだけです。<br />
玄箱と同じくデフォルトランレベルに登録しておきます。</p>
<pre># rc-update add distcc default
# rc-update add ccache default</pre>
<p>以上で、設定は終わりです。<br />
それぞれのマシンで<code>distcc</code>と<code>ccache</code>を起動した後、玄箱側で何かを<code>emerge</code>してボロPC側で、<code>powerpc-～</code>、<code>cc1</code>・・・などのプロセスが実行されれば、導入は成功です。</p>
]]></content:encoded>
			<wfw:commentRss>http://linux.ijiri.info/gentoo/build-cross-compiler/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ntpによる時刻の同期</title>
		<link>http://linux.ijiri.info/gentoo/install-ntp/</link>
		<comments>http://linux.ijiri.info/gentoo/install-ntp/#comments</comments>
		<pubDate>Sun, 05 Feb 2006 05:14:00 +0000</pubDate>
		<dc:creator>momomoclub</dc:creator>
				<category><![CDATA[Gentooいじり]]></category>
		<category><![CDATA[Gentoo]]></category>
		<category><![CDATA[ntp]]></category>

		<guid isPermaLink="false">http://linux.ijiri.info/?p=98</guid>
		<description><![CDATA[コンパイル環境は、ひとまず整ったので、これからは、必要なパッケージを導入して行きます。 まずは、軽いところから、ntpを。 # emerge ntp (多少は速くなっているのかな・・・) /etc/ntpd.confの編 [...]]]></description>
			<content:encoded><![CDATA[<p>コンパイル環境は、ひとまず整ったので、これからは、必要なパッケージを導入して行きます。 まずは、軽いところから、<strong><code>ntp</code></strong>を。</p>
<pre># emerge ntp</pre>
<p>(多少は速くなっているのかな・・・) <code>/etc/ntpd.conf</code>の編集:</p>
<pre>server [ntpサーバの指定] (一番近いであろうプロバイダのNTPサーバを指定しました)
driftfile       /var/lib/ntp/ntp.drift
restrict default nomodify nopeer
restrict 127.0.0.1    # LAN内からアクセスできるようにして、サービスを公開
restrict 192.168.11.0 mask 255.255.255.0
nomodify
nopeer
notrap</pre>
<p><code>/etc/conf.d/ntp-client</code>の編集：</p>
<pre>NTPCLIENT_CMD="ntpdate"
NTPCLIENT_OPTS=" -b -u [NTPサーバの指定]"
NTPCLIENT_TIMEOUT=30</pre>
<p>デフォルトランレベルに登録しておきます。</p>
<pre># rc-update add ntpd default
# rc-update add ntp-client default</pre>
<p>ボロPC側でも、同様の手順でntpを導入し、[NTPサーバ]指定の箇所には、玄箱のアドレスを指定して、LAN内を同期させるようにしました。</p>
]]></content:encoded>
			<wfw:commentRss>http://linux.ijiri.info/gentoo/install-ntp/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>クロスコンパイル環境の構築</title>
		<link>http://linux.ijiri.info/gentoo/build-cross-compile-env/</link>
		<comments>http://linux.ijiri.info/gentoo/build-cross-compile-env/#comments</comments>
		<pubDate>Fri, 03 Feb 2006 11:48:12 +0000</pubDate>
		<dc:creator>momomoclub</dc:creator>
				<category><![CDATA[Gentooいじり]]></category>
		<category><![CDATA[crossdev]]></category>
		<category><![CDATA[Gentoo]]></category>

		<guid isPermaLink="false">http://linux.ijiri.info/?p=96</guid>
		<description><![CDATA[ひさびさのGentooいじりの投稿です。Gentoo玄箱は、立ち上がったものの、パッケージ導入の時間のかかること。 少しでも、このボトルネックを解消しようと、ボロPCにクロスコンパイル環境を構築して、distccを使った [...]]]></description>
			<content:encoded><![CDATA[<p>ひさびさのGentooいじりの投稿です。Gentoo玄箱は、立ち上がったものの、パッケージ導入の時間のかかること。<br />
少しでも、このボトルネックを解消しようと、ボロPCにクロスコンパイル環境を構築して、distccを使った分散コンパイルを使用するという計画です。<br />
なかなかうまくいかなかったのですが、なんとか動きだしたので、ご報告させていただきます。<br />
ツールチェーンの構築は、何度か経験はあるのですが、「なんか面倒だった」という記憶だけ残っていて、すっかり忘れていました。 いろいろ調べていると、<code>crossdev</code>というツールがあるらしい。今回はこれを試してみることにしました。</p>
<pre># emerge crossdev</pre>
<p>このツールは、コマンド一発で、ツールチェーンを構築してくれる優れものです。 まず、最初にやらなければならないのが、ターゲットマシン(すなわち玄箱)のツールチェーン環境のバージョンを調べることから。現在の玄箱にインストールされているバージョンは、次のとおりです。</p>
<ul>
<li><code>gcc 3.4.4-r1</code></li>
<li><code>binutils 2.16.1</code></li>
<li><code>kernel(header) 2.4.26-r1</code></li>
<li><code>glibc 2.3.5-r3</code></li>
</ul>
<p>次に、<code>crossdev</code>を使って</p>
<pre># crossdev -t powerpc --g 3.4.4-r --b 2.16.1 --k 2.4.26-r1 --l 2.3.5-r3</pre>
<p>で後は、待つだけ。 のハズなのですが、configure中にエラーが出てしまうのです。ソースを見たり、検索でこんな事例はないか調べたり、まったく検討違いのことばかりの３日間。 結局、ボロPC(ホスト側)のビルドチェーンが玄箱のバージョンに対応できなかったのです。分かってしまえば、こんなもの、とほほ・・・</p>
<pre># emerge -uD system</pre>
<p>を実行して、再度<code>crossdev</code>して、無事クロス環境の構築は完了。 <strong><code>crossdev</code></strong>、偉い！ 次は、クロスでの、分散コンパイル環境の構築。 </p>
<p>・・・(To be continued)</p>
]]></content:encoded>
			<wfw:commentRss>http://linux.ijiri.info/gentoo/build-cross-compile-env/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Gentoo玄箱、一丁あがり！</title>
		<link>http://linux.ijiri.info/kuro-box/gentoo-kurobox-last-step/</link>
		<comments>http://linux.ijiri.info/kuro-box/gentoo-kurobox-last-step/#comments</comments>
		<pubDate>Tue, 31 Jan 2006 06:34:46 +0000</pubDate>
		<dc:creator>momomoclub</dc:creator>
				<category><![CDATA[玄箱いじり]]></category>
		<category><![CDATA[Gentoo]]></category>
		<category><![CDATA[kurobox.com]]></category>
		<category><![CDATA[玄箱]]></category>

		<guid isPermaLink="false">http://linux.ijiri.info/?p=90</guid>
		<description><![CDATA[英語サイト『kurobox.com』な方法で、玄箱Gentoo化を進めてまいりましたが、システムを最新にすることと、いくつかの設定を行って、Gentoo化の仕上げとします。 EMモードから、通常モードに変更して、リブート [...]]]></description>
			<content:encoded><![CDATA[<p>英語サイト『<code>kurobox.com</code>』な方法で、玄箱Gentoo化を進めてまいりましたが、システムを最新にすることと、いくつかの設定を行って、Gentoo化の仕上げとします。</p>
<p>EMモードから、通常モードに変更して、リブートして、<code>ssh</code>で入ります。・・・・・・<br />
『おお、見事Gentoo化玄箱に入ることができました。』</p>
<p>『<code>kurobox.com</code>』のドキュメントは、一応ここまでですが、まず<code>emerge system</code>を実行して、システムを最新状態にします。<br />
その前に、<code>glibc</code>のコンパイルを少しでも、早くするために、不要な<code>locale</code>は、コンパイルしないようにしておきます。</p>
<pre># mkdir -p /etc/portage
# echo "sys-libs/glibc userlocales" &gt;&gt; /etc/portage/package.use</pre>
<p><code>/etc/locales.build</code>を編集して、</p>
<pre>en_US/ISO-8859-1 en_US.UTF-8/UTF-8 de_DE/ISO-8859-1 de_DE@euro/ISO-8859-15
ja_JP.EUC-JP/EUC-JP ja_JP.UTF-8/UTF-8 ja_JP/EUC-JP</pre>
<p>以外は、削除します。<br />
次に</p>
<pre># emerge -uD system</pre>
<p>を実行して、最新の<code>portage</code>で、ベースシステムをリコンパイルします。これには、かなり時間がかかります。寝る前に、実行して、朝起きたときには、まだ終わってませんでした。ただ、いままでのように途中で固まってセッションが切れてしまわなかったのが幸いです。なんとか、１０時ころには、おわりました。</p>
<p>前にも述べましたが、玄箱Gentooは、時間がかかるのがネックです。１パッケージ１日がかりでは、サーバ化は程遠いです。</p>
<p>少しでもコンパイルを早くするために、<code>ccache</code>と<code>distcc</code>を導入します。</p>
<p>まずは、<code>ccache</code>から</p>
<pre># emerge ccache</pre>
<p>これは、すんなり終わりました。<br />
<code>/etc/make.conf</code>を編集して</p>
<pre>FEATURES="ccache" CCACHE_SIZE="2G" CCACHE_DIR="/var/tmp/ccache"</pre>
<p>として、<code>ccache</code>の設定は完了です。</p>
<p>次は、<code>distcc</code>です。こちらも、時間はかかるけど、手順は簡単です。(お手伝いさせるボロPCでも、同様に<code>distcc</code>をインストールします)</p>
<pre># emerge distcc</pre>
<p>これがなんと、依存モジュールなども引っ張ってくるので、40パッケージもインストールされるようです。１２時ころ実行を始めて、今３時をまわったところ・・・<br />
今、６つ目を実行しています 。</p>
<p>設定を、やってしまいます。<br />
<code>/etc/make.conf</code>を編集するわけですが、今実行中なので、</p>
<pre># cp /etc/make.conf /etc/make.conf.new</pre>
<p>として、<code>/etc/make.conf.new</code>を編集して、後で差し替えることにします。変更箇所は次のとおり</p>
<pre><code>PORTAGE_TMPDIR=/var/tmp MAKEOPTS="-j6" FEATURES="ccache distcc"
 ←distccを追加 DISTCC_DIR="${PORTAGE_TMPDIR}/.distcc"</code></pre>
<p>ホストマシンの登録と、起動スクリプトの登録して、<code>distcc</code>の導入は終わりです。</p>
<pre># ditcc-config --set-hosts "192.168.11.101"
# rc-update add distccd default</pre>
<p><code>distcc</code>の<code>emerge</code>がまだ実行中ではありますが、『<code>kurobox.com</code>』な方法での、玄箱Gentoo化は、完了とします。国内の玄箱いじり諸先輩方は、とっくにいじりつくして、今は下火気味ではありますが、外国(たぶん米国?)では、ここまでいじりまくっているとは・・・びっくりです。</p>
<p>これからは、自宅サーバ化して、Webサーバとして公開したいと思っております。<br />
<font color="#ff0000">（現在は、公開をやめております）</font></p>
]]></content:encoded>
			<wfw:commentRss>http://linux.ijiri.info/kuro-box/gentoo-kurobox-last-step/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>玄箱Gentoo化 &#8212; 『kurobox.com』の手順 その４</title>
		<link>http://linux.ijiri.info/kuro-box/gentoo-kurobox-step4/</link>
		<comments>http://linux.ijiri.info/kuro-box/gentoo-kurobox-step4/#comments</comments>
		<pubDate>Tue, 31 Jan 2006 00:08:58 +0000</pubDate>
		<dc:creator>momomoclub</dc:creator>
				<category><![CDATA[玄箱いじり]]></category>
		<category><![CDATA[Gentoo]]></category>
		<category><![CDATA[kurobox.com]]></category>
		<category><![CDATA[玄箱]]></category>

		<guid isPermaLink="false">http://linux.ijiri.info/?p=110</guid>
		<description><![CDATA[systemの本番emergeは、ブート後にやるとして、設定をやってしまいます。 なれないnanoは使いにくい。vimをいれてしまいます。 KURO-BOX-EM # emerge vim viを使って、/etc/fst [...]]]></description>
			<content:encoded><![CDATA[<p>systemの本番<code>emerge</code>は、ブート後にやるとして、設定をやってしまいます。</p>
<p>なれない<code>nano</code>は使いにくい。<code>vim</code>をいれてしまいます。</p>
<pre>KURO-BOX-EM # emerge vim</pre>
<p><code>vi</code>を使って、<code>/etc/fstab</code> &#8212; 次のように編集します。</p>
<pre>/dev/hda1 / ext3 noatime 0 1
/dev/hda2 none swap sw 0 0
/dev/hda3 /var ext3 noatime 0 2
/dev/hda5 /server ext3 noatime 0 2
/dev/hda6 /backup ext3 noatime 0 2
/dev/hda7 /media ext3 noatime 0 2
none /proc proc defaults 0 0
none /dev/shm tmpfs defaults 0 0</pre>
<p>マウントディレクトリを作成します。</p>
<pre>KURO-BOX-EM /
# mkdir /server KURO-BOX-EM /
# mkdir /backup KURO-BOX-EM /
# mkdir /media</pre>
<p><code>root</code>パスワードの変更と、一般ユーザの作成</p>
<pre>KURO-BOX-EM / # passwd
New UNIX password:
Retype new UNIX password:
passwd: password updated successfully
KURO-BOX-EM / # useradd kuro -m -G users,wheel -s /bin/bash
KURO-BOX-EM / # passwd kuro
New UNIX password:
Retype new UNIX password:
passwd: password updated successfully</pre>
<p><code>/etc/conf.d/net</code>を次のように編集して、IPアドレスを割り当てます。</p>
<pre>config_eth0=( "192.168.11.111 netmask 255.255.255.0" )
routes_eth0=( "default gw 192.168.11.1" )</pre>
<p><code>/etc/hosts</code>は、とりあえず以下のように</p>
<pre>127.0.0.1 localhost kuro</pre>
<p><code>telnetは</code>使わず、<code>ssh</code>を使います。</p>
<pre>KURO-BOX-EM / # /etc/init.d/sshd start</pre>
<p>少し時間がかかりますが、公開キー、秘密キーが生成されます。入れるかどうか、テストしておきます。</p>
<p>ボロPCから、</p>
<pre>$ ssh root@192.168.11.3 ...
Password:</pre>
<p><code>root</code>パスワードを入力し、入れればOKです。</p>
<p>ブート時に、ネットワークを有効にすることと<code>sshd</code>が起動するように、<code>default</code>ランレベルに登録します。</p>
<pre>KURO-BOX-EM / # /etc/init.d/sshd stop
KURO-BOX-EM / # rc-update add net.eth0 default
* net.eth0 added to runlevel default
* rc-update complete.
KURO-BOX-EM / # rc-update add sshd default
* sshd added to runlevel default
* rc-update complete. </pre>
<p>マウントを解除して、通常モード(EMモードでない)で起動します。</p>
<pre>KURO-BOX-EM / # exit
# umount /gentoo/var
# umount /gentoo/proc
# umount /gentoo
# echo -n "OKOK" &gt; /dev/fl3
# reboot</pre>
<p>一応これで、Gentoo化玄箱が、立ち上がるはずですが、次は仕上げとして、システムを最新の状態にすることと各種設定を行って、『<code>kurobox.com</code>』な方法でのGentoo化玄箱完成といたします。</p>
<p>・・・(To be continued)</p>
]]></content:encoded>
			<wfw:commentRss>http://linux.ijiri.info/kuro-box/gentoo-kurobox-step4/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>玄箱Gentoo化 &#8212; 『kurobox.com』の手順 その３</title>
		<link>http://linux.ijiri.info/kuro-box/gentoo-kurobox-step3/</link>
		<comments>http://linux.ijiri.info/kuro-box/gentoo-kurobox-step3/#comments</comments>
		<pubDate>Mon, 30 Jan 2006 12:46:02 +0000</pubDate>
		<dc:creator>momomoclub</dc:creator>
				<category><![CDATA[玄箱いじり]]></category>
		<category><![CDATA[chroot]]></category>
		<category><![CDATA[Gentoo]]></category>
		<category><![CDATA[kurobox.com]]></category>
		<category><![CDATA[玄箱]]></category>

		<guid isPermaLink="false">http://linux.ijiri.info/?p=88</guid>
		<description><![CDATA[これまでの、手順はほとんどボロPCのときと変わりません。それでは、chrootしてGentooシステム内にはいります。 # mount -t proc none /gentoo/proc # cp -L /etc/res [...]]]></description>
			<content:encoded><![CDATA[<p>これまでの、手順はほとんどボロPCのときと変わりません。それでは、<code>chroot</code>してGentooシステム内にはいります。</p>
<pre># mount -t proc none /gentoo/proc
# cp -L /etc/resolv.conf /gentoo/etc/
# mount -t proc none /gentoo/proc
# cp -L /etc/resolv.conf /gentoo/etc/
# chroot /gentoo /bin/bash 

KURO-BOX-EM / # source /etc/profile</pre>
<p>プロンプトが、変わりました。</p>
<p>しばらくは使いにくい<code>nano</code>を使うので、TERM変数を設定しておきます。</p>
<pre>KURO-BOX-EM / # export TERM=vt100</pre>
<p><code>portage</code>スナップショットは、<code>/var</code>の直下につくります。<code>kurobox.com</code>では、<code>/var/tree</code>下に作っていますが、今回使用しているファイルでそのようにすると、シンボリックリンクが、１つ深くなってしまってうまくいきません。</p>
<pre>KURO-BOX-EM / #</pre>
<p>以下の、<code>portage</code>下に必要なディレクトリを作っておきます。</p>
<pre>KURO-BOX-EM portage # cd /var/portage
KURO-BOX-EM portage # mkdir distfiles
KURO-BOX-EM portage # mkdir packages
KURO-BOX-EM portage # mkdir rpm
KURO-BOX-EM portage # cd ..
KURO-BOX-EM portage # mkdir overlays</pre>
<p><code>/etc/make.conf</code>を<code>nano</code>で開いて、以下のように編集しました。</p>
<pre># Kurobox make.conf

CFLAGS="-O2 -mcpu=603e -fno-strict-aliasing -pipe -fsigned-char"
CXXFLAGS="${CFLAGS}"

PORTDIR=/var/portage
DISTDIR=/var/portage/distfiles
PKGDIR=/var/portage/packages
RPMDIR=/var/portage/rpm 

PORTDIR_OVERLAY="/var/overlays/kurobox"

RSYNC_EXCLUDEFROM=/etc/portage/rsync_excludes

GENTOO_MIRRORS="http://mirror.gentoo.gr.jp/"
SYNC="rsync://192.168.11.121/gentoo-portage"

PORTAGE_TMPDIR=/var/tmp
MAKEOPTS="-j6"
FEATURES="distcc"
DISTCC_DIR="${PORTAGE_TMPDIR}/.distcc"</pre>
<p>ボロPCを<code>rsync</code>サーバーをして、玄箱ではよく失敗する<code>portage</code>更新を、LAN内で実行するように、SYNC変数を指定しています。<br />
また、玄箱でネックとなる、コンパイルを少しでも、早く実行できるよう<code>distcc</code>を利用して、ボロPCに手伝わせる指定もしております。<br />
<code>rsync</code>サーバの構築と<code>distcc</code>の導入については、別途『Gentooいじり』に書く予定です。</p>
<p><code>/etc/make.profile</code>にシンボリックリンクをはっておきます。</p>
<pre>KURO-BOX-EM portage # rm make.profile
KURO-BOX-EM portage # ln -s ../var/overlays/kurobox/profiles/kurobox make.profile</pre>
<p>次に、<code>portage</code>キャッシュをアップデートしておきます。</p>
<pre>KURO-BOX-EM portage # emerge metadata</pre>
<p><code>emerge</code>をテストランして、<code>portage</code>の整合性をチェックします。</p>
<pre>KURO-BOX-EM portage # emerge -puD system
Calculating system dependencies ...done!</pre>
<p>OK！</p>
<p>ついでに、ボロPCに<code>rsync</code>して、<code>portage</code>を最新状態にしておきます。</p>
<pre>KURO-BOX-EM portage # emerge --sync</pre>
<p>ふ～む、多少早い気がする・・・。LAN内から、ダウンロードしてるんだから、その分早くなるのは当たり前か。</p>
<p>とりあえず、ここでティーブレイク。</p>
<p>・・・(To be continued)</p>
]]></content:encoded>
			<wfw:commentRss>http://linux.ijiri.info/kuro-box/gentoo-kurobox-step3/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

