<?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>Rainer Bendig &#187; linux</title>
	<atom:link href="http://mrbendig.com/tag/linux/feed/" rel="self" type="application/rss+xml" />
	<link>http://mrbendig.com</link>
	<description>Some stuff about developing, the web and social media</description>
	<lastBuildDate>Thu, 02 Sep 2010 21:51:33 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>

   <image>
    <title>Rainer Bendig</title>
    <url>http://1.gravatar.com/avatar/7ce1993be3038455e79d29f6495ceaef?s=48&amp;d=http%3A%2F%2F1.gravatar.com%2Favatar%2Fad516503a11cd5ca435acc9bb6523536</url>
    <link>http://mrbendig.com</link>
   </image>
		<item>
		<title>Modline für Acer V223HQ unter Ubuntu 9.10</title>
		<link>http://mrbendig.com/2010/04/modline-fur-acer-v223hq-unter-ubuntu-9-10/</link>
		<comments>http://mrbendig.com/2010/04/modline-fur-acer-v223hq-unter-ubuntu-9-10/#comments</comments>
		<pubDate>Mon, 05 Apr 2010 20:47:47 +0000</pubDate>
		<dc:creator>Rainer Bendig</dc:creator>
				<category><![CDATA[Allgemeines]]></category>
		<category><![CDATA[acer]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[modline]]></category>
		<category><![CDATA[ubuntu]]></category>
		<category><![CDATA[v223hq]]></category>
		<category><![CDATA[x.org]]></category>
		<category><![CDATA[xorg.conf]]></category>

		<guid isPermaLink="false">http://mrbendig.com/?p=315</guid>
		<description><![CDATA[<p>Um einen Acer V223 HQ unter x.org zu betreiben sind folgende Einträge in der "Monitor"-Section in der xorg.conf notwendig: HorizSync 64.0 - 74.0 VertRefresh 57.0 - 67.0 Modeline "1920x1080" 187.00 1920 2016 2240 2672 1080 1080 1083... <a href="http://mrbendig.com/2010/04/modline-fur-acer-v223hq-unter-ubuntu-9-10/">Read more</a></p>]]></description>
			<content:encoded><![CDATA[<p>Um einen Acer V223 HQ unter x.org zu betreiben sind folgende Einträge in der &#8220;Monitor&#8221;-Section in der xorg.conf notwendig:</p>
<pre>HorizSync 64.0 - 74.0
VertRefresh 57.0 - 67.0
Modeline "1920x1080" 187.00  1920 2016 2240 2672  1080 1080 1083 1121</pre>
<p>danach gdm/kdm/whatever neu starten und glücklich sein, ohne flackern.</p>
]]></content:encoded>
			<wfw:commentRss>http://mrbendig.com/2010/04/modline-fur-acer-v223hq-unter-ubuntu-9-10/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress mit Subversion aktualisieren</title>
		<link>http://mrbendig.com/2008/08/wordpress-subversion/</link>
		<comments>http://mrbendig.com/2008/08/wordpress-subversion/#comments</comments>
		<pubDate>Wed, 06 Aug 2008 18:02:34 +0000</pubDate>
		<dc:creator>Rainer Bendig</dc:creator>
				<category><![CDATA[Open Source]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[opensource]]></category>
		<category><![CDATA[subversion]]></category>
		<category><![CDATA[versionskontrollsysteme]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://rainerbendig.com/?p=94</guid>
		<description><![CDATA[<p>Dieser Artikel beschäftigt sich mit einem automatischen Update von Wordpress über das Versionskontrollsystem Subversion. Was ist Subversion? Subversion ist ein sogenanntes Versions-Kontroll-System welches es ermöglicht einfach und unkompliziert... <a href="http://mrbendig.com/2008/08/wordpress-subversion/">Read more</a></p>]]></description>
			<content:encoded><![CDATA[<p><em>Dieser Artikel beschäftigt sich mit einem automatischen Update von WordPress über das Versionskontrollsystem Subversion.</em></p>
<p><strong>Was ist Subversion?</strong><br />
<br /> <a href="http://subversion.tigris.org">Subversion</a> ist ein sogenanntes Versions-Kontroll-System welches es ermöglicht einfach und unkompliziert an jede beliebige Version einer bestimmten Datei innerhalb eines Quell-Code-Projekts zu gelangen. Subversion gibt es seit etwa 2000. Alternativen dazu sind unteranderem GIT und CVS.  Subversion gilt als Quasi-Standard der Versions-Kontroll-Systeme. Es ist kostenlos (OpenSource) und es gibt unterschiedliche Clients für Windows, Linux und auch MacOS. Unter Windows dürfte das bekannteste wohl <a href="http://www.tortoisesvn.net">TortoiseSVN</a> sein.</p>
<p>Der Sinn hinter Subversion versteckt sich darin, dass man ein Projekt entwickeln kann, und immer wieder zu einem bestimmten Stand zurückkehren kann, auch noch nach Jahren. Dabei ist keine Änderung innerhalb des Subversion-Archives redundant es werden im Endeffekt nur Änderungen gespeichert, und dann solange durchgeführt, bis Subversion die gewünschte Version der Datei zurückgeben kann. So ist die aktuelle WordPress Version 2.6 entpackt und lauffähig 4,36 MB groß, das komplette Subversion Archiv „nur“ 107 MB groß. Dies hört sich nun viel an, ist aber, wenn man bedenkt wirkliche jede Änderung im Quellcode bis Version x rückgängig machen zu können wirklich nicht viel <img src='http://mrbendig.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>
<strong>WordPress und Subversion</strong><br />
<br /> Automattic Inc. betreibt einen Subversionserver auf dem unter Anderem die Quelltexte für WordPress abgelegt sind. Darüber gestaltet sich der Zugriff auf die Entwicklerversion („bleeding“) und alle vorherigen Veröffentlichungen der Software recht einfach. Um nun WordPress über Subversion zu aktualisieren müssen mehrere Voraussetzungen erfüllt sein:</p>
<ul>
<li><strong>Subversion-Client-Software</strong><br />
Der Subversion Client muss installiert sein. Dies geschieht unter Debian-Abkömmlingen mit dem als root auszuführenden Befehl „apt-get install subversion“. Für ein manuelles aktualisieren von WordPress empfiehlt sich unter Windows Servern die Installation von TortoiseSVN. Für ein Automatisches Update wird allerdings ein Kommandozeilen-Client benötigt, hier bietet sich der Client von Collab.net an, auf den ich mich im weiteren Verlauf auch beziehe.</p>
<li><strong>Shellzugriff bzw. Remotezugriff</strong><br />
Zum Einrichten des Aktualisierungsprozesses wird Shellzugriff (SSH) unter Linux, beziehungsweise Remotezugriff (RemoteDesktop) unter Windows benötigt.</p>
<li><strong>Cronjobs / geplante Tasks</strong><br />
Um eine Automatische Aktualisierung einzurichten benötigen Sie entsprechende Rechte um einen geplanten Task unter Windows beziehungsweise einen Cronjob unter Linux einrichten zu können.</li>
</ul>
<p>Ich biete einen Mirror des WordPress-SVNs an, der im Regelfall jede Stunde aktualisiert wird. Dies dient dazu um die Belastung des Ursprünglichen SVN-Servers zu verringern. Auch wenn es ein OpenSource-Projekt ist, sollte man sich nicht einfach immer nur gedankenlos bedienen. Das Mirrorverzeichnis ist wie folgt zugänglich:</p>
<p>Unter dem Archiv auf http://svn.nyforge.eu/get/WP-Mirror liegt eine direkte stündlich aktuelle Kopie des WordPress SVN Archivs. Hierbei geht die Primäre Auswahl über die sogenannten Tags beziehungsweise nur den Entwickler-Zweig „trunk“. Kommt ein neues WordPress-Release heraus, ist ein manuelles Nacharbeiten notwendig, wenn man trunk nicht verwendet.</p>
<blockquote><p>Als kleine Randanmerkung: Man sollte nur „trunk“ auswählen wenn man sich den Gefahren einer aktuellen Entwickler-Version bewusst ist, und die Risiken entsprechend in Kauf nehmen will. Hierzu gehören unter Anderem plötzliche Änderungen an der Datenbankstruktur die den Blog temporär zumindest unbrauchbar machen können, sowie einfache Fehler in Quelldateien. (So sind zum Beispiel bei der Entwicklerversion von 2.4 auf 2.5 alle eingepflegten Tags verloren gegangen) Ich rate dringendst davon ab, eine Entwickler-Version im Produktivbetrieb einzusetzen. Dennoch beziehen sich die folgenden Beispiele alle auf „trunk“. Wenn man die letzte Stabile Version verwenden will, benutzt man bitte anstatt „trunk“ die Zeichenfolge „tags/2.6“. </p></blockquote>
<p><strong>Backup erstellen!</strong><br /> Auch wenn es sich kleinlich anhört, aber es wird dringend das Erstellen eines kompletten Backups eines bereits bestehenden Blogs empfohlen! Dies beinhaltet:</p>
<ul>
<li>Die Datenbank</li>
<li>Alles was sich im Blogverzeichnis befindet</li>
<li>insbesondere aber den Ordner wp-content, sowie die Datei wp-config.php</li>
</ul>
<p>Erst wenn dieses Backup existiert, sollte man mit der Einrichtung fortfahren.</p>
<p>Ich gehe nun von folgender Situation aus:
<ul>
<li>Der Blog ist oder soll über http://www.example.com/blog erreichbar sein</li>
<li>Das DocumentRoot liegt unter /home/hosts/example-com bzw c:\inetpub\wwwroot\example-com </li>
<li>Das SVN Binary ist unter Windows im Pfad vorhanden.</li>
</ul>
<p><strong>Es geht los!</strong><br />
Als erstes muss das Ursprüngliche Verzeichnis gelöscht werden wenn der Blog bereits existierte, beziehungsweise angelegt werden wenn der Blog neu eingerichtet werden soll.<br />
Unter Linux geschieht dies mit dem Befehl</p>
<pre>rm -Rf /home/hosts/example-com/blog ; mkdir /home/hosts/example-com/blog –p</pre>
<p>Unter Windows kann man dies komfortabel über den Explorer lösen.<br />
Als nächsten Schritt müssen wir die gewünschte Version von WordPress „auschecken“.<br />
Unter Linux ist dies über den Befehl</p>
<pre>svn co http://svn.nyforge.eu/get/WP-Mirror/trunk /home/hosts/example-com/blog </pre>
<p>zu erreichen.<br />
Subversion listet daraufhin alle Dateien auf die heruntergeladen wurden.<br />
 Unter Windows muss man entsprechend den Befehl wie folgt ändern:</p>
<pre>svn co http://svn.nyforge.eu/get/WP-Mirror/trunk c:\inetpub\wwwroot\example-com\blog</pre>
</p>
<p><strong>Einrichtung</strong><br />
Handelt es sich um eine neue WordPressinstallation kann man die Einrichtung von WordPress gemäß der Anleitung von WordPress starten. (Mit dem Browser auf http://www.example.com/blog/wp-admin wechseln und 2 Seiten ausfüllen, fertig.)<br />
Wenn es sich um ein Update einer bereits vorhandenen (und vorher gesicherten) WordPressinstallation handelt ist die Sache etwas komplizierter.<br />
Der geneigte Blogbesitzer muss nun seine wp-config.php aus dem Backupverzeichnis in die neue WordPress installation kopieren. Ebenso muss der Ordner wp-content/uploads, diverse plugins aus wp-content/plugins sowie das verwendete theme aus wp-content/themes/meintollestheme aus dem Backup in die aktuelle WordPress installation kopiert werden, also zum Beispiel</p>
<pre>cp /home/hosts/example-com/blog.bak/wp-config.php /home/hosts/example-com/blog/wp-config.php
cp –rf /home/hosts/example-com/blog.bak/wp-content/uploads /home/hosts/example-com/blog/wp-content
cp –rf /home/hosts/example-com/blog.bak/wp-content/themes/meintollestheme /home/hosts/example-com/blog/wp-content/themes
cp –rf /home/hosts/example-com/blog.bak/wp-content/plugins/TollesPlugin /home/hosts/example-com/blog/wp-content/plugins/TollesPlugin</pre>
<p>Damit ware der Blog nun wieder lauffähig. Im Regelfall muss der Blogeigentümer nun noch die Datenbank aktualisieren, was sich einfach mit einem Klick auf http://www.example.com/blog/wp-admin erledigen lässt.<br />
Aktualisieren kann man den Blog nun über den Befehl</p>
<pre>svn up /home/hosts/example-com/blog </pre>
<p>Beziehungsweise</p>
<pre>svn up c:\inetpub\wwwroot\example-com\blog</pre>
<p>Dies sind auch die Befehle die man entweder in die Crontab unter Linux, oder als geplanten Task einrichtet unter Windows, wenn man in den Genuss einer automatischen Aktualisierung kommen will.</p>
<p><strong>Warum über Subversion aktualisieren?</strong><br />
Die Gründe für ein automatisches Update waren für mich recht simpel: Fehlerbeseitigungen sind schneller eingespielt, und ab 2 Installationen die man zu verwalten hat spart man Zeit <img src='http://mrbendig.com/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> . Auch wenn man WordPress testen will, und durch das Verwenden von sogenannten Bleeding-Versionen mithelfen will die Qualität zu verbessern bietet sich dieser Weg nun einmal an. Ein wichtiger Grund dürfte auch einfache stupide Faulheit sein, denn es spart wie gesagt Unmengen an Zeit.<br />
Ich müsste mehrere Blogs händisch auf dem neusten Stand halten, mich um die Sicherheitsupdates kümmern, alles Arbeit die man sich sparen kann.<br />
Sicherlich ist es einmalig ein kleiner Aufwand das ganze einzurichten, aber die Arbeit lohnte sich zumindest für mich. </p>
]]></content:encoded>
			<wfw:commentRss>http://mrbendig.com/2008/08/wordpress-subversion/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Postfix-Mailqueue leeren</title>
		<link>http://mrbendig.com/2008/06/postfix-mailqueue-leeren/</link>
		<comments>http://mrbendig.com/2008/06/postfix-mailqueue-leeren/#comments</comments>
		<pubDate>Mon, 23 Jun 2008 12:54:37 +0000</pubDate>
		<dc:creator>Rainer Bendig</dc:creator>
				<category><![CDATA[Open Source]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[opensource]]></category>
		<category><![CDATA[postfix]]></category>
		<category><![CDATA[queue]]></category>

		<guid isPermaLink="false">http://rainerbendig.com/?p=71</guid>
		<description><![CDATA[<p>Kit dem folgenden snippet, kann man gezielt seine Postfix-Warteschlange aufräumen, nur für mich als Erinnerung... Stammen tut das snippet im übrigen von it-crowd.biz mailq &#124; tail +2 &#124; grep -v '^ *(' &#124; awk  'BEGIN { RS = "" } # $7=Absender,... <a href="http://mrbendig.com/2008/06/postfix-mailqueue-leeren/">Read more</a></p>]]></description>
			<content:encoded><![CDATA[<p>Kit dem folgenden snippet, kann man gezielt seine Postfix-Warteschlange aufräumen, nur für mich als Erinnerung&#8230; Stammen tut das snippet im übrigen von <a href="http://www.it-crowd.biz/2008/04/23/postfix-queue-gezielt-oder-komplett-loschen/">it-crowd.biz</a></p>
<pre>mailq | tail +2 | grep -v '^ *(' | awk  'BEGIN { RS = "" }
# $7=Absender, $8=Empfänger1, $9=Empfänger2
{ if ($8 == "gibtsnicht@rainerbendig.com" &amp;&amp; $7 == "MAILER-DAEMON")
print $1 }
' | tr -d '*!' | postsuper -d -</pre>
]]></content:encoded>
			<wfw:commentRss>http://mrbendig.com/2008/06/postfix-mailqueue-leeren/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Groundwork Monitor &#8211; Service startet nicht?</title>
		<link>http://mrbendig.com/2008/05/groundwork-monitor-service-startet-nicht/</link>
		<comments>http://mrbendig.com/2008/05/groundwork-monitor-service-startet-nicht/#comments</comments>
		<pubDate>Thu, 22 May 2008 07:20:32 +0000</pubDate>
		<dc:creator>Rainer Bendig</dc:creator>
				<category><![CDATA[Open Source]]></category>
		<category><![CDATA[groundwork]]></category>
		<category><![CDATA[gwservice]]></category>
		<category><![CDATA[java]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[opensource]]></category>

		<guid isPermaLink="false">http://rainerbendig.com/blog/?p=39</guid>
		<description><![CDATA[<p>ich habe eben den Groundwork Monitor auf einem Host installiert. Das ist eine Oberfläche für Nagios und Konsorten, die mal echt nen Blick wert ist. In der Community Edition, wie MySQL, sogar umsonst. Nach dem Starten von gwservice bot sich mir... <a href="http://mrbendig.com/2008/05/groundwork-monitor-service-startet-nicht/">Read more</a></p>]]></description>
			<content:encoded><![CDATA[<p>ich habe eben den <a href="http://www.groundworkopensource.com/community/community-edition.html">Groundwork Monitor</a> auf einem Host installiert. Das ist eine Oberfläche für Nagios und Konsorten, die mal echt nen Blick wert ist. In der Community Edition, wie MySQL, sogar umsonst.</p>
<p>Nach dem Starten von gwservice bot sich mir recht lange das folgende Bild:<br />
<code>shorn:~ # /etc/init.d/gwservices restart<br />
Stopping Groundwork Services                                [ OK ]<br />
Starting Groundwork Services<br />
Connecting to Foundation listener Host:localhost Port:4913<br />
Listener not ready to accept data feeds ....<br />
Listener not ready to accept data feeds ....<br />
Listener not ready to accept data feeds ....<br />
Listener not ready to accept data feeds ....<br />
Listener not ready to accept data feeds ....<br />
Listener not ready to accept data feeds ....<br />
Couldn't connect to localhost:4913: IO::Socket::INET: connect: Connection refused<br />
gwservices start failed.                                    [ FAILED ]</code></p>
<p>Ursache hierfür ist einfach, dass sich Java nicht im Pfad befindet. nach einem kurzen Edit der Datei /etc/init.d/gwservices wo ich die zeilen</p>
<p><code>export JAVA_HOME=/usr/java<br />
export JRE_HOME=$JAVA_HOME/bin</code></p>
<p>einfügte lies sich der Service ohne probleme starten:<br />
<code>shorn:~ # /etc/init.d/gwservices restart<br />
Stopping Groundwork Services                                [ OK ]<br />
Cannot stat file /proc/28148/fd/3: No such file or directory<br />
Cannot stat file /proc/28148/fd/4: No such file or directory<br />
Cannot stat file /proc/28148/fd/5: No such file or directory<br />
Starting Groundwork Services<br />
Connecting to Foundation listener Host:localhost Port:4913<br />
Listener not ready to accept data feeds ....<br />
Listener ready to accept data feeds....<br />
gwservices start                                            [ OK ]</code></p>
]]></content:encoded>
			<wfw:commentRss>http://mrbendig.com/2008/05/groundwork-monitor-service-startet-nicht/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Nettes find-Futorial</title>
		<link>http://mrbendig.com/2008/03/nettes-find-futorial/</link>
		<comments>http://mrbendig.com/2008/03/nettes-find-futorial/#comments</comments>
		<pubDate>Mon, 31 Mar 2008 07:05:50 +0000</pubDate>
		<dc:creator>Rainer Bendig</dc:creator>
				<category><![CDATA[Open Source]]></category>
		<category><![CDATA[find]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[opensource]]></category>
		<category><![CDATA[shell]]></category>
		<category><![CDATA[tutorial]]></category>

		<guid isPermaLink="false">http://rainerbendig.com/blog/?p=16</guid>
		<description><![CDATA[<p>Weil mich gerade jemand via msn danach gefragt hat, hier ein wudnerbarer Link zu einem Tutorial über "find" in der Linux-Shell Original: http://www.softpanorama.org/Tools/Find/find_mini_tutorial.shtml PDF-Version:... <a href="http://mrbendig.com/2008/03/nettes-find-futorial/">Read more</a></p>]]></description>
			<content:encoded><![CDATA[<p>Weil mich gerade <a href="http://blog.kai-herzig.de/">jemand</a> via msn danach gefragt hat, hier ein wudnerbarer Link zu einem Tutorial über &#8220;find&#8221; in der Linux-Shell</p>
<p>Original: <a href="http://www.softpanorama.org/Tools/Find/find_mini_tutorial.shtml">http://www.softpanorama.org/Tools/Find/find_mini_tutorial.shtml</a><br />
PDF-Version: <a href="http://notepad.bobkmertz.com/content/UnixFindTutorial.pdf">http://notepad.bobkmertz.com/content/UnixFindTutorial.pdf</a></p>
]]></content:encoded>
			<wfw:commentRss>http://mrbendig.com/2008/03/nettes-find-futorial/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
