<?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>Der MEVA - blog</title>
	<atom:link href="http://blog.a-weinert.de/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.a-weinert.de</link>
	<description>Labor für Medien und verteilte Anwendungen</description>
	<lastBuildDate>Thu, 05 Jan 2012 16:50:28 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Linux Mint (12) is it!</title>
		<link>http://blog.a-weinert.de/allgemein/linux-mint-12-is-it/</link>
		<comments>http://blog.a-weinert.de/allgemein/linux-mint-12-is-it/#comments</comments>
		<pubDate>Tue, 03 Jan 2012 16:50:09 +0000</pubDate>
		<dc:creator>Albrecht Weinert</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Betriebssysteme]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://blog.a-weinert.de/allgemein/linux-mint-12-is-it/</guid>
		<description><![CDATA[Alles fing mit Windows 7 auf einem betagten Fujitsu Siemens Notebook an, dessen XP-Installation sich  a) nicht beschädigungsfrei aus einer Domain-Mitgliedschaft lösen und    b) dann nicht mehr gut reparieren / aufdaten ließ. Also radikaler Schnitt:
Zum neuen Windows 7
Alles platt und Windows 7 (Firmen bulk licence) drauf. Es lief toll. Warum haben [...]]]></description>
			<content:encoded><![CDATA[<p>Alles fing mit Windows 7 auf einem betagten Fujitsu Siemens Notebook an, dessen XP-Installation sich <br /> a) nicht beschädigungsfrei aus einer Domain-Mitgliedschaft lösen und  <br />  b) dann nicht mehr gut reparieren / aufdaten ließ. Also radikaler Schnitt:</p>
