<?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>Bits, Bytes and my 5 cents &#187; Planet</title> <atom:link href="http://blog.encodingit.ch/tag/planet/feed/" rel="self" type="application/rss+xml" /><link>http://blog.encodingit.ch</link> <description>Life is just a technical game</description> <lastBuildDate>Fri, 27 Aug 2010 12:13:27 +0000</lastBuildDate> <language>en</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <generator>http://wordpress.org/?v=3.0.1</generator> <item><title>Nerdkäppchen &#8211; Rotkäppchen für kleine Informatiker / -innen</title><link>http://blog.encodingit.ch/2010/08/nerdkappchen-rotkappchen-fur-kleine-informatiker-innen/</link> <comments>http://blog.encodingit.ch/2010/08/nerdkappchen-rotkappchen-fur-kleine-informatiker-innen/#comments</comments> <pubDate>Fri, 27 Aug 2010 12:13:27 +0000</pubDate> <dc:creator>Patrick</dc:creator> <category><![CDATA[Allgemein]]></category> <category><![CDATA[Nerd]]></category> <category><![CDATA[Nerdkäppchen]]></category> <category><![CDATA[Planet]]></category><guid isPermaLink="false">http://blog.encodingit.ch/?p=1012</guid> <description><![CDATA[Es war einmal ein kleines, süßes Mädchen, das immer ein Käppchen aus rotem Samt trug. Aufgrund dieses Attributes erhielt es ein Assign unter dem symbolischen Namen Rotkäppchen.Eines Tages sprach die Mutter: Rotkäppchen, die Gesundheit deiner Großmutter hat einen Interupt bekommen. Wir müssen ein Pflegeprogramm entwickeln und zur Großmutter bringen, um das Problem zu lösen. Verirre dich jedoch nicht im Wald der alten Sprachen, sondern gehe nur strukturierte Wege. Nutze dabei immer eine Hochsprache der vierten Generation, dann geht es der Großmutter schnell wieder gut. Und achte darauf, dass dein Pflegeprogramm transaktioniert wird, damit es die Großmutter nicht noch mehr belastet.]]></description> <content:encoded><![CDATA[<p>Damit sich schon die ganz Kleinen an die IT gewöhnen können, dabei aber nicht auf Märchen verzichten müssen, gibt es hier das Nerd-Rotkäpchen <img src='http://blog.encodingit.ch/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /></p><blockquote><p>Es war einmal ein kleines, süßes Mädchen, das immer ein Käppchen aus rotem Samt trug. Aufgrund dieses Attributes erhielt es ein Assign unter dem symbolischen Namen Rotkäppchen.</p><p>Eines Tages sprach die Mutter: Rotkäppchen, die Gesundheit deiner Großmutter hat einen Interupt bekommen. Wir müssen ein Pflegeprogramm entwickeln und zur Großmutter bringen, um das Problem zu lösen. Verirre dich jedoch nicht im Wald der alten Sprachen, sondern gehe nur strukturierte Wege. Nutze dabei immer eine Hochsprache der vierten Generation, dann geht es der Großmutter schnell wieder gut. Und achte darauf, dass dein Pflegeprogramm transaktioniert wird, damit es die Großmutter nicht noch mehr belastet.</p><p>Da der Weg zur Großmutter renetrant war, traf Rotkäppchen den Wolf. Er tat sehr benutzerfreundlich, hatte im Backround jedoch schon einen Abbruch programmiert. Während Rotkäppchen einen Go To ins Blumenfeld machte, ging der Wolf im Direktzugriff zur Großmutter und vereinnahmte Sie unverzüglich durch einen Delete. Ohne zu zögern gab er sich den Anschein kompatibel zu sein und nahm die logische Sicht der Großmutter an. Dann legte er sich in Ihren Speicherplatz.</p><p>Kurz danach lokalisierte auch Rotkäppchen die Adresse der Großmutter und trat in den Speicherraum.</p><p><span id="more-1012"></span></p><p>Vor der Installation des Pflegeprogramms machte Rotkäppchen sicherheitshalber einen Verify und fragte:</p><p>Ei Großmutter, warum hast Du so große Augen?</p><p>Weil ich zufriedene Endbenutzer gesehen habe.</p><p>Ei, Großmutter warum hast Du so große Ohren?</p><p>Damit ich die Wünsche der User besser verstehen kann.</p><p>Ei, Großmutter warum hast du so ein entsetzlich großes Maul?</p><p>Damit ich dich besser Canceln kann!</p><p>Sprachs und nahm das arme Ding als Input. Nach ein Logoff begab sich der Wolf zur Ruhe, schlief ein und begann laut zu schnarchen.</p><p>Als der Jäger auf seinem Loop durch den Wald am Haus der Großmutter vorbeikam, sah er durch sein Window den Wolf im Bett liegen.</p><p>Finde ich dich hier du alter Sünder, sprach er, ich habe dich lange gesucht! Als Kenner der Szene analysierte er sofort, dass nach den Regeln der Booleschen Algebra die Großmutter nur im Bauch des Wolfes sein konnte. Er nahm sein Messer, teilte den Bauch des Wolfes in mehrere Sektoren und machte, welch Freude, die Großmutter und das Rotkäppchen wieder zu selbstständigen Modulen.</p><p>Als Input für den Bauch des Wolfes nahmen sie viele Kilobyte Steine und beendeten die Operation mit einem Close. Als der Wolf erwachte, verursachte ihm sein dermaßen aufgeblähter Hauptspeicher solche Schmerzen, dass er an einer Storage Violation jämmerlich zugrunde ging.</p><p>Da waren alle vergnügt.</p><p>Das Pflegeprogramm aktivierte die Großmutter. Rotkäppchen aber dachte: Du willst den Lebtag nie wieder einen Go To machen, sondern nur noch strukturierte Wege gehen, wie dirs die Mutter geboten hat.</p></blockquote><div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center shr-bookmarks-bg-shr"><ul class="socials"><li class="shr-delicious"> <a href="http://delicious.com/post?url=http://blog.encodingit.ch/2010/08/nerdkappchen-rotkappchen-fur-kleine-informatiker-innen/&amp;title=Nerdk%C3%A4ppchen+-+Rotk%C3%A4ppchen+f%C3%BCr+kleine+Informatiker+%2F+-innen" rel="" class="external" title="Empfehle diesen Artikel bei del.icio.us">Empfehle diesen Artikel bei del.icio.us</a></li><li class="shr-digg"> <a href="http://digg.com/submit?phase=2&amp;url=http://blog.encodingit.ch/2010/08/nerdkappchen-rotkappchen-fur-kleine-informatiker-innen/&amp;title=Nerdk%C3%A4ppchen+-+Rotk%C3%A4ppchen+f%C3%BCr+kleine+Informatiker+%2F+-innen" rel="" class="external" title="Digg this!">Digg this!</a></li><li class="shr-facebook"> <a href="http://www.facebook.com/share.php?v=4&amp;src=bm&amp;u=http://blog.encodingit.ch/2010/08/nerdkappchen-rotkappchen-fur-kleine-informatiker-innen/&amp;t=Nerdk%C3%A4ppchen+-+Rotk%C3%A4ppchen+f%C3%BCr+kleine+Informatiker+%2F+-innen" rel="" class="external" title="Empfehle diesen Artikel bei Facebook">Empfehle diesen Artikel bei Facebook</a></li><li class="shr-gmail"> <a href="https://mail.google.com/mail/?ui=2&amp;view=cm&amp;fs=1&amp;tf=1&amp;su=Nerdk%C3%A4ppchen+-+Rotk%C3%A4ppchen+f%C3%BCr+kleine+Informatiker+%2F+-innen&amp;body=Link: http://blog.encodingit.ch/2010/08/nerdkappchen-rotkappchen-fur-kleine-informatiker-innen/ (sent via shareaholic)%0D%0A%0D%0A----%0D%0A Es%20war%20einmal%20ein%20kleines%2C%20s%C3%BC%C3%9Fes%20M%C3%A4dchen%2C%20das%20immer%20ein%20K%C3%A4ppchen%20aus%20rotem%20Samt%20trug.%20Aufgrund%20dieses%20Attributes%20erhielt%20es%20ein%20Assign%20unter%20dem%20symbolischen%20Namen%20Rotk%C3%A4ppchen.%0D%0A%0D%0AEines%20Tages%20sprach%20die%20Mutter%3A%20Rotk%C3%A4ppchen%2C%20die%20Gesundheit%20deiner%20Gro%C3%9Fmutter%20hat%20einen%20Interupt%20bekommen.%20Wir%20m%C3%BCssen%20ein%20Pflegeprogramm%20entwickeln%20und%20zur%20Gro%C3%9Fmutter%20bringen%2C%20um%20das%20Problem%20zu%20l%C3%B6sen.%20Verirre%20dich%20jedoch%20nicht%20im%20Wald%20der%20alten%20Sprachen%2C%20sondern%20gehe%20nur%20strukturierte%20Wege.%20Nutze%20dabei%20immer%20eine%20Hochsprache%20der%20vierten%20Generation%2C%20dann%20geht%20es%20der%20Gro%C3%9Fmutter%20schnell%20wieder%20gut.%20Und%20achte%20darauf%2C%20dass%20dein%20Pflegeprogramm%20transaktioniert%20wird%2C%20damit%20es%20die%20Gro%C3%9Fmutter%20nicht%20noch%20mehr%20belastet." rel="" class="external" title="Email this via Gmail">Email this via Gmail</a></li><li class="shr-googlebookmarks"> <a href="http://www.google.com/bookmarks/mark?op=add&amp;bkmk=http://blog.encodingit.ch/2010/08/nerdkappchen-rotkappchen-fur-kleine-informatiker-innen/&amp;title=Nerdk%C3%A4ppchen+-+Rotk%C3%A4ppchen+f%C3%BCr+kleine+Informatiker+%2F+-innen" rel="" class="external" title="Füge hinzu zu Google Bookmarks">Füge hinzu zu Google Bookmarks</a></li><li class="shr-identica"> <a href="http://identi.ca//index.php?action=newnotice&amp;status_textarea=Reading:+&quot;Nerdk%C3%A4ppchen+-+Rotk%C3%A4ppchen+f%C3%BCr+kleine+Informatiker+%2F+-innen&quot;+-+from+http://tinyurl.com/2bn8s5p" rel="" class="external" title="Sende dies zu Identica">Sende dies zu Identica</a></li><li class="shr-linkedin"> <a href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http://blog.encodingit.ch/2010/08/nerdkappchen-rotkappchen-fur-kleine-informatiker-innen/&amp;title=Nerdk%C3%A4ppchen+-+Rotk%C3%A4ppchen+f%C3%BCr+kleine+Informatiker+%2F+-innen&amp;summary=Es%20war%20einmal%20ein%20kleines%2C%20s%C3%BC%C3%9Fes%20M%C3%A4dchen%2C%20das%20immer%20ein%20K%C3%A4ppchen%20aus%20rotem%20Samt%20trug.%20Aufgrund%20dieses%20Attributes%20erhielt%20es%20ein%20Assign%20unter%20dem%20symbolischen%20Namen%20Rotk%C3%A4ppchen.%0D%0A%0D%0AEines%20Tages%20sprach%20die%20Mutter%3A%20Rotk%C3%A4ppchen%2C%20die%20Gesundheit%20deiner%20Gro%C3%9Fmutter%20hat%20einen%20Interupt%20bekommen.%20Wir%20m%C3%BCssen%20ein%20Pflegeprogramm%20entwickeln%20und%20zur%20Gro%C3%9Fmutter%20bringen%2C%20um%20das%20Problem%20zu%20l%C3%B6sen.%20Verirre%20dich%20jedoch%20nicht%20im%20Wald%20der%20alten%20Sprachen%2C%20sondern%20gehe%20nur%20strukturierte%20Wege.%20Nutze%20dabei%20immer%20eine%20Hochsprache%20der%20vierten%20Generation%2C%20dann%20geht%20es%20der%20Gro%C3%9Fmutter%20schnell%20wieder%20gut.%20Und%20achte%20darauf%2C%20dass%20dein%20Pflegeprogramm%20transaktioniert%20wird%2C%20damit%20es%20die%20Gro%C3%9Fmutter%20nicht%20noch%20mehr%20belastet.&amp;source=Bits, Bytes and my 5 cents" rel="" class="external" title="Empfehle diesen Artikel bei LinkedIn">Empfehle diesen Artikel bei LinkedIn</a></li><li class="shr-technorati"> <a href="http://technorati.com/faves?add=http://blog.encodingit.ch/2010/08/nerdkappchen-rotkappchen-fur-kleine-informatiker-innen/" rel="" class="external" title="Empfehle diesen Artikel bei Technorati">Empfehle diesen Artikel bei Technorati</a></li><li class="shr-twitter"> <a href="http://twitter.com/home?status=Nerdk%C3%A4ppchen+-+Rotk%C3%A4ppchen+f%C3%BCr+kleine+Informatiker+%2F+-innen+-+http://tinyurl.com/2bn8s5p&amp;source=shareaholic" rel="" class="external" title="Twittere diesen Artikel!">Twittere diesen Artikel!</a></li></ul><div style="clear:both;"></div></div>]]></content:encoded> <wfw:commentRss>http://blog.encodingit.ch/2010/08/nerdkappchen-rotkappchen-fur-kleine-informatiker-innen/feed/</wfw:commentRss> <slash:comments>13</slash:comments> </item> <item><title>alea iacta est – Teil 3</title><link>http://blog.encodingit.ch/2010/08/alea-iacta-est-%e2%80%93-teil-3/</link> <comments>http://blog.encodingit.ch/2010/08/alea-iacta-est-%e2%80%93-teil-3/#comments</comments> <pubDate>Thu, 19 Aug 2010 16:43:24 +0000</pubDate> <dc:creator>Patrick</dc:creator> <category><![CDATA[Programmieren]]></category> <category><![CDATA[Wettbewerb]]></category> <category><![CDATA[Linux Magazin]]></category> <category><![CDATA[Planet]]></category><guid isPermaLink="false">http://blog.encodingit.ch/?p=999</guid> <description><![CDATA[Mein Bot ist fertig und hat bereits die ersten Testläufe absolviert. Begonnen habe ich auf dem offiziellen Server, doch dummerweise ist dieser mehr als nur langsam. So kann es da problemlos mal vorkommen, dass man 15 Minuten auf ein neues Spiel wartet.]]></description> <content:encoded><![CDATA[<blockquote><p>Fortsetzung zu <a href="http://blog.encodingit.ch/2010/08/alea-iacta-est/">alea iacta est – Teil 1</a> und <a href="http://blog.encodingit.ch/2010/08/alea-iacta-est-teil-2/">alea iacta est – Teil 2</a></p></blockquote><p>So nun geht es in die dritte Runde!<br /> Mein Bot ist fertig und hat bereits die ersten Testläufe absolviert. Begonnen habe ich auf dem offiziellen Server, doch dummerweise ist dieser mehr als nur langsam. So kann es da problemlos mal vorkommen, dass man 15 Minuten auf ein neues Spiel wartet.<br /> Doch glücklicherweise hat ein findiger Mitstreiter eine in Ruby implementierte Serverkopie geschrieben und veröffentlicht. Damit können problemlos 10 Spiele pro Minute gespielt werden und ist somit für Tests viel besser geeignet.<br /> Erreichbar ist dieser Server unter:</p><div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;">telnet littleforumpeople.com <span style="color: #000000;">3333</span></pre></td></tr></table></div><p>Mein Bot selbst hat sich eine bereits eine nicht allzuschlechte Statistik erarbeitet:</p><blockquote><p>Gewonnen: 2258<br /> Verloren: 1542<br /> Spiele: 3800</p></blockquote><p>Daraus ergibt sich eine Erfolgsquote von ganzen 59.4%, wodurch er problemlos mit den Besten mithalten kann <img src='http://blog.encodingit.ch/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p><p>Der Bot selbst ist relativ einfach aufgebaut:</p><div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;">#!/bin/bash</span>
<span style="color: #666666; font-style: italic;">#------------------------------------------------------------------------------</span>
<span style="color: #666666; font-style: italic;"># Author:	Patrick Schmid</span>
<span style="color: #666666; font-style: italic;"># Web:		http://blog.encodingit.ch</span>
<span style="color: #666666; font-style: italic;"># Version:	1.1</span>
<span style="color: #666666; font-style: italic;"># Changes:	- Grundversion (13.8.10)</span>
<span style="color: #666666; font-style: italic;">#		- Script umgestellt auf NC-Version (16.8.10)</span>
<span style="color: #666666; font-style: italic;">#------------------------------------------------------------------------------</span>
&nbsp;
<span style="color: #666666; font-style: italic;"># Umgebung festlegen</span>
<span style="color: #007800;">name</span>=<span style="color: #ff0000;">&quot;encodingit&quot;</span> <span style="color: #666666; font-style: italic;"># mein Name</span>
<span style="color: #007800;">active</span>=<span style="color: #000000;">0</span> <span style="color: #666666; font-style: italic;"># Nicht mein Zug</span>
<span style="color: #007800;">zaehler</span>=<span style="color: #000000;">0</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">function</span> play <span style="color: #7a0874; font-weight: bold;">&#123;</span> <span style="color: #666666; font-style: italic;"># Spielfunktion</span>
&nbsp;
	<span style="color: #666666; font-style: italic;"># Dies müsst ihr selbst machen ;)</span>
