<?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>Simon Ottenhaus &#187; Linux</title>
	<atom:link href="http://familie-ottenhaus.de/simon/blog/category/linux/feed/" rel="self" type="application/rss+xml" />
	<link>http://familie-ottenhaus.de/simon/blog</link>
	<description>Uni &#38; Software</description>
	<lastBuildDate>Tue, 21 Feb 2012 18:27:57 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.4</generator>
		<item>
		<title>HowTo: Textersetzung in mehreren Dateien mit Perl (preg) unter Windows und Linux</title>
		<link>http://familie-ottenhaus.de/simon/blog/2009/11/howto-textersetzung-in-mehreren-dateien-mit-perl-preg-unter-windows-und-linux/</link>
		<comments>http://familie-ottenhaus.de/simon/blog/2009/11/howto-textersetzung-in-mehreren-dateien-mit-perl-preg-unter-windows-und-linux/#comments</comments>
		<pubDate>Sun, 29 Nov 2009 11:16:47 +0000</pubDate>
		<dc:creator>Simon Ottenhaus</dc:creator>
				<category><![CDATA[HowTo / Anleitung]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Perl]]></category>
		<category><![CDATA[Preg]]></category>
		<category><![CDATA[Textersetzung]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://familie-ottenhaus.de/simon/blog/?p=916</guid>
		<description><![CDATA[Neulich stellte sich mir folgendes Problem: Ich hatte viele Dateien, in denen ich Text ersetzen wollte. Mit einem normalen Editor ist dies schlecht möglich. Abhilfe schafft der Perl Interpreter: View Code BASH1 2 3 4 5 6 7 8 perl -pi -w -e 's/search/replace/g;' *.html &#160; -e Argument ausführen &#40;execute&#41; -i &#34;in-place&#34; editieren -w Warnungen [...]]]></description>
			<content:encoded><![CDATA[<p>Neulich stellte sich mir folgendes Problem:<br />
Ich hatte viele Dateien, in denen ich Text ersetzen wollte. Mit einem normalen Editor ist dies schlecht möglich. Abhilfe schafft der Perl Interpreter:</p>

<div class="wp_codebox_msgheader"><span class="right"></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p916code5'); return false;">View Code</a> BASH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p9165"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
</pre></td><td class="code" id="p916code5"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">perl</span> <span style="color: #660033;">-pi</span> <span style="color: #660033;">-w</span> <span style="color: #660033;">-e</span> <span style="color: #ff0000;">'s/search/replace/g;'</span> <span style="color: #000000; font-weight: bold;">*</span>.html
&nbsp;
    <span style="color: #660033;">-e</span> Argument ausführen <span style="color: #7a0874; font-weight: bold;">&#40;</span>execute<span style="color: #7a0874; font-weight: bold;">&#41;</span>
    <span style="color: #660033;">-i</span> <span style="color: #ff0000;">&quot;in-place&quot;</span> editieren
    <span style="color: #660033;">-w</span> Warnungen ausgeben
    <span style="color: #660033;">-p</span> <span style="color: #ff0000;">&quot;loop&quot;</span>
&nbsp;
siehe auch <span style="color: #c20cb9; font-weight: bold;">perl</span> <span style="color: #660033;">-h</span></pre></td></tr></table></div>

<h3>Beispiel Datum 1</h3>
<p>Es soll das Datum von 2008 auf 2009 in allen html-Dateien im aktuellen Verzeichnis aktualisiert werden:</p>

<div class="wp_codebox_msgheader"><span class="right"></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p916code6'); return false;">View Code</a> BASH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p9166"><td class="line_numbers"><pre>1
</pre></td><td class="code" id="p916code6"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">perl</span> <span style="color: #660033;">-pi</span> <span style="color: #660033;">-w</span> <span style="color: #660033;">-e</span> <span style="color: #ff0000;">'s/2008/2009/g;'</span> <span style="color: #000000; font-weight: bold;">*</span>.html</pre></td></tr></table></div>

<h3>Beispiel Datum 2</h3>
<p>Es soll das Datum von 200x auf 2009 in allen html-Dateien im aktuellen Verzeichnis aktualisiert werden:</p>

<div class="wp_codebox_msgheader"><span class="right"></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p916code7'); return false;">View Code</a> BASH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p9167"><td class="line_numbers"><pre>1
</pre></td><td class="code" id="p916code7"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">perl</span> <span style="color: #660033;">-pi</span> <span style="color: #660033;">-w</span> <span style="color: #660033;">-e</span> <span style="color: #ff0000;">'s/200[0-8]/2009/g;'</span> <span style="color: #000000; font-weight: bold;">*</span>.html</pre></td></tr></table></div>

<h3>Beispiel: Verzeichnisse rekursiv durchsuchen (nur Linux)</h3>

<div class="wp_codebox_msgheader"><span class="right"></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p916code8'); return false;">View Code</a> BASH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p9168"><td class="line_numbers"><pre>1
2
3
4
5
</pre></td><td class="code" id="p916code8"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">find</span> <span style="color: #000000; font-weight: bold;">*</span> <span style="color: #000000; font-weight: bold;">|</span> <span style="color: #c20cb9; font-weight: bold;">grep</span> <span style="color: #660033;">-E</span> <span style="color: #ff0000;">&quot;\.html$&quot;</span> <span style="color: #000000; font-weight: bold;">|</span> <span style="color: #c20cb9; font-weight: bold;">xargs</span> <span style="color: #c20cb9; font-weight: bold;">perl</span> <span style="color: #660033;">-pi</span> <span style="color: #660033;">-w</span> <span style="color: #660033;">-e</span> <span style="color: #ff0000;">'s/search/replace/g;'</span>
&nbsp;
    <span style="color: #c20cb9; font-weight: bold;">find</span> <span style="color: #000000; font-weight: bold;">*</span> gibt alle Dateien und Verzeichnisse aus
    <span style="color: #c20cb9; font-weight: bold;">grep</span> <span style="color: #660033;">-E</span> <span style="color: #ff0000;">&quot;\.html$&quot;</span> selektiert nur Dateinamen, die auf .html enden
    <span style="color: #c20cb9; font-weight: bold;">xargs</span> gibt die Dateinamen als Parameter an Perl weiter</pre></td></tr></table></div>

<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://familie-ottenhaus.de/simon/blog/2009/11/howto-textersetzung-in-mehreren-dateien-mit-perl-preg-unter-windows-und-linux/" target="_blank" class="liimagelink"><img src="http://familie-ottenhaus.de/simon/blog/wp-content/plugins/add-to-facebook-plugin/facebook_share_icon.gif" alt="Share on Facebook" title="Share on Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://familie-ottenhaus.de/simon/blog/2009/11/howto-textersetzung-in-mehreren-dateien-mit-perl-preg-unter-windows-und-linux/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>HowTo: Proftpd-lenny unter debian etch 4.0 / Filezilla ECONNABORTED beheben</title>
		<link>http://familie-ottenhaus.de/simon/blog/2009/11/howto-proftpd-lenny-unter-debian-etch-4-0-filezilla-econnaborted-beheben/</link>
		<comments>http://familie-ottenhaus.de/simon/blog/2009/11/howto-proftpd-lenny-unter-debian-etch-4-0-filezilla-econnaborted-beheben/#comments</comments>
		<pubDate>Thu, 12 Nov 2009 19:23:41 +0000</pubDate>
		<dc:creator>Simon Ottenhaus</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[HowTo / Anleitung]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Debian]]></category>
		<category><![CDATA[ECONNABORTED]]></category>
		<category><![CDATA[etch]]></category>
		<category><![CDATA[Filezilla]]></category>
		<category><![CDATA[lenny]]></category>
		<category><![CDATA[Proftpd]]></category>

		<guid isPermaLink="false">http://familie-ottenhaus.de/simon/blog/?p=889</guid>
		<description><![CDATA[Dieser Artikel richtet sich an &#8220;debian etch 4.0&#8243;-Administratoren, die Proftpd aus den Paketquellen installiert haben und folgendes Problem in Filezilla haben: Status: Server did not properly shut down TLS connection Error: Could not read from transfer socket: ECONNABORTED &#8211; Connection aborted Wie im Filezilla Forum zu lesen ist: ECONNABORTED: It&#8217;s the server&#8217;s fault! leider hilft [...]]]></description>
			<content:encoded><![CDATA[<p>Dieser Artikel richtet sich an &#8220;debian etch 4.0&#8243;-Administratoren, die Proftpd aus den Paketquellen installiert haben und folgendes Problem in Filezilla haben:</p>
<blockquote><p>Status: Server did not properly shut down TLS connection<br />
Error:  Could not read from transfer socket: ECONNABORTED &#8211; Connection aborted</p></blockquote>
<p>Wie im <a href="http://forum.filezilla-project.org/viewtopic.php?f=2&#038;t=7688&#038;start=0" target="_blank" class="liexternal">Filezilla Forum</a> zu lesen ist:</p>
<blockquote><p>ECONNABORTED: It&#8217;s the server&#8217;s fault!</p></blockquote>
<p>leider hilft das nicht wirklich weiter.</p>
<p>Die Lösung ist ganz einfach: Proftpd aus den lenny Paketquellen laden und installieren. Dieses HowTo hilft bei der Erstellung eines Proftpd-Paketes.</p>
<h3>Vorbereiten des Systems</h3>
<p><em>Für einige der nachfolgenden Befehle muss man root sein.</em> Am besten man wird es jetzt schon.</p>
<p>Zum Bauen von Debian-Paketen sind einige Pakete erforderlich.</p>

<div class="wp_codebox_msgheader"><span class="right"></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p889code17'); return false;">View Code</a> TEXT</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p88917"><td class="line_numbers"><pre>1
</pre></td><td class="code" id="p889code17"><pre class="text" style="font-family:monospace;">aptitude install devscripts build-essential fakeroot</pre></td></tr></table></div>

<h3>Laden und Vorbereiten der Sourcen</h3>
<p>Die Sourcen gibt es unter <a href="http://packages.debian.org/lenny/proftpd/" target="_blank" class="liexternal">packages.debian.org/lenny/proftpd</a></p>

<div class="wp_codebox_msgheader"><span class="right"></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p889code18'); return false;">View Code</a> TEXT</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p88918"><td class="line_numbers"><pre>1
2
</pre></td><td class="code" id="p889code18"><pre class="text" style="font-family:monospace;">wget http://security.debian.org/debian-security/pool/updates/main/p/proftpd-dfsg/proftpd-dfsg_1.3.1.orig.tar.gz
wget http://security.debian.org/debian-security/pool/updates/main/p/proftpd-dfsg/proftpd-dfsg_1.3.1-17lenny4.diff.gz</pre></td></tr></table></div>

<p>Auspacken des tar.gz Archives:</p>

<div class="wp_codebox_msgheader"><span class="right"></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p889code19'); return false;">View Code</a> TEXT</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p88919"><td class="line_numbers"><pre>1
</pre></td><td class="code" id="p889code19"><pre class="text" style="font-family:monospace;">tar -xzf proftpd-dfsg_1.3.1.orig.tar.gz</pre></td></tr></table></div>

<p>Nun werden die debian-spezifischen Patches angewendet</p>

<div class="wp_codebox_msgheader"><span class="right"></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p889code20'); return false;">View Code</a> TEXT</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p88920"><td class="line_numbers"><pre>1
2
</pre></td><td class="code" id="p889code20"><pre class="text" style="font-family:monospace;">cd cd proftpd-dfsg-1.3.1/
zcat ../proftpd-dfsg_1.3.1-17lenny4.diff.gz | patch -p1</pre></td></tr></table></div>

<h3>Bauen der Pakete</h3>
<p>1. Versuch mit debuild</p>

<div class="wp_codebox_msgheader"><span class="right"></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p889code21'); return false;">View Code</a> TEXT</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p88921"><td class="line_numbers"><pre>1
</pre></td><td class="code" id="p889code21"><pre class="text" style="font-family:monospace;">debuild</pre></td></tr></table></div>

<p>Dieser 1. Versuch wird aller Voraussicht nach fehlschlagen, da andere Pakete fehlen, um Proftpd zu bauen. Die Fehlermeldung ist allerdings hilfreich und verrät welche Pakete noch zu installieren sind. Diese sollten nun nacheinander installiert werden. Zwischendurch immer wieder debuild probieren. Die Liste der fehlenden Pakete sollte mit jedem installierten Paket kleiner werden.<br />
Schließlich startet debuild das Erstellen der Pakete. <em>Dies kann einige Zeit dauern.</em> Nicht die Geduld verlieren.</p>
<p>Es kann sein, dass debuild einige Fehler am Ende ausgibt, dies soll uns aber nicht weiter stören. Wenn alles geklappt hat sollten am Ende folgende Dateien vorhanden sein (je nach System kann die Liste abweichen)</p>

<div class="wp_codebox_msgheader"><span class="right"></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p889code22'); return false;">View Code</a> TEXT</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p88922"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
</pre></td><td class="code" id="p889code22"><pre class="text" style="font-family:monospace;">cd ..
ls -al
&nbsp;
-rw-r--r--  1 root root  195024 2009-11-12 17:19 proftpd_1.3.1-17lenny4_all.deb
-rw-r--r--  1 root root  696556 2009-11-12 17:19 proftpd-basic_1.3.1-17lenny4_i386.deb
drwxr-sr-x 13 root root    4096 2009-11-12 17:19 proftpd-dfsg-1.3.1
-rw-r--r--  1 root root  102934 2009-11-12 17:16 proftpd-dfsg_1.3.1-17lenny4.diff.gz
-rw-r--r--  1 root root     653 2009-11-12 17:16 proftpd-dfsg_1.3.1-17lenny4.dsc
-rw-r--r--  1 root root       0 2009-11-12 17:19 proftpd-dfsg_1.3.1-17lenny4.dsc.asc
-rw-r--r--  1 root root  124074 2009-11-12 17:19 proftpd-dfsg_1.3.1-17lenny4_i386.build
-rw-r--r--  1 root root    1700 2009-11-12 17:19 proftpd-dfsg_1.3.1-17lenny4_i386.changes
-rw-r--r--  1 root root 2662056 2009-02-25 12:55 proftpd-dfsg_1.3.1.orig.tar.gz
-rw-r--r--  1 root root 1254386 2009-11-12 17:19 proftpd-doc_1.3.1-17lenny4_all.deb
-rw-r--r--  1 root root  214058 2009-11-12 17:19 proftpd-mod-ldap_1.3.1-17lenny4_i386.deb
-rw-r--r--  1 root root  203592 2009-11-12 17:19 proftpd-mod-mysql_1.3.1-17lenny4_i386.deb
-rw-r--r--  1 root root  203562 2009-11-12 17:19 proftpd-mod-pgsql_1.3.1-17lenny4_i386.deb</pre></td></tr></table></div>

<h3>Installieren von Proftpd</h3>
<p>Bevor der neue Proftpd installiert wird sollte der alte entfernt werden</p>

<div class="wp_codebox_msgheader"><span class="right"></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p889code23'); return false;">View Code</a> TEXT</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p88923"><td class="line_numbers"><pre>1
</pre></td><td class="code" id="p889code23"><pre class="text" style="font-family:monospace;">aptitude remove proftpd</pre></td></tr></table></div>

<p>Schließlich kann der neue Proftpd installiert werden</p>

<div class="wp_codebox_msgheader"><span class="right"></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p889code24'); return false;">View Code</a> TEXT</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p88924"><td class="line_numbers"><pre>1
</pre></td><td class="code" id="p889code24"><pre class="text" style="font-family:monospace;">dpkg -i *.deb</pre></td></tr></table></div>

<p>Nun sollte der selbst gebaute Proftpd seinen Dienst verrichten.</p>
<p>Fragen und Anregungen sind in den Kommentaren gerne willkommen!</p>
<p><strong>Links</strong><br />
Rebuilding Debian packages <a href="http://www.debian-administration.org/articles/20/" target="_blank" class="liexternal">debian-administration.org/articles/20</a><br />
Lenny Proftpd Quellen <a href="http://packages.debian.org/lenny/proftpd/" target="_blank" class="liexternal">packages.debian.org/lenny/proftpd</a></p>
<p><strong>Dank</strong><br />
Vielen Dank an <a href="https://trac.aellaweil.de/ideen/blog/" target="_blank" class="liexternal">Matthias</a> für das &#8220;Mini-Papier-HowTo&#8221;</p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://familie-ottenhaus.de/simon/blog/2009/11/howto-proftpd-lenny-unter-debian-etch-4-0-filezilla-econnaborted-beheben/" target="_blank" class="liimagelink"><img src="http://familie-ottenhaus.de/simon/blog/wp-content/plugins/add-to-facebook-plugin/facebook_share_icon.gif" alt="Share on Facebook" title="Share on Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://familie-ottenhaus.de/simon/blog/2009/11/howto-proftpd-lenny-unter-debian-etch-4-0-filezilla-econnaborted-beheben/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>HowTo: Subversion Server / svnserve unter debian</title>
		<link>http://familie-ottenhaus.de/simon/blog/2009/04/howto-subversion-server-svnserve-unter-debian/</link>
		<comments>http://familie-ottenhaus.de/simon/blog/2009/04/howto-subversion-server-svnserve-unter-debian/#comments</comments>
		<pubDate>Thu, 02 Apr 2009 09:14:27 +0000</pubDate>
		<dc:creator>Simon Ottenhaus</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[HowTo / Anleitung]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Debian]]></category>
		<category><![CDATA[Server]]></category>
		<category><![CDATA[Subversion]]></category>
		<category><![CDATA[svnserve]]></category>
		<category><![CDATA[TortoiseSVN]]></category>

		<guid isPermaLink="false">http://familie-ottenhaus.de/simon/blog/?p=607</guid>
		<description><![CDATA[Es wird die Einrichtung eines Subversion Servers und eines Repositories unter Debian behandelt. Dieses HowTo setzt voraus, dass man sich mit TortoiseSVN oder einem anderen SVN-Client bereits auskennt. Konfiguration von svnserve Im Folgenden wird die Verwendung von svnserve über inetd ohne ssh beschrieben, da dies die einfachste Lösung ist. Installation von svnserve Zunächst wird svnserve [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://tortoisesvn.net" target="_blank" class="liimagelink"><img src="http://familie-ottenhaus.de/simon/blog/wp-content/uploads/2009/04/subversion_logo_hor-468x64.png" alt="subversion_logo_hor-468x64" title="subversion_logo_hor-468x64" width="468" height="64" class="alignnone size-full wp-image-631" /></a></p>
<p>Es wird die Einrichtung eines Subversion Servers und eines Repositories unter Debian behandelt.</p>
<p>Dieses HowTo setzt voraus, dass man sich mit <a href="http://tortoisesvn.net" target="_blank" class="liexternal">TortoiseSVN</a> oder einem anderen SVN-Client bereits auskennt.<br />
<span id="more-607"></span></p>
<h3>Konfiguration von svnserve</h3>
<p>Im Folgenden wird die Verwendung von svnserve über inetd ohne ssh beschrieben, da dies die einfachste Lösung ist.</p>
<p><strong>Installation von svnserve</strong><br />
Zunächst wird svnserve mit aptitude oder apt-get installiert:<br />
<em>Update: das benötigte Paket heißt nicht mehr svnserve sondern subversion</em></p>

<div class="wp_codebox_msgheader"><span class="right"></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p607code36'); return false;">View Code</a> TEXT</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p60736"><td class="line_numbers"><pre>1
</pre></td><td class="code" id="p607code36"><pre class="text" style="font-family:monospace;">apt-get install subversion</pre></td></tr></table></div>

<p><strong>Anlegen der Pfade, Benutzer und Gruppen</strong><br />
Um dem Serverprozess nicht unnötig viele Rechte zu geben, werden ein User und eine Gruppe &#8216;svn&#8217; benötigt, unter denen der Server gestartet wird und dem die Repositories gehören.</p>

<div class="wp_codebox_msgheader"><span class="right"></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p607code37'); return false;">View Code</a> TEXT</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p60737"><td class="line_numbers"><pre>1
2
</pre></td><td class="code" id="p607code37"><pre class="text" style="font-family:monospace;">useradd svn
mkdir /pfad/zu/den/Repositories</pre></td></tr></table></div>

<p><strong>Konfiguration von inetd</strong></p>

<div class="wp_codebox_msgheader"><span class="right"></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p607code38'); return false;">View Code</a> TEXT</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p60738"><td class="line_numbers"><pre>1
2
3
4
5
</pre></td><td class="code" id="p607code38"><pre class="text" style="font-family:monospace;"># man muss nicht vim benutzen...
vim /etc/inetd.conf
&nbsp;
# einfügen in /etc/inetd.conf
svn stream tcp nowait svn.svn /usr/bin/svnserve svnserve -i -r /pfad/zu/den/Repositories</pre></td></tr></table></div>

<p>Das erste &#8216;svn&#8217; gibt den Service an und muss in /etc/services definiert sein. Der Port für Subversion ist 3690. In der fünften Spalte wird der Benutzer und die Gruppe angegeben mit der das Programm in aus der sechsten Spalte gestartet werden soll. Die Parameter von svnserve:</p>

<div class="wp_codebox_msgheader"><span class="right"></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p607code39'); return false;">View Code</a> TEXT</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p60739"><td class="line_numbers"><pre>1
2
3
</pre></td><td class="code" id="p607code39"><pre class="text" style="font-family:monospace;">-i : startet svnserve im inetd Modus
-r : legt das Root Verzeichnis der Repositories fest. Ein Zugriff auf Dateien in höheren
     Verzeichnisebenen ist somit nicht mehr möglich.</pre></td></tr></table></div>

<p><strong>Neustart von inetd</strong><br />
Damit inetd die Änderungen in /etc/inetd.conf übernimmt muss inetd neu gestartet werden</p>

<div class="wp_codebox_msgheader"><span class="right"></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p607code40'); return false;">View Code</a> TEXT</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p60740"><td class="line_numbers"><pre>1
</pre></td><td class="code" id="p607code40"><pre class="text" style="font-family:monospace;">/etc/init.d/openbsd-inetd restart</pre></td></tr></table></div>

<p>Jetzt sollte svnserv laufen und Anfragen bearbeiten.<br />
Falls man seine Firewall im paranoid-Modus &#8220;block all&#8221; muss man nun noch ein Ausnahme für svnserv eintragen. <em>Sofern man an der Firewall nichts geändert hat muss man auch nichts zusätzlich für svnserv einstallen.</em></p>
<h3>Repository anlegen</h3>
<p><strong>Anlegen der Repository-Datenbank</strong><br />
Zunächst wird für das Repository ein neuer Ordner angelegt.<br />
Subversion speichert die Daten in einer speziellen Datenbank. Diese muss anschließend in diesem Ordner angelegt werden.</p>

<div class="wp_codebox_msgheader"><span class="right"></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p607code41'); return false;">View Code</a> TEXT</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p60741"><td class="line_numbers"><pre>1
2
3
4
</pre></td><td class="code" id="p607code41"><pre class="text" style="font-family:monospace;">mkdir /pfad/zu/den/Repositories/TestRepos
svnadmin create /pfad/zu/den/Repositories/TestRepos
chown -R svn:svn /pfad/zu/den/Repositories
chmod -R 700 /pfad/zu/den/Repositories</pre></td></tr></table></div>

<p>Überprüfung, ob die Datenbank angelegt wurde und alle Rechte stimmen:</p>

<div class="wp_codebox_msgheader"><span class="right"></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p607code42'); return false;">View Code</a> TEXT</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p60742"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
</pre></td><td class="code" id="p607code42"><pre class="text" style="font-family:monospace;">ls -al /pfad/zu/den/Repositories/TestRepos
drwx------ 2 svn svn 4096 2009-04-01 21:38 conf
drwx------ 2 svn svn 4096 2009-04-01 21:20 dav
drwx------ 5 svn svn 4096 2009-04-02 10:36 db
-rwx------ 1 svn svn    2 2009-04-01 21:20 format
drwx------ 2 svn svn 4096 2009-04-01 21:20 hooks
drwx------ 2 svn svn 4096 2009-04-01 21:20 locks
-rwx------ 1 svn svn  229 2009-04-01 21:20 README.txt</pre></td></tr></table></div>

<p><strong>Konfiguration des Repositories</strong><br />
Nun müssen die Zugriffsrechte auf das Repository festgelegt werden</p>

<div class="wp_codebox_msgheader"><span class="right"></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p607code43'); return false;">View Code</a> TEXT</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p60743"><td class="line_numbers"><pre>1
</pre></td><td class="code" id="p607code43"><pre class="text" style="font-family:monospace;">vim /pfad/zu/den/Repositories/TestRepos/conf/svnserve.conf</pre></td></tr></table></div>

<p>Die relevanten Einstellungen sind:</p>

<div class="wp_codebox_msgheader"><span class="right"></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p607code44'); return false;">View Code</a> TEXT</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p60744"><td class="line_numbers"><pre>1
2
3
4
</pre></td><td class="code" id="p607code44"><pre class="text" style="font-family:monospace;">[general]
anon-access = [none, read, write]
auth-access = [none, read, write]
password-db = [Dateiname]</pre></td></tr></table></div>

<p>In OpenSource Projekten ist es üblich &#8220;anon-access = read&#8221; zu verwenden, ich verwende für meine eigenen Entwicklungen allerdings</p>

<div class="wp_codebox_msgheader"><span class="right"></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p607code45'); return false;">View Code</a> TEXT</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p60745"><td class="line_numbers"><pre>1
2
3
4
</pre></td><td class="code" id="p607code45"><pre class="text" style="font-family:monospace;">[general]
anon-access = none
auth-access = write
password-db = passwd</pre></td></tr></table></div>

<p>Zuletzt müssen noch die berechtigen Benutzer eingestellt werden. Wie zu sehen ist das Format &#8220;Benutzername = PlainTextPasswort&#8221;<br />
Bei der vorliegenden unverschlüsselten Variante empfiehlt es sich den Benutzern zufällig generierte Passwörter zuzuweisen. Die Benutzer können ihre Passwörter nicht selbst ändern.</p>

<div class="wp_codebox_msgheader"><span class="right"></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p607code46'); return false;">View Code</a> TEXT</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p60746"><td class="line_numbers"><pre>1
2
3
4
</pre></td><td class="code" id="p607code46"><pre class="text" style="font-family:monospace;">vim /pfad/zu/den/Repositories/TestRepos/conf/passwd
&nbsp;
[users]
test = testpasswd</pre></td></tr></table></div>

<p>Jetzt kann auf das Repository zugegriffen werden</p>
<p><strong>Zugriff auf das Repository</strong><br />
<a href="http://tortoisesvn.tigris.org/" target="_blank" class="liimagelink"><img src="http://familie-ottenhaus.de/simon/blog/wp-content/uploads/2009/04/tortoisesvn_logo_hor468x64.png" alt="tortoisesvn_logo_hor468x64" title="tortoisesvn_logo_hor468x64" width="468" height="64" class="alignnone size-full wp-image-632" /></a><br />
Hier ein Beispiel (Windows mit TortoiseSVN):</p>
<p>Rechtsklick in einem Explorer-Fenster<br />
<img src="http://familie-ottenhaus.de/simon/blog/wp-content/uploads/2009/04/svn-repo-browser1.jpg" alt="svn-repo-browser1" title="svn-repo-browser1" width="414" height="425" class="aligncenter size-full wp-image-615" /></p>
<p>Die Url des Repositories ist: svn://server.tld/TestRepos<br />
TestRepos ist der <em>relative Teil</em> von /pfad/zu/den/Repositories/<em>TestRepos</em> bezüglich /pfad/zu/den/Repositories/</p>
<p>Statt server.tld kann auch die IP-Adresse verwendet werden<br />
<img src="http://familie-ottenhaus.de/simon/blog/wp-content/uploads/2009/04/svn-repo-browser2.jpg" alt="svn-repo-browser2" title="svn-repo-browser2" width="357" height="115" class="aligncenter size-full wp-image-616" /></p>
<p>Hier ein Screenshot von meinem Test-Repository: (Mein Server heißt famserv)<br />
<a href="http://familie-ottenhaus.de/simon/blog/wp-content/uploads/2009/04/svn-repo-browser3.jpg" class="liimagelink"><img src="http://familie-ottenhaus.de/simon/blog/wp-content/uploads/2009/04/svn-repo-browser3-300x162.jpg" alt="svn-repo-browser3" title="svn-repo-browser3" width="300" height="162" class="aligncenter size-medium wp-image-617" /></a></p>
<p><strong>Wichtiger Hinweis</strong><br />
Bei mir kam die Benutzer/Passwort Abfrage n-mal. Erst als ich den Speichern-Haken verwendet habe konnte ich auf das Repository zugreifen!</p>
<p>Bei Fragen / Verbesserungsvorschlägen einfach einen Kommentar hinterlassen</p>
<p>Weitere Informationen auf <a href="http://tortoisesvn.net" target="_blank" class="liexternal">tortoisesvn.net</a> (TortoiseSVN) und <a href="http://subversion.apache.org" target="_blank" class="liexternal">subversion.apache.org</a> (Subversion)</p>
<p><strong>Repository Konfiguration</strong><br />
<a href="http://svnbook.red-bean.com/nightly/en/svn.serverconfig.svnserve.html" target="_blank" class="liexternal">svnbook.red-bean.com/&#8230;/svn.serverconfig.svnserve.html</a><br />
<a href="http://svnbook.red-bean.com/nightly/en/svn.serverconfig.pathbasedauthz.html" target="_blank" class="liexternal">svnbook.red-bean.com/&#8230;/svn.serverconfig.pathbasedauthz.html</a></p>
<p>Andere Artikel zum <a href="http://familie-ottenhaus.de/simon/blog//tag/subversion/" class="liinternal">Thema Subversion</a></p>
<p><strong>Update 1</strong><br />
Paketname und Urls aktualisiert</p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://familie-ottenhaus.de/simon/blog/2009/04/howto-subversion-server-svnserve-unter-debian/" target="_blank" class="liimagelink"><img src="http://familie-ottenhaus.de/simon/blog/wp-content/plugins/add-to-facebook-plugin/facebook_share_icon.gif" alt="Share on Facebook" title="Share on Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://familie-ottenhaus.de/simon/blog/2009/04/howto-subversion-server-svnserve-unter-debian/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Debian: Netzwerkkarte austauschen &#8211; aus eth0 wird eth1</title>
		<link>http://familie-ottenhaus.de/simon/blog/2009/03/debian-netzwerkkarte-austauschen-eth0-eth1/</link>
		<comments>http://familie-ottenhaus.de/simon/blog/2009/03/debian-netzwerkkarte-austauschen-eth0-eth1/#comments</comments>
		<pubDate>Fri, 13 Mar 2009 14:58:30 +0000</pubDate>
		<dc:creator>Simon Ottenhaus</dc:creator>
				<category><![CDATA[HowTo / Anleitung]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[austauschen]]></category>
		<category><![CDATA[Debian]]></category>
		<category><![CDATA[eth0]]></category>
		<category><![CDATA[eth1]]></category>
		<category><![CDATA[Netzwekkarte]]></category>

		<guid isPermaLink="false">http://familie-ottenhaus.de/simon/blog/?p=492</guid>
		<description><![CDATA[Wenn man in Debian die Netzwerkkarte oder gleich das ganze Mainboard samt onboard Netzwerk austauscht wird man feststellen, dass das Netzwerk nach dem Tausch der Hardware nicht mehr funktioniert, auch wenn die Netzwerkkarten gleich sind. Das Problem ist, dass die Netzwerkkarten zwar gleich, aber nicht identisch sind. Jedes Netzwerkgerät hat eine eindeutige MAC-Adresse. Debian erkennt [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://debian.org/" target="_blank" class="liimagelink"><img src="http://familie-ottenhaus.de/simon/blog/wp-content/uploads/2009/03/debian-openlogo-nd-50.png" alt="debian-openlogo-nd-50" title="debian-openlogo-nd-50" width="50" height="61" class="alignright size-full wp-image-486" style="padding:0 0 0 5px;" /></a>Wenn man in <a href="http://debian.org" target="_blank" class="liexternal">Debian</a> die Netzwerkkarte oder gleich das ganze Mainboard samt onboard Netzwerk austauscht wird man feststellen, dass das Netzwerk nach dem Tausch der Hardware nicht mehr funktioniert, auch wenn die Netzwerkkarten gleich sind.</p>
<p>Das Problem ist, dass die Netzwerkkarten zwar <em>gleich</em>, aber <em>nicht identisch</em> sind. Jedes Netzwerkgerät hat eine eindeutige <a href="http://de.wikipedia.org/wiki/MAC-Adresse" target="_blank" alt="MAC-Adresse" title="MAC-Adresse" rel="nofollow" class="liwikipedia">MAC-Adresse</a>. Debian erkennt die neue Netzwerkkarte unter der neuen MAC-Adresse und legt einen neuen Netzwerkadapter (eth1) an.</p>
<p>Mit einem</p>

<div class="wp_codebox_msgheader"><span class="right"></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p492code50'); return false;">View Code</a> TEXT</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p49250"><td class="line_numbers"><pre>1
</pre></td><td class="code" id="p492code50"><pre class="text" style="font-family:monospace;">grep -R eth1 /etc</pre></td></tr></table></div>

<p>ist die verantwortliche Datei schnell gefunden: /etc/udev/rules.d/z25_persistent-net.rules</p>
<p>nach dem Tausch der Netzwerkhardware sollte die Datei ungefähr so aussehen:</p>

<div class="wp_codebox_msgheader"><span class="right"></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p492code51'); return false;">View Code</a> TEXT</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p49251"><td class="line_numbers"><pre>1
2
3
4
5
</pre></td><td class="code" id="p492code51"><pre class="text" style="font-family:monospace;"># PCI device ...
SUBSYSTEM==&quot;net&quot;, DRIVERS==&quot;?*&quot;, ATTRS{address}==&quot;xx:xx:xx:xx:xx:xx&quot;, NAME=&quot;eth0&quot;
&nbsp;
# PCI device ...
SUBSYSTEM==&quot;net&quot;, DRIVERS==&quot;?*&quot;, ATTRS{address}==&quot;xx:xx:xx:xx:xx:xx&quot;, NAME=&quot;eth1&quot;</pre></td></tr></table></div>

<p>Nun einfach das 1. Gerät auskommentieren oder löschen und beim 2. &#8220;eth0&#8243; als Namen eintragen:</p>

<div class="wp_codebox_msgheader"><span class="right"></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p492code52'); return false;">View Code</a> TEXT</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p49252"><td class="line_numbers"><pre>1
2
3
4
5
6
</pre></td><td class="code" id="p492code52"><pre class="text" style="font-family:monospace;"># auskommentiert: alte Netzwerkkarte!!!
# PCI device ...
#SUBSYSTEM==&quot;net&quot;, DRIVERS==&quot;?*&quot;, ATTRS{address}==&quot;xx:xx:xx:xx:xx:xx&quot;, NAME=&quot;eth0&quot;
&nbsp;
# PCI device ...
SUBSYSTEM==&quot;net&quot;, DRIVERS==&quot;?*&quot;, ATTRS{address}==&quot;xx:xx:xx:xx:xx:xx&quot;, NAME=&quot;eth0&quot;</pre></td></tr></table></div>

<p>Weitere Änderungen sind nicht notwendig und nach einem Neustart des Systems funktioniert alles wieder wie gewohnt.</p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://familie-ottenhaus.de/simon/blog/2009/03/debian-netzwerkkarte-austauschen-eth0-eth1/" target="_blank" class="liimagelink"><img src="http://familie-ottenhaus.de/simon/blog/wp-content/plugins/add-to-facebook-plugin/facebook_share_icon.gif" alt="Share on Facebook" title="Share on Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://familie-ottenhaus.de/simon/blog/2009/03/debian-netzwerkkarte-austauschen-eth0-eth1/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Debian: Umlaute auf der Konsole reparieren</title>
		<link>http://familie-ottenhaus.de/simon/blog/2009/03/debian-umlaute-auf-der-konsole-reparieren/</link>
		<comments>http://familie-ottenhaus.de/simon/blog/2009/03/debian-umlaute-auf-der-konsole-reparieren/#comments</comments>
		<pubDate>Mon, 02 Mar 2009 20:21:18 +0000</pubDate>
		<dc:creator>Simon Ottenhaus</dc:creator>
				<category><![CDATA[HowTo / Anleitung]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Debian]]></category>
		<category><![CDATA[Konsole]]></category>
		<category><![CDATA[Umlaute]]></category>

		<guid isPermaLink="false">http://familie-ottenhaus.de/simon/blog/?p=475</guid>
		<description><![CDATA[Auf einem frisch installierten deutschen Debian hat man immer ein Problem: Alle Umlaute werden auf der Konsole falsch dargestellt. Die Lösung ist dabei eigentlich ganz einfach: &#8220;dpkg-reconfigure locales&#8221; ausführen und im folgenden Dialog &#8220;de_DE@euro ISO-8859-15&#8243; auswähren. Im 2. Dialog dann &#8220;de_DE@euro&#8221; als Standard-Standorteinstellung wählen. Die Ausgabe sollte dann wie folgt aussehen: View Code TEXT1 2 [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://debian.org/" target="_blank" class="liimagelink"><img src="http://familie-ottenhaus.de/simon/blog/wp-content/uploads/2009/03/debian-openlogo-nd-50.png" alt="debian-openlogo-nd-50" title="debian-openlogo-nd-50" width="50" height="61" class="alignright size-full wp-image-486" /></a>Auf einem frisch installierten deutschen <a href="http://debian.org" target="_blank" class="liexternal">Debian</a> hat man immer ein Problem: Alle Umlaute werden auf der Konsole falsch dargestellt.</p>
<p>Die Lösung ist dabei eigentlich ganz einfach: &#8220;dpkg-reconfigure locales&#8221; ausführen und im folgenden Dialog &#8220;de_DE@euro ISO-8859-15&#8243; auswähren. Im 2. Dialog dann &#8220;de_DE@euro&#8221; als Standard-Standorteinstellung wählen. Die Ausgabe sollte dann wie folgt aussehen:</p>

<div class="wp_codebox_msgheader"><span class="right"></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p475code54'); return false;">View Code</a> TEXT</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table width="100%" ><tr id="p47554"><td class="line_numbers"><pre>1
2
3
4
5
6
</pre></td><td class="code" id="p475code54"><pre class="text" style="font-family:monospace;">serv:~# dpkg-reconfigure locales
Generating locales (this might take a while)...
  de_DE.UTF-8... done
  de_DE.ISO-8859-15@euro... done
Generation complete.
serv:~#</pre></td></tr></table></div>

<p>Nun werden alle Umlaute korrekt dargestellt.</p>
<p>Man fragt sich, warum &#8220;de_DE@euro ISO-8859-15&#8243; nicht als Standard gewählt ist&#8230;</p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://familie-ottenhaus.de/simon/blog/2009/03/debian-umlaute-auf-der-konsole-reparieren/" target="_blank" class="liimagelink"><img src="http://familie-ottenhaus.de/simon/blog/wp-content/plugins/add-to-facebook-plugin/facebook_share_icon.gif" alt="Share on Facebook" title="Share on Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://familie-ottenhaus.de/simon/blog/2009/03/debian-umlaute-auf-der-konsole-reparieren/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>HowTo: Programme unter Linux ausführen, auf Windows anzeigen</title>
		<link>http://familie-ottenhaus.de/simon/blog/2009/02/howto-programme-unter-linux-ausfuhren-auf-windows-anzeigen/</link>
		<comments>http://familie-ottenhaus.de/simon/blog/2009/02/howto-programme-unter-linux-ausfuhren-auf-windows-anzeigen/#comments</comments>
		<pubDate>Wed, 11 Feb 2009 13:55:43 +0000</pubDate>
		<dc:creator>Simon Ottenhaus</dc:creator>
				<category><![CDATA[Development]]></category>
		<category><![CDATA[HowTo / Anleitung]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Uni Stuttgart]]></category>
		<category><![CDATA[Informatikpraktikum]]></category>
		<category><![CDATA[Windows]]></category>
		<category><![CDATA[Xming]]></category>

		<guid isPermaLink="false">http://familie-ottenhaus.de/simon/blog/?p=268</guid>
		<description><![CDATA[Zutaten 1 Linux PC / Server 1 Windows PC Xming PuTTY Benötigte Zeit: 15 Minuten Benötigtes Fachwissen: gering &#8211; mittel, wenn auf dem Linux Server schon ein ssh-Server installiert ist. Anleitung (unter Windows) Installiere Xming Speichere die putty.exe irgendwo Starte Xming Starte putty Trage bei &#8220;Host Name&#8221; den Hostnamen oder die IP des Linux Servers [...]]]></description>
			<content:encoded><![CDATA[<p><strong>Zutaten</strong></p>
<ul>
<li>1 Linux PC / Server</li>
<li>1 Windows PC</li>
<li><a href="http://sourceforge.net/projects/xming" target="_blank" class="liexternal">Xming</a></li>
<li><a href="http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html" target="_blank" class="liexternal">PuTTY</a></li>
</ul>
<p><strong>Benötigte Zeit</strong>: 15 Minuten</p>
<p><strong>Benötigtes Fachwissen</strong>: gering &#8211; mittel, wenn auf dem Linux Server schon ein ssh-Server installiert ist.</p>
<p><strong>Anleitung (unter Windows)</strong></p>
<ol>
<li>Installiere Xming</li>
<li>Speichere die putty.exe irgendwo</li>
<li>Starte Xming</li>
<li>Starte putty</li>
<li>Trage bei &#8220;Host Name&#8221; den Hostnamen oder die IP des Linux Servers ein, klicke auf &#8220;Open&#8221;</li>
<li>Aktiviere unter Connection -> SSH -> X11 das &#8220;X11 forwarding&#8221;</li>
<li>Logge Dich mit Benutzernamen und Passwort ein</li>
<li>Starte ein Programm (z.B. xclock)</li>
</ol>
<p><strong>Nützliche Programme</strong></p>
<ul>
<li>kicker: &#8220;Linux-Taskleiste&#8221;</li>
<li>update-manager (als root): unter Debian grafische Oberfläche für &#8220;apt-get update&#8221; und &#8220;apt-get upgrade&#8221;</li>
<li>konqueror: Dateimanager</li>
</ul>
<p><strong>Hinweise</strong></p>
<ul>
<li>Tippe ein &#038; hinter das Programm, damit das laufende Programm die Kommandozeile nicht blockiert. (z.B statt &#8220;xclock&#8221; &#8220;xclock &#038;&#8221;)</li>
<li>Mit &#8220;exit&#8221; kann man sich ausloggen, aber nur, wenn keine Programme mehr laufen</li>
<li><em>tab</em> aktiviert die automatische Vervollständigung</li>
<li>Die Fehlermeldungen auf der Konsole sind meist unbedenklich</li>
</ul>
<p><strong>Tipp für Elektro- und Informationstechnik Studenten der Uni Stuttgart</strong><br />
Mit dieser Anleitung ist es möglich die Anmeldung für das Informatikpraktikum von zu Hause aus durchzuführen, wenn man im <a href="http://www.cip.ei.uni-stuttgart.de/" target="_blank" class="liexternal">CIP-Pool</a> schon einen Account hat</p>
<ol>
<li>Verwende in putty als Hostnamen &#8220;l1.cip.ei.uni-stuttgart.de&#8221;</li>
<li>Starte &#8220;InfPReg &#038;&#8221;, und schon bleibt dir ein Gang in den CIP-Pool erspart <img src='http://familie-ottenhaus.de/simon/blog/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </li>
</ol>
<p><strong>xclock unter Windows</strong><br />
<div id="attachment_278" class="wp-caption aligncenter" style="width: 190px"><a href="http://familie-ottenhaus.de/simon/blog/wp-content/uploads/2009/02/xclock.jpg" class="liimagelink"><img src="http://familie-ottenhaus.de/simon/blog/wp-content/uploads/2009/02/xclock.jpg" alt="xclock unter Windows" title="xclock" width="180" height="200" class="size-full wp-image-278" /></a><p class="wp-caption-text">xclock unter Windows</p></div></p>
<p class="facebook"><a href="http://www.facebook.com/share.php?u=http://familie-ottenhaus.de/simon/blog/2009/02/howto-programme-unter-linux-ausfuhren-auf-windows-anzeigen/" target="_blank" class="liimagelink"><img src="http://familie-ottenhaus.de/simon/blog/wp-content/plugins/add-to-facebook-plugin/facebook_share_icon.gif" alt="Share on Facebook" title="Share on Facebook" /></a></p>]]></content:encoded>
			<wfw:commentRss>http://familie-ottenhaus.de/simon/blog/2009/02/howto-programme-unter-linux-ausfuhren-auf-windows-anzeigen/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

