Monday 28 April 2008

Distribution Upgrade 7.10 -> 8.04

As with the upgrade from 7.04 to 7.10:
  1. sudo do-distribution-upgrade
  2. keep the configuration files
  3. accept deletion of outdated files
  4. reboot
For a complete list of prerequisites visit my old article here.

There is an error in Webmin 1.410. It shows Apache2 server as being stopped. This is not the case as one can verify with ps afx | grep apache2. I will post a fix as soon as I found one.

Configuring VMware Server

In Kernel 2.6.23, a change was introduced that breaks vmware-server (a complete explanation can be found here):

Another solution is to get the vmware-any-any-patch116.tar.gz. I unpacked the tar and copied vmmon.tar and vmnet.tar into /usr/lib/vmware/modules/source.

vmware-config.pl configured the server (ignore the warnings, the server starts fine), and ran vmware-config-mui.pl.

Server is now up and running.

Sunday 27 April 2008

UMTS Modem in Ubuntu 8.04

Dial up internet connections are easy to set up, one might think. I wanted to connect to my ISP using a PCMCIA UMTS card. Searching the internet I found three different approaches:
  1. use wvdial to set up a ppp connection
  2. use gnome-ppp to set up a ppp connection
  3. use a specific software (like umtsmon or vodaphone-mobile-link)that installs all required drivers
I run Ubuntu 64 on my notebook, so vodaphone does not work. There is an ancient x64 .deb package that refuses to install. The tar files don't compile due to missing twisted python modules. and finally (after installing twisted) it refused to start.

I found a much simpler solution: Gnomes network-manager.

network-manager allows you to configure 1 dial up connection. It requires some tweaking of a configuration file in order to reap the maximum speed from your modem but other than this, it is an easy solution without any bells and whistles.

Configuration of network manager
  1. Left click your network icon in the top right of your Gnome panel. Select "Manual configuration..."
  2. Unlock the dialog
  3. Select "Point to Point connection" and edit its "Properties" (this brings up a 3-tabbed dialog)
  4. On the General-Tab tag "Enable this connection" and adjust the connection type, access point name and account data.
  5. Change connection type to "serial modem" to enter the phone number. Change back to GPRS/UMTS. The phone number gets stored in the configuration file
  6. On the Modem-Tab type the modem port. In my case I hat to overwrite what was offered by the dialog ("/dev/ttyUSB0"). I found this information in the gnome-device-manager.
  7. The Options-Tab allows to set the modem to provide the default route (which is helpful on the road) and to accept the DNS servers from your provider. I did not select "Retry if the ..." reconnect option here, but rather in the configuration file (as this sets it to retry permanently)
  8. OK and close the configuration dialog and you are done.
Insert the card, left click the network icon in the panel. You can "Dial Up Connections>/Connect to ppp0 via Modem...". It takes a few seconds, then the connect is made.

There is not much of an indication as the line being up. On my modem, the LED is on permanently. Network-manager does not change its icon to reflect connection status.

Configuration myths and files

There are lots of rumors out. Here is what I found out:
  • wvdial and other command line tools use /etc/wvdial.conf to configure dialup connection.
  • gnome-ppp and network manager use ~/.wvdial.conf (in your home directory)
Both files use similar syntax but Gnome does not read /etc/wvdial.conf or setup configuration in /etc/ppp...

Here is my .wvdial.conf:
[Dialer Defaults]
Modem = /dev/ttyUSB0
ISDN = off
Modem Type = USB Modem
Baud = 460800
Init = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0
Init3 = at+cgdcont=1,"IP","mynetwork"
Init4 =
Init5 =
Init6 =
Init7 =
Init8 =
Init9 =
Phone = telefonnumber_from_provider
Phone1 =
Phone2 =
Phone3 =
Phone4 =
Dial Prefix =
Dial Attempts = 1
Dial Command = ATM1L1DT
Ask Password = off
Password = mypassword
Username = myusername@mynetwork.domain
Auto Reconnect = off
Abort on Busy = off
Carrier Check = on
Check Def Route = on
Abort on No Dialtone = on
Stupid Mode = off
Idle Seconds = 180
Auto DNS = on
;Minimize = off
;Dock = on
;Do NOT edit this file by hand!
Despite the last line, the file can be edited by hand. network-manager honors changes in the file. I changed Baud from 57600 to 460800. This provides significant increase in performance.

VMware 6.03 on Ubuntu 8.04 compile error

After upgrading Ubuntu to 8.04, I ran into an error reconfiguring VMware with vmware-config.pl:
include/asm/bitops_32.h:9:2: error: #error only can be included directly, and vmmon-only compile failes
I found a helpful blog describing 10 easy steps to fix the problem. Here is the list of steps (security issues corrected)
  1. cd /usr/lib/vmware/modules/source
  2. cp vmmon.tar vmmon.tar.orig
  3. sudo tar xvf vmmon.tar
  4. cd vmmon-only/include/
  5. sudo vi vcpuset.h
  6. change line 74 from: #include “asm/bitops.h” to: #include “linux/bitops.h”
  7. rm vmmon.tar
  8. sudo tar cvf vmmon.tar vmmon-only/
  9. sudo rm -rf vmmon-only/
  10. sudo vmware-config.pl
After this, I could start VMware. Robert, thank you.

Saturday 26 April 2008

VMware Server console in 8.04

After upgrading Ubuntu 7.10 to 8.04 my VMware Server console would not start:
wolf@wb:~$ vmware-server-console
/usr/lib/vmware-server-console/bin/vmware-server-console: /usr/lib/vmware-server-console/lib/libgcc_s.so.1/libgcc_s.so.1: version `GCC_3.4' not found (required by /usr/lib32/libcairo.so.2)
/usr/lib/vmware-server-console/bin/vmware-server-console: /usr/lib/vmware-server-console/lib/libgcc_s.so.1/libgcc_s.so.1: version `GCC_4.2.0' not found (required by /usr/lib32/libstdc++.so.6)
/usr/lib/vmware-server-console/bin/vmware-server-console: /usr/lib/vmware-server-console/lib/libgcc_s.so.1/libgcc_s.so.1: version `GCC_3.4' not found (required by /usr/lib32/libcairo.so.2)
/usr/lib/vmware-server-console/bin/vmware-server-console: /usr/lib/vmware-server-console/lib/libgcc_s.so.1/libgcc_s.so.1: version `GCC_4.2.0' not found (required by /usr/lib32/libstdc++.so.6)
/usr/lib/vmware-server-console/bin/vmware-server-console: /usr/lib/vmware-server-console/lib/libgcc_s.so.1/libgcc_s.so.1: version `GCC_3.4' not found (required by /usr/lib32/libcairo.so.2)
/usr/lib/vmware-server-console/bin/vmware-server-console: /usr/lib/vmware-server-console/lib/libgcc_s.so.1/libgcc_s.so.1: version `GCC_4.2.0' not found (required by /usr/lib32/libstdc++.so.6)
I found a helpful link here. The resolution would not work for me (as you can see in the error messages above. However, removing the library libgcc_s.so.1 did the trick.
root@wb:/usr/lib/vmware-server-console/lib/libgcc_s.so.1# mv libgcc_s.so.1 libgcc_s.so.1_orig
Now the console works fine.