<?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>経済学101 &#187; Ubuntu</title>
	<atom:link href="http://rionaoki.net/tag/ubuntu/feed" rel="self" type="application/rss+xml" />
	<link>http://rionaoki.net</link>
	<description>国内外のメディアを通じて経済学的考え方を学ぶ</description>
	<lastBuildDate>Sun, 11 Jul 2010 04:38:08 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Grub 2 入門</title>
		<link>http://rionaoki.net/2009/10/823</link>
		<comments>http://rionaoki.net/2009/10/823#comments</comments>
		<pubDate>Fri, 23 Oct 2009 20:54:59 +0000</pubDate>
		<dc:creator>Rion</dc:creator>
				<category><![CDATA[Tips]]></category>
		<category><![CDATA[TotW]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://rionaoki.net/?p=823</guid>
		<description><![CDATA[
			
				
			
		
この記事はこちらに移動しました。


関連するエントリーGoogle CalendarとConkyを繋げよう
FTPサーバーでデータ共有
カーネルをコンパイルしよう
グラフィカルなIPブ [...]


関連するエントリー<ol><li><a href='http://rionaoki.net/2009/10/703' rel='bookmark' title='Permanent Link: Google CalendarとConkyを繋げよう'>Google CalendarとConkyを繋げよう</a></li>
<li><a href='http://rionaoki.net/2009/09/607' rel='bookmark' title='Permanent Link: FTPサーバーでデータ共有'>FTPサーバーでデータ共有</a></li>
<li><a href='http://rionaoki.net/2009/09/539' rel='bookmark' title='Permanent Link: カーネルをコンパイルしよう'>カーネルをコンパイルしよう</a></li>
<li><a href='http://rionaoki.net/2009/09/516' rel='bookmark' title='Permanent Link: グラフィカルなIPブロッカー'>グラフィカルなIPブロッカー</a></li>
<li><a href='http://rionaoki.net/2009/09/462' rel='bookmark' title='Permanent Link: UbuntuでリポジトリDVDを作ろう'>UbuntuでリポジトリDVDを作ろう</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Frionaoki.net%2F2009%2F10%2F823"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Frionaoki.net%2F2009%2F10%2F823&amp;source=rionaoki&amp;style=normal&amp;service=is.gd" height="61" width="50" /><br />
			</a>
		</div>
<p>この記事は<a title="Grub 2 入門" href="http://rionaoki.net/misc/ubuntu/grub-2-basics">こちら</a>に移動しました。</p>


<p>関連するエントリー<ol><li><a href='http://rionaoki.net/2009/10/703' rel='bookmark' title='Permanent Link: Google CalendarとConkyを繋げよう'>Google CalendarとConkyを繋げよう</a></li>
<li><a href='http://rionaoki.net/2009/09/607' rel='bookmark' title='Permanent Link: FTPサーバーでデータ共有'>FTPサーバーでデータ共有</a></li>
<li><a href='http://rionaoki.net/2009/09/539' rel='bookmark' title='Permanent Link: カーネルをコンパイルしよう'>カーネルをコンパイルしよう</a></li>
<li><a href='http://rionaoki.net/2009/09/516' rel='bookmark' title='Permanent Link: グラフィカルなIPブロッカー'>グラフィカルなIPブロッカー</a></li>
<li><a href='http://rionaoki.net/2009/09/462' rel='bookmark' title='Permanent Link: UbuntuでリポジトリDVDを作ろう'>UbuntuでリポジトリDVDを作ろう</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://rionaoki.net/2009/10/823/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google CalendarとConkyを繋げよう</title>
		<link>http://rionaoki.net/2009/10/703</link>
		<comments>http://rionaoki.net/2009/10/703#comments</comments>
		<pubDate>Fri, 02 Oct 2009 19:56:35 +0000</pubDate>
		<dc:creator>Rion</dc:creator>
				<category><![CDATA[Tips]]></category>
		<category><![CDATA[TotW]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://rionaoki.net/?p=703</guid>
		<description><![CDATA[
			
				
			
		
Ubuntu英語フォーラムのTutorial of the Weekの翻訳が技術評論社さんのUbuntu Weekly Topics、もとい執筆者の吉田さんに取り上げて頂いておりますし、 [...]


関連するエントリー<ol><li><a href='http://rionaoki.net/2009/10/823' rel='bookmark' title='Permanent Link: Grub 2 入門'>Grub 2 入門</a></li>
<li><a href='http://rionaoki.net/2009/09/607' rel='bookmark' title='Permanent Link: FTPサーバーでデータ共有'>FTPサーバーでデータ共有</a></li>
<li><a href='http://rionaoki.net/2009/09/539' rel='bookmark' title='Permanent Link: カーネルをコンパイルしよう'>カーネルをコンパイルしよう</a></li>
<li><a href='http://rionaoki.net/2009/09/516' rel='bookmark' title='Permanent Link: グラフィカルなIPブロッカー'>グラフィカルなIPブロッカー</a></li>
<li><a href='http://rionaoki.net/2009/09/462' rel='bookmark' title='Permanent Link: UbuntuでリポジトリDVDを作ろう'>UbuntuでリポジトリDVDを作ろう</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Frionaoki.net%2F2009%2F10%2F703"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Frionaoki.net%2F2009%2F10%2F703&amp;source=rionaoki&amp;style=normal&amp;service=is.gd" height="61" width="50" /><br />
			</a>
		</div>
<p>Ubuntu<a title="Ubuntu Forums" href="http://ubuntuforums.org/">英語フォーラム</a>の<a title="Tutorial of the Week" href="http://ubuntuforums.org/showthread.php?t=655207">Tutorial of the Week</a>の<a title="Tutorial of the Week翻訳" href="http://rionaoki.net/tag/totw">翻訳</a>が<a title="技術評論社" href="http://gihyo.jp/">技術評論社</a>さんの<a title="Ubuntu Weekly Topics" href="http://gihyo.jp/admin/clip/01/ubuntu-topics/200910/02">Ubuntu Weekly Topics</a>、もとい執筆者の吉田さんに取り上げて頂いておりますし、引き続き翻訳させて頂きます。</p>
<p>&#8211;</p>
<p>以下はUbuntuの<a title="Ubuntu Forums" href="http://ubuntuforums.org/">英語フォーラム</a>の<a title="Tutorial of the Week" href="http://ubuntuforums.org/showthread.php?t=655207">Tutorial of the Week</a>の翻訳です。原文「<a title="Conky Google Calendar Python Script" href="http://ubuntuforums.org/showthread.php?t=837385">Conky Google Calendar Python Script</a>」はユーザー<a title="kaivalagi" href="http://ubuntuforums.org/member.php?u=494551">kaivalagi</a>によって執筆されています。英語フォーラムにおける投稿は<a title="Creative Commons Attribution 3.0" href="http://creativecommons.org/licenses/by/3.0/">Creative Commons Attribution 3.0</a>です。この文章自体は<a title="Creative Commons Attribution Share Alike 3.0" href="http://creativecommons.org/licenses/by-sa/3.0/">Creative Commons Attribution Share Alike 3.0</a>とします。tar.gzを用いるインストール方法はほぼ利用者がいないでしょうし、説明も不十分なので省きました。</p>
<p>&#8211;</p>
<p>私が書いたConky用のスクリプトは全てHardy, Interpid, Jaunty, Karmic向けにパッケージしてある。リポジトリの場所は以下のインストールの項を参照して欲しい。</p>
<p><a rel="attachment wp-att-720" href="http://rionaoki.net/2009/10/703/conkygooglecalendar"><img class="aligncenter size-full wp-image-720" title="conkyGoogleCalendar" src="http://rionaoki.net/wp-content/uploads/2009/10/conkyGoogleCalendar.jpg" alt="conkyGoogleCalendar" width="301" height="353" /></a></p>
<h2>紹介</h2>
<p>以前に公開したconkyForecastスクリプトに引き続きconkyの利用者のための新しいスクリプト作った。conkyForecastスクリプトは<a title="conkyForecastスクリプト" href="http://ubuntuforums.org/showthread.php?p=5452132">こちらのスレッド</a>にある。</p>
<p>このスクリプトはGoogle CalendarのデフォルトカレンダーにあるイベントをConkyで利用できる形で出力する。他にもコマンドラインで同じ事をする方法はあるだろうけど、自分で改造できるようにしたかったし、みんなのアイデアも取り入れていくつもりだ。</p>
<p>機能としては：</p>
<ul>
<li>Google CalendarのAPIを利用する</li>
<li>イベントの出力結果にテンプレートを利用できる</li>
<li>システムのロカールを使って異なる時間帯をサポートする</li>
<li>多くのイベントがある場合に早いものから先にイベントの数を制限して出力できる</li>
</ul>
<p>READMEも添付してあるので一度は目を通してくれ。役に立ってくれるとうれしい。何か意見があれば是非教えてくれ。</p>
<h2>インストール</h2>
<h3>aptを利用する</h3>
<p>1. リポジトリにアクセスするためのリストを作成する</p>
<p>Karmic Koala:</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">sudo wget -q http://www.kaivalagi.com/ubuntu/ppa/m-buck-conky-karmic.list -O /etc/apt/sources.list.d/m-buck-conky-karmic.list</pre>
<p>Jaunty Jackalope</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">sudo wget -q http://www.kaivalagi.com/ubuntu/ppa/m-buck-conky-jaunty.list -O /etc/apt/sources.list.d/m-buck-conky-jaunty.list</pre>
<p>Intrepid Ibex</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">sudo wget -q http://www.kaivalagi.com/ubuntu/ppa/m-buck-conky-intrepid.list -O /etc/apt/sources.list.d/m-buck-conky-intrepid.list</pre>
<p>Hardy Heron</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">sudo wget -q http://www.kaivalagi.com/ubuntu/ppa/m-buck-conky-hardy.list -O /etc/apt/sources.list.d/m-buck-conky-hardy.list</pre>
<p>2. リポジトリの公開鍵をaptに追加する</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">wget -q http://www.kaivalagi.com/ubuntu/ppa/m-buck-conky-key.gpg -O- | sudo apt-key add -</pre>
<p>3. apt-getでインストール</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">sudo apt-get update &amp;&amp; sudo apt-get install conkygooglecalendar</pre>
<h3>debファイルを利用する</h3>
<p>添付されているdebファイルをダウンロードして実行する。但し最新とは限らない。最初の方法でaptを利用すればアップデートも行われる。</p>
<h2>使い方</h2>
<p>ヘルプは次のオプションで見られる：</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">python ~/.scripts/conkyGoogleCalendar.py -h</pre>
<p>ないし</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">python ~/.scripts/conkyGoogleCalendar.py --help</pre>
<p>使い方は以下の通りだ：</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 498px; text-align: left;" dir="ltr">Usage: conkyGoogleCalendar [options]
Options:
  -h, --help            show this help message and exit
  -u USERNAME, --username=USERNAME
                        Username for login into Google Calendar, this will
                        normally be your gmail account
  -p PASSWORD, --password=PASSWORD
                        Password for login
  -r TEXT, --requestCalendarNames=TEXT
                        Define a list of calendars to request event data for,
                        calendar names should be separated by semi-colons ";".
                        For example --requestCalendarNames="cal1;cal2;other
                        cal" If not set all calendar data will be returned.
  -d NUMBER, --daysahead=NUMBER
                        [default: 7] Define the number of days ahead you wish
                        to retrieve calendar entries for, starting from today.
  -s DATE, --startdate=DATE
                        Define the start date to retrieve calendar events. In
                        the form '2007-12-01'
  -e DATE, --enddate=DATE
                        Define the end date to retrieve calendar events, must
                        be supplied if --startdate supplied. In the form
                        '2007-12-01'
  -a, --allevents       Retrieve all calendar events
  -w TEXT, --wordsearch=TEXT
                        Define the text to search calendar entries with.
  -l NUMBER, --limit=NUMBER
                        [default: 0] Define the maximum number of calendar
                        events to display, zero means no limit.
  -t FILE, --template=FILE
                        Template file determining the format for each event.
                        Use the following placeholders: [title], [starttime],
                        [endtime], [location], [description], [who]. Ensure
                        only one placeholder per line, as the whole line is
                        removed if no data for that placeholder exists.
  -f "DATEFORMAT", --dateformat="DATEFORMAT"
                        If used this overrides the default date formatting.
                        The values to use are standard formatting strings e.g.
                        Weekday=%a, Day=%d, Month=%m, Year=%y. For an output
                        like "Thu 15/10/2008" you would require
                        --dateformat="%a %d/%m/%y", to have no date you would
                        require --dateformat=""
  -F "TIMEFORMAT", --timeformat="TIMEFORMAT"
                        If used this overrides the default time formatting.
                        The values to use are standard formatting strings e.g.
                        Hours (12hr)=%l, Hours (24hr)=%H, Minutes=%M,
                        Seconds=%S, AM/PM=%P. For an output like "05:22 PM"
                        you would require --timeformat="%l:%M %P",
                        --timeformat="" is not supported, default locale
                        settings are used
  -i NUMBER, --indent=NUMBER
                        [default: 0] Define the number of spaces to indent the
                        output (excludes template based output)
  -m NUMBER, --maxwidth=NUMBER
                        [default: 40] Define the number of characters to
                        output per line
  -n, --nowho           Hides who is attending the events (excludes template
                        based output)
  -c NUMBER, --connectiontimeout=NUMBER
                        [default: 10] Define the number of seconds before a
                        connection timeout can occur.
  -v, --verbose         Request verbose output, no a good idea when running
                        through conky!
  -V, --version         Displays the version of the script.
  --errorlogfile=FILE   If a filepath is set, the script appends errors to the
                        filepath.
  --infologfile=FILE    If a filepath is set, the script appends info to the
                        filepath.</pre>
<p>重要な点としてはConky内での呼び出し方次のようになったことだ：</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">{execi 1800 conkyGoogleCalendar ...options...}</pre>
<p>以前はこうだった：</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">{execi 1800 python /path/to/file/conkyGoogleCalendar.py ...options...}</pre>
<h2>設定</h2>
<p>conkyGoogleCalendar.pyスクリプトには一つ重要な設定値がある。記述が長くなったときのために出力の量に上限を設定できる。</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">MAX_WIDTH = 47</pre>
<p>必要であればこの値を変えてみてほしい。</p>
<h2>その他</h2>
<h3>出力結果の省略</h3>
<p>Conkyはデフォルトでexeciを含め変数当たり128バイト以上の出力を受け付けない。このデフォルトのバッファーサイズよりも大きな出力をするようなテンプレートを作ると、出力結果が一部省略されてしまう。デフォルトを変更するにはconkyrcファイルを次のように変更すればよい。</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">text_buffer_size 512</pre>
<h3>キャプチャ</h3>
<p>&#8220;GoogleCalendarEngine Initialisation:Unexpected error:Captcha Required&#8221;というエラーで動かなくなることがある。これはグーグルがやってることで、次のURLで認証を行えば解決できる。<a href="https://www.google.com/accounts/UnlockCaptcha" target="_blank">https://www.google.com/accounts/UnlockCaptcha</a></p>
<h3>ロカールとユニコード</h3>
<p>&#8220;ERROR: writeOutput:Unexpected error:&#8217;ascii&#8217; codec can&#8217;t decode byte 0xc3 in position 14: ordinal not in range(128)&#8221;というようなエラーはスクリプトがシステムのロカールを取り扱えていないということだ。conkyrcファイルの TEXTの上に次の行を加えれば解決する。</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">override_utf8_locale yes</pre>
<h2>開発履歴</h2>
<p>開発履歴は次のページで見られる。<a href="https://code.launchpad.net/%7Em-buck/+junk/conkygooglecalendar" target="_blank">https://code.launchpad.net/~m-buck/+&#8230;googlecalendar</a></p>
<p>私が提供しているパッケージは以下にある：</p>
<ol style="list-style-type: decimal;">
<li>Conky Packages &#8211; <a href="https://launchpad.net/%7Em-buck/+archive/conky" target="_blank">https://launchpad.net/~m-buck/+archive/conky</a></li>
<li>gtk-desktop-info &#8211; <a href="https://launchpad.net/%7Em-buck/+archive/gtk-desktop-info" target="_blank">https://launchpad.net/~m-buck/+archive/gtk-desktop-info</a></li>
<li>Rhythmbox Packages &#8211; <a href="https://launchpad.net/%7Em-buck/+archive/rhythmbox" target="_blank">https://launchpad.net/~m-buck/+archive/rhythmbox</a></li>
</ol>
<p>新しいウェブサイトも作った。今のところあまり中身がないがconkyスクリプトについてもそれなりにかかれている。こちらだ：<a href="http://www.kaivalagi.com/" target="_blank">http://www.kaivalagi.com</a></p>
<p>添付ファイル</p>
<ul>
<li><a href="http://ubuntuforums.org/attachment.php?attachmentid=109931&amp;d=1239834563">README.txt</a></li>
<li><a href="http://ubuntuforums.org/attachment.php?attachmentid=119100&amp;d=1246115909">conkygooglecalendar_2.06_all.deb</a></li>
<li> <a href="http://ubuntuforums.org/attachment.php?attachmentid=119101&amp;d=1246115909">conkygooglecalendar-2.06.tar.gz</a></li>
</ul>
<div id="_mcePaste" style="overflow: hidden; position: absolute; left: -10000px; top: 3221px; width: 1px; height: 1px;"><a href="http://ubuntuforums.org/attachment.php?attachmentid=119100&amp;d=1246115909">conkygooglecalendar_2.06_all.deb</a></div>


<p>関連するエントリー<ol><li><a href='http://rionaoki.net/2009/10/823' rel='bookmark' title='Permanent Link: Grub 2 入門'>Grub 2 入門</a></li>
<li><a href='http://rionaoki.net/2009/09/607' rel='bookmark' title='Permanent Link: FTPサーバーでデータ共有'>FTPサーバーでデータ共有</a></li>
<li><a href='http://rionaoki.net/2009/09/539' rel='bookmark' title='Permanent Link: カーネルをコンパイルしよう'>カーネルをコンパイルしよう</a></li>
<li><a href='http://rionaoki.net/2009/09/516' rel='bookmark' title='Permanent Link: グラフィカルなIPブロッカー'>グラフィカルなIPブロッカー</a></li>
<li><a href='http://rionaoki.net/2009/09/462' rel='bookmark' title='Permanent Link: UbuntuでリポジトリDVDを作ろう'>UbuntuでリポジトリDVDを作ろう</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://rionaoki.net/2009/10/703/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>FTPサーバーでデータ共有</title>
		<link>http://rionaoki.net/2009/09/607</link>
		<comments>http://rionaoki.net/2009/09/607#comments</comments>
		<pubDate>Fri, 25 Sep 2009 08:20:51 +0000</pubDate>
		<dc:creator>Rion</dc:creator>
				<category><![CDATA[Tips]]></category>
		<category><![CDATA[TotW]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://rionaoki.net/?p=607</guid>
		<description><![CDATA[
			
				
			
		
以下はUbuntuの英語フォーラムのTutorial of the Weekの翻訳です。原文「Create a FTP server with user access」はユーザーfrod [...]


関連するエントリー<ol><li><a href='http://rionaoki.net/2009/10/823' rel='bookmark' title='Permanent Link: Grub 2 入門'>Grub 2 入門</a></li>
<li><a href='http://rionaoki.net/2009/10/703' rel='bookmark' title='Permanent Link: Google CalendarとConkyを繋げよう'>Google CalendarとConkyを繋げよう</a></li>
<li><a href='http://rionaoki.net/2009/09/539' rel='bookmark' title='Permanent Link: カーネルをコンパイルしよう'>カーネルをコンパイルしよう</a></li>
<li><a href='http://rionaoki.net/2009/09/516' rel='bookmark' title='Permanent Link: グラフィカルなIPブロッカー'>グラフィカルなIPブロッカー</a></li>
<li><a href='http://rionaoki.net/2009/09/462' rel='bookmark' title='Permanent Link: UbuntuでリポジトリDVDを作ろう'>UbuntuでリポジトリDVDを作ろう</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Frionaoki.net%2F2009%2F09%2F607"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Frionaoki.net%2F2009%2F09%2F607&amp;source=rionaoki&amp;style=normal&amp;service=is.gd" height="61" width="50" /><br />
			</a>
		</div>
<p>以下はUbuntuの<a title="Ubuntu Forums" href="http://ubuntuforums.org/">英語フォーラム</a>の<a title="Tutorial of the Week" href="http://ubuntuforums.org/showthread.php?t=655207">Tutorial of the Week</a>の翻訳です。原文「<a title="Create a FTP server with user access" href="http://ubuntuforums.org/showthread.php?t=79588">Create a FTP server with user access</a>」はユーザー<a title="frodon" href="http://ubuntuforums.org/showthread.php?t=79588">frodon</a>によって執筆されています。英語フォーラムにおける投稿は<a title="Creative Commons Attribution 3.0" href="http://creativecommons.org/licenses/by/3.0/">Creative Commons Attribution 3.0</a>です。この文章自体は<a title="Creative Commons Attribution Share Alike 3.0" href="http://creativecommons.org/licenses/by-sa/3.0/">Creative Commons Attribution Share Alike 3.0</a>とします。最後のOther Stuffはリンク切れもあるので省きました。必要であれば原文を参照してください。</p>
<p>どうも、ですます調は英文の雰囲気と合わないので翻訳は基本的にである調にします。</p>
<p>&#8211;</p>
<p>このチュートリアルではWindowsのFTPservUのようにFTPプロトコルを使って友達とファイルを共有する方法を説明する。もちろんこの方法が唯一の方法ではないけれど、分かりやすく書こうと思う。</p>
<p>ここで作るFTPサーバーは、知らない人間が勝手に入ってこないように、ちゃんとあなたがユーザー名とパスワードをあげた人にしかアクセスできないようになっている。</p>
<h2>A &#8211; GUIバージョン（初心者専用）</h2>
<p>Linuxを使い始めたばっかりでGUIのないFTPサーバーなんて使いたいとか、FTPサーバーを使う頻度が少ないのでセキュリティはともかくちゃちゃっと設定したいなんて人にはproftpdのGTKのGUIがある。でもこれは自分できちんと設定するのに比べるとセキュリティが甘いので気をつけて。</p>
<p>1. proftpdとgproftpdをsynapticでインストールする。</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">sudo apt-get install proftpd gproftpd</pre>
<p>2. GUIを使ってさっさとサーバーを設定する。</p>
<p>この方法については特に説明しないけど、特に難しいことはないはずだ。</p>
<h2>B &#8211; 安全な方法</h2>
<p>1. proftpdをsynapticでインストールする。</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">sudo apt-get install proftpd</pre>
<p>2. 次の行を/etc/shellsに書き込む（sudo gedit /etc/shellsなど）。</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">/bin/false</pre>
<p>/home/FTP-sharedディレクトリを作成する。</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 50px; text-align: left;" dir="ltr">cd /home
sudo mkdir FTP-shared</pre>
<p><strong>userftp</strong>というユーザーをftpアクセスのみの権限で差くせしよう。どうせ大したシェルは必要ないのでセキュリティの高い/bin/falseシェルを選ぶ。ホームディレクトリは/home/FTP-sharedにしよう。</p>
<p>GUIを使うのを勧めるけど分かりやすくするためコマンドも書いておく。繰り返しになるけどシステム、システム管理、ユーザとグループにあるGUIを使った方がいい。コマンドラインでユーザー・パスワードを作ると530エラーにぶち当たる人が多い。</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 50px; text-align: left;" dir="ltr">sudo useradd userftp -p your_password -d /home/FTP-shared -s /bin/false
sudo passwd userftp</pre>
<p>FTP-sharedディレクトリに<strong>download</strong>と<strong>upload</strong>ディレクトリを作ろう。</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 66px; text-align: left;" dir="ltr">cd /home/FTP-shared/
sudo mkdir download
sudo mkdir upload</pre>
<p>こいつらに適切なパーミッションを設定する。</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 98px; text-align: left;" dir="ltr">cd /home
sudo chmod 755 FTP-shared
cd FTP-shared
sudo chmod 755 download
sudo chmod 777 upload</pre>
<p>3. ではproftpdの設定ファイルに移ろう。</p>
<pre class="alt2" style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">sudo gedit /etc/proftpd.conf</pre>
<p>edgy eft (Ubuntu 6.10)ならこっちだ。</p>
<pre class="alt2" style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">sudo gedit /etc/proftpd/proftpd.conf</pre>
<p>proftpd.confを以下のような感じに自分のケースに合うように編集してくれ。</p>
<pre class="alt2" style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 498px; text-align: left;" dir="ltr"># To really apply changes reload proftpd after modifications.
AllowOverwrite on
AuthAliasOnly on

# Choose here the user alias you want !!!!
UserAlias sauron userftp

ServerName			"ChezFrodon"
ServerType 			standalone
DeferWelcome			on

MultilineRFC2228 on
DefaultServer			on
ShowSymlinks			off

TimeoutNoTransfer 600
TimeoutStalled 100
TimeoutIdle 2200

DisplayFirstChdir               .message
ListOptions                	"-l"

RequireValidShell 		off

TimeoutLogin 20

RootLogin 			off

# It's better for debug to create log files <img src='http://rionaoki.net/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' />
ExtendedLog 			/var/log/ftp.log
TransferLog 			/var/log/xferlog
SystemLog			/var/log/syslog.log

#DenyFilter			\*.*/

# I don't choose to use /etc/ftpusers file (set inside the users you want to ban, not useful for me)
UseFtpUsers off

# Allow to restart a download
AllowStoreRestart		on

# Port 21 is the standard FTP port, so you may prefer to use another port for security reasons (choose here the port you want)
Port				1980

# To prevent DoS attacks, set the maximum number of child processes
# to 30.  If you need to allow more than 30 concurrent connections
# at once, simply increase this value.  Note that this ONLY works
# in standalone mode, in inetd mode you should use an inetd server
# that allows you to limit maximum number of processes per service
# (such as xinetd)
MaxInstances 8

# Set the user and group that the server normally runs at.
User                  nobody
Group                 nogroup

# Umask 022 is a good standard umask to prevent new files and dirs
# (second parm) from being group and world writable.
Umask				022	022

PersistentPasswd		off

MaxClients 8
MaxClientsPerHost 8
MaxClientsPerUser 8
MaxHostsPerUser 8

# Display a message after a successful login
AccessGrantMsg "welcome !!!"
# This message is displayed for each access good or not
ServerIdent                  on       "you're at home"

# Set /home/FTP-shared directory as home directory
DefaultRoot /home/FTP-shared

# Lock all the users in home directory, ***** really important *****
DefaultRoot ~

MaxLoginAttempts    5

#VALID LOGINS
&lt;Limit LOGIN&gt;
AllowUser userftp
DenyALL
&lt;/Limit&gt;

&lt;Directory /home/FTP-shared&gt;
Umask 022 022
AllowOverwrite off
	&lt;Limit MKD STOR DELE XMKD RNRF RNTO RMD XRMD&gt;
	DenyAll
	&lt;/Limit&gt;
&lt;/Directory&gt;

&lt;Directory /home/FTP-shared/download/*&gt;
Umask 022 022
AllowOverwrite off
	&lt;Limit MKD STOR DELE XMKD RNEF RNTO RMD XRMD&gt;
	DenyAll
	&lt;/Limit&gt;
&lt;/Directory&gt;

&lt;Directory /home/FTP-shared/upload/&gt;
Umask 022 022
AllowOverwrite on
	&lt;Limit READ RMD DELE&gt;
      	DenyAll
    	&lt;/Limit&gt;

    	&lt;Limit STOR CWD MKD&gt;
      	AllowAll
    	&lt;/Limit&gt;
&lt;/Directory&gt;</pre>
<p>これでproftpdの設定は終わり。この例ではポートが1980、アクセスパラメータはユーザー名sauronでパスワードはさっき<strong>userftp</strong>に与えたものだ。</p>
<p>4. サーバーを起動・停止・再起動する。</p>
<pre class="alt2" style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 66px; text-align: left;" dir="ltr">sudo /etc/init.d/proftpd start
sudo /etc/init.d/proftpd stop
sudo /etc/init.d/proftpd restart</pre>
<p>proftpd.confの構文チェックは次のコマンドだ。</p>
<pre class="alt2" style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">sudo proftpd -td5</pre>
<p>現在接続中のユーザーはftptopコマンドで分かる。ftpwhoも使える。</p>
<h2>C &#8211; 高度な技</h2>
<h3>TLS/SSL暗号化の導入</h3>
<p>FTPはインターネットがまだ安全な場所だったときに生まれた古いプロトコルだ。はっきり言ってそのままの状態ではセキュリティがなってない。</p>
<p>例えばログインのときのパスワードとユーザー名は平文でネット上を流れていく。お世辞にも安全とは呼べない。それが、まさに我々の世代のために、TLS/SSHという暗号化が開発された理由だ。</p>
<p>TLS/SSHはユーザー名とパスワード、そして送られるデータ全てを暗号化する。言うまでもなくFTPクライアントSFTPプロトコルに対応している必要はあるが。</p>
<p>ではTLS/SSH暗号化を設定する方法に移ろう。</p>
<p>次のコマンドを端末に張り付けてくれ。</p>
<pre class="alt2" style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 210px; text-align: left;" dir="ltr">sudo apt-get install build-essential
sudo apt-get install libssl-dev
cd /etc
sudo mkdir ftpcert
cd ftpcert/
sudo openssl genrsa -des3 -out server.key 1024
sudo openssl req -new -key server.key -out server.csr
sudo openssl genrsa -des3 -out ca.key 1024
sudo openssl req -new -x509 -days 365 -key ca.key -out ca.crt
sudo wget http://frodubuntu.free.fr/ubuntu/sign.sh
sudo chmod +x sign.sh
sudo ./sign.sh server.csr</pre>
<p>そして以下の部分をproftpd.confファイルに付け加える。</p>
<pre class="alt2" style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 306px; text-align: left;" dir="ltr">&lt;IfModule mod_tls.c&gt;
    TLSEngine on
    TLSLog /var/ftpd/tls.log
    TLSProtocol TLSv1

    # Are clients required to use FTP over TLS when talking to this server?
    TLSRequired off

    # Server's certificate
    TLSRSACertificateFile /etc/ftpcert/server.crt
    TLSRSACertificateKeyFile /etc/ftpcert/server.key

    # CA the server trusts
    TLSCACertificateFile /etc/ftpcert/ca.crt

    # Authenticate clients that want to use FTP over TLS?
    TLSVerifyClient off
&lt;/IfModule&gt;</pre>
<p>edgyないしproftpd 1.3を使っているなら次の一分をproftpd.confにつける必要がある。こいつはmod_tls.cのようなモジュールを読み込んでくれる。</p>
<pre class="alt2" style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">Include /etc/proftpd/modules.conf</pre>
<p>注意：TLSRequired ONでTLSの利用を強制できる。OFFにすると利用の是非はクライアント次第だ。</p>
<p>オプション：サーバーを開始・停止・再起動するたびにserver.keyファイルのパスワードを聞かれるはずだ。これはRSAプライベートキーがserver.keyファイルに格納されているためだ。これを解決するにはRSAプライベートキーの暗号化を取り除けばいいがそうするとキーがサーバー上で読めてしまう。これはセキュリティ上よくないが、もしやるならserver.keyはrootにだけ読み込み可能になっていることは確認してくれ。セキュリティの問題に納得したらRSAキーの暗号を取り除こう。</p>
<pre class="alt2" style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 66px; text-align: left;" dir="ltr">cd /etc/ftpcert
cp server.key server.key.org
openssl rsa -in server.key.org -out server.key</pre>
<p>問題が見つかった場合やもっと知りたい場合には次のページを見てくれ。</p>
<ul>
<li><a href="http://www.modssl.org/docs/2.7/ssl_faq.html#cert-ownca" target="_blank">http://www.modssl.org/docs/2.7/ssl_faq.html#cert-ownca</a></li>
<li><a href="http://www.castaglia.org/proftpd/doc/contrib/ProFTPD-mini-HOWTO-TLS.html" target="_blank">http://www.castaglia.org/proftpd/doc&#8230;HOWTO-TLS.html</a></li>
</ul>
<p>TLSで暗号化されたFTPサーバーを利用するにはTLSをサポートしている最新版のFilezillaのようなクライアントが必要だ。FilezillaではTLSを使用するオプションはFTPESと呼ばれている。</p>
<p>色々と教えてくれたnix4mにはここで敬意を表しよう。</p>
<h3>一部のユーザーーのアクセスに制限を加える</h3>
<p>様々な理由で、複数のユーザーを作って、ユーザー毎に違う権限を与えたいなんてこともあるだろう。</p>
<p>例えば二人のユーザー、user1とuser2、がいてuser2にはdownloadディレクトリへのアクセスを拒否したいとしよう。</p>
<p>まず二人のユーザーをuserftpのように作成する。エイリアスを使っているならエイリアスも与える。そして一般的なLimit LOGINセクションで両者に権限を与える。</p>
<pre class="alt2" style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 114px; text-align: left;" dir="ltr">#VALID LOGINS
&lt;Limit LOGIN&gt;
AllowUser user1
AllowUser user2
DenyALL
&lt;/Limit&gt;</pre>
<p>それが終わったらDirectoryセクションで誰がどのディレクトリにアクセスできるかを指定する。</p>
<pre class="alt2" style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 498px; text-align: left;" dir="ltr">&lt;Directory /home/FTP-shared/download/*&gt;
Umask 022 022
AllowOverwrite off

        <strong>&lt;Limit ALL&gt;
		Order Allow,Deny
		AllowUser user1
		Deny ALL
	&lt;/Limit&gt;</strong>

	&lt;Limit MKD STOR DELE XMKD RNEF RNTO RMD XRMD&gt;
	DenyAll
	&lt;/Limit&gt;
&lt;/Directory&gt;

&lt;Directory&gt; /home/FTP-shared/upload/&gt;
Umask 022 022
AllowOverwrite on

       <strong>&lt;Limit ALL&gt;
		Order Allow,Deny
		AllowUser user1
                AllowUser user2
		Deny ALL
	&lt;/Limit&gt;</strong>

	&lt;Limit READ RMD DELE&gt;
      	DenyAll
    	&lt;/Limit&gt;

    	&lt;Limit STOR CWD MKD&gt;
      	AllowAll
    	&lt;/Limit&gt;
&lt;/Directory&gt;</pre>
<p>注意：downloadディレクトリの存在はuser2にも見える。中に入ることができないだけだ。</p>
<h2>その他</h2>
<p>・おすすめ運営法</p>
<p><a href="http://www.castaglia.org/proftpd/doc/contrib/ProFTPD-mini-HOWTO-BCP.html" target="_blank">http://www.castaglia.org/proftpd/doc&#8230;HOWTO-BCP.html</a></p>
<p>・ProftpTools 1.0.1</p>
<p>ProftpToolsはswoopのフィードバックから私が作成したスクリプトだ。このスクリプトを使えばproftpdを起動・停止したり、ディレクトリの自動・手動でのマウント・アンマウント、IPの表示などいろんなことがGUIで簡単にできる。</p>
<p>ProftpdToolsをインストールするにはProftpTools-v1.0.2.tar.gzをダウンロードする。以下のコマンドでもできる。ダウンロードしたら解凍して/usr/binに移動だ。</p>
<pre class="alt2" style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 82px; text-align: left;" dir="ltr">wget http://frodubuntu.free.fr/ubuntu/ProftpTools-v1.0.2.tar.gz
tar -xzvf ProftpTools-v1.0.2.tar.gz
cd ProftpTools-v1.0.2/
sudo mv ProftpTools /usr/bin/</pre>
<p>そしたらホームディレクトリにある<strong>.bashrc</strong>にProftpToolsのパスを指定してやる。パスの最後にある/を取り除くのを忘れないように。ProftpToolsがホームディレクトリにあるなら次の通りだ。</p>
<pre class="alt2" style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 50px; text-align: left;" dir="ltr">ProftpTools_dir=/home/username/ProftpTools-v1.0.2
export ProftpTools_dir</pre>
<p>あとはProftpToolsと端末で叩いてやるだけだ。こいつの利用にはzenityも必要だ。</p>
<p>・おすすめトリック</p>
<p>このトリックはProftpToolsに取り込まれている。</p>
<p>/homeを使いたくないなら他のドライブのスペースを使うことだってできるし、何なら違うパーティッションだっていい。proftpd.confファイルをいじらなくても、好きなディレクトリを<strong>download</strong>、<strong>upload</strong>ディレクトリにマウントすることができる。次のコマンドを使おう。</p>
<pre class="alt2" style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 66px; text-align: left;" dir="ltr">sudo mount -o bind the_directory_you_want_to_share /home/FTP-shared/download
or
sudo mount -o bind the_directory_you_want_to_use_for_upload /home/FTP-shared/upload</pre>
<p>このコマンドはディレクトリを上書きしてしまうわけではない。単にマウントするだけだ。他のユーザーがログインするとマウントされたディレクトリがみえる。例えばdownloadディレクトリをアンマウントしたいならこうだ。</p>
<pre class="alt2" style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">sudo umount /home/FTP-shared/download</pre>
<p>再起動するごとに毎回マウントしなおしたくないのならfstabを編集して次の行を加えよう（sudo gedit /etc/fstab）。これはreetのアイデアだ。</p>
<pre class="alt2" style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">the_directory_to_mount /home/FTP-shared/download vfat bind 0 0</pre>
<p>FTP-sharedに他のディレクトリを加えたいならproftpd.confに加えてくれ。gFTPなんかで自分のFTPサーバーをチェックするのもよい。</p>
<ul>
<li><a href="http://ubuntuforums.org/attachment.php?attachmentid=29857&amp;d=1176748577">ProftpTools-v1.0.2.tar.gz</a></li>
<li><a href="http://ubuntuforums.org/attachment.php?attachmentid=32939&amp;d=1179562202">sign.sh</a></li>
</ul>


<p>関連するエントリー<ol><li><a href='http://rionaoki.net/2009/10/823' rel='bookmark' title='Permanent Link: Grub 2 入門'>Grub 2 入門</a></li>
<li><a href='http://rionaoki.net/2009/10/703' rel='bookmark' title='Permanent Link: Google CalendarとConkyを繋げよう'>Google CalendarとConkyを繋げよう</a></li>
<li><a href='http://rionaoki.net/2009/09/539' rel='bookmark' title='Permanent Link: カーネルをコンパイルしよう'>カーネルをコンパイルしよう</a></li>
<li><a href='http://rionaoki.net/2009/09/516' rel='bookmark' title='Permanent Link: グラフィカルなIPブロッカー'>グラフィカルなIPブロッカー</a></li>
<li><a href='http://rionaoki.net/2009/09/462' rel='bookmark' title='Permanent Link: UbuntuでリポジトリDVDを作ろう'>UbuntuでリポジトリDVDを作ろう</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://rionaoki.net/2009/09/607/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>おかしなDSDTを直そう</title>
		<link>http://rionaoki.net/2009/09/582</link>
		<comments>http://rionaoki.net/2009/09/582#comments</comments>
		<pubDate>Fri, 25 Sep 2009 04:51:36 +0000</pubDate>
		<dc:creator>Rion</dc:creator>
				<category><![CDATA[Tips]]></category>
		<category><![CDATA[TotW]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://rionaoki.net/?p=582</guid>
		<description><![CDATA[
			
				
			
		
以下はUbuntuの英語フォーラムのTutorial of the Weekの翻訳です。原文「HOWTO Fix A Buggy DSDT File」はユーザー67GTAによって執筆され [...]


関連するエントリー<ol><li><a href='http://rionaoki.net/2009/10/823' rel='bookmark' title='Permanent Link: Grub 2 入門'>Grub 2 入門</a></li>
<li><a href='http://rionaoki.net/2009/10/703' rel='bookmark' title='Permanent Link: Google CalendarとConkyを繋げよう'>Google CalendarとConkyを繋げよう</a></li>
<li><a href='http://rionaoki.net/2009/09/539' rel='bookmark' title='Permanent Link: カーネルをコンパイルしよう'>カーネルをコンパイルしよう</a></li>
<li><a href='http://rionaoki.net/2009/09/516' rel='bookmark' title='Permanent Link: グラフィカルなIPブロッカー'>グラフィカルなIPブロッカー</a></li>
<li><a href='http://rionaoki.net/2009/09/462' rel='bookmark' title='Permanent Link: UbuntuでリポジトリDVDを作ろう'>UbuntuでリポジトリDVDを作ろう</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Frionaoki.net%2F2009%2F09%2F582"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Frionaoki.net%2F2009%2F09%2F582&amp;source=rionaoki&amp;style=normal&amp;service=is.gd" height="61" width="50" /><br />
			</a>
		</div>
<p>以下はUbuntuの<a title="Ubuntu Forums" href="http://ubuntuforums.org/">英語フォーラム</a>の<a title="Tutorial of the Week" href="http://ubuntuforums.org/showthread.php?t=655207">Tutorial of the Week</a>の翻訳です。原文「<a title="HOWTO Fix A Buggy DSDT File" href="http://ubuntuforums.org/showthread.php?t=1036051">HOWTO Fix A Buggy DSDT File</a>」はユーザー<a title="67GTA" href="http://ubuntuforums.org/member.php?u=231204">67GTA</a>によって執筆されています。英語フォーラムにおける投稿は<a title="Creative Commons Attribution 3.0" href="http://creativecommons.org/licenses/by/3.0/">Creative Commons Attribution 3.0</a>です。この文章自体は<a title="Creative Commons Attribution Share Alike 3.0" href="http://creativecommons.org/licenses/by-sa/3.0/">Creative Commons Attribution Share Alike 3.0</a>とします。</p>
<p>&#8211;</p>
<p>このガイドではDebian系のOSで、DSDTファイルの直してよくあるACPI関連の問題を解決する方法を説明します。Mint 6及びUbuntu 8.10から自分のラップトップの温度測定がうまくいかず、キーを押しながら出ないとマシンがちゃんと起動しなくなりました。私の場合は、DSDTファイルが原因でした。ACPI/DSDTについてより詳しい情報は<a title="How To Fix Your Buggy DSDT" href="http://forums.opensuse.org/unreviewed-how-faq/386054-how-fix-your-buggy-dsdt.html">こちら</a>にあります。このガイドはそのポストに触発された作られました。しかし、Debian系のOSでは多少違う操作が必要になります。ここではMint・Ubuntuでどうやったらいいかを説明します。</p>
<p><strong><em>注意：OSが壊れる可能性があります。もしDSDTを直した後で何もエラーが出なくてもOSが起動できなくなる可能性があります。ハードウェアが壊れることはありません。</em></strong></p>
<p>チュートリアルを始める前にまずBIOSをアップデートしましょう。DSDT関連バグを手動で直すのは最後の手段です。</p>
<p>まずIntelのDSDTコンパイラーを導入します。端末を開いて次のコマンドを実行します。</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">sudo apt-get install iasl</pre>
<p>現在のDSDTファイルをホームフォルダに保存します。</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">sudo cat /proc/acpi/dsdt &gt; dsdt.dat</pre>
<p>iaslを使ってDSDTファイルをディスアセンブルしましょう。</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">iasl -d dsdt.dat</pre>
<p>dsdt.dslというファイルができるはずです。これが今から編集するファイルです。編集を終えたらこのファイルから新しいDSDTを作成します。ではiaslでdsdt.dslを再コンパイルしてエラー・警告・最適化などがでないか見てみます。&lt;yourusername&gt;はあなたのユーザー名に変えてください。</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">iasl -tc /home/&lt;yourusername&gt;/dsdt.dsl</pre>
<p>リコンパイルの様子が出力されます。エラーを見つけたら好きなエディタでdsdt.dslを直します。エディタの設定で行番号を表示しましょう。エラー出力の行番号からエラーを探し出せます。以下はよくあるエラーの例です。dsdt.dsl 349とは349行目にエラーがあるという意味です。その行まで進みエディタで直して保存します。</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 50px; text-align: left;" dir="ltr">dsdt.dsl   349:     Method (\_WAK, 1, NotSerialized)
Warning  1079 -                 ^ Reserved method must return a value (_WAK)</pre>
<p>編集を行う度に保存してリコンパイルしましょう。</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">iasl -tc /home/&lt;yourusername&gt;/dsdt.dsl</pre>
<p>これで修正したファイルをコンパイルできます。出力をみて状況が改善しているのを確認しましょう。以下のリンクにはよくあるエラーと直し方が載っています。</p>
<ul>
<li><a href="http://forums.opensuse.org/how-faq-read-only/unreviewed-how-faq/386054-how-fix-your-buggy-dsdt.html" target="_blank">http://forums.opensuse.org/how-faq-r&#8230;uggy-dsdt.html</a></li>
<li><a href="https://wiki.edubuntu.org/LaptopTestingTeam/HPdv5z" target="_blank">https://wiki.edubuntu.org/LaptopTestingTeam/HPdv5z</a></li>
<li><a href="http://forums.opensuse.org/archives/sf-archives/archives-tips-tricks-tweaks/320199-howto-fix-your-buggy-dsdt.html" target="_blank">http://forums.opensuse.org/archives/&#8230;uggy-dsdt.html</a></li>
<li><a href="http://forums.gentoo.org/viewtopic.php?t=122145" target="_blank">http://forums.gentoo.org/viewtopic.php?t=122145</a></li>
</ul>
<p>運がよければあなたのマシン・モデル用の修正済ファイルが<a title="DSDT" href="http://acpi.sourceforge.net/dsdt/view.php">こちら</a>で見つかるかもしれません。見つかれば最後の二つのコマンドは必要なくなります。</p>
<p>dsdt.dslファイルを修正できたらdsdt.amlファイルがホームフォルダに作られているはずです。これがこのチュートリアルで作成しようとしているファイルです。</p>
<p><strong><em>注意：ここまではまだシステムへ何の変更も加えていません。作成されたファイルを削除すれば元通りになります。これからカスタムDSDTを起動に使うようなり、元に戻すことはできなくなります（復元方法は後述されています）。</em></strong></p>
<p>それではdsdt.amlファイルの名前を変更して/etc/initramfs-toolsフォルダーに移しましょう。</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">sudo cp dsdt.aml /etc/initramfs-tools/DSDT.aml</pre>
<p>起動時にDSDTを上書きするようにinitrdイメージが更新します。</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">sudo update-initramfs -u -k kernel-version</pre>
<p>kernel versionは自分が利用しているカーネルのバージョンに変更する必要があります。カーネルのバージョンは以下のコマンドで確かめてください。</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">uname -r</pre>
<p>では再起動してみます。うまくいっているかdmesgの出力をチェックしましょう。端末で以下のコマンドを実行します。</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">dmesg &gt; /home/yourusername/Desktop/dmesg</pre>
<p>デスクトップのテキストファイルにdmesgの出力が書き出されます。以下のような内容なはずです。</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 114px; text-align: left;" dir="ltr">[    0.020495] ACPI: Checking initramfs for custom DSDT
[    0.353464] ACPI: Found DSDT in DSDT.aml.
[    0.353470] ACPI: Override [DSDT-   MCP67], this is unsafe: tainting kernel
[    0.353478] ACPI: Table DSDT replaced by host OS
[    0.353482] ACPI: DSDT 00000000, 7CB3 (r1 NVIDIA    MCP67  6040000 INTL 20061109)
[    0.353487] ACPI: DSDT override uses original SSDTs unless "acpi_no_auto_ssdt"</pre>
<p>dmesgの出力と/proc/acpiが実行前後で変わっているか確認しましょう。特に/proc/acpi/fanや/proc/acpi/thermal_zoneの中身があるかどうか（もし以前はなかったのであれば）見てみましょう。この過程で発見したことに起動時にOSを指定することがあります。これについては先に挙げたリンク先を参照してください。次の行をブートオプションに加えるだけでOSがハードウェアを違うように見るようになります。</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">acpi_osi="Linux"</pre>
<p>この方法はVistaがプレインストールされたHPのラップトップで特に有効なようです。その方法は<a title="Request for HP laptop and desktop owners" href="http://forums.linuxmint.com/viewtopic.php?f=60&amp;t=18222">こちら</a>に書いてあります。DSDTのコードは大変読み辛く私自身を全てを理解しているわけではありません。私のHPのデスクトップはエラーはありませんが、警告は四つ残っています。全て問題なくどうしているのでそのままにしてあります。ラップトップの方は完璧になっています。ちなみにHP dv6815nrなので同じモデルを持っていれば私のDSDTファイルを使えます。DSDTファイルはコンピュータ毎に異なります。全く同じハードウェア出ない限り他のマシンのDSDTを使ってはいけません。</p>
<p>カスタムDSDTを削除するには以下のコマンドを実行してください。</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">sudo rm /etc/initramfs-tools/DSDT.aml</pre>
<p>その後initイメージ更新します。</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">sudo update-initramfs -u -k kernel-version</pre>
<p>再起動すれば元の状態に戻ります。</p>
<p>この方法は開発中のカーネルには使えません。DSDTを変更できるようにするパッチは安定版カーネルにしか含まれないためです。</p>
<p>更新：カーネル開発者はDSDTの変更を可能にするパッチをKarmic 9.10以降使わないと決めたようです。この方法が機能するのはJaunty 9.04までとなります。DSDTエラーにつていはバグ報告をするようにしましょう。</p>


<p>関連するエントリー<ol><li><a href='http://rionaoki.net/2009/10/823' rel='bookmark' title='Permanent Link: Grub 2 入門'>Grub 2 入門</a></li>
<li><a href='http://rionaoki.net/2009/10/703' rel='bookmark' title='Permanent Link: Google CalendarとConkyを繋げよう'>Google CalendarとConkyを繋げよう</a></li>
<li><a href='http://rionaoki.net/2009/09/539' rel='bookmark' title='Permanent Link: カーネルをコンパイルしよう'>カーネルをコンパイルしよう</a></li>
<li><a href='http://rionaoki.net/2009/09/516' rel='bookmark' title='Permanent Link: グラフィカルなIPブロッカー'>グラフィカルなIPブロッカー</a></li>
<li><a href='http://rionaoki.net/2009/09/462' rel='bookmark' title='Permanent Link: UbuntuでリポジトリDVDを作ろう'>UbuntuでリポジトリDVDを作ろう</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://rionaoki.net/2009/09/582/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>カーネルをコンパイルしよう</title>
		<link>http://rionaoki.net/2009/09/539</link>
		<comments>http://rionaoki.net/2009/09/539#comments</comments>
		<pubDate>Thu, 24 Sep 2009 15:59:11 +0000</pubDate>
		<dc:creator>Rion</dc:creator>
				<category><![CDATA[Tips]]></category>
		<category><![CDATA[TotW]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://rionaoki.net/?p=539</guid>
		<description><![CDATA[
			
				
			
		
以下はUbuntuの英語フォーラムのTutorial of the Weekの翻訳です。原文「Master Kernel Thread」はユーザー master_kernelによって執筆 [...]


関連するエントリー<ol><li><a href='http://rionaoki.net/2009/10/823' rel='bookmark' title='Permanent Link: Grub 2 入門'>Grub 2 入門</a></li>
<li><a href='http://rionaoki.net/2009/10/703' rel='bookmark' title='Permanent Link: Google CalendarとConkyを繋げよう'>Google CalendarとConkyを繋げよう</a></li>
<li><a href='http://rionaoki.net/2009/09/582' rel='bookmark' title='Permanent Link: おかしなDSDTを直そう'>おかしなDSDTを直そう</a></li>
<li><a href='http://rionaoki.net/2009/09/516' rel='bookmark' title='Permanent Link: グラフィカルなIPブロッカー'>グラフィカルなIPブロッカー</a></li>
<li><a href='http://rionaoki.net/2009/09/462' rel='bookmark' title='Permanent Link: UbuntuでリポジトリDVDを作ろう'>UbuntuでリポジトリDVDを作ろう</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Frionaoki.net%2F2009%2F09%2F539"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Frionaoki.net%2F2009%2F09%2F539&amp;source=rionaoki&amp;style=normal&amp;service=is.gd" height="61" width="50" /><br />
			</a>
		</div>
<p>以下はUbuntuの<a title="Ubuntu Forums" href="http://ubuntuforums.org/">英語フォーラム</a>の<a title="Tutorial of the Week" href="http://ubuntuforums.org/showthread.php?t=655207">Tutorial of the Week</a>の翻訳です。原文「<a title="Master Kernel Thread" href="http://ubuntuforums.org/showthread.php?t=311158">Master Kernel Thread</a>」はユーザー <a title=" master_kernel   " href="http://ubuntuforums.org/member.php?u=201430">master_kernel</a>によって執筆されています。英語フォーラムにおける投稿は<a title="Creative Commons Attribution 3.0" href="http://creativecommons.org/licenses/by/3.0/">Creative Commons Attribution 3.0</a>です。この文章自体は<a title="Creative Commons Attribution Share Alike 3.0" href="http://creativecommons.org/licenses/by-sa/3.0/">Creative Commons Attribution Share Alike 3.0</a>とします。当該エントリーは頻繁に更新されているので最新版については原文を参照ください。文章の雰囲気から、このチュートリアルはである調で訳しました。本文中の色分けについては割愛します。</p>
<p>&#8211;</p>
<p>Master Kernel Threadにようこそ</p>
<p>このチュートリアルは現在の安定版2.6.30を対象に書かれている。最後にアップデートされたのは2009年8月17日だ。</p>
<p>カーネルをコンパイルする方法についてかいたポストやブログはそこら中にある。ではこのポストの何がそれらと違っているのだろう。実際のところ、それら全てにリンクをしているというだけで、カーネルをコンパイルする方法については何も変わらない。もちろん、多少簡単かもしれないし、もっと頻繁に更新されているかもしれない。じゃあ何でこんなスレッドがあるのか。それは私がこのチュートリアルを書くことでLinuxコミュニティー全体に何か還元したいと思っているからだ。私はユーザーに長い起動時間や遅いデスクトップに苦しむことなくLinuxを使いつづけて欲しいと思っている。このスレッドが作られたのはまさにそれらを実現するためだ。コンパイルするカーネルを最適化するためにチュートリアルは<a title="How To Compile the new 2.6.16 kernel from kernel.org" href="http://ubuntuforums.org/showpost.php?p=1174954&amp;postcount=507">こちら</a>にある。このチュートリアルは<a title="How To Compile the new 2.6.16 kernel from kernel.org" href="http://www.ubuntuforums.org/showthread.php?t=157560">このスレッド</a>に基づいている。スレッドを立てたxXx 0wn3d xXxにここで感謝の意を表しておこう。</p>
<p>参考：私が開発しているソフトウェアで現在バージョン1.2.5であるKernelCheckは<a title="KernelCheck" href="http://kcheck.sourceforge.net/">こちら</a>からダウンロードできる。KernelCheckはこのチュートリアルに書かれた方法で最新版のカーネルを自動的にコンパイルしインストールする。KernelCheckのスクリーンレットは<a title="スクリーンレット" href="http://kcheck.sourceforge.net/screenlet.html">こちら</a>で、専用のスレッドは<a title="HowTo: Installing and using KernelCheck" href="http://ubuntuforums.org/showthread.php?t=618563">こちら</a>だ。このプログラムはEnvyNGを通してプロプライエタリなビデオドライバの自動インストールもできる。</p>
<h2>手順</h2>
<p>1. カーネルの設定に必要なツールのインストール</p>
<p><span style="font-size: x-small;"> </span></p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">sudo apt-get install build-essential bin86 kernel-package libqt3-headers libqt3-mt-dev wget libncurses5 libncurses5-dev</pre>
<p>2. 設定ディレクトリに移動</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">cd /usr/src</pre>
<p>3. ルートになる</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">sudo -s</pre>
<p>4. カーネルのダウンロードと解凍</p>
<p><span style="font-size: x-small;"> </span></p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">wget -c http://kernel.org/pub/linux/kernel/v2.6/linux-2.6.30.tar.bz2 &amp;&amp; tar -xvjf linux-2.6.30.tar.bz2</pre>
<p>5. linuxディレクトリへのリンクを消去してディレクトリへ移動</p>
<p><span style="font-size: x-small;"> </span></p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">rm -rf linux &amp;&amp; ln -s /usr/src/linux-2.6.30 linux &amp;&amp; cd /usr/src/linux</pre>
<p>注意：fbsplash, beyond, emissionなどカーネルへのパッチが必要であればここでパッチを適用し8まで飛ばすこと。</p>
<p>6. カーネルパッチをダウンロード</p>
<p><span style="font-size: x-small;"> </span></p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">wget -c http://www.kernel.org/pub/linux/kernel/v2.6/patch-2.6.30.5.bz2</pre>
<p>7. パッチの適用</p>
<p><span style="font-size: x-small;"> </span></p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">bzcat patch-2.6.30.5.bz2| patch -p1</pre>
<p>8. 現在のカーネル設定をインポートしオプションを取得</p>
<p><span style="font-size: x-small;"> </span></p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">cp /boot/config-$(uname -r) .config &amp;&amp; yes "" | make oldconfig</pre>
<p>9. カーネルの設定</p>
<p>注意：ワイヤレス接続が必要な場合、カーネルでワイヤレスドライバを有効にする必要がある。最も簡単な方法はCtrl + Fを押して使用するワイヤレスモジュールの名前を検索することだ。</p>
<p><span style="font-size: x-small;"> </span></p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">make xconfig</pre>
<p>端末を用いる場合：</p>
<p><span style="font-size: x-small;"> </span></p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">make menuconfig</pre>
<p>distccを用いればコンパイル時間を大幅に短縮できる。その方法については<a title="Using distcc with debian" href="http://myrddin.org/howto/using-distcc-with-debian/">こちら</a>。</p>
<p>10. カーネルのビルド：ルート権限を持った状態で/usr/src/linuxにいることを確認すること。これによりインストール可能なdebファイルが作成される。</p>
<p>端末では：</p>
<p><span style="font-size: x-small;"> </span></p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">make-kpkg clean</pre>
<p>その後：</p>
<p><span style="font-size: x-small;"> </span></p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 50px; text-align: left;" dir="ltr">CONCURRENCY_LEVEL=3 make-kpkg --initrd --append-to-version=-mk kernel_image
kernel_headers modules_image</pre>
<p>注意：mkの部分は好きに、例えばk7や686に、変更してよいが、ハイフンは残すように。カーネルのコンパイルにはプロセッサの速度によるが1から3時間ほどかかるだろう。非常に遅いマシンであれば4時間以上かかるかもしれない。自分だったらその間映画を見にいくか何かする。並列処理レベル（concurrency level）はCPUコアの数より一つ多い数に設定すべきだ（何のことか分からなければそのままでよい）。</p>
<p>11. debファイルを/usr/srcにインストール：二つのdebファイルがあるはずだ。一つはイメージでもう一つはヘッダーだ。端末上では：</p>
<p><span style="font-size: x-small;"> </span></p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">cd .. &amp;&amp; dpkg -i linux*2.6.30*.deb</pre>
<p>重要：NVIDIAやATIのグラフィックスカードを使っている場合ドライバーの再インストールが必要かもしれない。</p>
<p>12. 再起動</p>
<h2>トラブルシューティング</h2>
<p>Q. サスペンドやハイバネートのボタンが機能しない！</p>
<p>A. バージョン2.6.22以降のカーネルのSLUBアロケーターには一部のシステムでサスペンドやハイバネートが動かなくなるバグがある。これを直すにはxconfigのダイアログでSLUBの代わりにSLABアロケーターを選択してやればいい。</p>
<p>Q. HDのサウンド（AzaliaやIntel HD）が新しいカーネルだと動かない！</p>
<p>A. Intel HDモジュールはAdvanced Linux Sound Architectureで有効にする必要がある。例えばIntelのチップじゃなかったとしてもだ。</p>
<p>Q. 64bitのコンピュータを使っているんだけど&#8211;apend-to-versionには何をつけるのがいいんだ？686、k7、それとも他の何か？</p>
<p>A. append-to-versionオプションはカーネルとは何の関係もない。単なる名札だ。64bitユーザーならappend-to-version=64としてもいいし、別にオプション自体つけなくてもよい。Processorのところで64bitオプションは有効にできる。</p>
<p>Q. make xconfigでエラーがでた。でも特に問題が起こっているようには思わない。</p>
<blockquote><p>X Error: BadDevice, invalid or uninitialized input device 168<br />
Major opcode:  148<br />
Minor opcode:  3<br />
Resource id:  0&#215;0<br />
Failed to open device<br />
X Error: BadDevice, invalid or uninitialized input device 168<br />
Major opcode:  148<br />
Minor opcode:  3<br />
Resource id:  0&#215;0<br />
Failed to open device</p></blockquote>
<p>A. これは特に問題ない。xorg.confにwacomのデバイスがあると出るんだ。このエラーをどうしてもみたくなければ<a title="Re: X Error: BadDevice, invalid or uninitialized input device 168" href="http://ubuntuforums.org/showthread.php?p=1264009">これ</a>を読んでくれ。</p>
<p>Q. GRUBは起動するけど、こんなのがいつもでてくる：</p>
<blockquote><p> Begin: Waiting for root file system&#8230;</p></blockquote>
<p>A. これはUbuntuをSATAのハーディディスクにインストールしたせいだろう。このエラーをなくすにはSATAオプションをつけて再コンパイルする必要がある。</p>
<p>Q. NVIDIAがバージョン2.6.21のカーネルをコンパイルするときは次の指示に従うべきだ。</p>
<p>A.</p>
<blockquote>
<ol>
<li>ソースのある場所に移動しxconfigを実行</li>
<li>Processor type and featuresでPravirtualization SupportをOFFにする</li>
<li>終了して設定を保存する</li>
<li>make prepareを実行する</li>
<li>NVIDIAのインストーラを再実行</li>
<li>一丁上がり</li>
</ol>
</blockquote>
<p>Q. トラブルシューティングはこれしかないの？</p>
<p>A. 協力してくれよ。もっと欲しいなら、問題をポストして、私にメッセージを送って、Ubuntuコミュニティに協力しよう。</p>


<p>関連するエントリー<ol><li><a href='http://rionaoki.net/2009/10/823' rel='bookmark' title='Permanent Link: Grub 2 入門'>Grub 2 入門</a></li>
<li><a href='http://rionaoki.net/2009/10/703' rel='bookmark' title='Permanent Link: Google CalendarとConkyを繋げよう'>Google CalendarとConkyを繋げよう</a></li>
<li><a href='http://rionaoki.net/2009/09/582' rel='bookmark' title='Permanent Link: おかしなDSDTを直そう'>おかしなDSDTを直そう</a></li>
<li><a href='http://rionaoki.net/2009/09/516' rel='bookmark' title='Permanent Link: グラフィカルなIPブロッカー'>グラフィカルなIPブロッカー</a></li>
<li><a href='http://rionaoki.net/2009/09/462' rel='bookmark' title='Permanent Link: UbuntuでリポジトリDVDを作ろう'>UbuntuでリポジトリDVDを作ろう</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://rionaoki.net/2009/09/539/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>グラフィカルなIPブロッカー</title>
		<link>http://rionaoki.net/2009/09/516</link>
		<comments>http://rionaoki.net/2009/09/516#comments</comments>
		<pubDate>Thu, 24 Sep 2009 15:57:48 +0000</pubDate>
		<dc:creator>Rion</dc:creator>
				<category><![CDATA[Tips]]></category>
		<category><![CDATA[TotW]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://rionaoki.net/?p=516</guid>
		<description><![CDATA[
			
				
			
		
以下はUbuntuの英語フォーラムのTutorial of the Weekの翻訳です。原文「HOWTO: Graphical IP Blocker」はユーザーuljanowによって執筆 [...]


関連するエントリー<ol><li><a href='http://rionaoki.net/2009/10/823' rel='bookmark' title='Permanent Link: Grub 2 入門'>Grub 2 入門</a></li>
<li><a href='http://rionaoki.net/2009/10/703' rel='bookmark' title='Permanent Link: Google CalendarとConkyを繋げよう'>Google CalendarとConkyを繋げよう</a></li>
<li><a href='http://rionaoki.net/2009/09/582' rel='bookmark' title='Permanent Link: おかしなDSDTを直そう'>おかしなDSDTを直そう</a></li>
<li><a href='http://rionaoki.net/2009/09/539' rel='bookmark' title='Permanent Link: カーネルをコンパイルしよう'>カーネルをコンパイルしよう</a></li>
<li><a href='http://rionaoki.net/2009/09/462' rel='bookmark' title='Permanent Link: UbuntuでリポジトリDVDを作ろう'>UbuntuでリポジトリDVDを作ろう</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Frionaoki.net%2F2009%2F09%2F516"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Frionaoki.net%2F2009%2F09%2F516&amp;source=rionaoki&amp;style=normal&amp;service=is.gd" height="61" width="50" /><br />
			</a>
		</div>
<p>以下はUbuntuの<a title="Ubuntu Forums" href="http://ubuntuforums.org/">英語フォーラム</a>の<a title="Tutorial of the Week" href="http://ubuntuforums.org/showthread.php?t=655207">Tutorial of the Week</a>の翻訳です。原文「<a title=" HOWTO: Graphical IP Blocker  " href="http://ubuntuforums.org/showthread.php?t=530183">HOWTO: Graphical IP Blocker</a>」はユーザー<a title="uljanow   " href="http://ubuntuforums.org/member.php?u=335776">uljanow</a>によって執筆されています。英語フォーラムにおける投稿は<a title="Creative Commons Attribution 3.0" href="http://creativecommons.org/licenses/by/3.0/">Creative Commons Attribution 3.0</a>です。この文章自体は<a title="Creative Commons Attribution Share Alike 3.0" href="http://creativecommons.org/licenses/by-sa/3.0/">Creatonive Commons Attribution Share Alike 3.0</a>とします。IPblock自体は日本語化されておりません。</p>
<p>&#8211;</p>
<p>グラフィカルなフロントエンドであるIPblockを使ってIPをリストでブロックする方法を説明します。ネットワーク・ファイヤウォール・コマンドラインの知識は必要ありません。IPblockの仕組み上、ufw・shorewall・fireHOLといった既存のファイヤウォールの動作に影響を与えることはありません（但しIPblockは他のファイヤウォールよりも後に起動して下さい）。このチュートリアルは初心者を対象としており、Ubuntu Feisty・Gutsy・Hardy・Interpid・Jaunty（32bit及び64bit）上でテストされていれます。</p>
<h2>インストール</h2>
<p>まずiplistリポジトリをsources.listに追加します。利用しているリリースと対応するsources.listを使うよう注意して下さい。</p>
<ul>
<li>Ubuntu 9.04 &#8220;<strong>Jaunty</strong> Jackalope&#8221;:
<div style="margin: 5px 20px 20px;">
<div style="margin-bottom: 2px;">Code:</div>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 500px; height: 34px; text-align: left;" dir="ltr">sudo wget http://iplist.sf.net/sources.list.d/jaunty.list -O /etc/apt/sources.list.d/iplist.list</pre>
</div>
</li>
<li>Ubuntu 8.10 &#8220;<strong>Intrepid</strong> Ibex&#8221;:
<div style="margin: 5px 20px 20px;">
<div style="margin-bottom: 2px;">Code:</div>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 500px; height: 34px; text-align: left;" dir="ltr">sudo wget http://iplist.sf.net/sources.list.d/intrepid.list -O /etc/apt/sources.list.d/iplist.list</pre>
</div>
</li>
<li>Ubuntu 8.04 &#8220;<strong>Hardy</strong> Heron&#8221;:
<div style="margin: 5px 20px 20px;">
<div style="margin-bottom: 2px;">Code:</div>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 500px; height: 34px; text-align: left;" dir="ltr">sudo wget http://iplist.sf.net/sources.list.d/hardy.list -O /etc/apt/sources.list.d/iplist.list</pre>
</div>
</li>
</ul>
<p>鍵ファイルは以下の方法でインポートできます。</p>
<div style="margin: 5px 20px 20px;">
<div style="margin-bottom: 2px;">Code:</div>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 500px; height: 34px; text-align: left;" dir="ltr">sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com C6E3D905C8BCD56BB02E6E0B39456311108B243F</pre>
</div>
<p>もしくは鍵ファイルを保存した上でインポートすることもできます（システム、システム管理、ソフトウェアソース、認証、鍵ファイルのインポート）。</p>
<p>ソフトウェア・ソースの更新を済ませれば、どのパッケージ・マネージャでもiplistをインストールできます。例：</p>
<div style="margin: 5px 20px 20px;">
<div style="margin-bottom: 2px;">Code:</div>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 500px; height: 50px; text-align: left;" dir="ltr">sudo aptitude update
sudo aptitude install iplist</pre>
</div>
<p>注意：gdebiを使っていてsun-java*をインストールする場合にはgdebiの端末部分を開いてsunのライセンスに同意する必要があります。</p>
<p>FeistyとGutsyには<a title="iplist 0.19" href="http://sourceforge.net/projects/iplist/files/iplist/iplist-0.19/">0.19パッケージ</a>があります。</p>
<p>インストールが終了するとIPblockがアプリケーションメニューに加わります（アプリケーション、インターネット、IPblock）。</p>
<p><a rel="attachment wp-att-523" href="http://rionaoki.net/2009/09/516/tab_log"><img class="aligncenter size-full wp-image-523" title="tab_log" src="http://rionaoki.net/wp-content/uploads/2009/09/tab_log.png" alt="tab_log" width="510" height="392" /></a></p>
<h2>リスト</h2>
<p>デフォルトのリストはPeerGurdianと同様です。</p>
<ul>
<li><strong>level1.gz</strong> &#8211; 反P2P団体及び政府機関</li>
<li><strong>ads-trackers-and-bad-pr0n.gz</strong> &#8211; 広告及びデータトラッカー</li>
<li><strong>spyware.gz</strong> &#8211; スパイウェア及びアドウェア</li>
<li><strong>edu.gz</strong> &#8211; 教育機関及び大学</li>
<li><strong>bogon.gz</strong> &#8211; IPスプーフィング</li>
</ul>
<p>これらのリストは<a href="http://www.bluetack.co.uk/" target="_blank">www.bluetack.co.uk</a>によって管理されています。独自のP2Pやdatリストも簡単に追加できます。またリストはgzipによって圧縮することも可能です。</p>
<p>URLファイルの/etc/ipblock.listsにはリストに関する記述があります。</p>
<p><a rel="attachment wp-att-528" href="http://rionaoki.net/2009/09/516/tab_lists"><img class="aligncenter size-full wp-image-528" title="tab_lists" src="http://rionaoki.net/wp-content/uploads/2009/09/tab_lists.png" alt="tab_lists" width="510" height="392" /></a></p>
<h2>設定</h2>
<p>オプションは全てSettingsタブとNetworkタブで設定することができます。リストの自動更新は重要です。デフォルトの二日おきが適切でしょう。更新されていないリストを使うのはおすすめできません。</p>
<p>HTTPやEMAIL（pop3）のような外向きの通信を無視するにはNetworkタブ中のIgnored Portsで指定します。httpsとdnsはデフォルトで無視されるように設定されています。Connection設定はどのような接続をフィルターするかを指定します。</p>
<p><a rel="attachment wp-att-529" href="http://rionaoki.net/2009/09/516/tab_settings"><img class="aligncenter size-full wp-image-529" title="tab_settings" src="http://rionaoki.net/wp-content/uploads/2009/09/tab_settings.png" alt="tab_settings" width="511" height="393" /></a></p>
<p><a rel="attachment wp-att-530" href="http://rionaoki.net/2009/09/516/tab_network"><img class="aligncenter size-full wp-image-530" title="tab_network" src="http://rionaoki.net/wp-content/uploads/2009/09/tab_network.png" alt="tab_network" width="511" height="392" /></a></p>
<p>iplist.sf.netの<a title="iplist FAQ" href="http://iplist.sourceforge.net/faq.html">よくある質問集</a>。</p>


<p>関連するエントリー<ol><li><a href='http://rionaoki.net/2009/10/823' rel='bookmark' title='Permanent Link: Grub 2 入門'>Grub 2 入門</a></li>
<li><a href='http://rionaoki.net/2009/10/703' rel='bookmark' title='Permanent Link: Google CalendarとConkyを繋げよう'>Google CalendarとConkyを繋げよう</a></li>
<li><a href='http://rionaoki.net/2009/09/582' rel='bookmark' title='Permanent Link: おかしなDSDTを直そう'>おかしなDSDTを直そう</a></li>
<li><a href='http://rionaoki.net/2009/09/539' rel='bookmark' title='Permanent Link: カーネルをコンパイルしよう'>カーネルをコンパイルしよう</a></li>
<li><a href='http://rionaoki.net/2009/09/462' rel='bookmark' title='Permanent Link: UbuntuでリポジトリDVDを作ろう'>UbuntuでリポジトリDVDを作ろう</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://rionaoki.net/2009/09/516/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>UbuntuでリポジトリDVDを作ろう</title>
		<link>http://rionaoki.net/2009/09/462</link>
		<comments>http://rionaoki.net/2009/09/462#comments</comments>
		<pubDate>Thu, 24 Sep 2009 04:49:52 +0000</pubDate>
		<dc:creator>Rion</dc:creator>
				<category><![CDATA[Tips]]></category>
		<category><![CDATA[TotW]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://rionaoki.net/?p=462</guid>
		<description><![CDATA[以下はUbuntuの英語フォーラムのTutorial of the Weekの部分翻訳です。原文「How to make your own Ubuntu Repository DVDs」はユーザーBobSongによって執筆されています。英語フォーラムにおける投稿はCreative Commons Attribution 3.0です。この文章自体はCreative Commons Attribution Share Alike 3.0とします。最新のLTSリリースであるHardy Heron以前の情報は省かせて頂きました。また以下の項目は訳しておりません。

    * セットアップDVDのみの場合
    * よくある質問
    * 過去のリリースのリポジトリ
    * 参照資料
    * ミッション・ビジョン・バリュー

原文をご覧ください。最後に、手元にKubuntu, Xubuntuがないため一部日本語版表記と異なるかもしれません。


関連するエントリー<ol><li><a href='http://rionaoki.net/2009/10/823' rel='bookmark' title='Permanent Link: Grub 2 入門'>Grub 2 入門</a></li>
<li><a href='http://rionaoki.net/2009/10/703' rel='bookmark' title='Permanent Link: Google CalendarとConkyを繋げよう'>Google CalendarとConkyを繋げよう</a></li>
<li><a href='http://rionaoki.net/2009/09/582' rel='bookmark' title='Permanent Link: おかしなDSDTを直そう'>おかしなDSDTを直そう</a></li>
<li><a href='http://rionaoki.net/2009/09/539' rel='bookmark' title='Permanent Link: カーネルをコンパイルしよう'>カーネルをコンパイルしよう</a></li>
<li><a href='http://rionaoki.net/2009/09/516' rel='bookmark' title='Permanent Link: グラフィカルなIPブロッカー'>グラフィカルなIPブロッカー</a></li>
</ol>]]></description>
			<content:encoded><![CDATA[<div class="tweetmeme_button" style="float: right; margin-left: 10px;">
			<a href="http://api.tweetmeme.com/share?url=http%3A%2F%2Frionaoki.net%2F2009%2F09%2F462"><br />
				<img src="http://api.tweetmeme.com/imagebutton.gif?url=http%3A%2F%2Frionaoki.net%2F2009%2F09%2F462&amp;source=rionaoki&amp;style=normal&amp;service=is.gd" height="61" width="50" /><br />
			</a>
		</div>
<p>以下はUbuntuの<a title="Ubuntu Forums" href="http://ubuntuforums.org/">英語フォーラム</a>の<a title="Tutorial of the Week" href="http://ubuntuforums.org/showthread.php?t=655207">Tutorial of the Week</a>の部分翻訳です。原文「<a title="How to make your own Ubuntu Repository DVDs" href="http://ubuntuforums.org/showthread.php?t=352460">How to make your own Ubuntu Repository DVDs</a>」はユーザー<a title="BobSongs" href="http://ubuntuforums.org/member.php?u=53299">BobSongs</a>によって執筆されています。英語フォーラムにおける投稿は<a title="Creative Commons Attribution 3.0" href="http://creativecommons.org/licenses/by/3.0/">Creative Commons Attribution 3.0</a>です。この文章自体は<a title="Creative Commons Attribution Share Alike 3.0" href="http://creativecommons.org/licenses/by-sa/3.0/">Creative Commons Attribution Share Alike 3.0</a>とします。最新のLTSリリースであるHardy Heron以前の情報は省かせて頂きました。また以下の項目は訳しておりません。</p>
<ul>
<li>セットアップDVDのみの場合</li>
<li>よくある質問</li>
<li>過去のリリースのリポジトリ</li>
<li>参照資料</li>
<li>ミッション・ビジョン・バリュー</li>
</ul>
<p><a title="How to make your own Ubuntu Repository DVDs" href="http://ubuntuforums.org/showthread.php?t=352460">原文</a>をご覧ください。最後に、手元にKubuntu, Xubuntuがないため一部日本語版表記と異なるかもしれません。</p>
<p>&#8211;</p>
<h3>このチュートリアルの目的</h3>
<p>インターネット接続が遅い人やそもそも接続できない環境にいる人にとって、手元にリポジトリがあるととても役立ちます。このチュートリアルを使えばUbuntuのリポジトリが収録されたDVDを作成して、他の人に貸したり、保存したりすることができます。</p>
<h3>必要な知識</h3>
<p>他のチュートリアル同様の知識があれば読めるように努力はしますが、このチュートリアルの性質上コピーアンドペーストだけではなく少し頭を使う必要があります。</p>
<h3>ハードディスク容量</h3>
<p>Ubuntuが提供するすべてのdebファイルを格納し、四枚のDVDのISOイメージを作成した上でシステムを動かすためには大体40GBの空き領域が必要です。ハードディスクが1TBの時代には大したことではないかもしれませんが、もしあなたのハードディスクが60GBよりも小さいのであれば困ったことになるかもしれません。各リリース毎の容量（及びサポート終了時期）は：</p>
<ul>
<li>28.85GB &#8211; Hardy Heron (LTS、2011/4)</li>
<li>26.72GB &#8211; Interpid Ibex (2010/4)</li>
<li>24.47GB &#8211; Jaunty Jackalope (2010/10)</li>
</ul>
<h2>目次</h2>
<ol>
<li>必要なツールのインストール</li>
<li>debcopyファイルの抜き出し</li>
<li>ダウンロード</li>
<li>DVDサイズへの分割</li>
<li>ISOイメージの作成</li>
<li>イメージファイルをDVDに焼き付け</li>
<li>動作設定</li>
<li>ローカルリポジトリの更新</li>
<li>Aptのローカル設定</li>
</ol>
<h2>1. 必要なツールのインストール</h2>
<p>まず端末を起動します（アプリケーション・アクセサリ・端末）。このチュートリアルが終わるまでこのGNOME端末のウィンドウは閉じないでください。  次のコードをコピーしてターミナルに張り付けてください。</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">sudo apt-get install debmirror liblockfile-simple-perl liblog-agent-perl ruby mkisofs dpkg-dev libdigest-sha1-perl libruby libzlib-ruby</pre>
<p>貼り付けたらエンターを押してください（端末上での貼り付けはCtrl + Shift &#8211; Vを同時に押すか、右クリックで貼り付けを選択してもできます）。  次にdebpartialをインストールします。debpartialは今のところレポジトリに含まれていますがHardy Heron以降、リリースの一部だと考えられていません。必要なソフトウェアは<a title="debpartial" href="http://archive.ubuntu.com/ubuntu/pool/universe/d/debpartial/debpartial_0+20030508-0.1_all.deb">ここ</a>からダウンロードできます。  デスクトップに保存してダブルクリックしてください。表示に従い、パスワードを入力し、インストールを完了しましょう。</p>
<h2>2. debcopyファイルを抜き出し</h2>
<p>[dapperについては原文を参照]  debcopyファイルはdebpartialの中に含まれています。これを取り出しておきましょう。次のコマンドを端末に張り付けてください。  <span><span style="font-family: Verdana;"> </span></span></p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">cp /usr/share/doc/debpartial/examples/debcopy.gz ~</pre>
<p><span><span style="font-family: Verdana;"> </span></span></p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">gunzip ~/debcopy.gz</pre>
<h2>3. ダウンロード</h2>
<p>次のコマンドを使ってHardy Heronのリポジトリをダウンロードします。  <span><span style="font-family: Verdana;"> </span></span></p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">debmirror --nosource -m --passive --host=archive.ubuntu.com --root=ubuntu/ --method=ftp --progress --dist=hardy,hardy-security,hardy-updates,hardy-backports, --section=main,restricted,universe,multiverse --arch=i386 ~/UbuntuRepos --ignore-release-gpg</pre>
<p>コマンドの全体像はこうなっています。  <span><span style="font-family: Verdana;"> </span></span></p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 146px; text-align: left;" dir="ltr">debmirror \
    --nosource -m --passive \
    --host=archive.ubuntu.com \
    --root=ubuntu/ --method=ftp --progress \
    --dist=<span style="color: blue;"><strong>hardy</strong></span>,<span style="color: blue;"><strong>hardy</strong></span>-security,<span style="color: blue;"><strong>hardy</strong></span>-updates,<span style="color: blue;"><strong>hardy</strong></span>-backports, \
    --section=main,restricted,universe,multiverse \
    --arch=<span style="color: blue;"><strong>i386</strong></span> ~/UbuntuRepos \
    --ignore-release-gpg</pre>
<p>青く表示されている部分について：</p>
<ul>
<li>詳細な説明は<a title=" Arrow  Re: How To: Make Your Own Ubuntu Repository DVDs  " href="http://ubuntuforums.org/showpost.php?p=3060394&amp;postcount=49">こちら</a>。</li>
<li>ダウンロードには丸一日かかるかもしれません。ファイルを個別にダウンロードするのは時間がかかります。</li>
</ul>
<p>もしダウンロードが止まってしまったら、端末上で上矢印キーを押してください。するとコマンドが再び現れます。エンターを押せば、止まったところからダウンロードをやり直します。  接続が不安定な場合は以下の引数をコマンドに追加してください。-tに続く数字は再試行を行うまでの秒数を表します。  <span><span style="font-family: Verdana;"> </span></span></p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">--timeout=seconds -t 120</pre>
<p>120は120秒つまり2分を意味します。これを4分にするなら次のようになります。 <span><span style="font-family: Verdana;"> </span></span></p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">--timeout=seconds -t 240</pre>
<h2>4. DVDサイズへの分割</h2>
<p><span><span style="font-family: Verdana;"> </span></span></p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">debpartial --nosource --dirprefix=ubuntu --section=main,restricted,universe,multiverse --dist=<strong><span style="color: red;">hardy</span></strong>,<span style="color: red;"><strong>hardy</strong></span>-security,<strong><span style="color: red;">hardy</span></strong>-updates,<span style="color: red;"><strong>hardy</strong></span>-backports <span style="color: blue;"><strong>--size=DVD</strong></span> ~/UbuntuRepos ~/UbuntuDVDs</pre>
<ol>
<li>ダウンロード時にHardy以外のリポジトリを選んだ場合はhardyを選んだリリースに合わせて変えてください（例：interpid, jaunty）。</li>
<li>DVDの代わりにCDに焼く場合には&#8211;size=DVDを&#8211;size=CD74（650MBのCD-Rの場合）か&#8211;size=CD80（700MBのCD-Rの場合）に変更してください。</li>
</ol>
<p>必要なDVDの枚数を確認するため次のコマンドを端末に張り付けてエンターを押してください。</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">ls -l ~/UbuntuDVDs</pre>
<p>最後に表示されたフォルダーがubuntu3であれば4枚のDVD、ubuntu4であれば5枚のDVD、ubuntu31であれば32枚のCDが必要だということが分かります。  必要なディスクの枚数を確認したところで次のようなコマンドをすべてのディスクについて実行してください。それぞれのコマンドで違うのは最後の番号だけです。Hardy Heronを例にしています。 1枚目：</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">ruby debcopy -l ~/UbuntuRepos ~/UbuntuDVDs/ubuntu0</pre>
<p>2枚目：</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">ruby debcopy -l ~/UbuntuRepos ~/UbuntuDVDs/ubuntu1</pre>
<p>3枚目：</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">ruby debcopy -l ~/UbuntuRepos ~/UbuntuDVDs/ubuntu2</pre>
<p>4枚目：</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">ruby debcopy -l ~/UbuntuRepos ~/UbuntuDVDs/ubuntu3</pre>
<p>5枚目：</p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">ruby debcopy -l ~/UbuntuRepos ~/UbuntuDVDs/ubuntu4</pre>
<h2>5. ISOイメージの作成</h2>
<p>ここでの指示はDVDが5枚であることを前提にしています。あなたの選んだリポジトリが5枚DVDの必要ないものであれば、何も作成されません。  1枚目 <span><span style="font-family: Verdana;"> </span></span></p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">mkisofs -f -J -r -V "Ubuntu <span style="color: red;"><strong>8.04</strong></span> 1/5" -o ubuntu-<strong><span style="color: red;">8.04</span></strong>-$(date -I)-complete-<strong><span style="color: red;">i386</span><span style="color: blue;">-dvd1.iso</span></strong> ~/UbuntuDVDs/ubuntu0</pre>
<p>2枚目  <span><span style="font-family: Verdana;"> </span></span></p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">mkisofs -f -J -r -V "Ubuntu <span style="color: red;"><strong>8.04</strong></span> 2/5" -o ubuntu-<strong><span style="color: red;">8.04</span></strong>-$(date -I)-complete-<strong><span style="color: red;">i386</span><span style="color: blue;">-</span><span style="color: blue;">dvd2.iso</span></strong> ~/UbuntuDVDs/ubuntu1</pre>
<p>3枚目  <span><span style="font-family: Verdana;"> </span></span></p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">mkisofs -f -J -r -V "Ubuntu <span style="color: red;"><strong>8.04</strong></span> 3/5" -o ubuntu-<strong><span style="color: red;">8.04</span></strong>-$(date -I)-complete-<strong><span style="color: red;">i386</span><span style="color: blue;">-dvd3.iso</span></strong> ~/UbuntuDVDs/ubuntu2</pre>
<p>4枚目  <span><span style="font-family: Verdana;"> </span></span></p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">mkisofs -f -J -r -V "Ubuntu <strong><span style="color: red;">8.04</span></strong> 4/5" -o ubuntu-<strong><span style="color: red;">8.04</span></strong>-$(date -I)-complete-<strong><span style="color: red;">i386</span><span style="color: blue;">-dvd4</span><span style="color: blue;">.iso</span></strong> ~/UbuntuDVDs/ubuntu3</pre>
<p>5枚目  <span><span style="font-family: Verdana;"> </span></span></p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">mkisofs -f -J -r -V "Ubuntu <strong><span style="color: red;">8.04</span></strong> 5/5" -o ubuntu-<strong><span style="color: red;">8.04</span></strong>-$(date -I)-complete-<strong><span style="color: red;">i386</span><span style="color: blue;">-dvd5.iso</span></strong> ~/UbuntuDVDs/ubuntu4</pre>
<ul>
<li>異なるリポジトリを使っている場合にはコマンドの編集が必要です。バージョン番号である8.04をinterpidであれば8.10、jauntyであれば9.04に変更してください。またi386の部分もamd64、powerpc、sparcなど適切なものに取り替えてください。</li>
<li>CDイメージを作成している場合は-dvd1.isoを-cd1.iso、-dvd2.isoを-cd2.isoなどというようにすべてのディスクについて変更してください。</li>
</ul>
<h2>6. イメージファイルをDVDに焼き付け</h2>
<p>Ubuntuの場合：</p>
<ol>
<li>空のCD-Rを入れてください。ポップアップウィンドウは消してください。</li>
<li>ファイルブラウザで作成したISOイメージを閲覧します。</li>
<li>イメージファイルを右クリックしてCD/DVDの作成を選択します。</li>
<li>書込速度を選びます。最も遅い速度を選ぶのをお勧めします。</li>
<li>焼き付け作業を開始します。全てのISOイメージを焼き終わるまで繰り返してください。</li>
</ol>
<p>Kubuntuの場合：</p>
<ol>
<li>ファイルブラウザでISOイメージファイルを探します。</li>
<li>右クリックからK3bでCDに書き込むを選びましょう。</li>
<li>K3bは自動的にmd5sumを確認します。</li>
<li>空のCD-Rを入れて焼き付けを始めます。</li>
</ol>
<p>Xubuntuの場合：</p>
<ol>
<li>xfburn（アプリケーション、アクセサリ、xfburn）を起動します。</li>
<li>ツールバーかメニューのアクションからCDイメージを書き込むを選択します。</li>
<li>ダイアログでISOイメージを選択します。</li>
<li>イメージを書き込むを選択します。</li>
</ol>
<p>以上に関する<a title="BurningIsoHowto" href="https://help.ubuntu.com/community/BurningIsoHowto#head-41d485cd1f4a2902492b7e5dcc1991af2ec8f564">情報源</a>。</p>
<h2>7. 動作設定</h2>
<p>Synapticパッケージ・マネージャ（システム、システム管理、Synapticパッケージ・マネージャ）を起動します。パスワードを入力して、メニューの設定からリポジトリを選びます。サードパーティーのソフトウェアというタブをクリックします。CD-ROMを追加ボタンをクリックして、表示されるダイアログに従ってください。全てのディスクが入力されるまで続けます。[端末を使う方法については原文参照]</p>
<h2>8. ローカルリポジトリの更新</h2>
<p>ここまでで~/UbuntuReposフォルダに何GBものdebファイルが整列していることでしょう。これらをどうやって更新できるのでしょうか。  端末（アプリケーション、アクセサリ、端末）を開いて、ダウンロードの部分のコマンドを再び実行してください。今度は増分しかダウンロードされないため25時間ではなく10分程度で済みます。これを毎日実行していればISOを作成する度にダウンロードする必要はなくなります。  もし新しいDVDが必要な場合にはホームフォルダにある最初に作ったisoファイルを削除してISOイメージの作成、DVDの作成、Synapticのリポジトリ設定をやり直してください。</p>
<h2>9. aptのローカル設定</h2>
<p>この項目については<a title="Creating a Trusted Local Repository from which Software Updates can be installed" href="http://ubuntuforums.org/showthread.php?t=1090731">Creating a Trusted Local Repository from which Software Updates can be installed</a>がより詳しい説明となっています。  ダウンロードしたファイルをローカルなリポジトリとして利用することは可能です。アップデートや新しいパッケージのインストールにも使えます。しかしリポジトリが最新でなければ、セキュリティアップデートの適用が遅れてしまいます。  これを頭に入れた上で次のコマンドを端末で実行します。  <span><span style="font-family: Verdana;"> </span></span></p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">cd ~/UbuntuRepos &amp;&amp; dpkg-scanpackages . /dev/null &gt; Packages &amp;&amp; gzip Packages &amp;&amp; cd ~</pre>
<p>aptがローカルなリポジトリに何が含まれているかを知るために必要なファイルが作成されます。その後にsources.listに以下の行を挿入してください。  <span><span style="font-family: Verdana;"> </span></span></p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">deb file:/home/[USER NAME HERE]/UbuntuRepos/ <span style="color: red;"><strong>hardy</strong></span> main multiverse restricted universe</pre>
<p><span><span style="font-family: Verdana;"> </span></span></p>
<pre style="border: 1px inset; margin: 0px; padding: 6px; overflow: auto; width: 560px; height: 34px; text-align: left;" dir="ltr">deb file:/home/[USER NAME HERE]/UbuntuRepos/ <strong><span style="color: red;">hardy</span></strong>-security main multiverse restricted universe</pre>
<p>必要なくなったインターネット上のリポジトリを示す行の前に#マークを加えてください。</p>


<p>関連するエントリー<ol><li><a href='http://rionaoki.net/2009/10/823' rel='bookmark' title='Permanent Link: Grub 2 入門'>Grub 2 入門</a></li>
<li><a href='http://rionaoki.net/2009/10/703' rel='bookmark' title='Permanent Link: Google CalendarとConkyを繋げよう'>Google CalendarとConkyを繋げよう</a></li>
<li><a href='http://rionaoki.net/2009/09/582' rel='bookmark' title='Permanent Link: おかしなDSDTを直そう'>おかしなDSDTを直そう</a></li>
<li><a href='http://rionaoki.net/2009/09/539' rel='bookmark' title='Permanent Link: カーネルをコンパイルしよう'>カーネルをコンパイルしよう</a></li>
<li><a href='http://rionaoki.net/2009/09/516' rel='bookmark' title='Permanent Link: グラフィカルなIPブロッカー'>グラフィカルなIPブロッカー</a></li>
</ol></p>]]></content:encoded>
			<wfw:commentRss>http://rionaoki.net/2009/09/462/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
