<?xml version="1.0"?>
<rss version="2.0">
<channel>
  <title>Stephan Schwab - linux tag</title>
  <link>http://www.stephan-schwab.com/tags/linux/</link>
  <description>Software Technology Consultant</description>
  <language>en</language>
  <copyright>Stephan Schwab</copyright>
  <lastBuildDate>Sat, 24 May 2008 11:24:54 GMT</lastBuildDate>
  <generator>Pebble (http://pebble.sourceforge.net)</generator>
  <docs>http://backend.userland.com/rss</docs>
  
  
  <item>
    <title>Is Java 6 really ready?</title>
    <link>http://www.stephan-schwab.com/2007/11/01/1193951070823.html</link>
    
      
        <description>
          &lt;p&gt;Ok... Now it&#039;s getting ugly with the Java 6 VM on Ubuntu Linux:&lt;/p&gt;

&lt;pre class=&#034;codeSample&#034;&gt;java.lang.OutOfMemoryError: PermGen space
#
# An unexpected error has been detected by Java Runtime Environment:
#
#  SIGSEGV (0xb) at pc=0xb48d24d3, pid=4758, tid=3075954368
#
# Java VM: Java HotSpot(TM) Client VM (1.6.0_03-b05 mixed mode, sharing)
# Problematic frame:
# C  [libswt-pi-gtk-3346.so+0x2e4d3]  Java_org_eclipse_swt_internal_gtk_OS_GTK_1ACCEL_1LABEL_1GET_1ACCEL_1STRING+0x6
#
# An error report file with more information is saved as hs_err_pid4758.log
#
# If you would like to submit a bug report, please visit:
#   http://java.sun.com/webapps/bugreport/crash.jsp
#
Aborted (core dumped)
&lt;/pre&gt;
&lt;!--
&lt;rdf:RDF xmlns:rdf=&#034;http://www.w3.org/1999/02/22-rdf-syntax-ns#&#034;
         xmlns:dc=&#034;http://purl.org/dc/elements/1.1/&#034;
         xmlns:trackback=&#034;http://madskills.com/public/xml/rss/module/trackback/&#034;&gt;
&lt;rdf:Description
    rdf:about=&#034;http://www.stephan-schwab.com/2007/11/01/1193951070823.html&#034;
    dc:identifier=&#034;http://www.stephan-schwab.com/2007/11/01/1193951070823.html&#034;
    dc:title=&#034;Is Java 6 really ready?&#034;
    trackback:ping=&#034;http://www.stephan-schwab.com/addTrackBack.action?entry=1193951070823&amp;token=8576637443973918173&#034; /&gt;
&lt;/rdf:RDF&gt;
--&gt;
        </description>
      
      
    
    
    
    <category>Java</category>
    
    <category>Linux</category>
    
    <comments>http://www.stephan-schwab.com/2007/11/01/1193951070823.html#comments</comments>
    <guid isPermaLink="true">http://www.stephan-schwab.com/2007/11/01/1193951070823.html</guid>
    <pubDate>Thu, 01 Nov 2007 21:04:30 GMT</pubDate>
  </item>
  
  <item>
    <title>Windows dominates Linux due to piracy</title>
    <link>http://www.stephan-schwab.com/2007/07/20/1184946703391.html</link>
    
      
        <description>
          &lt;p&gt;Ever wondered why Windows is so dominant in developing countries? Have a look at this statement from Bill Gates himself:&lt;/p&gt;

&lt;blockquote&gt;&lt;a href=&#034;http://money.cnn.com&#034;&gt;CNN Money&lt;/a&gt; in &lt;a href=&#034;http://money.cnn.com/magazines/fortune/fortune_archive/2007/07/23/100134488/&#034;&gt;How Microsoft conquered China - July 23, 2007&lt;/a&gt;:&lt;br&gt;
Today Gates openly concedes that tolerating piracy turned out to be Microsoft&#039;s best long-term strategy. That&#039;s why Windows is used on an estimated 90% of China&#039;s 120 million PCs. &#034;It&#039;s easier for our software to compete with Linux when there&#039;s piracy than when there&#039;s not,&#034; Gates says. [...] Indeed, in China&#039;s back alleys, Linux often costs more than Windows because it requires more disks.
&lt;/blockquote&gt;

&lt;p&gt;The same can be observed here in Panama. Everybody uses Windows and most of the times it&#039;s a pirated copy. Linux users are not found easily. It should be just the contrary. Maybe in a future post I should elaborate a bit more on the opportunities that arise when people in developing countries use Free Software and Open Source software instead of committing crimes out of laziness.&lt;/p&gt;

&lt;!--
&lt;rdf:RDF xmlns:rdf=&#034;http://www.w3.org/1999/02/22-rdf-syntax-ns#&#034;
         xmlns:dc=&#034;http://purl.org/dc/elements/1.1/&#034;
         xmlns:trackback=&#034;http://madskills.com/public/xml/rss/module/trackback/&#034;&gt;
&lt;rdf:Description
    rdf:about=&#034;http://www.stephan-schwab.com/2007/07/20/1184946703391.html&#034;
    dc:identifier=&#034;http://www.stephan-schwab.com/2007/07/20/1184946703391.html&#034;
    dc:title=&#034;Windows dominates Linux due to piracy&#034;
    trackback:ping=&#034;http://www.stephan-schwab.com/addTrackBack.action?entry=1184946703391&amp;token=5373725085792541206&#034; /&gt;
&lt;/rdf:RDF&gt;
--&gt;
        </description>
      
      
    
    
    
    <category>Windows</category>
    
    <category>Linux</category>
    
    <comments>http://www.stephan-schwab.com/2007/07/20/1184946703391.html#comments</comments>
    <guid isPermaLink="true">http://www.stephan-schwab.com/2007/07/20/1184946703391.html</guid>
    <pubDate>Fri, 20 Jul 2007 15:51:43 GMT</pubDate>
  </item>
  
  <item>
    <title>iSCSI support in Linux</title>
    <link>http://www.stephan-schwab.com/2006/09/24/1159156157732.html</link>
    
      
        <description>
          &lt;p&gt;Linux iSCSI by Cisco joined forces with Open iSCSI. The result is code to be compiled against kernel 2.6.16 or newer. &lt;/p&gt;

&lt;p&gt;Yesterday I successfully installed Ubuntu Edgy and upgraded to a kernel 2.6.17 compiled over night from source retrieved via git from the Ubuntu repository. The first boot with the freshly compiled kernel went well so I proceeded to download Open iSCSI from their Subversion repository and compiled it against the 2.6.17 kernel. After completing the configuration of the NetApp FAS 250 filer I could connect to it, map the LUN as /dev/sdb, run fdisk and mkfs and mount the new file system.&lt;/p&gt;

&lt;p&gt;Actually it was easier than I expected it to be. Today I&#039;ll be working on support for an iSCSI based root file system.&lt;/p&gt;


&lt;!--
&lt;rdf:RDF xmlns:rdf=&#034;http://www.w3.org/1999/02/22-rdf-syntax-ns#&#034;
         xmlns:dc=&#034;http://purl.org/dc/elements/1.1/&#034;
         xmlns:trackback=&#034;http://madskills.com/public/xml/rss/module/trackback/&#034;&gt;
&lt;rdf:Description
    rdf:about=&#034;http://www.stephan-schwab.com/2006/09/24/1159156157732.html&#034;
    dc:identifier=&#034;http://www.stephan-schwab.com/2006/09/24/1159156157732.html&#034;
    dc:title=&#034;iSCSI support in Linux&#034;
    trackback:ping=&#034;http://www.stephan-schwab.com/addTrackBack.action?entry=1159156157732&amp;token=6057678384678237544&#034; /&gt;
&lt;/rdf:RDF&gt;
--&gt;
        </description>
      
      
    
    
    
    <category>Experience</category>
    
    <category>Linux</category>
    
    <comments>http://www.stephan-schwab.com/2006/09/24/1159156157732.html#comments</comments>
    <guid isPermaLink="true">http://www.stephan-schwab.com/2006/09/24/1159156157732.html</guid>
    <pubDate>Mon, 25 Sep 2006 03:49:17 GMT</pubDate>
  </item>
  
  <item>
    <title>Don&#039;t install Java apps from the Ubuntu repository, if you want to use Sun&#039;s JVM</title>
    <link>http://www.stephan-schwab.com/2006/07/19/1153328820000.html</link>
    
      
        <description>
          &lt;p&gt;Now that Ubuntu Dapper supports &lt;a href=&#034;/2006/07/18/1153266279084.html&#034;&gt;Sun&#039;s JVM directly&lt;/a&gt;, it would be nice to install things like Tomcat the same way. So let&#039;s try this:&lt;/p&gt;

&lt;pre class=&#034;codeSample&#034;&gt;sns@testbed:/opt$ sudo apt-get install tomcat5
Reading package lists... Done
Building dependency tree... Done
The following extra packages will be installed:
  ant apache2-common apache2-utils fastjar gcj-4.1-base gij-4.1 java-gcj-compat libapr0
  libbcel-java libcommons-beanutils-java libcommons-collections-java
  libcommons-collections3-java libcommons-dbcp-java libcommons-digester-java libcommons-el-java
  libcommons-fileupload-java libcommons-launcher-java libcommons-logging-java
  libcommons-modeler-java libcommons-pool-java libexpat1 libgcj-common libgcj7 libgcj7-jar
  libgnucrypto-java libjaxp1.2-java libjessie-java liblog4j1.2-java libmx4j-java libpcre3
  libregexp-java libservlet2.3-java libservlet2.4-java libtomcat5-java libxerces2-java openssl
  ssl-cert
Suggested packages:
  ant-doc apache2-doc lynx www-browser gcj-4.1 libgcj7-awt libbcel-java-doc
  libcommons-beanutils-java-doc libcommons-collections-java-doc libcommons-collections3-java-doc
  lib32gcj7-dbg jython libxerces2-java-doc ca-certificates libapache-mod-jk libapache2-mod-jk
  tomcat5-webapps tomcat5-admin
Recommended packages:
  ant-optional ecj-bootstrap ecj java-compiler libgcj7-src
The following NEW packages will be installed:
  ant apache2-common apache2-utils fastjar gcj-4.1-base gij-4.1 java-gcj-compat libapr0
  libbcel-java libcommons-beanutils-java libcommons-collections-java
  libcommons-collections3-java libcommons-dbcp-java libcommons-digester-java libcommons-el-java
  libcommons-fileupload-java libcommons-launcher-java libcommons-logging-java
  libcommons-modeler-java libcommons-pool-java libexpat1 libgcj-common libgcj7 libgcj7-jar
  libgnucrypto-java libjaxp1.2-java libjessie-java liblog4j1.2-java libmx4j-java libpcre3
  libregexp-java libservlet2.3-java libservlet2.4-java libtomcat5-java libxerces2-java openssl
  ssl-cert tomcat5
0 upgraded, 38 newly installed, 0 to remove and 7 not upgraded.
Need to get 15.3MB/25.4MB of archives.
After unpacking 60.5MB of additional disk space will be used.
Do you want to continue [Y/n]? &lt;/pre&gt;

&lt;p&gt;If you go ahead here, you will see this next:&lt;/p&gt;

&lt;pre class=&#034;codeSample&#034;&gt;Adding system user `tomcat5&#039;...
Adding new user `tomcat5&#039; (104) with group `nogroup&#039;.
Not creating home directory `/usr/share/tomcat5&#039;.
Installing /var/lib/tomcat5/webapps/ROOT/WEB-INF/web.xml.
Installing /var/lib/tomcat5/conf/tomcat-users.xml.
Installing /var/lib/tomcat5/conf/jk2.properties
Could not start Tomcat 5 servlet engine because no Java Development Kit
(JDK) was found. Please download and install JDK 1.3 or higher and set
JAVA_HOME in /etc/default/tomcat5 to the JDK&#039;s installation directory.
&lt;/pre&gt;

&lt;p&gt;And you will find that Sun&#039;s JVM is no longer in the PATH. Instead you will be using the GNU JVM. What you will find though is this:&lt;/p&gt;

&lt;pre class=&#034;codeSample&#034;&gt;sns@testbed:/usr/share/java$ ls
ant-1.6.jar                    commons-fileupload-1.0.jar     jsse.jar
ant-bootstrap.jar              commons-fileupload.jar         libgcj-4.1.0.jar
ant.jar                        commons-launcher-1.1.jar       libgcj-4.1.jar
ant-launcher.jar               commons-launcher.jar           log4j-1.2.12.jar
bcel-5.1.jar                   commons-logging-1.0.4.jar      log4j-1.2.jar
bcel.jar                       commons-logging-api-1.0.4.jar  mx4j-2.1.1.jar
commons-beanutils-1.7.0.jar    commons-logging-api.jar        mx4j-impl-2.1.1.jar
commons-beanutils.jar          commons-logging.jar            mx4j-impl.jar
commons-collections-2.1.1.jar  commons-modeler-1.1.jar        mx4j.jar
commons-collections3-3.1.jar   commons-modeler.jar            mx4j-jmx-2.1.1.jar
commons-collections3.jar       commons-pool-1.2.jar           mx4j-jmx.jar
commons-collections.jar        commons-pool.jar               regexp-1.4.jar
commons-dbcp-1.2.1.jar         gnu-crypto.jar                 regexp.jar
commons-dbcp.jar               javax-crypto.jar               servlet-2.3.jar
commons-digester-1.7.jar       javax-security.jar             servlet-api-2.4.jar
commons-digester.jar           jaxp-1.2.jar                   servlet-api.jar
commons-el-1.0.jar             jsp-api-2.0.jar                xercesImpl.jar
commons-el.jar                 jsp-api.jar                    xmlParserAPIs.jar
&lt;/pre&gt;

&lt;p&gt;In general that&#039;s not a bad idea to make Java applications and libraries be more tightly integrated into the operating system. But as long as the distribution sooner or later will change the JVM and install potentially unwanted code this is not usable in a production environment.&lt;/p&gt;

&lt;!--
&lt;rdf:RDF xmlns:rdf=&#034;http://www.w3.org/1999/02/22-rdf-syntax-ns#&#034;
         xmlns:dc=&#034;http://purl.org/dc/elements/1.1/&#034;
         xmlns:trackback=&#034;http://madskills.com/public/xml/rss/module/trackback/&#034;&gt;
&lt;rdf:Description
    rdf:about=&#034;http://www.stephan-schwab.com/2006/07/19/1153328820000.html&#034;
    dc:identifier=&#034;http://www.stephan-schwab.com/2006/07/19/1153328820000.html&#034;
    dc:title=&#034;Don&#039;t install Java apps from the Ubuntu repository, if you want to use Sun&#039;s JVM&#034;
    trackback:ping=&#034;http://www.stephan-schwab.com/addTrackBack.action?entry=1153328820000&amp;token=-6129301332701431334&#034; /&gt;
&lt;/rdf:RDF&gt;
--&gt;
        </description>
      
      
    
    
    
    <category>Experience</category>
    
    <category>Linux</category>
    
    <comments>http://www.stephan-schwab.com/2006/07/19/1153328820000.html#comments</comments>
    <guid isPermaLink="true">http://www.stephan-schwab.com/2006/07/19/1153328820000.html</guid>
    <pubDate>Wed, 19 Jul 2006 17:07:00 GMT</pubDate>
  </item>
  
  <item>
    <title>Sun Java VM on Ubuntu Linux</title>
    <link>http://www.stephan-schwab.com/2006/07/18/1153242360000.html</link>
    
      
        <description>
          &lt;p&gt;The newly released Ubuntu 6.06 Dapper includes support for Sun&#039;s JVM. It is available in the multiverse repository. In order to access multiverse one has to add these two lines to &lt;code&gt;/etc/apt/sources.list&lt;/code&gt;:&lt;/p&gt;

&lt;p&gt;&lt;pre class=&#034;codeSample&#034;&gt;deb http://pa.archive.ubuntu.com/ubuntu/ dapper multiverse
deb-src http://pa.archive.ubuntu.com/ubuntu/ dapper multiverse&lt;/pre&gt;&lt;/p&gt;

&lt;p&gt;After &lt;code&gt;sudo apt-get update&lt;/code&gt; one can install the Sun Java5 JDK&lt;/p&gt;

&lt;p&gt;&lt;pre class=&#034;codeSample&#034;&gt;sudo apt-get install sun-java5-jdk&lt;/pre&gt;&lt;/p&gt;

&lt;p&gt;That was quite easy and painless. It definitely makes deployment of new servers easier than before.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;But&lt;/strong&gt; unfortunately when you try to install Java applications from the Ubuntu repository you will get the GNU JVM and a bunch of GNU provided jar libraries added to your system. At least for my taste I&#039;d like to stick with Sun&#039;s JVM for production use for a while. Usually I install Tomcat manually in &lt;code&gt;/opt&lt;/code&gt;&lt;/p&gt;


&lt;!--
&lt;rdf:RDF xmlns:rdf=&#034;http://www.w3.org/1999/02/22-rdf-syntax-ns#&#034;
         xmlns:dc=&#034;http://purl.org/dc/elements/1.1/&#034;
         xmlns:trackback=&#034;http://madskills.com/public/xml/rss/module/trackback/&#034;&gt;
&lt;rdf:Description
    rdf:about=&#034;http://www.stephan-schwab.com/2006/07/18/1153242360000.html&#034;
    dc:identifier=&#034;http://www.stephan-schwab.com/2006/07/18/1153242360000.html&#034;
    dc:title=&#034;Sun Java VM on Ubuntu Linux&#034;
    trackback:ping=&#034;http://www.stephan-schwab.com/addTrackBack.action?entry=1153242360000&amp;token=-1794081411699236202&#034; /&gt;
&lt;/rdf:RDF&gt;
--&gt;
        </description>
      
      
    
    
    
    <category>Experience</category>
    
    <category>Linux</category>
    
    <comments>http://www.stephan-schwab.com/2006/07/18/1153242360000.html#comments</comments>
    <guid isPermaLink="true">http://www.stephan-schwab.com/2006/07/18/1153242360000.html</guid>
    <pubDate>Tue, 18 Jul 2006 17:06:00 GMT</pubDate>
  </item>
  
  <item>
    <title>iSCSI support in Linux</title>
    <link>http://www.stephan-schwab.com/2006/07/14/1152896700000.html</link>
    
      
        <description>
          &lt;p&gt;iSCSI support amongst the different Linux distributions is currently a bit uneven.&lt;/p&gt;

&lt;p&gt;There are two projects: linux-iscsi on sourceforge which was sponsered by Cisco and Open iSCSI which started independently and now has merged with linux-iscsi. linux-iscsi 4.x is for kernels up to 2.6.10 while Open iSCSI (that is linux-iscsi 5.x) is for kernels from 2.6.16 and newer. As the iSCSI stuff is a driver, it is highly depended on the kernel version.&lt;/p&gt;

&lt;p&gt;The recently released Ubuntu Dapper 6.06 does not include it. But one can build a 2.6.17 kernel and use the Open iSCSI sources from Subversion and get a working system. I&#039;ve tried it and it works well.&lt;/p&gt;

&lt;p&gt;Fedora Core 5 has a modified linux-iscsi implementation working with kernel 2.6.15. I&#039;ve tried it and it works well.&lt;/p&gt;

&lt;p&gt;There is another project on sourceforge called iscsi-init which provides support for a root filesystem on iSCSI. This is what one needs in order to have diskless servers booting from the network.&lt;/p&gt;

&lt;p&gt;Unfortunately iscsi-init relies on linux-iscsi 4.x for the 2.6.10 kernel and it looks like a stalled project. Open iSCSI does not yet support &#039;root filesystem&#039; support and has not yet released something they want to label as stable.&lt;/p&gt;

&lt;!--
&lt;rdf:RDF xmlns:rdf=&#034;http://www.w3.org/1999/02/22-rdf-syntax-ns#&#034;
         xmlns:dc=&#034;http://purl.org/dc/elements/1.1/&#034;
         xmlns:trackback=&#034;http://madskills.com/public/xml/rss/module/trackback/&#034;&gt;
&lt;rdf:Description
    rdf:about=&#034;http://www.stephan-schwab.com/2006/07/14/1152896700000.html&#034;
    dc:identifier=&#034;http://www.stephan-schwab.com/2006/07/14/1152896700000.html&#034;
    dc:title=&#034;iSCSI support in Linux&#034;
    trackback:ping=&#034;http://www.stephan-schwab.com/addTrackBack.action?entry=1152896700000&amp;token=-488570871144838475&#034; /&gt;
&lt;/rdf:RDF&gt;
--&gt;
        </description>
      
      
    
    
    
    <category>Experience</category>
    
    <category>Linux</category>
    
    <comments>http://www.stephan-schwab.com/2006/07/14/1152896700000.html#comments</comments>
    <guid isPermaLink="true">http://www.stephan-schwab.com/2006/07/14/1152896700000.html</guid>
    <pubDate>Fri, 14 Jul 2006 17:05:00 GMT</pubDate>
  </item>
  
  </channel>
</rss>
