<?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>ものぐさ備忘録 &#187; X</title>
	<atom:link href="http://www.ginriki.net/wd/category/x/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.ginriki.net/wd</link>
	<description>ソフトウェア関係の話を中心とした備忘録的日記</description>
	<lastBuildDate>Sun, 11 Jul 2010 15:48:08 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.5</generator>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>XForwardingのやり方</title>
		<link>http://www.ginriki.net/wd/2008/02/20/33/</link>
		<comments>http://www.ginriki.net/wd/2008/02/20/33/#comments</comments>
		<pubDate>Wed, 20 Feb 2008 04:12:01 +0000</pubDate>
		<dc:creator>ginriki</dc:creator>
				<category><![CDATA[X]]></category>

		<guid isPermaLink="false">http://www.gikogeek.net/wd/?p=33</guid>
		<description><![CDATA[
]]></description>
			<content:encoded><![CDATA[<div class="section">
<p>ついでに、ssh XForwardingのやり方も調べました。</p>
<h4> 設定方法</h4>
<p>例として、sshdが動いているRemoteマシンと、そこへssh接続するLocalマシンがあり、RemoteマシンでXクライアント(emacsとか)を起動し、LocalマシンのXサーバで表示する場合を考えます。</p>
<p>Remoteマシンのsshd_configを以下のように書き換えます</p>
<pre class="syntax-highlight">
<span class="synStatement">X11Forwarding</span> <span class="synIdentifier">no</span>
↓
<span class="synStatement">X11Forwarding</span> <span class="synIdentifier">yes</span>
</pre>
<p>設定を有効にするため、sshdを再起動します。</p>
<pre>
# /etc/init.d/sshd restart
</pre>
<p>あとは、Localマシンから以下のように接続します</p>
<pre>
$ ssh -X user@remote.domain
</pre>
<p>sshでRemoteマシンに接続した後、以下のような出力があればXForwardingに成功しているはず。</p>
<pre>
$ echo $DISPLAY
localhost:10.0

$ emacs     #Localマシン上にemacsのウインドウが表示される
</pre>
<p>なお、ssh接続時に、~/.Xauthorityが生成されない場合、xauthプログラムが入ってない可能性がありますので、yum install xauthとかで入れて、接続しなおしてください。</p>
<p>やってみた感じ、通信データ量はかなり多いみたいですね。</p>
<p>回線が細いと、emacsの起動をするだけで数分かかります。</p>
<p></p>
<p>また、XForwardingの場合、nohupでXアプリを起動しても、sshコネクションを終了するとXアプリも終了してしまいます。</p>
<p>おそらく、sshコネクション終了時にRemoteマシン上に作られた擬似Xサーバも終了してしまうからでしょう<span class="footnote"><a href="/gikogeek/#f1" name="fn1" title="http://research.kek.jp/people/yashiro/RepN/KEKint00-01/ssh_p.html">*1</a></span>。</p>
<h4>環境変数DISPLAYについて</h4>
<p>環境変数DISPLAYは、&#8221;:0.0&#8243;(通常)だったり、&#8221;localhost:10.0&#8243;(XForwarding)だったりしたんですが、値の意味が気になったので色々検索してみると、解説が見つかりました。</p>
<p>以下引用<span class="footnote"><a href="/gikogeek/#f2" name="fn2" title="引用元: [http://mibai.tec.u-ryukyu.ac.jp/cgi-bin/info2www?(emacs-ja)Display%20X]">*2</a></span>。</p>
<blockquote>
<p>環境変数`DISPLAY&#8217;の書式は`HOST:DISPLAY.SCREEN&#8217;です。HOSTはXウィンドウシステムのサーバーマシンの名前、DISPLAYは同じマシンの別のサーバーと読者のサーバー（X端末）を区別するために任意に割り振られた番号、SCREENは稀にしか使いませんが1つのXサーバーで複数の端末画面を制御する場合に使います。ピリオドとSCREENは省いてかまいません。指定する場合、SCREENは普通はゼロです。</p>
</blockquote>
</div>
<div class="footnote">
<p class="footnote"><a href="/gikogeek/#fn1" name="f1">*1</a>：<a href="http://research.kek.jp/people/yashiro/RepN/KEKint00-01/ssh_p.html" target="_blank">http://research.kek.jp/people/yashiro/RepN/KEKint00-01/ssh_p.html</a></p>
<p class="footnote"><a href="/gikogeek/#fn2" name="f2">*2</a>：引用元: <a href="http://mibai.tec.u-ryukyu.ac.jp/cgi-bin/info2www?(emacs-ja)Display%20X" target="_blank">http://mibai.tec.u-ryukyu.ac.jp/cgi-bin/info2www?(emacs-ja)Display%20X</a></p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.ginriki.net/wd/2008/02/20/33/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Xアプリをssh越しで起動する</title>
		<link>http://www.ginriki.net/wd/2008/02/20/32/</link>
		<comments>http://www.ginriki.net/wd/2008/02/20/32/#comments</comments>
		<pubDate>Wed, 20 Feb 2008 04:12:00 +0000</pubDate>
		<dc:creator>ginriki</dc:creator>
				<category><![CDATA[X]]></category>

		<guid isPermaLink="false">http://www.gikogeek.net/wd/?p=32</guid>
		<description><![CDATA[
]]></description>
			<content:encoded><![CDATA[<div class="section">
<p>バイトの関係で、Xアプリを、外部からデーモンとして起動する必要がありました。</p>
<p>やり方を探してみたところ、ssh接続先で以下のコマンド列をうてばＯＫでした<span class="footnote"><a href="/gikogeek/#f1" name="fn1" title="http://ubuntuforums.org/archive/index.php/t-180991.html">*1</a></span>。</p>
<pre>
$ export DISPLAY=:0.0
$ nohup x_program &#38;
$ exit
</pre>
<p>ようは、ssh接続先のXサーバとXアプリ(Xクライアント)を繋げるように環境変数を設定したうえで、Xアプリを起動すれば良い。</p>
<p>当然、ssh接続先でXサーバが動いていないとだめです。</p>
</div>
<div class="footnote">
<p class="footnote"><a href="/gikogeek/#fn1" name="f1">*1</a>：<a href="http://ubuntuforums.org/archive/index.php/t-180991.html" target="_blank">http://ubuntuforums.org/archive/index.php/t-180991.html</a></p>
</div>
]]></content:encoded>
			<wfw:commentRss>http://www.ginriki.net/wd/2008/02/20/32/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