&nbsp;
<span style="color: #7a0874; font-weight: bold;">&#125;</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">while</span> <span style="color: #c20cb9; font-weight: bold;">read</span> <span style="color: #7a0874; font-weight: bold;">command</span> a1 a2 a3
<span style="color: #000000; font-weight: bold;">do</span>
	<span style="color: #000000; font-weight: bold;">case</span> <span style="color: #007800;">$command</span> <span style="color: #000000; font-weight: bold;">in</span>
		HELO<span style="color: #7a0874; font-weight: bold;">&#41;</span>
			<span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;AUTH <span style="color: #007800;">$name</span> Ich bin bereit!&quot;</span>
			<span style="color: #000000; font-weight: bold;">;;</span>
		TURN<span style="color: #7a0874; font-weight: bold;">&#41;</span>
			play <span style="color: #007800;">$a1</span> <span style="color: #007800;">$a2</span>
			<span style="color: #000000; font-weight: bold;">;;</span>
		THRW<span style="color: #7a0874; font-weight: bold;">&#41;</span>
			<span style="color: #000000; font-weight: bold;">if</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span> <span style="color: #ff0000;">&quot;<span style="color: #007800;">$active</span>&quot;</span> = <span style="color: #ff0000;">&quot;1&quot;</span> <span style="color: #7a0874; font-weight: bold;">&#93;</span> 
			<span style="color: #000000; font-weight: bold;">then</span>
				<span style="color: #000000; font-weight: bold;">if</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span> <span style="color: #ff0000;">&quot;<span style="color: #007800;">$a1</span>&quot;</span> = <span style="color: #ff0000;">&quot;6&quot;</span> <span style="color: #7a0874; font-weight: bold;">&#93;</span>
				<span style="color: #000000; font-weight: bold;">then</span>
					<span style="color: #007800;">active</span>=<span style="color: #000000;">0</span>
				<span style="color: #000000; font-weight: bold;">fi</span>
			<span style="color: #000000; font-weight: bold;">else</span>
				<span style="color: #000000; font-weight: bold;">if</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span> <span style="color: #ff0000;">&quot;<span style="color: #007800;">$a1</span>&quot;</span> = <span style="color: #ff0000;">&quot;6&quot;</span> <span style="color: #7a0874; font-weight: bold;">&#93;</span>
				<span style="color: #000000; font-weight: bold;">then</span>
					<span style="color: #007800;">active</span>=<span style="color: #000000;">1</span>
				<span style="color: #000000; font-weight: bold;">fi</span>
			<span style="color: #000000; font-weight: bold;">fi</span>
			<span style="color: #000000; font-weight: bold;">;;</span>
		WIN<span style="color: #000000; font-weight: bold;">|</span>DEF<span style="color: #7a0874; font-weight: bold;">&#41;</span>
			<span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;<span style="color: #007800;">$command</span>&quot;</span> <span style="color: #000000; font-weight: bold;">&gt;&gt;</span> log
			<span style="color: #7a0874; font-weight: bold;">exit</span> <span style="color: #000000;">0</span>
			<span style="color: #000000; font-weight: bold;">;;</span>
		<span style="color: #000000; font-weight: bold;">*</span><span style="color: #7a0874; font-weight: bold;">&#41;</span>
			<span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;AUTH <span style="color: #007800;">$name</span> Ich bin bereit!&quot;</span>
			<span style="color: #000000; font-weight: bold;">;;</span>
	<span style="color: #000000; font-weight: bold;">esac</span>