<h2>Zum neuen Windows 7</h2>
<p>Alles platt und Windows 7 (Firmen bulk licence) drauf. Es lief toll. Warum haben wir das nicht schon viel früher<span id="more-593"></span> gemacht?</p>
<p>Nicht so toll war das Einspielen / Installieren Dutzender benötigter vorheriger Anwendungen: Manches ließ sich sogar einfach kopieren, aber vieles zickte beim Übergang von XP&#8217;32 zuW7&#8242;64 bzw. die entsprechenden Varianten waren anders / unausgereift. Na ja, ging aber endlich ganz gut und eine Oracle VirtualBox mit XP erledigte den absolut inkompatiblen Rest.</p>
<p>Nun ging es wochenlang gut und Windows7 lief mehr als zufriedenstellend. &mdash;  bis plötzlich die (erfolgte) Aktivierung als fehlgeschlagen bezeichnet wurde. Das ist an sich bei einer korrekt lizenzierten Installation schon eine Zumutung. Hinzu kommt das die nun zu begehenden Wege bei Bulk-Lizenzen offenbar nicht vorgesehen sind, und einem zusätzliche Suchen, Umwege und Tricks auferlegt werden. Das Ganze kumulierte in der Anzeige man sei einer Softwarefälschung aufgesessen.</p>
<p>Mit so was mag man sich nun keinesfalls bei Vorträgen am Beamer outen oder gar bei externen F&amp;E-Partnern (mit einem gewissen Anspruch auf eigene Seriosität) sehen lassen. Wenn Microsoft einem so von der Arbeit abhält und das Leben schwer macht, &#8230;.</p>
<p>&#8230;. warum dann nicht gleich richtig? Also radikaler Schnitt:</p>
<h2>Auf zu Ubuntu (die Neunte)</h2>
<p>Alles platt und Ubuntu x.y von einer CD einer renommierten Linux-Zeitschrift drauf.  Es lief toll. Keine Probleme mit Hardwareerkennung, Ton, USB und was noch mal an Problemen war, ist (vgl. Artkel &#8220;<a title="Ubuntu und VirtualBox" href="http://blog.a-weinert.de/allgemein/ubuntu-und-virtualbox/" target="_self">Ubuntu und VirtualBox</a>&#8221; und &#8220;<a title="Ubuntu nutzen" href="../automatisierung/ubuntu-nutzen/">Ubuntu-Einstieg für Windows-Experten</a>&#8220;).  Warum haben wir und von trüben Vorerfahrungen abhalten lassen und das nicht schon viel früher gemacht?</p>
<p>Um es kurz zu machen: Nach viel update- und Installationsarbeit und einigen erfreulichen Nutzungserfahrungen ging das Ganze in einem Unity-zugelaufen-und-beseitigt-Crash unter (siehe wieder nun&#8221;<a title="Ubuntu un VirtualBox" href="http//blog.a-weinert.de/allgemein/ubuntu-und-virtualbox/" target="_self">Ubuntu und VirtualBox</a>&#8221; am Ende).</p>
<p>Die langwierige Recherche erbrachte neben vielem Unsinn (dessen Anteil wie üblich stark sinkt wenn man &#8220;funzende&#8221; deutsche Beiträge ausschließt)  den schwachen Trost, dass Viele genauso schlimm getroffen wurden. Schließlich fand sich ein seriöser (englischer) Beitrag, der glaubhaft darlegte, dass Mint der Ausweg aus dem derzeitigen Ubuntu-Schlamassel sei.</p>
<p>&#8230;. da&#8217;s schlimmer nicht werden konnte, warum denn nicht? Also radikaler Schnitt:</p>
<h2>Hin zu Mint</h2>
<p>Mit anderm (Windows-) Rechner Mint-ISO (64 bit full) geholt und gebrannt.<br />CD in den Ziel-Laptop und nach Mint-boot Installation gestartet.<br />Ein Versuch mit eigener Partitionseinteilung und nur am WLan scheiterte während der Installation aus unklärbaren Gründen.</p>
<p>Das Ganze mit LAN und &#8220;mach mit der ganzen Platte was Du willst&#8221; lief problemlos. Bereit stehende Updates werden automatisch erkannt und fast in &#8220;Windows update server&#8221;-Manier angezeigt, angeboten und problemlos installiert.</p>
<p>Mint kommt mit einer guten Grundausstattung an Software; hiervon wurden Firefox, Thunderbird und libreOffice gleich ausführlich und erfolgreich benutzt.</p>
<h2>Gewöhnungsbedürftig</h2>
<p>Einheitliche Bedienung für die Anwendungen (vgl. das in ["<a title="Ubuntu nutzen" href="../automatisierung/ubuntu-nutzen/">Ubuntu-Einstieg für Windows-Experten</a>"] beschriebene cntl-C/cntl-shift-C-Debakel) ist auch hier Fehlanzeige.</p>
<p>libreOffice wird in der Linux-Comunity zwar überwiegend als das bessere openOffice angesehen; es ist aber wohl eher unausgereifter. So ging die Rechtschreibhilfe erst nach Suchen und Basteln.</p>
<p>Die Software-Installation stürzt ab, sobald man was in ihr Suchfenster tippt. Ein offenbar vielfach gemeldeter Bug, den die Entwickler nicht nachvollziehen können.</p>
<p>Ein bisschen Schrauben an Prompts, Paths etc. musste schon sein. Dabei fällt zweierlei auf<br />
a) In welcher Konfigurationsdatei, was wie steht ist nicht klar geregelt und so schwer zu ermitteln. Das und das Eindringen in die Geheimnisse der Windows Registry nehmen sich wirklich nichts.<br />
b) Alle gemachten &#8220;permanten&#8221; Änderungen in Konfigurationsdateien wirken erst nach Neustart. Änderungen mit Export, sind entgegen anders lautenden Versprechungen häufig nicht permanent.</p>
<p>Letzteres Verhalten  noch dazu undokumnetiert  ist sehr zeitfressend und fehlerträchtig. (Bei Windows ist das schon lange weitgehend weg.)</p>
<h2>SVN-Installation</h2>
<p>Um überhaupt wieder an an die eigenen versionsverwalteten Dateien ranzukommen wurde mit der (such-resitenten) Softwareverwaltung Subversion (SVN) geholt und problemlos installiert. Von der Kommandozeile (&#8221;Terminal&#8221; heißt die ja seltsamerweise) funktioniert alles und wie unter Windows auch gewohnt.</p>
<p>Die Enttäuschung ergab die die in der Hoffnung auf ein Linux-Explorer plug-in gestartete Suche nach Tortoise. Hier wurde RabbitVCS als &#8220;tolleres&#8221; Äquivalent angepriesen.</p>
<p>Geladen und (problemlos) installiert erwies sich dies aber nicht als Explorer-Plug-In sondern als eigenständige, schwache und somit total unnütze GUI-Verpackung von SVN. Dass man im normalen Explorer SVN working copies und ihren Zustand erkennt und das direkt bedienen kann, wird wohl Windows-Nutzern vorbehalten bleiben.</p>
<p>Aber positiv: SVN geht sofort und ist voll benutzbar.</p>
<h2>Wireshark</h2>
<p>Gerade ein Laptop wir sinnvollerweise als Netzwerk- / IP-Analyser eingesetzt. Also gleich Wireshark, das bei Windows eh nur zickig läuft, als erste schwierige Übung.</p>
<p>Wireshark wird mit der Softwareverwaltung zügig und problemlos installiert, startet brav und &#8230; läuft nicht mit &#8220;no interface available for &#8230;&#8221;.</p>
<p>Recherchen führten</p>
<p>a) zur Installation von dumpcap und <br /> &nbsp;<br />
sudo  dpkg-reconfigure wireshark-common <br />
(erfolglos) und</p>
<p>b) zu Rechteänderungen des aktuellen (einzigen) Nutzers mit</p>
<p>sudo usermod -a -G wireshark &lt;username&gt;</p>
<p>Nun geht Wireshark und zwar besser als je unter Windows erlebt.<br />
Ungeklärt wird allerdings bleiben, ob b) alleine ohne a) geholfen hätte.</p>
<h2>Fortsetzung folgt ..</h2>
<p>Die Installation ein paar netter Anwendungen zeigte, dass deren mitgebrachte Hilfefunktion nicht ging.<br />
Abhilfe: sudo apt-get install khelpcenter4</p>
<p>Weiteres kommt demnächst.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.a-weinert.de/allgemein/linux-mint-12-is-it/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>W2K8 cloning for homologous servers</title>
		<link>http://blog.a-weinert.de/betriebssysteme/windows-server-2008-cloning-for-homologous-servers/</link>
		<comments>http://blog.a-weinert.de/betriebssysteme/windows-server-2008-cloning-for-homologous-servers/#comments</comments>
		<pubDate>Tue, 26 Jul 2011 09:28:03 +0000</pubDate>
		<dc:creator>Albrecht Weinert</dc:creator>
				<category><![CDATA[Betriebssysteme]]></category>
		<category><![CDATA[English publication]]></category>
		<category><![CDATA[Sicherheit, Security]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://blog.a-weinert.de/betriebssysteme/windows-server-2008-cloning-for-homologous-servers/</guid>
		<description><![CDATA[Situation
Setting up a Windows Server 2008 installation from DVD, having get it all updates, installing the extra basic software (Java, Frame4J, utilities) needed and furbishing the system settings can be a task of many hours. If the target is a zoo of alike servers (a handful of Fujitsu Siemens Primergy RX300 S3 in our case) the desire [...]]]></description>
			<content:encoded><![CDATA[<h3>Situation</h3>
<p>Setting up a Windows Server 2008 installation from DVD, having get it all updates, installing the extra basic software (Java, Frame4J, utilities) needed and furbishing the system settings can be a task of many hours. If the target is a zoo of alike servers (a handful of Fujitsu Siemens Primergy RX300 S3 in our case) the desire to clone the good work gets overwhelming.</p>
<h3>Solution</h3>
<p>In the case of homologous <span id="more-573"></span>targets no extra tools are needed. The cloning can be completely accomplished by the Windows tools backup, repair and sysprep.</p>
<h3>Making the clone  system — the source</h3>
<p>Make the first W2K8 installation to one of the servers as good and complete as possible, i.e. having all updates and all supplementary (utility) software installed, all drives arranged and so on. Make optimal system settings and environment variables but do not bother with desktop arrangements yet.</p>
<p>You may (and should) give the system its name, activate Windows, make it a domain member and test it thoroughly. But you should give it no further roles and functions like DC or DNS etc. yet.</p>
<p>Before any further individualising, make a backup of your good Windows 2008 installation as is — best to an external fast USB drive. This backup has to be complete, including all drives.</p>
<p>Now make this machine domain controller or what ever its roles shall be.</p>
<h3>Procedure to clone to a target</h3>
<p>If the target computers have hardware RAID (as our RX300 S3) use its BIOS to make the same drive array configuration and boot order as in the clone (source) system.</p>
<p>Boot the W2K8 installation DVD and choose &#8220;repair&#8221;. With the USB drive plugged in the installer will offer your clone system (made above) as source. Choose it as complete repair.</p>
<p>Let the clone boot. Do this with no network connection, lest name or other conflicts arise. As local admin run<br />
C:\windows\system32\sysprep\sysprep.exe   /oobe /generalize /reboot</p>
<p>At reboot do the appropriate answering (and long waiting ending in a further reboot).<br />
Now you log in to a system with a random new computer name and SID as well as reset Windows activation.</p>
<p>Do check the drives / drive letters. They are usually spoiled by sysprep. Repair them. This may include setting the non-C:  partitions / RAID arrays online.</p>
<p>Change the computer name and network settings according to the target. Re-start with network interfaces plugged in. If behind a company firewall or proxy, check / make the settings to be able to reach outside internet, otherwise re-activation will usually fail. These settings can be done in the IE.</p>
<p>Activate the Windows installation using the appropriate licence key.<br />
After seeing at least one (test) re-boot without any generalisation or else post-treatment, individualise this cloned installation further and put it to its purpose.</p>
<h3>Retrenchments, warnings, remarks</h3>
<p>The procedure described was tested / used multiple times but only in just one configuration:<br />
Windows 2008 R2 professional, very homogenous zoo of RX300 S3, bulk like licence.<br />
It may fail in other circumstances. Feedback welcome.</p>
<p>The cloning procedure is a sequence of several steps with waiting times of 5..18 minutes (in the case of our RX300 S3). It was possible to get through in bit more than one hour. That toil is orders of magnitudes quicker than installing and updating all from scratch, and it is less complicated than preparing specialised unattended installations for a handful of machines. The cloning can, of course, be pipelined or parallelised, especially when having copied installation DVDs and USB drives.</p>
<p>The best improvement would be Microsoft giving us (back) a tool that just makes a new SID and name and resets the activation in case of no bulk like license. Sysprep (en lieu of good old newSID), in our case, inescapably destroys overmuch cloned information at the cost of own run time and our work afterwards.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.a-weinert.de/betriebssysteme/windows-server-2008-cloning-for-homologous-servers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Windows 7 auf Siemens Lifebook</title>
		<link>http://blog.a-weinert.de/betriebssysteme/windows-7-auf-siemens-lifebook/</link>
		<comments>http://blog.a-weinert.de/betriebssysteme/windows-7-auf-siemens-lifebook/#comments</comments>
		<pubDate>Tue, 22 Jun 2010 06:10:20 +0000</pubDate>
		<dc:creator>Albrecht Weinert</dc:creator>
				<category><![CDATA[Betriebssysteme]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://blog.a-weinert.de/betriebssysteme/windows-7-auf-siemens-lifebook/</guid>
		<description><![CDATA[Ein schon etwas älterer aber solide ausgestatteter Labtop &#8220;Siemens Lifebook E8110&#8243; sollte Windows 7 professional (anstelle vorher XP) bekommen.
Grundinstallation
Wegen des hohen Platzbedarfs von Win7 ist es  i.A. besser, die kleine (120GB) Platte komplett neu aufzuteilen. In der hier beschriebenen Installation sieht das dann so aus:

Der erste Bereich &#8220;reserved 100 MB&#8221; ist ein (seit dem Kauf [...]]]></description>
			<content:encoded><![CDATA[<p>Ein schon etwas älterer aber solide ausgestatteter Labtop &#8220;Siemens Lifebook E8110&#8243; sollte Windows 7 professional (anstelle vorher XP) bekommen.</p>
<h3>Grundinstallation</h3>
<p>Wegen des hohen Platzbedarfs von Win7 ist es  i.A. besser, die kleine (120GB) Platte komplett neu aufzuteilen. In der hier beschriebenen Installation sieht das dann so <span id="more-535"></span>aus:</p>
<p><img class="alignleft size-full wp-image-536" title="Datenträgeraufteilung Windows7" src="http://blog.a-weinert.de/wp-content/uploads/datentr_auft.jpg" alt="Datenträgeraufteilung Windows7" width="986" height="97" /></p>
<p>Der erste Bereich &#8220;reserved 100 MB&#8221; ist ein (seit dem Kauf vor Jahren) unangetastetes Siemens-Erbe.</p>
<p>C: und D: dienen der üblichen Zwei-Plattenbauweise. 50 GByte (C:) sollte man Windows7,  wenn&#8217;s geht,  schon gönnen. In C: und D:  sind dann  auch zwei Auslagerungsdateien fester Größe (200MB + 4 GB) untergebracht.</p>
<p>S:  ist absichtlch mit dem veralteten und unsicheren Dateisystem FAT eingerichtet, um einem späteren Linux im hinteren freien Bereich den bi-direktionalen Datenzugriff auf Freigaben zu ermöglichen. (Viele Linux-Varianten können/konnten NTFS nicht richtig handhaben.)</p>
<p>Die Vorbereitung dieser Partitionierung und die  Grundinstallation von W7 läuft mit der Installtions-CD problemlos.</p>
<h3>Problembehandlung</h3>
<p>Im Gegensatz zu vorher (XP) funktionieren einige am 945 Chipsatz des E8110 hängenden Geräte gar nicht bzw.  nicht gut. So gehen keine Speicherkärtchen und die LAN-Leistung ist sehr schlecht.  Außerdem kommt der Ton nur aus den Kopfhörern.  Diese Mängel beseitigt man am besten gleich, sonst hat man u.A. wegen  ewig dauernden downloads keine rechte Freude. Mit den Dateien</p>
<pre style="padding-left: 30px;">
<pre style="padding-left: 30px;">21.06.2010  16:57         2.787.864 infinst911autol.exe
21.06.2010  17:03        32.693.506 Vista_Win7_R249_x86.exe</pre>
</pre>
<p>von Intel bzw. RealTek beseitigt man beide Probleme. Das heißt man hört Töne nun auch aus den eingebauten (schlechten) Lautsprechern, und der Gerätemanager ist glücklich. Nachdem so unter anderem Netzwerverbibungen gut laufen bietet Microsoft  in der zweiten oder dritten Update-Runde dazuebenfalls was an, was die Probleme vielleicht auch gelöst hätte:</p>
<p><img class="alignleft size-full wp-image-537" title="Microsoft Update for drivers" src="http://blog.a-weinert.de/wp-content/uploads/Updates4drivers.jpg" alt="Microsoft Update for drivers" width="782" height="449" /></p>
<p>Zumindest machen  die markierten und durchgeführten Updates die obige Lösung nicht kaput.</p>
<h3>Anwendungen</h3>
<p>Nun kann man loslegen und Windows7 wohnlich machen: Shell mit administrativen Rechten, Java, Frame4J,  &#8230;.</p>
<pre style="padding-left: 30px;">22.06.2010  07:57               541 Elevated_Command_Prompt.zip
21.06.2010  17:11        80.398.104 jdk-6u20-windows-i586.exe
21.06.2010  17:12        59.037.591 jdk-6u18-docs.zip
22.06.2010  07:44        14.101.314 erg.zip
22.06.2010  07:34         8.228.352 irfanview_plugins_427_setup.exe
22.06.2010  07:31         1.668.096 iview427g_setup.exe</pre>
<p>Microsoft Security Essentials, IrfanView, &#8230; EditPad, Eclipse, Subversion, Office &#8230;. und und</p>
<p>&#8230; und später davon vielleicht mehr.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.a-weinert.de/betriebssysteme/windows-7-auf-siemens-lifebook/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Oracle schließt Kenai</title>
		<link>http://blog.a-weinert.de/java/oracle-schliest-kenai/</link>
		<comments>http://blog.a-weinert.de/java/oracle-schliest-kenai/#comments</comments>
		<pubDate>Fri, 05 Feb 2010 10:33:06 +0000</pubDate>
		<dc:creator>Albrecht Weinert</dc:creator>
				<category><![CDATA[Java]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Werkzeuge (Tools)]]></category>

		<guid isPermaLink="false">http://blog.a-weinert.de/?p=517</guid>
		<description><![CDATA[Seit Ende 2008 bot SUN mit der Plattform Kenai Entwicklern von Java open source Projekten eine weltweit zugängliche Versionsverwaltung (mit Subversion, Git oder Mercurial) ihrer Quellen. Das anspruchsvolle Motto war
„We&#8217;re More Than Just a Forge“
Und demgemäß wurde auch noch einiges mehr  geboten und die Plattform wurde kontinuierlich verbessert.
Der hohe Qualitätsanspruch wurde auch dadurch unterstrichen, [...]]]></description>
			<content:encoded><![CDATA[<p>Seit Ende 2008 bot SUN mit der Plattform Kenai Entwicklern von Java open source Projekten eine weltweit zugängliche Versionsverwaltung (mit Subversion, Git oder Mercurial) ihrer Quellen. Das anspruchsvolle Motto war</p>
<p style="padding-left: 30px;">„We&#8217;re More Than Just a Forge“</p>
<p>Und demgemäß wurde auch noch einiges mehr <span id="more-517"></span> geboten und die Plattform wurde kontinuierlich verbessert.</p>
<p>Der hohe Qualitätsanspruch wurde auch dadurch unterstrichen, dass nicht jeder ein Projekt starten und Speicherplatz bekommen konnte. Der &#8220;project owner&#8221; in spe musste sich mit einer Beschreibung des Projekts und der Ziele bewerben. Nur nach dessen positiver Beurteilung bekam man eine „Einladung“ zu Kenai.</p>
<p>Und nun ist dies plötzlich nicht mehr wahr. Am 2. Februar 2010 erhielten die Projektadministratoren eine mail, die sie aufforderte, mit ihren Daten bis zum 2. März woandershin umzuziehen. Freundlicherweise empfahl die mail gleich svnsync für Subversion, für das der Wegfall des (Haupt-) Servers sicher am krischsten ist.</p>
<p>Zu diesem Zeitpunkt wollte Oracle als neuer Besitzer von die Plattform für open source Projekte endgültig schließen. Die ersten Projekte sind dann auch sofort von exSUNs Kenai zu anderen Plattformen &#8220;geflohen&#8221;.</p>
<p>Oracles Kostengründe sind bei einem solchen Projekt mit wohl eher zweifelhaftem unmittelbaren Nutzen für SUN sicher nachzuvollziehen. Bezüglich des Schadens an SUNs gutem Ruf absoluter und dauerhafter Verlässlichkeit, den ein solcher vorwarnungsloser &#8220;shut down&#8221; eines ehrgeizigen und klarerweise auf langfristige Kooperation mit teilweise ja hochrangigen Java-Entwicklern angelegten Projekts nach weniger als anderthalb Jahren anrichtet, mögen sich die neuen Chefs hingegen getäuscht haben.</p>
<h3>Hinweise</h3>
<p><a style="color: #0000ff; font-style:italic; text-decoration:none;" href="http://blog.a-weinert.de/java/frame4j-a-java-framework/">Frame4J</a> (Blog)<br />
<a style="color: #0000ff; font-style:italic; text-decoration:none;" href="http://www.a-weinert.de/frame4j/">Frame4J</a> (Projektseite)</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.a-weinert.de/java/oracle-schliest-kenai/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Subversion&#8217;s big bug &#8211; a repair</title>
		<link>http://blog.a-weinert.de/betriebssysteme/windows/subversion-bug-repair/</link>
		<comments>http://blog.a-weinert.de/betriebssysteme/windows/subversion-bug-repair/#comments</comments>
		<pubDate>Mon, 26 Oct 2009 13:00:21 +0000</pubDate>
		<dc:creator>Albrecht Weinert</dc:creator>
				<category><![CDATA[English publication]]></category>
		<category><![CDATA[Werkzeuge (Tools)]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://blog.a-weinert.de/betriebssysteme/windows/subversion-bug-repair/</guid>
		<description><![CDATA[Being a good versioning system and &#34;the&#34; standard Subversion (SVN) nevertheless has some deficiencies mentioned in the (German) Tutorial
Subversion &#8212; on Windows with Active Directory
Download: http://a-weinert.de/pub/svn-win-de.pdf
One of the worst bugs: SVN ignores and forgets the file modification time (mTime) on first  commit. It&#8217;s clear, of course, that a file modified and re-committed has to [...]]]></description>
			<content:encoded><![CDATA[<p>Being a good versioning system and &quot;the&quot; standard Subversion (SVN) nevertheless has some deficiencies mentioned in the (German) Tutorial</p>
<p class="western" style="padding-left: 30px; color: #8888A8; font-family: Arial,sans-serif; font-size:18px;">Subversion &mdash; on Windows with Active Directory</p>
<p>Download: <a title="Subversion &mdash; mit Windows und Active Directory" href="http://a-weinert.de/weinert/pub/svn-win-de.pdf" target="_blank">http://a-weinert.de/pub/svn-win-de.pdf</a></p>
<p>One of the worst bugs: SVN ignores and forgets the file modification time (mTime) on first <span id="more-492"></span> commit. It&#8217;s clear, of course, that a file modified and re-committed has to get a new mTime. (<small>That might be the commit time, as well, as that can be kept close enough to modification time in most cases.)</small></p>
<p>The point is: for a file first committed respectively added its mTime must be kept intact. That&#8217;s true for a big bundle of use cases (and does no harm for almost all others). Not doing so constitutes a hard bug (not present in at least one very early SVN version). Making hundreds of files, may be collected over years, all the same age when put under version control is a behaviour so counter-intuitive  that it managed to break people&#8217;s projects before they noticed the damage.</p>
<p>The thing gets harder as the persons responsible for this bug are very obstinately seeing and selling it as a feature. Cause, doing otherwise might provoke a make (= ANT&#8217;s pedecessor) bug in some situations. Reading the blogs and discussions on that point, now running over years, and seeing the best arguments and long lists of (until now no go) use cases of SVN ignored, is at least just fatiguing.</p>
<p>Hence <a title="Frame4J &mdash; Java Framework and tools" href="http://www.a-weinert.de/frame4j/" target="_blank">Frame4J</a>&#8217;s tool FS was augmented to have a repair available and to rescue some of SVN&#8217;s use cases. As long as you still have any directories with the original intact files to be put or already put under SVN, this tool FS may now generate an ANT target to repair the mDates after checkout.</p>
<p>See also <a title="Frame4J &mdash; Java Framework and tools" href="http://a-weinert.de/frame4j/" target="_blank">Frame4J</a>, <a title="FS &mdash; the better dir / ls" href="http://a-weinert.de/java/docs/frame4j/de/frame4j/FS.html" target="_blank">FS (docu)</a>, <a title="base properties of FS for reference" href="http://a-weinert.de/java/docs/frame4j/de/frame4j/doc-files/FS.properties">FS.properties (for ref.)</a>, <a title="CVSkeys &mdash; beautify SVN / CVS before deployment" href="http://a-weinert.de/java/docs/frame4j/de/frame4j/CVSkeys.html" target="_blank">CVSkeys (docu)</a>.</p>
<p>Handling:<br />
As long as you still have a tree with the original file dates, go to its root and run<br />
<code> &nbsp; &nbsp; java FS -repairSVN</code><br />
there (as the simplest case). This will generate an ANT build.xml with content like the following example extract:<br />
<code>
<pre>&nbsp;&lt;?xml version="1.0" encoding="ISO-8859-1"?>
&nbsp;&lt;project name="repair SVN's file modification time bug"
&nbsp;     default="repairDates4SVN" basedir=".">
&nbsp;
&nbsp;&lt;!-- Conditional touches to repair the SVN forget mTime bug
&nbsp;     Generated at 26.10.2009 12:20:32
&nbsp;     by de.frame4j.FS  V.161  (26.10.2009)
&nbsp;     Copyright (c) 2009  A. Weinert  (a-weinert.de, frame4j.de)
&nbsp;-->
&nbsp;  &lt;target name="repairDates4SVN">

&nbsp;    &lt;property name="firstCommit" value="10/26/2009 12:30 am"/>

&nbsp;    &lt;touch datetime="08/02/1998  05:43:18 pm">
&nbsp;      &lt;fileset  erroronmissingdir="false"
&nbsp;          file= "louv-p-1320.jpg">
&nbsp;        &lt;date datetime="${firstCommit}" when="before" />
&nbsp;      &lt;/fileset>
&nbsp;    &lt;/touch>

&nbsp;    &lt;touch datetime="01/08/2009 02:16:28 pm">
&nbsp;      &lt;fileset  erroronmissingdir="false"
&nbsp;          file= "extra/solar-we-39-x360.jpg">
&nbsp;        &lt;date datetime="${firstCommit}" when="before" />
&nbsp;      &lt;/fileset>
&nbsp;    &lt;/touch>

&nbsp;  &lt;/target&gt;
&nbsp;&lt;/project&gt;</pre>
<p></code></p>
<p>If you supply more than one directory to FS like<br />
<code> &nbsp; &nbsp; java FS -repairSVN dir1\  C:\Arch\allFiles\ Z:\backup\ dir4\</code><br />
FS  takes the first one as the &quot;tree image root&quot; whereto (relatively) the SVN repair task will be generated. In all the other directories FS searches for equal files. Equal means same name and size here. Of all equal files the oldest modification time is used as time for the SVN bug repair. In that usage of FS the &quot;dir1&quot; in above example might be the tree with modification times already spoiled by SVN.   </p>
<p>This generated build.xml (or the target contained) has to go &mdash; best version controlled &mdash; to the respective root in the check-out respectively pre-deployment tree. Running it by ANT there (best as part of your build / deploy batch script) reconstitutes the the original mTimes. But (that&#8217;s the trick as, of course, you noticed) it&#8217;s done only if the mTime is (still) before the time condition stored in the property (firstCommit in the example).</p>
<p>This time condition is to be set slightly after the add respectively first commit of the  particular (files). <a title="Frame4J &mdash; Java Framework and tools" href="http://www.a-weinert.de/frame4j/" target="_blank">Frame4J</a>&#8217;s tool FS makes it ten minutes after its own run, if not told otherwise. So the mTime is repaired only if no later modifications were committed. That in sum gives you the expected and intuitive behaviour.</p>
<p>Hint 1: You must have at least ANT 1.7.1 as a bug of all older versions will crash on empty file sets due to files or directories deleted in between. As ANT (alas, they too!) keep this bug as a compatibility feature, we are very grateful that it can be switched off now (as could have been now ANT&#8217;s ugly 12h standard time format).</p>
<p>Hint 2: ANT, Frame4J and FS are all Java based. Insofar, under Windows, both ANT and FS suffer from the same ever recurring Java bug, that renders the mTime one hour wrong if it falls in summer time and Windows&#8217; summer time automatic is on. As this bug (considered closed by SUN but recurring in 1.6_1x) hits both mTime reading and setting, the effect might be compensated here. Anyway, it will be better to switch of the (innocent!) Windows automatism before doing the work described above. </p>
]]></content:encoded>
			<wfw:commentRss>http://blog.a-weinert.de/betriebssysteme/windows/subversion-bug-repair/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Subversion on Windows</title>
		<link>http://blog.a-weinert.de/betriebssysteme/windows/subversion-on-windows/</link>
		<comments>http://blog.a-weinert.de/betriebssysteme/windows/subversion-on-windows/#comments</comments>
		<pubDate>Mon, 26 Oct 2009 12:41:49 +0000</pubDate>
		<dc:creator>Albrecht Weinert</dc:creator>
				<category><![CDATA[English publication]]></category>
		<category><![CDATA[Werkzeuge (Tools)]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://blog.a-weinert.de/betriebssysteme/windows/subversion-on-windows/</guid>
		<description><![CDATA[The Tutorial
Subversion &#8212; on Windows with Active Directory
is available in German  language (so far only ) as
Subversion &#8212; mit Windows und Active Directory
It describes the installation and the experiences gained with an subversion (SVN) server in a Windows domain environment.
Authentication of SVN clients (Browser, Eclipse, svn.exe, Tortoise etc.) is done &#8212; of course &#8212; [...]]]></description>
			<content:encoded><![CDATA[<p>The Tutorial</p>
<p class="western" style="padding-left: 30px; color: #8888A8; font-family: Arial,sans-serif; font-size:18px;">Subversion &mdash; on Windows with Active Directory</p>
<p>is available in German  language (so far only ) as</p>
<p class="western" style="padding-left: 30px; color: #8888A8; font-family: Arial,sans-serif; font-size:18px;">Subversion &mdash; mit Windows und Active Directory</p>
<p class="western">It describes the installation and the experiences gained with an subversion (SVN) server in a Windows domain environment.</p>
<p class="western">Authentication of SVN clients (Browser, Eclipse, svn.exe, Tortoise etc.) is done &mdash; of course &mdash; using the Active Directory domain accounts.</p>
<p>Download: <a title="Subversion &mdash; mit Windows und Active Directory" href="http://a-weinert.de/weinert/pub/svn-win-de.pdf" target="_blank">http://a-weinert.de/pub/svn-win-de.pdf</a></p>
<p>Comments, corrections, completions and translations are welcome.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.a-weinert.de/betriebssysteme/windows/subversion-on-windows/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Windows (2003) DNS and DHCP from command line</title>
		<link>http://blog.a-weinert.de/betriebssysteme/windows-2003-dns-and-dhcp-from-command-line/</link>
		<comments>http://blog.a-weinert.de/betriebssysteme/windows-2003-dns-and-dhcp-from-command-line/#comments</comments>
		<pubDate>Mon, 28 Sep 2009 13:42:33 +0000</pubDate>
		<dc:creator>Albrecht Weinert</dc:creator>
				<category><![CDATA[Betriebssysteme]]></category>
		<category><![CDATA[English publication]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://blog.a-weinert.de/?p=476</guid>
		<description><![CDATA[Administering a well running DHCP and DNS on a Windows 2003 server is quite easy with the graphical tools  &#8212; if the domain and number of tasks is small. But sooner or later the administrator wants automating those tasks  by using the command line and scripting.
Adding a workstation, printer or other device to [...]]]></description>
			<content:encoded><![CDATA[<p>Administering a well running DHCP and DNS on a Windows 2003 server is quite easy with the graphical tools  &mdash; if the domain and number of tasks is small. But sooner or later the administrator wants automating those tasks <span id="more-476"></span> by using the command line and scripting.</p>
<p>Adding a workstation, printer or other device to one of your your domains net usually involves
<ul>
<li> adding an entry to the DHCP,</li>
<li> adding an entry (A) to the DNS forward lookup zone and</li>
<li> adding one to three reverse (PTR) entries.</li>
</ul>
<p>Removing the thing later involves the deleting of all those entries made. </p>
<p>Doing that by the GUI for more than three devices usually guarantees mistakes and inconsistencies. But alas, Microsofts DNS and DHCP command line tools are neither simple to use nor well documented. Some hide essential sub-commands and options in their help text. (And, as usual, one has to be installed afterwards even on the enterprise edition server).</p>
<p>So, after  several hours of googling (finding more of the same questions than answers) and (partly dangerous) experiments I put all in one 100 line batch script. The size might be deterring at first sight. But I think it&#8217;s self documenting in the sense that ist answers a lot of the questions found. Experience so far shows the thing working quite well running (remote logged in) on the DHCP server itself.</p>
<p>The script might might be easily adapted to your environment by changing lines 16 to 21 accordingly. Here it is:</p>
<div style="padding-left: 30px; color: blue;">
@Echo.<br />
@Echo hostAdd.bat V.01.00 28.09.2009 (c) Copyright Albrecht Weinert (a-weinert.de)<br />
@Echo.<br />
@Echo hostAdd.bat adds or removes  DNS and (optionally) DHCP entries<br />
@Echo.</p>
<p>@if %2X==X       goto :usage<br />
@if /I %1==-help goto :usage<br />
@if /I %1==/help goto :usage<br />
@if %1==-?       goto :usage<br />
@if /I %2==-help goto :usage<br />
@if /I %2==/help goto :usage<br />
@if %2==-?       goto :usage</p>
<p>@if %NET_START%X==X   goto :setDefault<br />
@if %REVERSE_ZONE%X==X goto :setDefault<br />
@if %FORWARD_ZONE%X==X goto :setDefault<br />
@if %DHCP_SERVER%X==X  goto :setDefault<br />
@if %DHCP_SCOPE%X==X  goto :setDefault<br />
@if %DNS_CMD%X==X    goto :setDefault<br />
@goto :domSubIsSet</p>
<p>:setDefault<br />
@Echo.<br />
@Echo Calling the first time in this environment<br />
@Echo.<br />
@echo setting Domain (FORWARD_ZONE), subnet (NET_START) etc.</p>
<p>@REM Do change these settings according to your DNS/DHCP-Server<br />
set    NET_START=192.168.89<br />
set  DHCP_SERVER=192.168.89.11<br />
set   DHCP_SCOPE=192.168.89.0<br />
set REVERSE_ZONE=89.168.192.in-addr.arpa</p>
<p>set FORWARD_ZONE=fb3-meva.fh-bochum.de<br />
set DNS_CMD=&#8221;C:\Programme\Support Tools\dnscmd.exe&#8221;</p>
<p>@echo did set zones, subnet etc.: Is it so OK?  cntl-C if not!<br />
@Echo.<br />
@pause<br />
@Echo.<br />
:domSubIsSet</p>
<p>@if /I %1==-delete goto :delete<br />
@if /I %1==/delete goto :delete<br />
@if /I %1==-add shift<br />
@if /I %1X==/addX shift</p>
<p>@if %2X==X       goto :usage<br />
@if NOT %6X==X   goto :usage</p>
<p>@Echo Add Host to %NET_START%. private subnet of domain %FORWARD_ZONE%<br />
@Echo.<br />
@echo IP-End      = %1     IP = %NET_START%.%1<br />
@echo simple name = %2 (no dot or domain added!)<br />
@echo MAC-address = %3 (Form is: 000e8c8faabb)<br />
@echo.<br />
@if %2X==X goto :usage<br />
@if %3X==X goto :dns</p>
<p>:dhcp<br />
@Echo making DHCP for %NET_START%.%1 = %2 = %3, &#8220;%4&#8243; %5<br />
@echo.<br />
@REM  add reservedip IP MAC [ClientName] [ClientComment] [{DHCP | BOOTP | BOTH}]<br />
@echo Dhcp Server %DHCP_SERVER% Scope %DHCP_SCOPE% Add reservedip %NET_START%.%1 %3 %2 %4 %5<br />
@netsh Dhcp Server %DHCP_SERVER% Scope %DHCP_SCOPE% Add reservedip %NET_START%.%1 %3 %2 %4 %5<br />
@echo.</p>
<p>:dns<br />
@Echo making DNS for %NET_START%.%1 = %2<br />
@echo.<br />
<br />
%DNS_CMD% . /recordadd %FORWARD_ZONE% %2 A %NET_START%.%1<br />
%DNS_CMD% . /recordadd %REVERSE_ZONE% %1 PTR %2.<br />
%DNS_CMD% . /recordadd %REVERSE_ZONE% %1 PTR %2.%FORWARD_ZONE%<br />
@goto :end</p>
<p>:delete<br />
@shift<br />
@echo.<br />
@echo Deleting %1 %2 %3<br />
@echo.<br />
@if %2X==X       goto :usage<br />
@if NOT %4X==X goto :usage<br />
@if /I %1==-help goto :usage<br />
@if /I %1==/help goto :usage<br />
@if %1==-?       goto :usage<br />
<br />
if %3X==X goto :noMAC</p>
<p>@Echo Deleting DNS entries for %3 = %NET_START%.%1  (%2)<br />
@netsh Dhcp Server %DHCP_SERVER% Scope %DHCP_SCOPE% delete reservedip %NET_START%.%1 %3<br />
@echo.</p>
<p>:noMAC<br />
@Echo Deleting DNS entries for %2 = %NET_START%.%1<br />
%DNS_CMD% . /recorddelete  %REVERSE_ZONE% %1 PTR %2. /f<br />
%DNS_CMD% . /recorddelete  %REVERSE_ZONE% %1 PTR %2 /f<br />
%DNS_CMD% . /recorddelete  %REVERSE_ZONE% %1 PTR %2.%FORWARD_ZONE% /f<br />
%DNS_CMD% . /recorddelete  %FORWARD_ZONE% %2 A %NET_START%.%1 /f<br />
@goto :end</p>
<p>:usage<br />
@echo.<br />
@echo Usage of  hostAdd.bat<br />
@echo.<br />
@Echo hostAdd [-add] IP-end  name<br />
@Echo adds DNS A and PTR records to this servers DNS<br />
@Echo.<br />
@Echo hostAdd [-add] IP-end  name MAC ["comment "  [type]]<br />
@Echo additionally adds DHCP entry<br />
@Echo.<br />
@Echo &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
@Echo.<br />
@Echo.<br />
@Echo hostAdd -delete IP-end  name<br />
@Echo deletes the DNS entries<br />
@Echo.<br />
@Echo hostAdd -delete IP-end  name MAC<br />
@Echo additionally deletes the DHCP entry<br />
@Echo.<br />
@Echo &#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;-<br />
@Echo.</p>
<p>@echo settings used:<br />
@set NET_START<br />
@set FORWARD_ZONE<br />
@set REVERSE_ZONE<br />
@set DHCP_SERVER<br />
@set DHCP_SCOPE<br />
@set DNS_CMD</p>
<p>:end<br />
@echo.
</p></div>
]]></content:encoded>
			<wfw:commentRss>http://blog.a-weinert.de/betriebssysteme/windows-2003-dns-and-dhcp-from-command-line/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>WordPress (en)</title>
		<link>http://blog.a-weinert.de/allgemein/produktbespesprechung/wordpress-en/</link>
		<comments>http://blog.a-weinert.de/allgemein/produktbespesprechung/wordpress-en/#comments</comments>
		<pubDate>Tue, 15 Sep 2009 14:01:06 +0000</pubDate>
		<dc:creator>Albrecht Weinert</dc:creator>
				<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Produktbesprechung]]></category>
		<category><![CDATA[Werkzeuge (Tools)]]></category>

		<guid isPermaLink="false">http://blog.a-weinert.de/allgemein/produktbespesprechung/wordpress-en/</guid>
		<description><![CDATA[This Blog hosted at 1&#38;1 uses WordPress. Please find here some remarks on usage and experiences.
The Software
 &#160; 
This blog is running since 2008 starting with WordPress&#8217;s German version 2.6.0 and using a modified TerraFirma theme (see below).  In August 2009 it was updated  to 2.8.4 by hand.
The whole WordPress software is a [...]]]></description>
			<content:encoded><![CDATA[<p>This Blog hosted at 1&amp;1 uses WordPress. Please find here some remarks on usage and experiences.</p>
<h2>The Software</h2>
<p> &nbsp; <br />
<a title="to the blog's survey" href="http://blog.a-weinert.de/" target="_self">This blog</a> is running since 2008 starting with WordPress&#8217;s German version 2.6.0 and using a modified TerraFirma theme (see <a href="#theme">below</a>).  In August 2009 it was updated  to 2.8.4 <a title="A good how to" href="http://www.blog.redcentaur.com/2009/upgrading-to-wordpress-2-8/">by hand</a><span id="more-449"></span>.</p>
<p>The whole WordPress software is a great cluster of PHP plus a good load of JavaScript, e.g., for the client side editors.</p>
<p>Basically a Blog is a web service like all many others — Wikis, shops, Web GUIs for automation (process control) systems and else. For Java people or a Java Web service lady the question arises, why not use a  blog implemented as J2EE-Webservice.</p>
<p>The answer is: You have no choice most of the times &mdash; and for two reasons. Most providers, like 1&amp;1 used here,  do not offer J2EE up to the middle or even higher contract categories, whereas its hard to find something just above the cheapest entry offers without PHP or MySQL. Additionally, the learning curve or the small project entry level is an order of magnitude lower for PHP compared to J2EE, leading to a wide popularity. An when a PHP project has grown into problems, not known to J2EE approaches, changing horses seems infeasible or too bloody. So you&#8217;ll find for Blogs, Wikis etc. myriads of PHP aproaches, while you have to search  Java solutions &mdash; at least free ones &mdash; like the needle in the haystack.</p>
<h2>Host and Installation</h2>
<p> &nbsp; <br />
Like the web sites <a title="Prof. Dr.-Ing. Albrecht Weinert" href="http://a-weinert.de" target="_self">a-weinert.de</a>, <a title="Laboratory for Media and versatile Applications" href="http://meva-lab.de" target="_self">etc.</a> this Blog is hosted at 1&amp;1. The contract — here Business 5.0  — offers sufficient PHP and MySQL resources (but as already discussed, no J2EE container, like e.g. <a title="Tomcat auf Windows mit Active Directory" href="http://blog.a-weinert.de/java/tomcat-auf-windows/" target="_self">Tomcat)</a> .</p>
<p>For most of its hosting contracts down to the entry level, 1&amp;1 offers a Blog, that may itself be WordPress based. This &#8220;home made&#8221; Blog can be activated by quite a few mouse clicks. Thus the web-master may avoid installing WordPress, handling updates, themes plug-ins etc. or &mdash; worst of all &mdash; learning some PHP.</p>
<p>So why anyone should want to install WordPress or another Blog software in the own  1&amp;1 web space? 1&amp;1&#8217;s description of its Blog &mdash; quite openly by the way &mdash; shows that the simple entry is paid by quite a bundle of limitations. Who can&#8217;t accept those limits shall not use the offered pre-installed standard Blog. Just taking it without consideration and then whinge in (other) Blogs and mailing lists is a frequent habit &mdash; but neither clever nor fair. </p>
<p>Before installing Wordpress you must activate the MySQL database, if not yet done. The access data to your 1&amp;1 DB are required in the process. Installing WordPress and here the TerraFirma theme is done by just uploading. Just follow WordPress&#8217;  5 minutes installation. Well, it usually takes a bit longer, until everything runs and looks to your wishes. The quite stupendous update from (in our case) 2.6.0 to 2.8.4 is done best by hand; the &#8220;How to&#8221; mentioned  above is in the end the deleting of all not individualised files and uploading all others from the new WordPress version.</p>
<h2 id="theme">On the theme &mdash; TerraFirma</h2>
<p> <img src="http://blog.a-weinert.de/wp-content/uploads/screenshotbefore.jpg" alt="TerraFirma theme before the thorough modification" align="right" vspace="4" hspace="6" style="margin-left: 12px; margin-bottom: 8px;" title="TerraFirma theme before the thorough modification" width="297" height="300" /></p>
<p>A theme, in the sense of WordPress, is the GUI or design, that may easily be exchanged, at least in theory. This Blog used TerraFirma from the beginning with only the slightest modifications then.</p>
<p style="padding-left: 40px;">Figure right: That was the original look, before the thorough modification.</p>
<p>The post-treatment of the WordPress update mentioned motivated an extensive alteration of the used theme. TerraFirma connoisseurs will notice the dropping of the hatched border areas in greyish yellow and before all the Good bye to the fixed width.</p>
<p>This was supplemented by changes (mostly on the CSS) towards an almost similar look an IE 8 and the essential non Microsoft browsers as well as (quite seldom at WordPress) a nice printability.</p>
<p>Even if worlds better than its predecessor, the IE8 still has some annoying aberrations and problems, So, for example,  &#8220;&#8230; :before {content:url ..&#8221; still does not work. Hence the IE8 won&#8217;t display nor print design elements (logos) anchored in the CSS. For the display the (stupid) simultaneous use of background images is a work around (used here), but the printing can&#8217;t be healed by acceptable means. So, let&#8217;s look forward to or put our hopes on later IEs.</p>
<h2 id="theme">On buttons, drop downs and slides</h2>
<p>The CSS mentioned above are first class means to have a Wordpress BLog look almost like &#8220;normal&#8221; (XHTML) Web pages.  2011 we used JQuery (+superfish) dropdown menus and slide shows for most web sides supported by <a title="Prof. Dr.-Ing. Albrecht Weinert &mdash; development service consulting" href="http://weinert-automation.de" target="_self">weinert &#8211; automation</a>. The same  changes are easily applied to the BLog. The only .php file to (again) be modified was &lt;SVN-repo&gt;/we-www/blog-1/wp-content/themes/terrafirma/header.php .</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.a-weinert.de/allgemein/produktbespesprechung/wordpress-en/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Ubuntu und VirtualBox</title>
		<link>http://blog.a-weinert.de/allgemein/ubuntu-und-virtualbox/</link>
		<comments>http://blog.a-weinert.de/allgemein/ubuntu-und-virtualbox/#comments</comments>
		<pubDate>Tue, 25 Aug 2009 16:38:26 +0000</pubDate>
		<dc:creator>Albrecht Weinert</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[Betriebssysteme]]></category>
		<category><![CDATA[Java]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Open Source]]></category>
		<category><![CDATA[Windows]]></category>

		<guid isPermaLink="false">http://blog.a-weinert.de/?p=337</guid>
		<description><![CDATA[Warum sollte man Ubuntu in einer VirtualBox auf Windows installieren wollen?
Auch in einer von Windows geprägten Umgebung hätte man ab und zu gerne auch mal ein Linux-System — und sei es nur um Interoperabilität und Kompatibilität von Werkzeugen und Software zu testen. Der Bedarf hierzu ergibt sich insbesondere bei größeren Java-Softwareprojekten, wie Frame4J, Eclipse, Tomcat [...]]]></description>
			<content:encoded><![CDATA[<p>Warum sollte man Ubuntu in einer VirtualBox auf Windows installieren wollen?</p>
<p>Auch in einer von Windows geprägten Umgebung hätte man ab und zu gerne auch mal ein Linux-System — und sei es nur um Interoperabilität und Kompatibilität von Werkzeugen und Software zu testen. Der Bedarf hierzu ergibt sich insbesondere bei größeren Java-Softwareprojekten, wie <a title="Frame4J ein leistungsfähiges Java-Framework" href="http:///frame4j.de/">Frame4J</a>,<span id="more-337"></span> Eclipse, Tomcat etc.</p>
<p>Die Ziele einer solchen Linux-Installation sind im Allgemeinen:</p>
<ol>
<li>Grundsystem mit Linux-typischen Werkzeugen zum Kennenlernen.</li>
<li>Web-Zugang (mit Browser etc.).</li>
<li>Zugang zu Windows-Ressourcen (file, print) oder</li>
<li>Windows-Zugang zu Linux-Verzeichnissen oder beides.</li>
<li>Java-Development-Kit von Sun (1.6.16 oder höher).</li>
<li>Diverse Java-Erweiterungen insbesondere Frame4J und Zugriff zu Schnittstellen.</li>
<li>IDE, Eclipse (3.4).</li>
<li>Zugang zu Content- und Versionsverwaltungssystemen auf Windows-Servern (SVN, cvsNT u.a.).</li>
<li>Weitere (Software-, CAx-) Engineering-Tools</li>
</ol>
<p>Nachträglicher Einschub, Juni 2010: Bevor Sie zuviel hoffen, lesen Sie den Nachtrag am Ende.</p>
<p>Neben einer stand-alone Installation von für Windows-verwöhnte vorzugsweise Ubuntu, mit allen im Artikel &#8220;<a title="Ubuntu nutzen" href="http://blog.a-weinert.de/automatisierung/ubuntu-nutzen/">Ubuntu-Einstieg für Windows-Experten</a>&#8221; geschilderten Schwierigkeiten, bietet sich auch eine Ubuntu-Installation auf einer virtuellen Maschine an. Dies wird hier am Beispiel Windows Server 2003 Enterprise (V5.2, SP2) oder auch nur ein XP, Sun VirtualBox V3.4.0 (mit VBoxAdditions 3.0.4) und  Ubuntu 9.04 geschildert.</p>
<p>Die sinngemäße Übertragung auf andere Versionen und Varianten von Windows und VirtualBox sollte einfach sein. Die Unterschiede und Inkompatibilitäten zwischen Linux-Versionen und -Varianten sind hingegen im Allgemeinen so gravierend, dass die direkte Übernahme von anderweitig erprobten Tipps und Anleitungen leider selten gelingt.</p>
<h3>Installation der VirtualBox</h3>
<p>Man hole sich eine Installationsdatei wie</p>
<p style="padding-left: 30px;">15.08.2009   71.195.152    VirtualBox-3.0.4-50677-Win.exe</p>
<p>21.11.2009   72.333.840    VirtualBox-3.0.12-54655-Win.exe</p>
<p>oder neuer und lasse sie laufen. Das ist problemlos und einfach.</p>
<p>Lediglich die Registrierung, die man ansonsten ja gerne machen würde, unterlässt man. Sie scheitert an zwei Bugs: Die Sun-Software kommt direkt nicht mit (Firmen-) Routern und Proxies klar und bei der Authentifizierung wird der SUN-account in Form einer e-Mail verlangt (die er definitiv nicht hat).</p>
<p>Wegen des ersten Grunds funktionieren auch Updates bzw. Update-Abfragen der VirtualBox in Firmennetzen nicht. Die VirtualBox erlaubt selbst keinerlei Proxy-Einstellungen und übernimmt auch die von Windows oder von Web-Anwendungen nicht.</p>
<h3>Herstellen einer virtuellen Maschine</h3>
<p>Dies ist der nächste Schritt nach dem Starten der eben installierten Anwendung VirtualBox. Am besten geht man durch sämtliche Einstellungsmenus einmal durch. In den meisten Fällen kann und sollte man die default-Einstellungen beibehalten.</p>
<p><em>Speicher und Platte</em>: Wenn man eine leistungsfähige und gut ausgestattete Windows-Workstation hat, kann man die Einstellungen bezüglich Arbeitsspeicher und Plattengrößen ruhig etwas großzügiger wählen — und wenn nicht, wird man am virtuellen System eh wenig Freude haben.</p>
<p><em>Bootreihenfolge</em>: CD/DVD dann Platte (default; lassen).</p>
<p>CD /DVD: Hier bindet man ein echtes CD-Laufwerk (z.B. G:) des Wirtssystems ein. Von diesem kann dann auch die Installations-CD / -DVD booten. Eine Alternative (siehe unten) ist die einfache Einbindung eines ISO-Images einer Installations-CD.</p>
<p><em>Audio und Netzwerk</em>: Hier übernimmt man die default-Einstellungen (Windows direkt bzw. NAT).</p>
<p><em>Serielle Schnittstelle und USB</em>: Beides einbinden. COM1 steht als serieller Port dann Linux und dem Java Framework Frame4J zur Verfügung.</p>
<p><em>Gemeinsame Ordner</em>: Hier sollte man auf jeden Fall (mindestens) ein Windowsverzeichnis ( z.B. S:\forAll als sforall) bereitstellen. Ein solches für Linux sichtbares Verzeichnis ist der einfachste Weg für den Dateitransfer.</p>
<h3>Installieren von Ubuntu</h3>
<p>Wenn man die eben erstellte virtuelle Maschine startet, versucht sie vom eingebundenen CD-Laufwerk zu booten. Hier kann man nun eine &#8220;echte&#8221; CD mit (für unser Beispiel) Ubuntu 9.04 einlegen, wie sie beispielsweise &#8220;Linux intern 03/09&#8243; beilag.</p>
<p>Als (bessere, weil schnellere) Alternative kann man ein ISO-Image (ggf. von der selben CD oder aus dem Netz), wie oben erwähnt, statt des Laufwerks einbinden; z.B.</p>
<p style="padding-left: 30px;">ubuntu-9.04-desktop-i386.iso    20.04.2009    732.909.568</p>
<p>ubuntu-9.10-beta-desktop-i386.iso    17.10.2009     731.252.736</p>
<p>Im letzter Fall gelangt man nach dem Start sofort zur Ubuntu-Installation mit dem Sprachauswahlfenster als ersten Gruß, der schnell beantwortet sein will. Hier klickt man sich nun durch. Die meisten Ubuntu-Einstellungen, auch zur Partitionierung, kann man wie vorgeschlagen übernehmen.</p>
<p>Bei all dem muss man erst mal nur wissen, dass man die Maus mit der unteren rechten cntl / Strg -Taste aus der VirtualBox befreit. Mit den guest extensions wird das gleich viel besser.</p>
<p>Falls man ein eingebundenes ISO-Image zur Installation benutzt hat (s.o.), sollte man dies vor dem Neustart der erfolgreich installierten Ubuntu-Maschine durch ein &#8220;echtes&#8221; CD-/DVD-Laufwerk (das möglichst leer ist!) ersetzen.</p>
<h3>Guest-Extensions</h3>
<p>Diese sind eine Spezialität von SUN&#8217;s VirtualBox und für komfortables Arbeiten ein Muss. Mit ihnen bekommt man</p>
<ul>
<li>vernünftige (beliebige) Bildschirmgrößen bzw. -auflösungen,</li>
<li>Freiheit für die Maus (könnte eine Tierschutzparole sein, ist es aber nicht),</li>
<li>Einbindung von Windowsverzeichnissen als Linux mount und</li>
<li>Zugriff auf Geräte und (serielle) Schnittstellen.</li>
</ul>
<p>Als Preis für den (enormen) Gewinn stellen diese extensions einen ziemlichen Umbau des Linux-Systems dar. Dieser Umbau setzt einmal Einiges an installierten Werkzeugen voraus (Ant, Make, C, kernel-includes und was nicht alles). Die meisten Ubuntu-Installationen bringen diese gleich mit; bei Suse hingegen fehlt oft was. Und zum anderen überlebt der &#8220;Umbau&#8221; größere Updates nicht. Dennoch sollte man zuerst die  guest extensions installieren und zum Laufen bringen.</p>
<p>Nach dem (Neu-) Start befiehlt man der VirtualBox</p>
<p>&#8220;Geräte -&gt; Erweiterungen installieren&#8221;.</p>
<p>Letzteres installiert gar nichts, sondern bindet nur ein Laufwerk mit der entsprechenden Software ein.</p>
<p>Zur Installation öffnet man eine Shell (Anwendungen -&gt; Zubehör &#8211; &gt; Terminal [sic!]) und gibt dort den folgenden  Befehl:</p>
<p style="padding-left: 30px;">sudo  &#8216;/media/cdrom0/VBoxLinuxAdditions-x86.run&#8217;</p>
<p>Anschließend (nach Erfolg) darf man neu starten.</p>
<h3>Ubuntu (guest extended = ) wohnlich machen</h3>
<p>Als erstes kann man nun das VirtualBox = Ubuntu &#8211; Fenster von der unzumutbaren Winzigkeit auf eine komfortable Größe ziehen.</p>
<p>Diese feature hat man ebenso wie die freie Maus und die gemeinsame Zwischenablage &#8220;umsonst&#8221;.</p>
<p>Für alles Andere muss man noch ein bisschen arbeiten.</p>
<p><em>Windowsverzeichnis (s.o.) einbinden</em>: Hierzu geht man wieder in die shell. Die braucht man so oft, dass man sie sich am besten gleich auf die Leiste (oben) zieht. In ihr gibt die folgenden Kommandos:</p>
<p style="padding-left: 30px;">sudo mkdir /mnt/sforall</p>
<p>cd /mnt/</p>
<p>dir</p>
<p>sudo mount -t vboxsf forAll /mnt/sforall</p>
<p>dir sforall</p>
<p>Unter Umständen geht das &#8220;sudo mount&#8221; schief  (mit protocol error oder Ähnlichem).  Nicht verzagen, sondern Folgendes versuchen:</p>
<ul>
<li>Aushängen und wieder Einhängen des Windows-Ordnersunter VirtualBox -&gt; Gerät.</li>
<li> Neuinstallation der guest extensions.</li>
<li> Ubuntu Neustart.</li>
</ul>
<p>Insbesondere der letzte Schritt kommt dauernd und hilft sehr oft; hier scheint Linux 9.04 schlimmer zu sein als es ältere Windows-Varianten je waren.</p>
<p>Nun gut. Wenn Alles klappte, sieht man unter Ubuntu&#8217;s /mnt/forall/ einen Windows-Verzeichnisbaum zum Lesen und Schreiben. (Den Trick macht das file system vboxsf der VirtualBox (extensions).)</p>
<p><em>Windowsverzeichnis permanent einbinden</em>: Der eben (hoffentlich) erlebte Erfolg überlebt den nächsten Neustart nicht. Das</p>
<p style="padding-left: 30px;">sudo mount -t vboxsf forAll /mnt/sforall</p>
<p>müsste jedes mal wiederholt werden. Das permanent Machen geht erfahrungsgemäß (nur) so:</p>
<p style="padding-left: 30px;">sudo gedit &#8216;/etc/init.d/vboxplusmount&#8217;</p>
<p>sudo update-rc.d vboxplusmount defaults</p>
<p>cd &#8216;/etc/init.d&#8217;</p>
<p>sudo chmod +x vboxplusmount</p>
<p>(Alle Befehle in der shell.) Im mit gedit geöffneten Texteditor gibt man</p>
<p>folgenden Zweizeiler ein:</p>
<p style="padding-left: 30px;">#!/bin/bash</p>
<p>mount -t vboxsf forAll /mnt/sforall</p>
<p>Das war&#8217;s. Nun hat man den &#8220;mount&#8221; nach jedem Start automatisch. (Test mit Neustart.)</p>
<h3>Netzwerk nach außen und Updates</h3>
<p>Bei tatsächlicher oder per Fritzbox-DSL (oder sonstwie gescheiter Netzwerk-Administration) vorgegaukelter direkter Verbindung zum Internet funktioniert die Verbindung nach außen für&#8217;s Ubuntu nun im Allgemeinen schon. Bei Routern und Proxies (von Firmennetzwerken)  hat SUN&#8217;s VirtualBox selbst Probleme und die dazu vorgeschlagenen Abhilfen sehen Eingriffe bei den Routern etc. vor, was sich i.A. von selbst verbietet.</p>
<p>Hier lässt nun wenig allgemeingültiges sagen. Leidvolle Experimente zeigten, dass die für den unterlagerten Windows-Host problemlos funktionierenden Automatismen, Proxy-Scripte etc. nicht aufs gehostete Ubuntu übertragbar sind. Das Einzige, was letztlich (im Beispielfall)  funktionierte, war (in Ubuntu) unter System -&gt; Einstellungen -&gt; Netzwerk-Proxy den Firmen-Proxy fest und ohne wenn und aber für alle Protokolle einzusetzen (i.A. als NameSedProxy und port 8O8O).</p>
<p>Der minimale Test ist der Zugang zum (externen) Internet mit dem Firefox in dessen Installationseinstellung. Solange das nicht geht, braucht man Updates, Downloads etc. aus Ubuntu heraus gar nicht erst versuchen.</p>
<p>Im Erfolgsfalle ist es nun an der Zeit mal</p>
<p>System -&gt; Systemverwaltung -&gt; Aktualisierungsverwaltung</p>
<p>zu versuchen. Im Allgemeinen hat sich gegenüber der bei der Installation verwendeten CD bzw. dem ISO-Image schon Einiges geändert.</p>
<p>Dies sollte man per Zustimmung installieren. Je nach Bandbreite und (virtueller) Rechnerleistung kann dies Ganze schon etwas dauern. Hinzu kommen zwei Neustarts: einer fürs Update und einer nach der erneut fälligen Installation der durch die Updates (meist) zerstörten guest additions.  Kriterium für zerstörte guest additions sind natürlich:</p>
<p>a) Maus gefangen,</p>
<p>b) keine gemeinsame Zwischenablage und</p>
<p>c) o.a. mount (mnt/sforall/ im Beispiel) geht nicht mehr.</p>
<p>Wenn das so ist, &#8230;</p>
<p style="padding-left: 30px;">sudo  &#8216;/media/cdrom0/VBoxLinuxAdditions-x86.run&#8217;</p>
<p>Und wenn man schon beim &#8220;Updaten&#8221; ist, holt man sich gleich ein paar später doch vermisste Kleinigkeiten:</p>
<p style="padding-left: 30px;">sudo apt-get install traceroute</p>
<p>sudo apt-get install gcal</p>
<h3>Zwischen-Resümee</h3>
<p>Nun haben wir ein erfolgreich installiertes und aktualisiertes und dank SUNs guest extensions gut in Windows integriertes Linux-System.</p>
<p>Die ganze virtuelle Maschine mit unserem schönen Ubuntu lässt sich mit export appliance exportieren und nach Transfer der .ocf und .vdmk files anderswo aufsetzen.  Auf diese Weise gelingt auch das Verpflanzen des auf einer VirtualBox unter Windows Server 2003 enterprise gemachten Ubuntu auf einen XP-Laptop.</p>
<p>Es muss allerdings gesagt werden: Die &#8220;Transplantation&#8221; dauert ihre Zeit.</p>
<h3>Java-Installation</h3>
<p>So komisch es klingt: Wenn man Glück hat, ist noch kein Java installiert.</p>
<p>Wenn man Pech hat, gibt es schon (ein wild verlinktes) GNU-Java i.A. letztlich zu finden unter: /usr/lib/jvm/java-6-openjdk/bin</p>
<p>Dieses würde sich nach</p>
<p style="padding-left: 30px;">java -version</p>
<p>bzw.</p>
<p style="padding-left: 30px;">/usr/lib/jvm/java-6-openjdk/bin/java -version</p>
<p>so vorstellen:</p>
<pre> java version "1.6.0_0"
 OpenJDK Runtime Environment (IcedTea6 1.4.1) (6b14-1.4.1-0ubuntu11)
 OpenJDK Client VM (build 14.0-b08, mixed mode, sharing)</pre>
<p>Wir möchten aber SUNs Java 1.6.16 oder neuer und sind eher froh, wenn  das eben Gezeigte nicht geht. Der eine Weg zum Gewünschten geht über die Paketverwaltung  und der andere über den Download von SUN;  z.B. von</p>
<p style="padding-left: 30px;">21.11.2009    81.792.634 jdk-6u17-linux-i586.bin</p>
<p>das man über das gemeinsame Verzeichnis (S:\forAll -&gt; /mnt/sforall/) bereitstellen kann. Diese Datei lässt man einfach laufen. Kommandofolge:</p>
<p style="padding-left: 30px;">mnt/sforall/jdk-6u17-linux-i586.bin</p>
<p>sudo mkdir /usr/lib/jvm</p>
<p>sudo mv  /home/mapa/jdk1.6.0_17  /usr/lib/jvm/jdk</p>
<p>/usr/lib/jvm/jdk/bin/java -version</p>
<p>(alles in der Shell)</p>
<p>Um das Ganze dauerhaft und leicht verwendbar zu machen fügt man den folgenden Dreizeiler</p>
<p># java export</p>
<p>export JAVA_HOME=/usr/lib/jvm/jdk</p>
<p>export PATH=/usr/lib/jvm/jdk/bin:/usr/sbin:/usr/bin:/sbin:/bin</p>
<p>mit  sudo gedit /etc/profile so  ziemlich am Ende der bearbeiteten Datei ein. Dann geht der direkte Aufruf aller  Java-Werkzeuge und java -version liefert nun:</p>
<p style="padding-left: 30px;">java version &#8220;1.6.0_17&#8243;</p>
<p>Java(TM) SE Runtime Environment (build 1.6.0_17-b04)</p>
<p>Java HotSpot(TM) Client VM (build 14.3-b01, mixed mode, sharing)</p>
<h3>Java-Erweiterungen</h3>
<p>Nun holt man sich noch alle nützlichen Java-Erweiterungen (das meiste von der Windows-Installation)  zum Ubuntu. Die Dateien</p>
<p style="padding-left: 30px;">aweinertbib.jar  comm.jar  gwt-servlet.jar  junit.jar  servlet-api.jar</p>
<p>bcmail-jdk14-137.jar frame4j.jar iText-2.0.7.jar mail.jar toolbox.jar libLinuxSerialParallel.so  sowie javax.comm.properties</p>
<p>hat man vorher im o.g. gemeinsamen Verzeichnis bereitgestellt. Spielentscheidend ist frame4j.jar und außerdem, dass javax.comm.properties und libLinuxSerialParallel.so Linux-spezifisch sind.</p>
<p>Unter <a title="Java Framework - have fun" href="http://www.a-weinert.de/frame4j/">Frame4J</a> ist alles zu finden. Kommandofolge:</p>
<p style="padding-left: 30px;">cd /mnt/sforall</p>
<p>dir *.jar</p>
<p>dir *.so</p>
<p>dir *.properties</p>
<p>sudo cp *.jar /usr/lib/jvm/jdk/jre/lib/ext/</p>
<p>sudo cp javax.comm.properties /usr/lib/jvm/jdk/jre/lib/</p>
<p>sudo cp libLinuxSerialParallel.so   /usr/lib/</p>
<p>java AskAlert</p>
<p>java ShowProps</p>
<p>java ShowPorts</p>
<h3>Eclipse</h3>
<p>Für Eclipse Ganymede holt man die Datei (24.08.2009)</p>
<p style="padding-left: 30px;">89.249.110   eclipse-java-ganymede-SR2-linux-gtk.tar.gz</p>
<p>oder neuer und stellt sie (vom Windows-Host aus) im gemeinsamen Verzeichnis sforall (s.o.) bereit.</p>
<p>Kommandofolge zum Installieren und Starten:</p>
<p style="padding-left: 30px;">cd /usr/lib/</p>
<p>sudo tar xfzv  &#8216;/mnt/sforall/eclipse-java-ganymede-SR2-linux-gtk.tar.gz&#8217; /usr/lib/eclipse/eclipse</p>
<p>Wenn man vorher schon ein Projektverzeichnis ($HOMR/eclipseWS z.B.) anlegt und ein paar Projekte dorthin kopiert, kann&#8217;s gleich losgehen.</p>
<p>Geht sofort: Das oben installierte SUN Java wird erkannt und genommen — einschließlich aller installierten Erweiterungen (Frame4J etc.). JUnit geht.</p>
<p>Klappt nicht: Die Integration von Subversion (in vorhandene Projekte) geht nicht.</p>
<p>Wenn man sich einen &#8220;Starter&#8221; für Eclipse auf den Desktop oder die obere Leiste legt, fehlt scherzlich (man ist Ästhet)  die passende Ikone. Hierfür holt man sich am Besten ein entsprechendes .svg-Bild (scalable vector graphic) und macht sie sinngemäß so verfügbar:</p>
<p style="padding-left: 30px;">sudo cp &#8216;/mnt/sforall/eclipse-icon-clean.svg&#8217;</p>
<p>&#8216;/usr/share/icons/hicolor/scalable/apps/&#8217;</p>
<p>cd /usr/share/icons/hicolor/scalable/apps/</p>
<p>sudo  chmod 777 ./eclipse-icon-clean.svg</p>
<h3>Von Ganymede zu Galileo (z.B.)</h3>
<p>Ein update auf eine neuere Version wie beispielsweise</p>
<p style="padding-left: 30px;">02.09.2009 197.288.898 eclipse-jee-galileo-linux-gtk.tar.gz</p>
<p>oder neuer geht sinngemäß einfach so:</p>
<p style="padding-left: 30px;">cd /usr/lib/</p>
<p>sudo tar xfzv  &#8216;/mnt/sforall/eclipse-jee-galileo-linux-gtk.tar.gz&#8217;</p>
<p>Das einfach &#8220;Drüber Auspacken&#8221; ist ja etwas dreist — aber es funktioniert im Allgemeinen. Das Vorgehen, also das Weglassen des vorherigen Löschens, hat den zusätzlichen Charm, dass Zufügungen noch da sind, wie beispielsweise die des großen Deutschen Wortformenbuchs mit</p>
<p style="padding-left: 30px;">sudo cp &#8216;/mnt/sforall/de_DE.dic&#8217; &#8216;/usr/lib/eclipse/dropins&#8217;</p>
<p>sudo  chmod 777 /usr/lib/eclipse/dropins/de_DE.dic</p>
<p>Siehe hierzu den Blog &#8220;<a title="comprehensive German dictionary for Eclipse" href="http://blog.a-weinert.de/java/deutsches-worterbuch-fur-eclipse/">Deutsches Wörterbuch für Eclipse</a>&#8221; (<a title="comprehensiveGerman dictionary for Eclipse" href="http://blog.a-weinert.de/allgemein/a-comprehensive-german-dictionary-for-eclipse/">[en]</a>).</p>
<h3>Subversion</h3>
<p>Die Installation und Verwendung von Subversion ist schon unter Windows nicht ganz unkompliziert; siehe auch dieses <a title="Subversion  — mit Windows und Active Directory" href="http://www.a-weinert.de/pub/svn-win-de.pdf">Tutorial</a>.</p>
<p>Am Ende hat man ja</p>
<ol>
<li>den Server (i.a. auf Apache),</li>
<li>den command line client,</li>
<li>die Explorererweiterung (tortoise),</li>
<li>die Eclipse plugins</li>
</ol>
<p>und 5&#8230; evtl. noch mehr.</p>
<p>In der professionellen Umgebung ist es dann aber kein Problem, all dies aktuell und zueinander passend zu halten — zur Zeit des Schreibens auf V 1.6.5 .</p>
<p>Unter Ubuntu wird dies, scheint es, nicht so unterstützt. Die vorgegebenen Installationsverfahren liefern ein 1.5.x und behaupten dreist, dies sei der neuste Stand. Dies ist insofern &#8220;richtig&#8221;, als professionelle Subversion-Anbieter oft nur RedHat aber nicht Ubuntu unterstützen.</p>
<p>Der abweichende Stand 1.5.x vs. 1.6.x ist insofern störend, als diese nicht zueinander kompatibel sind. Übertragene oder gemeinsame Projekte (die sich in dieser Virtualisierungsumgebung ja geradezu anbieten) werden mit &#8220;Your subversion is too old to &#8230;&#8221; bzw. &#8220;Der Client ist zu alt, um mit der Arbeitskopie &#8230;&#8221; abgewiesen.</p>
<p>Die zum Windows-Stand passende Installationsdatei (27.08.2009)</p>
<p style="padding-left: 30px;">11.687.433 CollabNetSubversion-client-1.6.5-2.i386.rpm</p>
<p>(.rpm RedHat package manager) ist nicht direkt installierbar.</p>
<p>Aber letztlich führen diese shell-Kommandos zum Erfolg:</p>
<p style="padding-left: 30px;">sudo apt-get install alien</p>
<p>sudo alien -i</p>
<p>&#8216;/mnt/sforall/CollabNetSubversion-client-1.6.5-2.i386.rpm&#8217;</p>
<p>/opt/CollabNet_Subversion/bin/svn  &#8211;version</p>
<p>alien ist ein Programm, dass .rpm unter Ubuntu handhaben kann: das  erste Kommando installiert alien und das zweite nutzt es zum akuellen Zweck. Den Erfolg zeigt das letzte Kommando. Zur allgemeinen problemlosen Benutzbarkeit macht man mit sudo gedit /etc/profile (siehe oben) folgende Änderung</p>
<p style="padding-left: 30px;">export PATH=/usr/lib/jvm/java-6-sun/bin:/opt/CollabNet_Subversion/bin:/usr/sbin:/usr/bin:/sbin:/bin</p>
<p>(in einer Zeile!). Dies ist die wesentliche Verteidigungslinie gegen zusätzlich installierte Versionen von Subversion und Java. (Gegen die ist ja kein Kraut gewachsen: irgendwann nutzt man ein Installationspaket, indem eine Abhängigkeit steht; man passt nicht auf: und schwupp &#8230; ein zusätzliches &#8230;).</p>
<p>Zusätzlich ediert man noch $HOME/.subversion/servers und bringt dort sinngemäß folgendes rein:</p>
<p style="padding-left: 30px;">[global]</p>
<p>http-proxy-exceptions = *.fh-bochum.de, PD331S, pd331s, PD3047, pd3047</p>
<p>http-proxy-host = 193.175.85.14</p>
<p>http-proxy-port = 8080</p>
<p># http-proxy-username = defaultusername</p>
<p># http-proxy-password = defaultpassword</p>
<p># http-compression = no</p>
<p>http-auth-types = basic;digest;negotiate</p>
<p>In Ihren Fällen werden andere Einträge erforderlich sein. Die Regel ist für die o.a. Netzwerkeinstellungen der VirtualBox und des Ubuntu ganz einfach:</p>
<p>Kopieren Sie Ihre funktionierende Windows-Datei</p>
<p>C:\Dokumente und Einstellungen\&lt;konto&gt;\Anwendungsdaten\Subversion</p>
<h3>Subversion in Eclipse</h3>
<p>Die Integration, Nachinstallation und Nutzung, von SVN in Eclipse gestaltete sich, wie oben schon angedeutet schwieriger als erwartet und vor Allem viel schwieriger als unter dem Windows desselben (Host-) Rechners. Als Grundvoraussetzung gilt nach vielen Beshreibungen folgendes:</p>
<p style="padding-left: 30px;">sudo apt-get install libsvn-java</p>
<p>Das geht schnell und problemlos. Es hat zumindest nicht geschadet. Und festzustellen, ob&#8217;s wirklich nötig war, lohnt die Mühe nicht.</p>
<p>Das Holen der SVN-Erweiterung (und nur der) von</p>
<p style="padding-left: 30px;">http://subclipse.tigris.org/update_1.6.x</p>
<p>als &#8220;new update site&#8221; ist führt letzlich zum gewünschten Erfolg.</p>
<p>Es funktioniert aber erst mal nicht in der Form, dass nach langer (time out) Zeit jeweils nichts geschah bzw. über unmögliche Verbindungen gemeckert wurde. Es zeigte sich, dass das Linux-Eclipse obwohl es sich so konfigurieren läßt (und war) die Netzwerkeinstellungen des Systems oder von Browsern nicht übernimmt. Im Gegensatz zur Window-Ausführung funktioniert das Linux-Eclipse in einem Firmennetz nicht in Grundkonfiguration. Es kann keine Außenverbindungen knüpfen, weder für Updates bzw. Ergänzungen noch als SVN-Client.</p>
<p>Man kommt also wohl nicht umhin, unter</p>
<p style="padding-left: 30px;">Preferences -&gt; General -&gt; Network-Contections</p>
<p>die &#8220;manual settings&#8221; zu aktivieren und alle Proxy-Einstellungen auch hier noch mal  zu wiederholen.</p>
<p><small>Es darf angemerkt sein, dass dergleichen Mehrfachangaben bei Linux eher die Regel sind und doch Zweifel an Handhabbarkeit im professionellen Einsatz aufkommen lassen. Man muss (müsste und tuts ja doch nicht) langsam Buch führen, wo und in welcher Form und Weise man diese Einstellungen überall hingetragen hat, für den Fall, dass sich die Firmenfirewall mal ändert.</small></p>
<h3>Resümee</h3>
<p>Wir haben ein aktualisiertes und dank SUNs guest extensions gut in Windows integriertes Ubuntu, das auf einer flotten Host-Maschine auch ganz passabel schnell läuft. Mit SUN-Java, Eclipse und Subversion steht auch die unter Windows verwendete Entwicklungs- und Laufzeitsoftware mit gleichen Erweiterungen zur Verfügung, so daß die Zielsetzung der Windows-/Linux-Kompatibilitäts- und Interoperabilitätstests schon ganz gut erfüllt ist.</p>
<p>Was noch fehlt ist das Ganze noch runder zu machen. Dazu gehörte etwas dem Windows-Explorer Vergleichbares. Der &#8220;Orte&#8221; (wie &#8220;Städte&#8221;) genannte Nachbau kann, neben vielen anderen Mängeln, administrativ ja gar nichts. Damit ist gemeint, dass bei fast allen bebtrachteten Versionen etwas, wozu man &#8217;sudo&#8217; bruacht, graphisch nicht geht. Und eine Windows-vergleichbare (Tortoise) Integration von Subverion in einen solchen Explorer steht noch auf der Wunsch- /Todo-Liste.</p>
<h3>Nachträge Juni 2010 .. Januar 2011</h3>
<p>Es gab im Weiteren viele Tiefen und einige Höhen. Die (nun)  Oracle-Virtualbox wurde um Einiges besser.  Die Probleme mit der SUN-Registrierung und dem dauernden Zerschießen der guest additions  sind weg.</p>
<p>Auch Ubuntu hat sich weiterenwickelt und wurde auch schon mal &#8220;stand alone&#8221; installiert.</p>
<p>Alles ging teilweise gut bis zu Ubuntu 11.10. Bei dessen Installation, aber auch bei updates, kommt fast unabwendbar eine (Nicht-) Bedienoberfläche ins Spiel, die den Vorteile von Ubuntu (einfache Bedienbarkeit, orientiert am Standard) zunichte macht.</p>
<p>Nun beginnen mühsame Recherchen zu oft wirkungslosen Tipps, wie man den Unity genannten Quatsch loswird, Nach einer wirksamen Entfernung läuft in mancher lange (und gelegentlich gerne) betriebenen Installation nichts mehr. 11.10 ist wohl das Aus für Ubuntu. Siehe Artikel &#8220;Linux Mint is it&#8221;.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.a-weinert.de/allgemein/ubuntu-und-virtualbox/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>A comprehensive German dictionary for Eclipse</title>
		<link>http://blog.a-weinert.de/allgemein/a-comprehensive-german-dictionary-for-eclipse/</link>
		<comments>http://blog.a-weinert.de/allgemein/a-comprehensive-german-dictionary-for-eclipse/#comments</comments>
		<pubDate>Wed, 05 Aug 2009 09:07:24 +0000</pubDate>
		<dc:creator>Albrecht Weinert</dc:creator>
				<category><![CDATA[Allgemein]]></category>
		<category><![CDATA[English publication]]></category>
		<category><![CDATA[Werkzeuge (Tools)]]></category>

		<guid isPermaLink="false">http://blog.a-weinert.de/?p=286</guid>
		<description><![CDATA[If your HTML, XML and JavaDoc is to some extend German (and not just English) Eclipse&#8217;s spell checker gets more bothering than a help. Here the Java and Web developer gets a comprehensive German dictionary containing more than 22&#160;500 word forms including OO, Java and process   control.
Get and install
&#160;
Download: a-weinert.de/frame4j/downloads/de_DE.dic.
Best stored at: C:\Programme\eclipse\dropins
Install [...]]]></description>
			<content:encoded><![CDATA[<p>If your HTML, XML and JavaDoc is to some extend German (and not just English) Eclipse&#8217;s spell checker gets more bothering than a help. Here the Java and Web developer gets a comprehensive German dictionary containing more than 22<small>&nbsp;</small>500 word forms including OO, Java and process  <span id="more-286"></span> control.</p>
<h3>Get and install</h3>
<p>&nbsp;<br />
Download: <a href="http://a-weinert.de/frame4j/downloads/de_DE.dic">a-weinert.de/frame4j/downloads/de_DE.dic</a>.<br />
Best stored at: C:\Programme\eclipse\dropins</p>
<p>Install in Eclipse as &#8220;User defined directory&#8221; by:  Window&gt;Preferences&gt;General&gt;Editors&gt;Texteditors&gt;spelling.</p>
<p>Hint: Eclipse probably requires write access for its user to the file </p>
<p style="padding-left: 30px;">C:\Programme\eclipse\dropins\de_DE.dic</p>
<p>On Windows this is done in the Explorer or by cacls in the shell. Under Linux, if needed, you get there by something like </p>
<p style="padding-left: 30px;">sudo cp &#8216;/where/it/is/de_DE.dic&#8217; &#8216;/usr/lib/eclipse/dropins&#8217;<br />
 sudo  chmod 777 /usr/lib/eclipse/dropins/de_DE.dic</p>
<p>Hint 2: Of all Eclipse editors the &quot;Text Editor&quot; has the best spell checking integration. So it should be used from time to time if your .java, .xml, .php, .html or whatever contains a considerable amount of readable text.</p>
<h3>Structure and content</h3>
<p>&nbsp;<br />
The most simple form of a .dic file for Eclipse is used here</p>
<ul>
<li>one word respectively word form per line</li>
<li>no repetitions, not even for just first capital letter (if &#8220;wandern&#8221; is contained, Eclipse will accept &#8220;Wandern&#8221; anyway)</li>
<li>no (abbreviation) dots at the end (Eclipse accepts &#8220;etc.&#8221; in the text by a .dic entry &#8220;etc&#8221;)</li>
<li>no hyphenated words (Eclipse checks &#8220;Baden-Württemberg&#8221; against the two words &#8220;baden&#8221; and &#8220;Württemberg&#8221;)</li>
<li>not sorted (Eclipse seems to sort on load anyway. Other information?)</li>
</ul>
<h3>Modify or make it yourself</h3>
<p>&nbsp;<br />
<a href="http://a-weinert.de/frame4j/">Frame4J</a>&#8217;s tool <a href="http://a-weinert.de/java/docs/frame4j/de/frame4j/UCopy.html">UCopy</a> will bring a text file to this form by<br />
<span style="color: #0000f8; padding-left: 30px;">java UCopy source.txt -eclipDic -v destination.dic</span><br />
by those transformations</p>
<ul>
<li>separate word in single lines</li>
<li>delete a trailing dot</li>
<li>delete single letters and doublets (also those distinguished by first capital only)</li>
<li>delete words containing digits or upper case characters only.</li>
</ul>
<p>This tool greatly simplifies the making and adding to such .dic files. Without bothering about line structure or forms already contained one just adds correctly (!) spelled words and lets <a href="http://www.a-weinert.de/java/docs/frame4j/de/frame4j/UCopy.html">UCopy</a> with -eclipdic option crunch it.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.a-weinert.de/allgemein/a-comprehensive-german-dictionary-for-eclipse/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