<span style="color: #000000; font-weight: bold;">done</span></pre></td></tr></table></div><p>Ich denke ihr werdet verstehen, dass ich die Play-Funktion erst nach dem Abgabetermin veröffentliche.<br /> Gestartet wird das Script via netcat oder ncat:</p><div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">sudo</span> ncat <span style="color: #660033;">-v</span> <span style="color: #660033;">-e</span> .<span style="color: #000000; font-weight: bold;">/</span>wettbewerb.sh littleforumpeople.com <span style="color: #000000;">3333</span></pre></td></tr></table></div><p>Ich wünsche euch viel Spass beim würfeln. <img src='http://blog.encodingit.ch/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p><div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center shr-bookmarks-bg-shr"><ul class="socials"><li class="shr-delicious"> <a href="http://delicious.com/post?url=http://blog.encodingit.ch/2010/08/alea-iacta-est-%e2%80%93-teil-3/&amp;title=alea+iacta+est+%E2%80%93+Teil+3" rel="" class="external" title="Empfehle diesen Artikel bei del.icio.us">Empfehle diesen Artikel bei del.icio.us</a></li><li class="shr-digg"> <a href="http://digg.com/submit?phase=2&amp;url=http://blog.encodingit.ch/2010/08/alea-iacta-est-%e2%80%93-teil-3/&amp;title=alea+iacta+est+%E2%80%93+Teil+3" rel="" class="external" title="Digg this!">Digg this!</a></li><li class="shr-facebook"> <a href="http://www.facebook.com/share.php?v=4&amp;src=bm&amp;u=http://blog.encodingit.ch/2010/08/alea-iacta-est-%e2%80%93-teil-3/&amp;t=alea+iacta+est+%E2%80%93+Teil+3" rel="" class="external" title="Empfehle diesen Artikel bei Facebook">Empfehle diesen Artikel bei Facebook</a></li><li class="shr-gmail"> <a href="https://mail.google.com/mail/?ui=2&amp;view=cm&amp;fs=1&amp;tf=1&amp;su=alea+iacta+est+%E2%80%93+Teil+3&amp;body=Link: http://blog.encodingit.ch/2010/08/alea-iacta-est-%e2%80%93-teil-3/ (sent via shareaholic)%0D%0A%0D%0A----%0D%0A Mein%20Bot%20ist%20fertig%20und%20hat%20bereits%20die%20ersten%20Testl%C3%A4ufe%20absolviert.%20Begonnen%20habe%20ich%20auf%20dem%20offiziellen%20Server%2C%20doch%20dummerweise%20ist%20dieser%20mehr%20als%20nur%20langsam.%20So%20kann%20es%20da%20problemlos%20mal%20vorkommen%2C%20dass%20man%2015%20Minuten%20auf%20ein%20neues%20Spiel%20wartet." rel="" class="external" title="Email this via Gmail">Email this via Gmail</a></li><li class="shr-googlebookmarks"> <a href="http://www.google.com/bookmarks/mark?op=add&amp;bkmk=http://blog.encodingit.ch/2010/08/alea-iacta-est-%e2%80%93-teil-3/&amp;title=alea+iacta+est+%E2%80%93+Teil+3" rel="" class="external" title="Füge hinzu zu Google Bookmarks">Füge hinzu zu Google Bookmarks</a></li><li class="shr-identica"> <a href="http://identi.ca//index.php?action=newnotice&amp;status_textarea=Reading:+&quot;alea+iacta+est+%E2%80%93+Teil+3&quot;+-+from+http://tinyurl.com/3xtj955" rel="" class="external" title="Sende dies zu Identica">Sende dies zu Identica</a></li><li class="shr-linkedin"> <a href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http://blog.encodingit.ch/2010/08/alea-iacta-est-%e2%80%93-teil-3/&amp;title=alea+iacta+est+%E2%80%93+Teil+3&amp;summary=Mein%20Bot%20ist%20fertig%20und%20hat%20bereits%20die%20ersten%20Testl%C3%A4ufe%20absolviert.%20Begonnen%20habe%20ich%20auf%20dem%20offiziellen%20Server%2C%20doch%20dummerweise%20ist%20dieser%20mehr%20als%20nur%20langsam.%20So%20kann%20es%20da%20problemlos%20mal%20vorkommen%2C%20dass%20man%2015%20Minuten%20auf%20ein%20neues%20Spiel%20wartet.&amp;source=Bits, Bytes and my 5 cents" rel="" class="external" title="Empfehle diesen Artikel bei LinkedIn">Empfehle diesen Artikel bei LinkedIn</a></li><li class="shr-technorati"> <a href="http://technorati.com/faves?add=http://blog.encodingit.ch/2010/08/alea-iacta-est-%e2%80%93-teil-3/" rel="" class="external" title="Empfehle diesen Artikel bei Technorati">Empfehle diesen Artikel bei Technorati</a></li><li class="shr-twitter"> <a href="http://twitter.com/home?status=alea+iacta+est+%E2%80%93+Teil+3+-+http://tinyurl.com/3xtj955&amp;source=shareaholic" rel="" class="external" title="Twittere diesen Artikel!">Twittere diesen Artikel!</a></li></ul><div style="clear:both;"></div></div>]]></content:encoded> <wfw:commentRss>http://blog.encodingit.ch/2010/08/alea-iacta-est-%e2%80%93-teil-3/feed/</wfw:commentRss> <slash:comments>30</slash:comments> </item> <item><title>alea iacta est &#8211; Teil 2</title><link>http://blog.encodingit.ch/2010/08/alea-iacta-est-teil-2/</link> <comments>http://blog.encodingit.ch/2010/08/alea-iacta-est-teil-2/#comments</comments> <pubDate>Tue, 17 Aug 2010 15:13:09 +0000</pubDate> <dc:creator>Patrick</dc:creator> <category><![CDATA[Programmieren]]></category> <category><![CDATA[Wettbewerb]]></category> <category><![CDATA[Linux Magazin]]></category> <category><![CDATA[Planet]]></category> <category><![CDATA[Ubuntu]]></category><guid isPermaLink="false">http://blog.encodingit.ch/?p=987</guid> <description><![CDATA[Mein Bot ist nun soweit geschrieben und mit Intelligenz gefüllt. Was ihm nun noch fehlt, sind ein paar Tests, danach werde ich (zumindest Auszüge daraus) auch hier veröffentlichen.Doch noch ein paar Worte zu meinem Vorgehen:
Eigentlich wollte ich die Kommunikation von Script zu Server via dem virtuellen Device /dev/tcp abwickeln. Schon relativ früh zeigte sicher aber; das ist so nicht lösbar!
Das Problem dabei ist, dass sobald irgendetwas auf den Device umgeleitet wird, wird die TCP-Verbindung neu aufgebaut und nach dem Senden auch gleich wieder getrennt. Geplant ist aber, dass die Verbindung nur einmal hergestellt und dann natürlich auch gehalten wird...]]></description> <content:encoded><![CDATA[<blockquote><p><em>Fortsetzung zu <a href="http://blog.encodingit.ch/2010/08/alea-iacta-est/">alea iacta est &#8211; Teil 1</a></em></p></blockquote><p>Mein Bot ist nun soweit geschrieben und mit Intelligenz gefüllt. Was ihm nun noch fehlt, sind ein paar Tests, danach werde ich (zumindest Auszüge daraus) auch hier veröffentlichen.</p><p>Doch noch ein paar Worte zu meinem Vorgehen:<br /> Eigentlich wollte ich die Kommunikation von Script zu Server via dem virtuellen Device /dev/tcp abwickeln. Schon relativ früh zeigte sicher aber; das ist so nicht lösbar!<br /> Das Problem dabei ist, dass sobald irgendetwas auf den Device umgeleitet wird, wird die TCP-Verbindung neu aufgebaut und nach dem Senden auch gleich wieder getrennt. Geplant ist aber, dass die Verbindung nur einmal hergestellt und dann natürlich auch gehalten wird&#8230;</p><p>Somit musste ich kurzerhand umdisponieren und bin auf eine andere Möglichkeit mittels Netcat ausgewichen. Dabei wird, wie <a href="http://blog.encodingit.ch/2010/08/netcat-ist-nicht-gleich-netcat/">hier</a> schon zu lesen war, mittels der Option -e nach dem Verbinden ein Script gestartet. Die Kommunikation verläuft dabei über die Standard-Ein- und -Ausgabe. Jegliche Teile der Verbindung werden von Netcat geregelt, wodurch ich mich voll und ganz auf die KI konzentrieren kann.</p><p>Doch nun zum Wichtigsten: <strong>Die Strategie!</strong><br /> Ich habe in ein paar kurzen, manuellen Spielen ein paar Taktiken ausprobiert. Zur Zeit umgesetzt sind:</p><blockquote><ol><li> Liege ich im Rückstand, muss ich risikofreudiger werden.</li><li> Liege ich weit vorne, kann ich sicherer spielen.</li><li> Speichert mein Gegner selten, kann ich sicherer spielen</li></ol></blockquote><p>Doch irgendwie reicht mir das noch nicht aus für meinen Bot.<br /> Wenn also jemand noch weitere Ideen hat, dann immer her damit <img src='http://blog.encodingit.ch/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> Jeder Input ist willkommen!</p><div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center shr-bookmarks-bg-shr"><ul class="socials"><li class="shr-delicious"> <a href="http://delicious.com/post?url=http://blog.encodingit.ch/2010/08/alea-iacta-est-teil-2/&amp;title=alea+iacta+est+-+Teil+2" rel="" class="external" title="Empfehle diesen Artikel bei del.icio.us">Empfehle diesen Artikel bei del.icio.us</a></li><li class="shr-digg"> <a href="http://digg.com/submit?phase=2&amp;url=http://blog.encodingit.ch/2010/08/alea-iacta-est-teil-2/&amp;title=alea+iacta+est+-+Teil+2" rel="" class="external" title="Digg this!">Digg this!</a></li><li class="shr-facebook"> <a href="http://www.facebook.com/share.php?v=4&amp;src=bm&amp;u=http://blog.encodingit.ch/2010/08/alea-iacta-est-teil-2/&amp;t=alea+iacta+est+-+Teil+2" rel="" class="external" title="Empfehle diesen Artikel bei Facebook">Empfehle diesen Artikel bei Facebook</a></li><li class="shr-gmail"> <a href="https://mail.google.com/mail/?ui=2&amp;view=cm&amp;fs=1&amp;tf=1&amp;su=alea+iacta+est+-+Teil+2&amp;body=Link: http://blog.encodingit.ch/2010/08/alea-iacta-est-teil-2/ (sent via shareaholic)%0D%0A%0D%0A----%0D%0A Mein%20Bot%20ist%20nun%20soweit%20geschrieben%20und%20mit%20Intelligenz%20gef%C3%BCllt.%20Was%20ihm%20nun%20noch%20fehlt%2C%20sind%20ein%20paar%20Tests%2C%20danach%20werde%20ich%20%28zumindest%20Ausz%C3%BCge%20daraus%29%20auch%20hier%20ver%C3%B6ffentlichen.%0D%0A%0D%0ADoch%20noch%20ein%20paar%20Worte%20zu%20meinem%20Vorgehen%3A%0D%0AEigentlich%20wollte%20ich%20die%20Kommunikation%20von%20Script%20zu%20Server%20via%20dem%20virtuellen%20Device%20%2Fdev%2Ftcp%20abwickeln.%20Schon%20relativ%20fr%C3%BCh%20zeigte%20sicher%20aber%3B%20das%20ist%20so%20nicht%20l%C3%B6sbar%21%0D%0ADas%20Problem%20dabei%20ist%2C%20dass%20sobald%20irgendetwas%20auf%20den%20Device%20umgeleitet%20wird%2C%20wird%20die%20TCP-Verbindung%20neu%20aufgebaut%20und%20nach%20dem%20Senden%20auch%20gleich%20wieder%20getrennt.%20Geplant%20ist%20aber%2C%20dass%20die%20Verbindung%20nur%20einmal%20hergestellt%20und%20dann%20nat%C3%BCrlich%20auch%20gehalten%20wird..." rel="" class="external" title="Email this via Gmail">Email this via Gmail</a></li><li class="shr-googlebookmarks"> <a href="http://www.google.com/bookmarks/mark?op=add&amp;bkmk=http://blog.encodingit.ch/2010/08/alea-iacta-est-teil-2/&amp;title=alea+iacta+est+-+Teil+2" rel="" class="external" title="Füge hinzu zu Google Bookmarks">Füge hinzu zu Google Bookmarks</a></li><li class="shr-identica"> <a href="http://identi.ca//index.php?action=newnotice&amp;status_textarea=Reading:+&quot;alea+iacta+est+-+Teil+2&quot;+-+from+http://tinyurl.com/2dkw3lv" rel="" class="external" title="Sende dies zu Identica">Sende dies zu Identica</a></li><li class="shr-linkedin"> <a href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http://blog.encodingit.ch/2010/08/alea-iacta-est-teil-2/&amp;title=alea+iacta+est+-+Teil+2&amp;summary=Mein%20Bot%20ist%20nun%20soweit%20geschrieben%20und%20mit%20Intelligenz%20gef%C3%BCllt.%20Was%20ihm%20nun%20noch%20fehlt%2C%20sind%20ein%20paar%20Tests%2C%20danach%20werde%20ich%20%28zumindest%20Ausz%C3%BCge%20daraus%29%20auch%20hier%20ver%C3%B6ffentlichen.%0D%0A%0D%0ADoch%20noch%20ein%20paar%20Worte%20zu%20meinem%20Vorgehen%3A%0D%0AEigentlich%20wollte%20ich%20die%20Kommunikation%20von%20Script%20zu%20Server%20via%20dem%20virtuellen%20Device%20%2Fdev%2Ftcp%20abwickeln.%20Schon%20relativ%20fr%C3%BCh%20zeigte%20sicher%20aber%3B%20das%20ist%20so%20nicht%20l%C3%B6sbar%21%0D%0ADas%20Problem%20dabei%20ist%2C%20dass%20sobald%20irgendetwas%20auf%20den%20Device%20umgeleitet%20wird%2C%20wird%20die%20TCP-Verbindung%20neu%20aufgebaut%20und%20nach%20dem%20Senden%20auch%20gleich%20wieder%20getrennt.%20Geplant%20ist%20aber%2C%20dass%20die%20Verbindung%20nur%20einmal%20hergestellt%20und%20dann%20nat%C3%BCrlich%20auch%20gehalten%20wird...&amp;source=Bits, Bytes and my 5 cents" rel="" class="external" title="Empfehle diesen Artikel bei LinkedIn">Empfehle diesen Artikel bei LinkedIn</a></li><li class="shr-technorati"> <a href="http://technorati.com/faves?add=http://blog.encodingit.ch/2010/08/alea-iacta-est-teil-2/" rel="" class="external" title="Empfehle diesen Artikel bei Technorati">Empfehle diesen Artikel bei Technorati</a></li><li class="shr-twitter"> <a href="http://twitter.com/home?status=alea+iacta+est+-+Teil+2+-+http://tinyurl.com/2dkw3lv&amp;source=shareaholic" rel="" class="external" title="Twittere diesen Artikel!">Twittere diesen Artikel!</a></li></ul><div style="clear:both;"></div></div>]]></content:encoded> <wfw:commentRss>http://blog.encodingit.ch/2010/08/alea-iacta-est-teil-2/feed/</wfw:commentRss> <slash:comments>7</slash:comments> </item> <item><title>netcat ist nicht gleich netcat</title><link>http://blog.encodingit.ch/2010/08/netcat-ist-nicht-gleich-netcat/</link> <comments>http://blog.encodingit.ch/2010/08/netcat-ist-nicht-gleich-netcat/#comments</comments> <pubDate>Tue, 17 Aug 2010 08:08:54 +0000</pubDate> <dc:creator>Patrick</dc:creator> <category><![CDATA[Software]]></category> <category><![CDATA[GNU]]></category> <category><![CDATA[netcat]]></category> <category><![CDATA[Planet]]></category><guid isPermaLink="false">http://blog.encodingit.ch/?p=975</guid> <description><![CDATA[Wie ich soeben feststellen musste ist netcat nicht unbedingt gleich netcat. So unterscheidet man zwischen GNU Netcat und OpenBSD Netcat]]></description> <content:encoded><![CDATA[<p>Wie ich soeben feststellen musste ist netcat nicht unbedingt gleich netcat. So unterscheidet man zwischen GNU Netcat und OpenBSD Netcat.</p><p>Doch wenn man das nicht weiss, kommt es wie folgt heraus:</p><blockquote><p>Ich wusste, dass sich mittels der Option -e in Netcat nach erfolgreichem Verbinden sogleich ein Script ausführen lässt.<br /> Doch auf mir unerklärliche Art und Weise wollte mein netcat aus den Paketquellen einfach keine Option -e kennen!<br /> Beim googeln dann bin ich über GNU Netcat gestossen. Jedoch war dies nur Version 0.7.1.1 und ich hatte aus den Paketquellen Version 1.84 installiert. Dass es nicht das selbe Tool ist, war mir zu der Zeit immer noch nicht bewusst, wodurch ich zuerst weitersuchte.<br /> Die Lösung fand ich schlussendlich, ja man glaubt es kaum, auf Wikipedia <img src='http://blog.encodingit.ch/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> Da wurde ich erstmals damit konfrontiert, dass netcat eben doch nicht unbedingt gleich netcat ist.</p></blockquote><p>Wer also ein ähnliches Problem hat, der soll doch einfach mal GNU Netcat ausprobieren:</p><p><a href='http://blog.encodingit.ch/wp-content/uploads/2010/08/netcat_0.7.1-2_i386.deb'><img src="http://blog.encodingit.ch/wp-content/uploads/2010/08/deb.png" alt="" title="deb" width="62" height="50" class="alignnone size-full wp-image-982" /></a> <a href='http://blog.encodingit.ch/wp-content/uploads/2010/08/netcat-0.7.1-1.i386.rpm'><img src="http://blog.encodingit.ch/wp-content/uploads/2010/08/rpm.png" alt="" title="rpm" width="58" height="46" class="alignnone size-full wp-image-983" /></a></p><div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center shr-bookmarks-bg-shr"><ul class="socials"><li class="shr-delicious"> <a href="http://delicious.com/post?url=http://blog.encodingit.ch/2010/08/netcat-ist-nicht-gleich-netcat/&amp;title=netcat+ist+nicht+gleich+netcat" rel="" class="external" title="Empfehle diesen Artikel bei del.icio.us">Empfehle diesen Artikel bei del.icio.us</a></li><li class="shr-digg"> <a href="http://digg.com/submit?phase=2&amp;url=http://blog.encodingit.ch/2010/08/netcat-ist-nicht-gleich-netcat/&amp;title=netcat+ist+nicht+gleich+netcat" rel="" class="external" title="Digg this!">Digg this!</a></li><li class="shr-facebook"> <a href="http://www.facebook.com/share.php?v=4&amp;src=bm&amp;u=http://blog.encodingit.ch/2010/08/netcat-ist-nicht-gleich-netcat/&amp;t=netcat+ist+nicht+gleich+netcat" rel="" class="external" title="Empfehle diesen Artikel bei Facebook">Empfehle diesen Artikel bei Facebook</a></li><li class="shr-gmail"> <a href="https://mail.google.com/mail/?ui=2&amp;view=cm&amp;fs=1&amp;tf=1&amp;su=netcat+ist+nicht+gleich+netcat&amp;body=Link: http://blog.encodingit.ch/2010/08/netcat-ist-nicht-gleich-netcat/ (sent via shareaholic)%0D%0A%0D%0A----%0D%0A Wie%20ich%20soeben%20feststellen%20musste%20ist%20netcat%20nicht%20unbedingt%20gleich%20netcat.%20So%20unterscheidet%20man%20zwischen%20GNU%20Netcat%20und%20OpenBSD%20Netcat" rel="" class="external" title="Email this via Gmail">Email this via Gmail</a></li><li class="shr-googlebookmarks"> <a href="http://www.google.com/bookmarks/mark?op=add&amp;bkmk=http://blog.encodingit.ch/2010/08/netcat-ist-nicht-gleich-netcat/&amp;title=netcat+ist+nicht+gleich+netcat" rel="" class="external" title="Füge hinzu zu Google Bookmarks">Füge hinzu zu Google Bookmarks</a></li><li class="shr-identica"> <a href="http://identi.ca//index.php?action=newnotice&amp;status_textarea=Reading:+&quot;netcat+ist+nicht+gleich+netcat&quot;+-+from+http://tinyurl.com/3xraapf" rel="" class="external" title="Sende dies zu Identica">Sende dies zu Identica</a></li><li class="shr-linkedin"> <a href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http://blog.encodingit.ch/2010/08/netcat-ist-nicht-gleich-netcat/&amp;title=netcat+ist+nicht+gleich+netcat&amp;summary=Wie%20ich%20soeben%20feststellen%20musste%20ist%20netcat%20nicht%20unbedingt%20gleich%20netcat.%20So%20unterscheidet%20man%20zwischen%20GNU%20Netcat%20und%20OpenBSD%20Netcat&amp;source=Bits, Bytes and my 5 cents" rel="" class="external" title="Empfehle diesen Artikel bei LinkedIn">Empfehle diesen Artikel bei LinkedIn</a></li><li class="shr-technorati"> <a href="http://technorati.com/faves?add=http://blog.encodingit.ch/2010/08/netcat-ist-nicht-gleich-netcat/" rel="" class="external" title="Empfehle diesen Artikel bei Technorati">Empfehle diesen Artikel bei Technorati</a></li><li class="shr-twitter"> <a href="http://twitter.com/home?status=netcat+ist+nicht+gleich+netcat+-+http://tinyurl.com/3xraapf&amp;source=shareaholic" rel="" class="external" title="Twittere diesen Artikel!">Twittere diesen Artikel!</a></li></ul><div style="clear:both;"></div></div>]]></content:encoded> <wfw:commentRss>http://blog.encodingit.ch/2010/08/netcat-ist-nicht-gleich-netcat/feed/</wfw:commentRss> <slash:comments>3</slash:comments> </item> <item><title>alea iacta est</title><link>http://blog.encodingit.ch/2010/08/alea-iacta-est/</link> <comments>http://blog.encodingit.ch/2010/08/alea-iacta-est/#comments</comments> <pubDate>Mon, 16 Aug 2010 06:36:09 +0000</pubDate> <dc:creator>Patrick</dc:creator> <category><![CDATA[Programmieren]]></category> <category><![CDATA[Wettbewerb]]></category> <category><![CDATA[Linux Magazin]]></category> <category><![CDATA[Planet]]></category> <category><![CDATA[Ubuntu]]></category><guid isPermaLink="false">http://blog.encodingit.ch/?p=966</guid> <description><![CDATA[Auch dieses Jahr wieder macht das Linux-Magazin einen Programmierwettbewerb. Diesmal ist ein binärer Spieler gefordert, welcher sich in einem Würfelduell mit anderen Mitstreitern messen kann.]]></description> <content:encoded><![CDATA[<p>Auch dieses Jahr wieder macht das <a href="http://www.linux-magazin.de/">Linux-Magazin</a> einen <a href="http://www.linux-magazin.de/Heft-Abo/Ausgaben/2010/09/Reiz-des-Mitmachens">Programmierwettbewerb</a>. Diesmal ist ein binärer Spieler gefordert, welcher sich in einem Würfelduell mit anderen Mitstreitern messen kann.</p><p>Die Vorgaben dabei sind ganz einfach; der Bot muss schlussendlich mit einem Make-File gestartet werden können und auf einem Ubuntu 10.04 Rechner laufen. Insofern kann die Programmiersprache also fast frei gewählt werden. Der Spielablauf wird dabei vom Server wettbewerb.linux-magazin.de über ein für menschen-lesbares TCP-Protokoll gesteuert.</p><p>Das ganze Spiel an sich ist relativ einfach gehalten. Ein Bot kann solange Würfeln, wie er keine 6 wirft oder das Spiel nicht speichert. Alle Punkte werden dabei immer zusammengezählt.<br /> Sobald jedoch eine 6 geworfen wird, so werden alle Punkte bis zum letzten Save wieder abgezogen, und der Spielzug ist beendet.<br /> Es gilt also, seinem Bot soviel Intelligenz einzuhauchen, damit dieser das optimale Mittelmass zwischen &#8220;Roll&#8221; (würfeln) und &#8220;Save&#8221; (speichern) findet.</p><p>Meinen Bot habe ich in Bash-Script begonnen und bin bislang damit ganz gut gefahren, da es sich über ein virtuelles Device ohne viel Programmieraufwand problemlos via TCP mit einem beliebigen Server kommunizieren lässt:</p><div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;alea iacta est&quot;</span> <span style="color: #000000; font-weight: bold;">&gt;</span> <span style="color: #000000; font-weight: bold;">/</span>dev<span style="color: #000000; font-weight: bold;">/</span>tcp<span style="color: #000000; font-weight: bold;">/</span><span style="color: #007800;">$server</span><span style="color: #000000; font-weight: bold;">/</span><span style="color: #007800;">$port</span></pre></td></tr></table></div><p>Wer es noch einfacher will, und sich überhaupt nicht um jegliche Kommunikation zwischen Server und Bot bemühen will, der kann sein Script via Netcat starten und alle Kommandos über die Standard-Ein- und Ausgabe verwalten:</p><div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;">nc <span style="color: #660033;">-e</span> bot.sh wettbewerb.linux-magazin.de <span style="color: #000000;">3333</span></pre></td></tr></table></div><p>Auch wer auf etwas komplexeres Zurückgreifen will, der findet auf der <a href="http://wettbewerb.linux-magazin.de/index.php/Hauptseite">offiziellen Webseite</a> bereits Beispiele in <acronym title="Pre-Hypertext Processing">PHP</acronym> und Ruby, welche man nur noch mit Intelligenz füllen muss.</p><p>Ein weiteres sehr gutes <acronym title="Pre-Hypertext Processing">PHP</acronym>-Beispiel gibt es auch auf <a href="http://blog.oncode.info/2010/08/10/ein-programmierwettbewerb-vom-linux-magazin/">blog.oncode.info</a>, dank welcher Seite ich überhaupt auf den Wettbewerb aufmerksam geworden bin.</p><p>Noch bis zum 12. September ist das Spiel für jedermann und jedefrau geöffnet! Mögen die Würfel entscheiden <img src='http://blog.encodingit.ch/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /></p><div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center shr-bookmarks-bg-shr"><ul class="socials"><li class="shr-delicious"> <a href="http://delicious.com/post?url=http://blog.encodingit.ch/2010/08/alea-iacta-est/&amp;title=alea+iacta+est" rel="" class="external" title="Empfehle diesen Artikel bei del.icio.us">Empfehle diesen Artikel bei del.icio.us</a></li><li class="shr-digg"> <a href="http://digg.com/submit?phase=2&amp;url=http://blog.encodingit.ch/2010/08/alea-iacta-est/&amp;title=alea+iacta+est" rel="" class="external" title="Digg this!">Digg this!</a></li><li class="shr-facebook"> <a href="http://www.facebook.com/share.php?v=4&amp;src=bm&amp;u=http://blog.encodingit.ch/2010/08/alea-iacta-est/&amp;t=alea+iacta+est" rel="" class="external" title="Empfehle diesen Artikel bei Facebook">Empfehle diesen Artikel bei Facebook</a></li><li class="shr-gmail"> <a href="https://mail.google.com/mail/?ui=2&amp;view=cm&amp;fs=1&amp;tf=1&amp;su=alea+iacta+est&amp;body=Link: http://blog.encodingit.ch/2010/08/alea-iacta-est/ (sent via shareaholic)%0D%0A%0D%0A----%0D%0A Auch%20dieses%20Jahr%20wieder%20macht%20das%20Linux-Magazin%20einen%20Programmierwettbewerb.%20Diesmal%20ist%20ein%20bin%C3%A4rer%20Spieler%20gefordert%2C%20welcher%20sich%20in%20einem%20W%C3%BCrfelduell%20mit%20anderen%20Mitstreitern%20messen%20kann." rel="" class="external" title="Email this via Gmail">Email this via Gmail</a></li><li class="shr-googlebookmarks"> <a href="http://www.google.com/bookmarks/mark?op=add&amp;bkmk=http://blog.encodingit.ch/2010/08/alea-iacta-est/&amp;title=alea+iacta+est" rel="" class="external" title="Füge hinzu zu Google Bookmarks">Füge hinzu zu Google Bookmarks</a></li><li class="shr-identica"> <a href="http://identi.ca//index.php?action=newnotice&amp;status_textarea=Reading:+&quot;alea+iacta+est&quot;+-+from+http://tinyurl.com/26wubw9" rel="" class="external" title="Sende dies zu Identica">Sende dies zu Identica</a></li><li class="shr-linkedin"> <a href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http://blog.encodingit.ch/2010/08/alea-iacta-est/&amp;title=alea+iacta+est&amp;summary=Auch%20dieses%20Jahr%20wieder%20macht%20das%20Linux-Magazin%20einen%20Programmierwettbewerb.%20Diesmal%20ist%20ein%20bin%C3%A4rer%20Spieler%20gefordert%2C%20welcher%20sich%20in%20einem%20W%C3%BCrfelduell%20mit%20anderen%20Mitstreitern%20messen%20kann.&amp;source=Bits, Bytes and my 5 cents" rel="" class="external" title="Empfehle diesen Artikel bei LinkedIn">Empfehle diesen Artikel bei LinkedIn</a></li><li class="shr-technorati"> <a href="http://technorati.com/faves?add=http://blog.encodingit.ch/2010/08/alea-iacta-est/" rel="" class="external" title="Empfehle diesen Artikel bei Technorati">Empfehle diesen Artikel bei Technorati</a></li><li class="shr-twitter"> <a href="http://twitter.com/home?status=alea+iacta+est+-+http://tinyurl.com/26wubw9&amp;source=shareaholic" rel="" class="external" title="Twittere diesen Artikel!">Twittere diesen Artikel!</a></li></ul><div style="clear:both;"></div></div>]]></content:encoded> <wfw:commentRss>http://blog.encodingit.ch/2010/08/alea-iacta-est/feed/</wfw:commentRss> <slash:comments>6</slash:comments> </item> <item><title>OpenVZ unter Debian</title><link>http://blog.encodingit.ch/2010/07/openvz-unter-debian/</link> <comments>http://blog.encodingit.ch/2010/07/openvz-unter-debian/#comments</comments> <pubDate>Tue, 06 Jul 2010 08:20:17 +0000</pubDate> <dc:creator>Patrick</dc:creator> <category><![CDATA[Linux]]></category> <category><![CDATA[Server]]></category> <category><![CDATA[OpenVZ]]></category> <category><![CDATA[Planet]]></category> <category><![CDATA[Virtualisierung]]></category><guid isPermaLink="false">http://blog.encodingit.ch/?p=945</guid> <description><![CDATA[OpenVZ ist eine Virtualisierungstechnik für Linux. Damit lassen sich mehrere so genannte Virtual Private Server einrichten, die alle den Kernel und die Hardware des Host-Systems nutzen.]]></description> <content:encoded><![CDATA[<p>Neben verbreiteten Virtualisierungslösungen wie ESX, Xen und KVM existiert noch eine weitere, weniger verbreitete Methode:</p><blockquote><p>OpenVZ ist eine Virtualisierungstechnik für Linux. Damit lassen sich mehrere so genannte Virtual Private Server einrichten, die alle den Kernel und die Hardware des Host-Systems nutzen. Das Konzept ähnelt also anderen Techniken wie FreeBSD Jails und Solaris Zones. Auch als Gastsystem unterstützt OpenVZ ausschließlich Linux. Durch eine detaillierte Ressourcenaufteilung soll es möglich sein, sehr viele virtuelle Maschinen parallel auf einem physischen Computer zu betreiben, die alle streng voneinander isoliert sind. [<a href="http://www.golem.de/specials/openvz/">golem.de</a>]</p></blockquote><p>Installieren kann man OpenVZ auf viele Linux basierten Betriebssysteme direkt aus den Paketquellen; im folgenden habe ich als Beispiel ein Debian (32bit) auf meinem DL380 G3 verwendet.</p><p>Zuerst müssen die passenden Kernel und Pakete installiert werden:</p><div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">apt-get</span> <span style="color: #c20cb9; font-weight: bold;">install</span> linux-image-openvz-<span style="color: #000000;">686</span> vzctl vzquota cstream</pre></td></tr></table></div><p>Leider ist das Tool vzdump nicht mehr in den Paketquellen enthalten, ist aber essentiell um eine virtuelle Maschine im laufenden Betrieb zu sichern:</p><div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #7a0874; font-weight: bold;">cd</span> <span style="color: #000000; font-weight: bold;">/</span>tmp<span style="color: #000000; font-weight: bold;">/</span>
<span style="color: #c20cb9; font-weight: bold;">wget</span> http:<span style="color: #000000; font-weight: bold;">//</span>download.openvz.org<span style="color: #000000; font-weight: bold;">/</span>contrib<span style="color: #000000; font-weight: bold;">/</span>utils<span style="color: #000000; font-weight: bold;">/</span>vzdump<span style="color: #000000; font-weight: bold;">/</span>vzdump_1.2-<span style="color: #000000;">4</span>_all.deb
<span style="color: #c20cb9; font-weight: bold;">dpkg</span> <span style="color: #660033;">-i</span> vzdump_1.2-<span style="color: #000000;">4</span>_all.deb</pre></td></tr></table></div><p>Danach müssen in der Datei <em>/etc/sysctl.conf</em> folgende Punkte ergänzt werden:</p><div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;">net.ipv4.conf.default.proxy_arp = <span style="color: #000000;">0</span>
net.ipv4.conf.default.forwarding=<span style="color: #000000;">1</span>
kernel.sysrq = <span style="color: #000000;">1</span>
net.ipv4.conf.default.send_redirects = <span style="color: #000000;">1</span>
net.ipv4.conf.eth0.proxy_arp=<span style="color: #000000;">1</span></pre></td></tr></table></div><p>Nach dieser Anpassung darf nicht vergessen worden, die Konfiguration neu einzulesen:</p><div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;">sysctl <span style="color: #660033;">-p</span></pre></td></tr></table></div><p>Nun muss der Server neugestartet werden, damit der OpenVZ-Kernel auch verwendet wird.</p><p>Nun ist OpenVZ soweit eingerichtet und die ersten &#8220;virtuellen&#8221; Maschinen können eingerichtet werden.<br /> Hier zeigt sich aber auch schon die erste Schwäche von dieser Virtualisierungslösung, denn entgegen anderen Methoden lassen sich mit OpenVZ nur genau das Betriebssystem mit dem Kernel für Guests verwenden, welcher auch der Host benutzt.</p><p>Nun da alles eingerichtet ist, können die ersten Templates heruntergeladen werden.<br /> Dazu müssen zuerst die Paketquellen angepasst werden:</p><div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;deb http://download.openvz.org/debian-systs lenny openvz&quot;</span> <span style="color: #000000; font-weight: bold;">&gt;&gt;</span> <span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>apt<span style="color: #000000; font-weight: bold;">/</span>sources.list</pre></td></tr></table></div><p>Das der neue Eintrag problemlos funktioniert, muss noch der passende Schlüssel nachgeladen werden:</p><div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">wget</span> <span style="color: #660033;">-q</span> http:<span style="color: #000000; font-weight: bold;">//</span>download.openvz.org<span style="color: #000000; font-weight: bold;">/</span>debian-systs<span style="color: #000000; font-weight: bold;">/</span>dso_archiv_signing_key.asc <span style="color: #660033;">-O-</span> <span style="color: #000000; font-weight: bold;">|</span> <span style="color: #c20cb9; font-weight: bold;">apt-key</span> add -
<span style="color: #c20cb9; font-weight: bold;">apt-get</span> update</pre></td></tr></table></div><p>Nun sollten auch die passenden Templates in den Paketquellen gelistet werden:</p><div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">apt-cache</span> search openvz <span style="color: #000000; font-weight: bold;">|</span> <span style="color: #c20cb9; font-weight: bold;">grep</span> vzctl</pre></td></tr></table></div><p>Damit ein Guest mit diesem Template eingerichtet werden kann, muss er vorher natürlich noch heruntergeladen und installiert werden:</p><div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">apt-get</span> <span style="color: #c20cb9; font-weight: bold;">install</span> vzctl-ostmpl-debian-<span style="color: #000000;">4.0</span>-i386-minimal vzctl-ostmpl-debian-<span style="color: #000000;">5.0</span>-i386-minimal</pre></td></tr></table></div><p>Nun kann auch schon mit dem Einrichten des ersten Guests begonnen werden.</p><p>Die dazu zur Verfügung stehenden Templates sind unter <em>/var/lib/vz/template/cache/</em> gelistet.<br /> Hier zeigt sich nun ein Vorteil von OpenVZ gegenüber den alternativen Virtualisierungslösungen. Das einrichten eines neuen Guest dauert hier gerade mal ein paar Sekunden, während bei ESX oder Xen normalerweise stets die gesamte Installation durchlaufen werden muss. Das eintippen eines einfachen Befehls reicht schon aus:</p><div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;">vzctl create <span style="color: #000000;">1</span> <span style="color: #660033;">--ostemplate</span> debian-<span style="color: #000000;">5.0</span>-i386-minimal <span style="color: #660033;">--config</span> vps.basic</pre></td></tr></table></div><p>Erhält man danach eine Ausgabe, wie die folgende, so war die Aktion erfolgreich:</p><div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;">Creating VE private area <span style="color: #7a0874; font-weight: bold;">&#40;</span>debian-<span style="color: #000000;">5.0</span>-i386-minimal<span style="color: #7a0874; font-weight: bold;">&#41;</span>
Performing postcreate actions
VE private area was created</pre></td></tr></table></div><p>Nun hat man die Möglichkeit direkt Einstellungen für einen Guest vorzunehmen:</p><div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;">#Beim Booten aufstarten</span>
vzctl <span style="color: #000000; font-weight: bold;">set</span> <span style="color: #000000;">1</span> <span style="color: #660033;">--onboot</span> <span style="color: #c20cb9; font-weight: bold;">yes</span> <span style="color: #660033;">--save</span>
&nbsp;
<span style="color: #666666; font-style: italic;">#Hostname setzen</span>
vzctl <span style="color: #000000; font-weight: bold;">set</span> <span style="color: #000000;">1</span> <span style="color: #660033;">--hostname</span> tux1.linux.ch <span style="color: #660033;">--save</span>
&nbsp;
<span style="color: #666666; font-style: italic;">#IP Adresse setzen</span>
vzctl <span style="color: #000000; font-weight: bold;">set</span> <span style="color: #000000;">1</span> <span style="color: #660033;">--ipadd</span> 192.168.0.1 <span style="color: #660033;">--save</span>
&nbsp;
<span style="color: #666666; font-style: italic;">#DNS Server setzen</span>
vzctl <span style="color: #000000; font-weight: bold;">set</span> <span style="color: #000000;">1</span> <span style="color: #660033;">--nameserver</span> 145.253.2.75 <span style="color: #660033;">--nameserver</span> 213.191.92.86 <span style="color: #660033;">--save</span></pre></td></tr></table></div><p>Alle nun gemachten Einstellungen werden in der Datei <em>/etc/vz/conf/1.conf</em> gespeichert.</p><p>Nun kann der Guest das erste mal gestartet und gleichzeitig auch noch das Rootpasswort angepasst werden:</p><div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;">vzctl start <span style="color: #000000;">1</span>
vzctl <span style="color: #7a0874; font-weight: bold;">exec</span> <span style="color: #000000;">1</span> <span style="color: #c20cb9; font-weight: bold;">passwd</span></pre></td></tr></table></div><p>Will man den Guest direkt auf der Kommandozeile ansprechen, so kann dies entweder per <acronym title="Secure Shell">SSH</acronym> oder direkt über den Host passieren. Dazu kann folgendes Kommando verwendet werden:</p><div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;">vzctl enter <span style="color: #000000;">1</span></pre></td></tr></table></div><p>Eine List mit allen virtuellen Maschinen erhält man mit dem Befehl <em>vzlist</em>:</p><div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;">vzlist <span style="color: #660033;">-a</span></pre></td></tr></table></div><p>Weitere Informationen bekommt man durch die Manpages:</p><div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">man</span> vzctl</pre></td></tr></table></div><p>oder dem offiziellen <a href="http://wiki.openvz.org/Main_Page">Wiki</a></p><p>Was ich bisher noch nicht finden konnte ist eine Möglichkeit mit <em>vzctl set 1 &#8230;</em> den Guest zu einer dynamischen <acronym title="Internet Protocol">IP</acronym> Adresse zu zwingen.</p><p>Insgesamt ist es eine gute Möglichkeit um schnell und unkompliziert zu virtualisieren, jedoch wer viele Ansprüche hat und nicht immer das selbe Betriebssystem / die selbe Distribution verwendet, wird nie seinen Spass an OpenVZ haben.</p><p>Natürlich lässt sich alles problemlos auch auf andere Distributionen und Architekturen portieren, wobei die Namen, besonders für die Templates, angepasst werden müssen.</p><div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center shr-bookmarks-bg-shr"><ul class="socials"><li class="shr-delicious"> <a href="http://delicious.com/post?url=http://blog.encodingit.ch/2010/07/openvz-unter-debian/&amp;title=OpenVZ+unter+Debian" rel="" class="external" title="Empfehle diesen Artikel bei del.icio.us">Empfehle diesen Artikel bei del.icio.us</a></li><li class="shr-digg"> <a href="http://digg.com/submit?phase=2&amp;url=http://blog.encodingit.ch/2010/07/openvz-unter-debian/&amp;title=OpenVZ+unter+Debian" rel="" class="external" title="Digg this!">Digg this!</a></li><li class="shr-facebook"> <a href="http://www.facebook.com/share.php?v=4&amp;src=bm&amp;u=http://blog.encodingit.ch/2010/07/openvz-unter-debian/&amp;t=OpenVZ+unter+Debian" rel="" class="external" title="Empfehle diesen Artikel bei Facebook">Empfehle diesen Artikel bei Facebook</a></li><li class="shr-gmail"> <a href="https://mail.google.com/mail/?ui=2&amp;view=cm&amp;fs=1&amp;tf=1&amp;su=OpenVZ+unter+Debian&amp;body=Link: http://blog.encodingit.ch/2010/07/openvz-unter-debian/ (sent via shareaholic)%0D%0A%0D%0A----%0D%0A OpenVZ%20ist%20eine%20Virtualisierungstechnik%20f%C3%BCr%20Linux.%20Damit%20lassen%20sich%20mehrere%20so%20genannte%20Virtual%20Private%20Server%20einrichten%2C%20die%20alle%20den%20Kernel%20und%20die%20Hardware%20des%20Host-Systems%20nutzen." rel="" class="external" title="Email this via Gmail">Email this via Gmail</a></li><li class="shr-googlebookmarks"> <a href="http://www.google.com/bookmarks/mark?op=add&amp;bkmk=http://blog.encodingit.ch/2010/07/openvz-unter-debian/&amp;title=OpenVZ+unter+Debian" rel="" class="external" title="Füge hinzu zu Google Bookmarks">Füge hinzu zu Google Bookmarks</a></li><li class="shr-identica"> <a href="http://identi.ca//index.php?action=newnotice&amp;status_textarea=Reading:+&quot;OpenVZ+unter+Debian&quot;+-+from+http://tinyurl.com/388xylj" rel="" class="external" title="Sende dies zu Identica">Sende dies zu Identica</a></li><li class="shr-linkedin"> <a href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http://blog.encodingit.ch/2010/07/openvz-unter-debian/&amp;title=OpenVZ+unter+Debian&amp;summary=OpenVZ%20ist%20eine%20Virtualisierungstechnik%20f%C3%BCr%20Linux.%20Damit%20lassen%20sich%20mehrere%20so%20genannte%20Virtual%20Private%20Server%20einrichten%2C%20die%20alle%20den%20Kernel%20und%20die%20Hardware%20des%20Host-Systems%20nutzen.&amp;source=Bits, Bytes and my 5 cents" rel="" class="external" title="Empfehle diesen Artikel bei LinkedIn">Empfehle diesen Artikel bei LinkedIn</a></li><li class="shr-technorati"> <a href="http://technorati.com/faves?add=http://blog.encodingit.ch/2010/07/openvz-unter-debian/" rel="" class="external" title="Empfehle diesen Artikel bei Technorati">Empfehle diesen Artikel bei Technorati</a></li><li class="shr-twitter"> <a href="http://twitter.com/home?status=OpenVZ+unter+Debian+-+http://tinyurl.com/388xylj&amp;source=shareaholic" rel="" class="external" title="Twittere diesen Artikel!">Twittere diesen Artikel!</a></li></ul><div style="clear:both;"></div></div>]]></content:encoded> <wfw:commentRss>http://blog.encodingit.ch/2010/07/openvz-unter-debian/feed/</wfw:commentRss> <slash:comments>1</slash:comments> </item> <item><title>Happy Birthday!!</title><link>http://blog.encodingit.ch/2010/06/happy-birthday/</link> <comments>http://blog.encodingit.ch/2010/06/happy-birthday/#comments</comments> <pubDate>Fri, 18 Jun 2010 22:54:42 +0000</pubDate> <dc:creator>Patrick</dc:creator> <category><![CDATA[Allgemein]]></category> <category><![CDATA[Bloging]]></category> <category><![CDATA[Planet]]></category> <category><![CDATA[WWW]]></category><guid isPermaLink="false">http://blog.encodingit.ch/?p=915</guid> <description><![CDATA[Dieses Blog habe ich vor zwei Jahren gegründet, um über tägliche Probleme und Situationen aus meine täglichen Leben als Informatiker zu berichten. Zu Beginn waren meine Beiträge noch hauptsächlich über Windows und haben sich dann immer mehr und mehr zu den Themen Linux und OpenSource entwickelt. Und besonders seid ich auch auf der Arbeit dem Linux / Unix-Team unterstellt bin, werden Windows-Probleme immer rarer, was ich aber nicht als besonders schlimm befinde]]></description> <content:encoded><![CDATA[<p>Ja es ist wieder soweit &#8211; ein weiteres Jahr ist vorbei. Bits, Bytes and my 5 cents wird schon ganze 2 Jahre alt!!<br /> In der Zwischenzeit und nach den 2 Jahren haben sich nicht nur viele Artikel eingefunden, es kamen auch immer mehr Leser und dadurch auch die eine oder andere interessante Diskussionen dazu <img src='http://blog.encodingit.ch/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p><p><img class="alignnone size-full wp-image-916" title="statistik" src="http://blog.encodingit.ch/wp-content/uploads/2010/06/statistik.png" alt="" width="522" height="237" /></p><p>Dieses Blog habe ich vor zwei Jahren gegründet, um über tägliche Probleme und Situationen aus meine täglichen Leben als Informatiker zu berichten. Zu Beginn waren meine Beiträge noch hauptsächlich über Windows und haben sich dann immer mehr und mehr zu den Themen Linux und OpenSource entwickelt. Und besonders seid ich auch auf der Arbeit dem Linux / Unix-Team unterstellt bin, werden Windows-Probleme immer rarer, was ich aber nicht als besonders schlimm befinde <img src='http://blog.encodingit.ch/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p><p><img class="alignnone size-full wp-image-920" title="ubuntu_tux" src="http://blog.encodingit.ch/wp-content/uploads/2010/06/ubuntu_tux.jpg" alt="" width="240" height="240" /></p><p>Nun bleibt mir nicht mehr viel übrig als euch für eure Treue und Unterstützung zu danken und mich auf viele weitere erfolgreiche Jahre mit euch zu freuen!!</p><div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center shr-bookmarks-bg-shr"><ul class="socials"><li class="shr-delicious"> <a href="http://delicious.com/post?url=http://blog.encodingit.ch/2010/06/happy-birthday/&amp;title=Happy+Birthday%21%21" rel="" class="external" title="Empfehle diesen Artikel bei del.icio.us">Empfehle diesen Artikel bei del.icio.us</a></li><li class="shr-digg"> <a href="http://digg.com/submit?phase=2&amp;url=http://blog.encodingit.ch/2010/06/happy-birthday/&amp;title=Happy+Birthday%21%21" rel="" class="external" title="Digg this!">Digg this!</a></li><li class="shr-facebook"> <a href="http://www.facebook.com/share.php?v=4&amp;src=bm&amp;u=http://blog.encodingit.ch/2010/06/happy-birthday/&amp;t=Happy+Birthday%21%21" rel="" class="external" title="Empfehle diesen Artikel bei Facebook">Empfehle diesen Artikel bei Facebook</a></li><li class="shr-gmail"> <a href="https://mail.google.com/mail/?ui=2&amp;view=cm&amp;fs=1&amp;tf=1&amp;su=Happy+Birthday%21%21&amp;body=Link: http://blog.encodingit.ch/2010/06/happy-birthday/ (sent via shareaholic)%0D%0A%0D%0A----%0D%0A Dieses%20Blog%20habe%20ich%20vor%20zwei%20Jahren%20gegr%C3%BCndet%2C%20um%20%C3%BCber%20t%C3%A4gliche%20Probleme%20und%20Situationen%20aus%20meine%20t%C3%A4glichen%20Leben%20als%20Informatiker%20zu%20berichten.%20Zu%20Beginn%20waren%20meine%20Beitr%C3%A4ge%20noch%20haupts%C3%A4chlich%20%C3%BCber%20Windows%20und%20haben%20sich%20dann%20immer%20mehr%20und%20mehr%20zu%20den%20Themen%20Linux%20und%20OpenSource%20entwickelt.%20Und%20besonders%20seid%20ich%20auch%20auf%20der%20Arbeit%20dem%20Linux%20%2F%20Unix-Team%20unterstellt%20bin%2C%20werden%20Windows-Probleme%20immer%20rarer%2C%20was%20ich%20aber%20nicht%20als%20besonders%20schlimm%20befinde" rel="" class="external" title="Email this via Gmail">Email this via Gmail</a></li><li class="shr-googlebookmarks"> <a href="http://www.google.com/bookmarks/mark?op=add&amp;bkmk=http://blog.encodingit.ch/2010/06/happy-birthday/&amp;title=Happy+Birthday%21%21" rel="" class="external" title="Füge hinzu zu Google Bookmarks">Füge hinzu zu Google Bookmarks</a></li><li class="shr-identica"> <a href="http://identi.ca//index.php?action=newnotice&amp;status_textarea=Reading:+&quot;Happy+Birthday%21%21&quot;+-+from+http://tinyurl.com/379krph" rel="" class="external" title="Sende dies zu Identica">Sende dies zu Identica</a></li><li class="shr-linkedin"> <a href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http://blog.encodingit.ch/2010/06/happy-birthday/&amp;title=Happy+Birthday%21%21&amp;summary=Dieses%20Blog%20habe%20ich%20vor%20zwei%20Jahren%20gegr%C3%BCndet%2C%20um%20%C3%BCber%20t%C3%A4gliche%20Probleme%20und%20Situationen%20aus%20meine%20t%C3%A4glichen%20Leben%20als%20Informatiker%20zu%20berichten.%20Zu%20Beginn%20waren%20meine%20Beitr%C3%A4ge%20noch%20haupts%C3%A4chlich%20%C3%BCber%20Windows%20und%20haben%20sich%20dann%20immer%20mehr%20und%20mehr%20zu%20den%20Themen%20Linux%20und%20OpenSource%20entwickelt.%20Und%20besonders%20seid%20ich%20auch%20auf%20der%20Arbeit%20dem%20Linux%20%2F%20Unix-Team%20unterstellt%20bin%2C%20werden%20Windows-Probleme%20immer%20rarer%2C%20was%20ich%20aber%20nicht%20als%20besonders%20schlimm%20befinde&amp;source=Bits, Bytes and my 5 cents" rel="" class="external" title="Empfehle diesen Artikel bei LinkedIn">Empfehle diesen Artikel bei LinkedIn</a></li><li class="shr-technorati"> <a href="http://technorati.com/faves?add=http://blog.encodingit.ch/2010/06/happy-birthday/" rel="" class="external" title="Empfehle diesen Artikel bei Technorati">Empfehle diesen Artikel bei Technorati</a></li><li class="shr-twitter"> <a href="http://twitter.com/home?status=Happy+Birthday%21%21+-+http://tinyurl.com/379krph&amp;source=shareaholic" rel="" class="external" title="Twittere diesen Artikel!">Twittere diesen Artikel!</a></li></ul><div style="clear:both;"></div></div>]]></content:encoded> <wfw:commentRss>http://blog.encodingit.ch/2010/06/happy-birthday/feed/</wfw:commentRss> <slash:comments>3</slash:comments> </item> <item><title>Welches ist deine Distribution?</title><link>http://blog.encodingit.ch/2010/06/welches-ist-deine-distribution/</link> <comments>http://blog.encodingit.ch/2010/06/welches-ist-deine-distribution/#comments</comments> <pubDate>Mon, 07 Jun 2010 18:10:41 +0000</pubDate> <dc:creator>Patrick</dc:creator> <category><![CDATA[Linux]]></category> <category><![CDATA[Planet]]></category> <category><![CDATA[Ubuntu]]></category><guid isPermaLink="false">http://blog.encodingit.ch/?p=910</guid> <description><![CDATA[Es gibt ja mittlerweile unzählige verschiedene Linux-Distributionen und jeden Tag werden es wieder ein paar mehr.
Ich selbst habe mich im privaten Umfeld für den Desktop Ubuntu verschrieben, da Updates immer sehr schnell verteilt werden und die Repositories immer sehr aktuell sind.]]></description> <content:encoded><![CDATA[<p>Es gibt ja mittlerweile unzählige verschiedene Linux-Distributionen und jeden Tag werden es wieder ein paar mehr.<br /> Ich selbst habe mich im privaten Umfeld für den Desktop Ubuntu verschrieben, da Updates immer sehr schnell verteilt werden und die Repositories immer sehr aktuell sind.<br /> Für Server schwöre ich mittlerweile auf Debian, selten auch Ubuntu Server. Die Repositories von Debian sind zwar nicht immer ganz so aktuell wie die von Ubuntu, jedoch ist das auf einem Server ja überhaupt kein Problem.<br /> Auf der Arbeit benutze ich schon seit beginn Fedora, da all unsere Workstations auf Red Hat basieren. Und für alle RPM-Pakete eine Virtuelle Maschine zu starten, war ich zu faul <img src='http://blog.encodingit.ch/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /><br /> Und auf meinem Netbook lief Easy Peasy, aktuell teste ich aber Meego auf Herz und Niere.</p><p>Nun das ist so meine Geschichte. <img src='http://blog.encodingit.ch/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p><p>Und nun zu euch!<br /> Folgend kannst du die Distributionen auswählen, die du regelmässig verwendest. Interessant wäre auch noch, wieso ausgerechnet diese?</p><p><img src="http://blog.encodingit.ch/wp-content/uploads/2010/06/Bildschirmfoto.png" alt="" title="Bildschirmfoto" width="426" height="391" class="alignnone size-full wp-image-941" /></p><p>Sollte ich eine vergessen habe, sorry <img src='http://blog.encodingit.ch/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /></p><div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center shr-bookmarks-bg-shr"><ul class="socials"><li class="shr-delicious"> <a href="http://delicious.com/post?url=http://blog.encodingit.ch/2010/06/welches-ist-deine-distribution/&amp;title=Welches+ist+deine+Distribution%3F" rel="" class="external" title="Empfehle diesen Artikel bei del.icio.us">Empfehle diesen Artikel bei del.icio.us</a></li><li class="shr-digg"> <a href="http://digg.com/submit?phase=2&amp;url=http://blog.encodingit.ch/2010/06/welches-ist-deine-distribution/&amp;title=Welches+ist+deine+Distribution%3F" rel="" class="external" title="Digg this!">Digg this!</a></li><li class="shr-facebook"> <a href="http://www.facebook.com/share.php?v=4&amp;src=bm&amp;u=http://blog.encodingit.ch/2010/06/welches-ist-deine-distribution/&amp;t=Welches+ist+deine+Distribution%3F" rel="" class="external" title="Empfehle diesen Artikel bei Facebook">Empfehle diesen Artikel bei Facebook</a></li><li class="shr-gmail"> <a href="https://mail.google.com/mail/?ui=2&amp;view=cm&amp;fs=1&amp;tf=1&amp;su=Welches+ist+deine+Distribution%3F&amp;body=Link: http://blog.encodingit.ch/2010/06/welches-ist-deine-distribution/ (sent via shareaholic)%0D%0A%0D%0A----%0D%0A Es%20gibt%20ja%20mittlerweile%20unz%C3%A4hlige%20verschiedene%20Linux-Distributionen%20und%20jeden%20Tag%20werden%20es%20wieder%20ein%20paar%20mehr.%20%0D%0AIch%20selbst%20habe%20mich%20im%20privaten%20Umfeld%20f%C3%BCr%20den%20Desktop%20Ubuntu%20verschrieben%2C%20da%20Updates%20immer%20sehr%20schnell%20verteilt%20werden%20und%20die%20Repositories%20immer%20sehr%20aktuell%20sind." rel="" class="external" title="Email this via Gmail">Email this via Gmail</a></li><li class="shr-googlebookmarks"> <a href="http://www.google.com/bookmarks/mark?op=add&amp;bkmk=http://blog.encodingit.ch/2010/06/welches-ist-deine-distribution/&amp;title=Welches+ist+deine+Distribution%3F" rel="" class="external" title="Füge hinzu zu Google Bookmarks">Füge hinzu zu Google Bookmarks</a></li><li class="shr-identica"> <a href="http://identi.ca//index.php?action=newnotice&amp;status_textarea=Reading:+&quot;Welches+ist+deine+Distribution%3F&quot;+-+from+http://tinyurl.com/2uye69e" rel="" class="external" title="Sende dies zu Identica">Sende dies zu Identica</a></li><li class="shr-linkedin"> <a href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http://blog.encodingit.ch/2010/06/welches-ist-deine-distribution/&amp;title=Welches+ist+deine+Distribution%3F&amp;summary=Es%20gibt%20ja%20mittlerweile%20unz%C3%A4hlige%20verschiedene%20Linux-Distributionen%20und%20jeden%20Tag%20werden%20es%20wieder%20ein%20paar%20mehr.%20%0D%0AIch%20selbst%20habe%20mich%20im%20privaten%20Umfeld%20f%C3%BCr%20den%20Desktop%20Ubuntu%20verschrieben%2C%20da%20Updates%20immer%20sehr%20schnell%20verteilt%20werden%20und%20die%20Repositories%20immer%20sehr%20aktuell%20sind.&amp;source=Bits, Bytes and my 5 cents" rel="" class="external" title="Empfehle diesen Artikel bei LinkedIn">Empfehle diesen Artikel bei LinkedIn</a></li><li class="shr-technorati"> <a href="http://technorati.com/faves?add=http://blog.encodingit.ch/2010/06/welches-ist-deine-distribution/" rel="" class="external" title="Empfehle diesen Artikel bei Technorati">Empfehle diesen Artikel bei Technorati</a></li><li class="shr-twitter"> <a href="http://twitter.com/home?status=Welches+ist+deine+Distribution%3F+-+http://tinyurl.com/2uye69e&amp;source=shareaholic" rel="" class="external" title="Twittere diesen Artikel!">Twittere diesen Artikel!</a></li></ul><div style="clear:both;"></div></div>]]></content:encoded> <wfw:commentRss>http://blog.encodingit.ch/2010/06/welches-ist-deine-distribution/feed/</wfw:commentRss> <slash:comments>41</slash:comments> </item> <item><title>Upgrade auf Ubuntu 10.04</title><link>http://blog.encodingit.ch/2010/06/upgrade-auf-ubuntu-10-04/</link> <comments>http://blog.encodingit.ch/2010/06/upgrade-auf-ubuntu-10-04/#comments</comments> <pubDate>Thu, 03 Jun 2010 09:19:05 +0000</pubDate> <dc:creator>Patrick</dc:creator> <category><![CDATA[10.04]]></category> <category><![CDATA[Planet]]></category> <category><![CDATA[Ubuntu]]></category><guid isPermaLink="false">http://blog.encodingit.ch/?p=899</guid> <description><![CDATA[Die neue Version von Ubuntu 10.04 ist nun schon eine Zeit lang veröffentlicht worden, viele werden wohl auch schon mit der neuen Version arbeiten.]]></description> <content:encoded><![CDATA[<p>Die neue Version von Ubuntu 10.04 ist nun schon eine Zeit lang veröffentlicht worden, viele werden wohl auch schon mit der neuen Version arbeiten.<br /> Auch ich habe kurz nach der Veröffentlichung ein Upgrade gewagt, leider jedoch ohne Erfolg.<br /> Leider hat Compiz und der Nvidia-Treiber ein Problem mit der neuen Ubuntu-Version, weshalb ich dann mein System auch neu aufsetzen musste. Und ab da funktioniert auch alles wieder <img src='http://blog.encodingit.ch/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p><p>Nun ist aber schon einige Zeit vergangen und es ist mal an der Zeit um eine Bilanz zu ziehen.<br /> Wie sieht es denn bei euch so aus?</p><p><img src="http://blog.encodingit.ch/wp-content/uploads/2010/06/ubuntu_10.04.jpg" alt="" title="ubuntu_10.04" width="611" height="286" class="alignnone size-full wp-image-908" /></p><p>Und interessant wäre auch noch wieso?</p><div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center shr-bookmarks-bg-shr"><ul class="socials"><li class="shr-delicious"> <a href="http://delicious.com/post?url=http://blog.encodingit.ch/2010/06/upgrade-auf-ubuntu-10-04/&amp;title=Upgrade+auf+Ubuntu+10.04" rel="" class="external" title="Empfehle diesen Artikel bei del.icio.us">Empfehle diesen Artikel bei del.icio.us</a></li><li class="shr-digg"> <a href="http://digg.com/submit?phase=2&amp;url=http://blog.encodingit.ch/2010/06/upgrade-auf-ubuntu-10-04/&amp;title=Upgrade+auf+Ubuntu+10.04" rel="" class="external" title="Digg this!">Digg this!</a></li><li class="shr-facebook"> <a href="http://www.facebook.com/share.php?v=4&amp;src=bm&amp;u=http://blog.encodingit.ch/2010/06/upgrade-auf-ubuntu-10-04/&amp;t=Upgrade+auf+Ubuntu+10.04" rel="" class="external" title="Empfehle diesen Artikel bei Facebook">Empfehle diesen Artikel bei Facebook</a></li><li class="shr-gmail"> <a href="https://mail.google.com/mail/?ui=2&amp;view=cm&amp;fs=1&amp;tf=1&amp;su=Upgrade+auf+Ubuntu+10.04&amp;body=Link: http://blog.encodingit.ch/2010/06/upgrade-auf-ubuntu-10-04/ (sent via shareaholic)%0D%0A%0D%0A----%0D%0A Die%20neue%20Version%20von%20Ubuntu%2010.04%20ist%20nun%20schon%20eine%20Zeit%20lang%20ver%C3%B6ffentlicht%20worden%2C%20viele%20werden%20wohl%20auch%20schon%20mit%20der%20neuen%20Version%20arbeiten." rel="" class="external" title="Email this via Gmail">Email this via Gmail</a></li><li class="shr-googlebookmarks"> <a href="http://www.google.com/bookmarks/mark?op=add&amp;bkmk=http://blog.encodingit.ch/2010/06/upgrade-auf-ubuntu-10-04/&amp;title=Upgrade+auf+Ubuntu+10.04" rel="" class="external" title="Füge hinzu zu Google Bookmarks">Füge hinzu zu Google Bookmarks</a></li><li class="shr-identica"> <a href="http://identi.ca//index.php?action=newnotice&amp;status_textarea=Reading:+&quot;Upgrade+auf+Ubuntu+10.04&quot;+-+from+http://tinyurl.com/35kc6q4" rel="" class="external" title="Sende dies zu Identica">Sende dies zu Identica</a></li><li class="shr-linkedin"> <a href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http://blog.encodingit.ch/2010/06/upgrade-auf-ubuntu-10-04/&amp;title=Upgrade+auf+Ubuntu+10.04&amp;summary=Die%20neue%20Version%20von%20Ubuntu%2010.04%20ist%20nun%20schon%20eine%20Zeit%20lang%20ver%C3%B6ffentlicht%20worden%2C%20viele%20werden%20wohl%20auch%20schon%20mit%20der%20neuen%20Version%20arbeiten.&amp;source=Bits, Bytes and my 5 cents" rel="" class="external" title="Empfehle diesen Artikel bei LinkedIn">Empfehle diesen Artikel bei LinkedIn</a></li><li class="shr-technorati"> <a href="http://technorati.com/faves?add=http://blog.encodingit.ch/2010/06/upgrade-auf-ubuntu-10-04/" rel="" class="external" title="Empfehle diesen Artikel bei Technorati">Empfehle diesen Artikel bei Technorati</a></li><li class="shr-twitter"> <a href="http://twitter.com/home?status=Upgrade+auf+Ubuntu+10.04+-+http://tinyurl.com/35kc6q4&amp;source=shareaholic" rel="" class="external" title="Twittere diesen Artikel!">Twittere diesen Artikel!</a></li></ul><div style="clear:both;"></div></div>]]></content:encoded> <wfw:commentRss>http://blog.encodingit.ch/2010/06/upgrade-auf-ubuntu-10-04/feed/</wfw:commentRss> <slash:comments>13</slash:comments> </item> <item><title>Der (Ur-)Verzeichnisdienst NIS / YP</title><link>http://blog.encodingit.ch/2010/05/der-ur-verzeichnisdienst-nis-yp/</link> <comments>http://blog.encodingit.ch/2010/05/der-ur-verzeichnisdienst-nis-yp/#comments</comments> <pubDate>Fri, 14 May 2010 12:56:43 +0000</pubDate> <dc:creator>Patrick</dc:creator> <category><![CDATA[Netzwerk]]></category> <category><![CDATA[Planet]]></category><guid isPermaLink="false">http://blog.encodingit.ch/?p=873</guid> <description><![CDATA[Noch bevor LDAP oder Kerberos sich etablieren konnten, war ein Verzeichnisdienst mit dem Namen YP für Yellow Pages und später NIS für Network Information Service in aller Munde. Es war ein Produkt entwickelt von Sun, wodurch man Logininformationen über mehrere Computer hinweg verteilen konnte.]]></description> <content:encoded><![CDATA[<p>Noch bevor LDAP oder Kerberos sich etablieren konnten, war ein Verzeichnisdienst mit dem Namen YP für Yellow Pages und später NIS für Network Information Service in aller Munde. Es war ein Produkt entwickelt von Sun, wodurch man Logininformationen über mehrere Computer hinweg verteilen konnte.</p><p>Auch wenn NIS als älter und unsicherer gilt als LDAP, hat es für mich ein klarer Vorteil: es ändert sich nicht immer komplett!<br /> Wer schon mal ein LDAP auf einem Ubuntu Server 8.04 und 8.10 installiert hat, kann nachvollziehen was ich meine. So und damit genug, ich will hier nicht über LDAP herziehen, sondern NIS vorstellen <img src='http://blog.encodingit.ch/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /></p><p>Ich habe mir also mit NIS und NFS innert wenigen Minuten eine zentrale Benutzerverwaltung mit zentralem Homeverzeichnis eingerichtet. Und wie das geht, folgt hier:</p><p>Ich habe mit dem NIS Server begonnen und dazu die Pakete für NFS und NIS aus den Paketquellen installiert.</p><div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">apt-get</span> <span style="color: #c20cb9; font-weight: bold;">install</span> nfs-kernel-server nis</pre></td></tr></table></div><p>Während der Installation, nachdem man einen Namen für die Domäne eingegeben hat, versucht apt automatisch den NIS Daemon zu starten, was auf Grund mangelnden Einstellungen aber nie funktionieren wird. Also zurück lehnen, und auf den Fehler warten <img src='http://blog.encodingit.ch/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /></p><p>Nun beginnt die Konfiguration. In der Datei <strong>/etc/default/nis</strong> wird die NIS-Installation von Client zum Server umgebogen:</p><div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
4
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;"># Are we a NIS server and if so what kind (values: false, slave, master)?</span>
<span style="color: #007800;">NISSERVER</span>=<span style="color: #c20cb9; font-weight: bold;">true</span>
<span style="color: #666666; font-style: italic;"># Are we a NIS client?</span>
<span style="color: #007800;">NISCLIENT</span>=<span style="color: #c20cb9; font-weight: bold;">false</span></pre></td></tr></table></div><p>Dann geben wir in der Datei <strong>/etc/exports</strong> unser Homeverzeichnis frei:</p><div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">/</span>home	<span style="color: #000000; font-weight: bold;">*</span><span style="color: #7a0874; font-weight: bold;">&#40;</span>rw,async,no_subtree_check<span style="color: #7a0874; font-weight: bold;">&#41;</span></pre></td></tr></table></div><p>Wer es gern sicherer hat, kann den Stern durch einen Computernamen oder eine <acronym title="Internet Protocol">IP</acronym> mit Subnet ersetzen, wodurch dann nur der Zugriff von diesen Maschinen aus gestattet ist.</p><p>Nun kann man den Daemon neu starten:</p><div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>init.d<span style="color: #000000; font-weight: bold;">/</span>nis restart</pre></td></tr></table></div><p>Und zum Abschluss muss man noch die Maps generieren lassen. Dazu ruft man folgenden Befehl auf:</p><p><span id="more-873"></span></p><div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">/</span>usr<span style="color: #000000; font-weight: bold;">/</span>lib<span style="color: #000000; font-weight: bold;">/</span>yp<span style="color: #000000; font-weight: bold;">/</span>ypinit <span style="color: #660033;">-m</span></pre></td></tr></table></div><p>Nun ist der NIS Server soweit fertig. Es können nun normal User hinzugefügt werden, die bereits bestehenden werden im NIS aufgenommen.<br /> Wichtig jedoch, nach einer Änderung an einem User oder einer Gruppe, also Änderungen, welche die passwd, group, shadow oder gshadow datei verändern, folgender Befehl ausgeführt wird, um die Maps zu erneuern:</p><div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #7a0874; font-weight: bold;">cd</span> <span style="color: #000000; font-weight: bold;">/</span>var<span style="color: #000000; font-weight: bold;">/</span>yp<span style="color: #000000; font-weight: bold;">/</span>
<span style="color: #c20cb9; font-weight: bold;">make</span></pre></td></tr></table></div><p>Nun noch alle benötigten Daemons neu starten:</p><div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
3
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>init.d<span style="color: #000000; font-weight: bold;">/</span>portmap restart
<span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>init.d<span style="color: #000000; font-weight: bold;">/</span>nfs-kernel-server restart
<span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>init.d<span style="color: #000000; font-weight: bold;">/</span>nis restart</pre></td></tr></table></div><p>Und zum Schluss die Verwendung des NIS Servers starten:</p><div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
2
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;">ypbind
ypserv</pre></td></tr></table></div><p>Ein Aufruf von ypwhich sollte nun den Namen oder die <acronym title="Internet Protocol">IP</acronym> des NIS Masterserver und ypdomainname den Namen der NIS Domäne ausgeben.</p><p>Nun muss der Client, welcher NIS verwenden soll, noch vorbereitet werden!<br /> Auch hier wird das Paket NIS aus den Paketquellen installiert:</p><div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">apt-get</span> <span style="color: #c20cb9; font-weight: bold;">install</span> nis nfs-common</pre></td></tr></table></div><p>Im Gegensatz zu vorher sollte sich hier der NIS Daemon nach Eingabe der selben Domäne erfolgreich starten, da der NIS Server über Broadcast-Pakete gesucht wird.</p><p>Trotzdem sollte der NIS Server noch fest in die Datei <strong>/etc/yp.conf</strong> eingetragen werden:</p><div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;">ypserver nismaster.ch</pre></td></tr></table></div><p>Nun müssen noch die passwd, group, shadow und gshadow angepasst werden und jeweils folgenden Zusatz als letzte Zeile haben:<br /> <strong>/etc/passwd:</strong></p><div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;">+::::::</pre></td></tr></table></div><p><strong>/etc/group:</strong></p><div class="wp_syntax"><table><tr><td class="line_numbers"><pre>2
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;">+:::</pre></td></tr></table></div><p><strong>/etc/shadow:</strong></p><div class="wp_syntax"><table><tr><td class="line_numbers"><pre>3
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;">+::::::::</pre></td></tr></table></div><p><strong>/etc/gshadow:</strong></p><div class="wp_syntax"><table><tr><td class="line_numbers"><pre>4
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;">+:::</pre></td></tr></table></div><p>Nachdem der Client nun die Userinformationen vom NIS Server verwenden kann, muss noch das Homeverzeichnis konfiguriert werden.<br /> Dazu wird die Datei <strong>/etc/fstab</strong> mit folgender Zeile ergänzt:</p><div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;">nismaster.ch:<span style="color: #000000; font-weight: bold;">/</span>home  <span style="color: #000000; font-weight: bold;">/</span>home  nfs  <span style="color: #007800;">rsize</span>=<span style="color: #000000;">8192</span>,<span style="color: #007800;">wsize</span>=<span style="color: #000000;">8192</span>,hard,intr  <span style="color: #000000;">0</span>  <span style="color: #000000;">0</span></pre></td></tr></table></div><p>Nun sollte auch hier noch der NIS Daemon neugestartet werden:</p><div class="wp_syntax"><table><tr><td class="line_numbers"><pre>1
</pre></td><td class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>init.d<span style="color: #000000; font-weight: bold;">/</span>nis restart</pre></td></tr></table></div><p>Wird nun ypwhich und ypdomainname ausgeführt, so sollten deren Ausgaben mit denen vom Server übereinstimmen.<br /> Wenn nun der Client nun gestartet wird, so sollte beim Start zuerst das home-Verzeichnis vom Server gemountet werden und danach eine Verbindung zum NIS Server mit der konfigurieren Domäne hergestellt werden, worauf man sich dann mit jedem auf dem Server zugefügten Benutzer auch auf dem Client einloggen kann.</p><div class="shr-bookmarks shr-bookmarks-expand shr-bookmarks-center shr-bookmarks-bg-shr"><ul class="socials"><li class="shr-delicious"> <a href="http://delicious.com/post?url=http://blog.encodingit.ch/2010/05/der-ur-verzeichnisdienst-nis-yp/&amp;title=Der+%28Ur-%29Verzeichnisdienst+NIS+%2F+YP" rel="" class="external" title="Empfehle diesen Artikel bei del.icio.us">Empfehle diesen Artikel bei del.icio.us</a></li><li class="shr-digg"> <a href="http://digg.com/submit?phase=2&amp;url=http://blog.encodingit.ch/2010/05/der-ur-verzeichnisdienst-nis-yp/&amp;title=Der+%28Ur-%29Verzeichnisdienst+NIS+%2F+YP" rel="" class="external" title="Digg this!">Digg this!</a></li><li class="shr-facebook"> <a href="http://www.facebook.com/share.php?v=4&amp;src=bm&amp;u=http://blog.encodingit.ch/2010/05/der-ur-verzeichnisdienst-nis-yp/&amp;t=Der+%28Ur-%29Verzeichnisdienst+NIS+%2F+YP" rel="" class="external" title="Empfehle diesen Artikel bei Facebook">Empfehle diesen Artikel bei Facebook</a></li><li class="shr-gmail"> <a href="https://mail.google.com/mail/?ui=2&amp;view=cm&amp;fs=1&amp;tf=1&amp;su=Der+%28Ur-%29Verzeichnisdienst+NIS+%2F+YP&amp;body=Link: http://blog.encodingit.ch/2010/05/der-ur-verzeichnisdienst-nis-yp/ (sent via shareaholic)%0D%0A%0D%0A----%0D%0A Noch%20bevor%20LDAP%20oder%20Kerberos%20sich%20etablieren%20konnten%2C%20war%20ein%20Verzeichnisdienst%20mit%20dem%20Namen%20YP%20f%C3%BCr%20Yellow%20Pages%20und%20sp%C3%A4ter%20NIS%20f%C3%BCr%20Network%20Information%20Service%20in%20aller%20Munde.%20Es%20war%20ein%20Produkt%20entwickelt%20von%20Sun%2C%20wodurch%20man%20Logininformationen%20%C3%BCber%20mehrere%20Computer%20hinweg%20verteilen%20konnte." rel="" class="external" title="Email this via Gmail">Email this via Gmail</a></li><li class="shr-googlebookmarks"> <a href="http://www.google.com/bookmarks/mark?op=add&amp;bkmk=http://blog.encodingit.ch/2010/05/der-ur-verzeichnisdienst-nis-yp/&amp;title=Der+%28Ur-%29Verzeichnisdienst+NIS+%2F+YP" rel="" class="external" title="Füge hinzu zu Google Bookmarks">Füge hinzu zu Google Bookmarks</a></li><li class="shr-identica"> <a href="http://identi.ca//index.php?action=newnotice&amp;status_textarea=Reading:+&quot;Der+%28Ur-%29Verzeichnisdienst+NIS+%2F+YP&quot;+-+from+http://tinyurl.com/39yzxdx" rel="" class="external" title="Sende dies zu Identica">Sende dies zu Identica</a></li><li class="shr-linkedin"> <a href="http://www.linkedin.com/shareArticle?mini=true&amp;url=http://blog.encodingit.ch/2010/05/der-ur-verzeichnisdienst-nis-yp/&amp;title=Der+%28Ur-%29Verzeichnisdienst+NIS+%2F+YP&amp;summary=Noch%20bevor%20LDAP%20oder%20Kerberos%20sich%20etablieren%20konnten%2C%20war%20ein%20Verzeichnisdienst%20mit%20dem%20Namen%20YP%20f%C3%BCr%20Yellow%20Pages%20und%20sp%C3%A4ter%20NIS%20f%C3%BCr%20Network%20Information%20Service%20in%20aller%20Munde.%20Es%20war%20ein%20Produkt%20entwickelt%20von%20Sun%2C%20wodurch%20man%20Logininformationen%20%C3%BCber%20mehrere%20Computer%20hinweg%20verteilen%20konnte.&amp;source=Bits, Bytes and my 5 cents" rel="" class="external" title="Empfehle diesen Artikel bei LinkedIn">Empfehle diesen Artikel bei LinkedIn</a></li><li class="shr-technorati"> <a href="http://technorati.com/faves?add=http://blog.encodingit.ch/2010/05/der-ur-verzeichnisdienst-nis-yp/" rel="" class="external" title="Empfehle diesen Artikel bei Technorati">Empfehle diesen Artikel bei Technorati</a></li><li class="shr-twitter"> <a href="http://twitter.com/home?status=Der+%28Ur-%29Verzeichnisdienst+NIS+%2F+YP+-+http://tinyurl.com/39yzxdx&amp;source=shareaholic" rel="" class="external" title="Twittere diesen Artikel!">Twittere diesen Artikel!</a></li></ul><div style="clear:both;"></div></div>]]></content:encoded> <wfw:commentRss>http://blog.encodingit.ch/2010/05/der-ur-verzeichnisdienst-nis-yp/feed/</wfw:commentRss> <slash:comments>1</slash:comments> </item> </channel> </rss>
<!-- Dynamic Page Served (once) in 1.777 seconds -->
