Running SCO Openserver 5.0.7 in VirtualBox
Update: As of VirtualBox 3.0.10, Openserver 5.0.7 should not require workarounds to install, only SCSI support is pending… (check the listed bugreports).
A customer required to replace and ancient SCO server used to run Foxplus, given that Openserver 5 is unlikely to be able to run with new hardware the only available route in this case was to virtualize the Openserver server. To date iBCS or ABI or whatever is the latest incarnation, didn’t work for us.
We are running SLES10SP2@x86_64 as host, but any host running VirtualBox should work. The original installation was done on 3.0.4 but this steps where tested in 3.0.8 for this article. The only missing functionality is GUI.
VM configuration
General
- Operating System: Other
- Version: Other
System
- Base Memory: 512M
- Enable ACPI
- Processor: 1
- Enable VT-x/AMD-V
- Enable Nested Paging (showed improvement in file creation tests)
Hard Disks
- IDE Controller: 1 disk (6GB, dynamic). None of the official SCSI drivers detect the virtualized SCSI adapters of VirtualBox
CD/DVD Drive
- Image mounted: OpenServer-5.0.7Hw-10Jun05_1800.iso
Network:
- Intel PRO/1000 MT Desktop
Installation Procedure (I will only list relevant changes in each steps)
- Preparing your disk and choosing software –> Optional Software: In “Graphical Environment” we should deselect “X Server and Graphics Drivers” as Video Configuration Manager causes “Guru Meditation”.
- Configuring optional software –> Network card: Deferred (it won’t work before installing MP5)
Post installation
Install MP5
- Mount osr507suppcd5.iso. Run “custom” and select “Software” –> “Install New” –> “From <your_vm_name>” –> “Media Device” = CD-ROM Drive 0
Select and Install:
- SCO Openserver Release 5.0.7 Maintenance Pack 5
- SCO Openserver Release 5.0.7 Graphics and NIC Drivers
Reboot
Network configuration
- Run scoadmin –> Networks –> Network Configuration Manager –> Hardware –> Add new LAN Adapter. It should detect the Intel NIC.
Fix Guru Meditation on poweroff
Shutdown events to reboot or poweroff triger “Guru Meditation” also. For the time being I found a workaround for poweroff, but reboot is still broken.
Edit /etc/conf/pack.d/uapm/space.c, search for function “uapm_offstates” of type “ulong_t”and modify events 0 and 3 to triger “APMPWR_OFF”.
Here’s a patch:
— space.c.orig 2009-10-08 16:38:00.000000000 -0400
+++ space.c 2009-10-08 16:38:00.000000000 -0400
@@ -76,10 +76,10 @@
*/ulong_t uapm_offstates[] = {
- APMPWR_READY, /* 0 AD_HALT No auto reboot */
+ APMPWR_OFF, /* 0 AD_HALT No auto reboot */
APMPWR_READY, /* 1 AD_BOOT Auto reboot */
APMPWR_READY, /* 2 AD_IBOOT (same as AD_BOOT) */
- APMPWR_SUSPEND, /* 3 AD_PWRDOWN Turn off power */
+ APMPWR_OFF, /* 3 AD_PWRDOWN Turn off power */
APMPWR_STANDBY, /* 4 AD_PWRNAP Turn off if no A/C */
APMPWR_SUSPEND, /* (anything else) (essentially AD_HALT) */
};
Relink the kernel and reboot:
cd /etc/conf/cf.d
./link_unix
Pending bug reports:
- http://www.virtualbox.org/ticket/3953
- http://www.virtualbox.org/ticket/5096
- http://www.virtualbox.org/ticket/5164
That’s all, hope that the guys at Sun can fix this issues in future releases…
2 comments October 8, 2009
Won a Netbook!, thanks Novell!!
Well, I’ve been a SuSE user for quit some time, since 7.3 days and some months ago (around January) I was accepted as a SuSE Linux Enterprise 11 (SLES11) betatester. I was happy to test the bleeding edge enterprise distribution and happy to help releasing it.
In the mail list they stated that some Netbooks would be given away to some testers as a reward (i’m not sure how many units where available and can’t remember what the rules were…). I didn’t pay much attention as I NEVER win those kind of things, EVER.
Now, 5 months after SLES11 was released, I got an email from the people at SUSE stating I won one of them!!!!, I can’t wait to receive the package, it’s like Christmas!!!!! (with a gift I will actually like).
Add comment August 3, 2009
Windows on ATMs
Well, this morning I found to be out of cash. Walked about 6 blocks to the ATM on my way to the office.
I entered the little glass box… Inserted the card and ….. nothing… Screwed around with the card reader, leaving the card for longer periods inside, then faster insertion…. The machine was operational, I could see the funky plasticine ad, but the ATM wouldn’t react to the card being inserted.
Called operations support, the machine asked me to wait… No answer after 10 minutes, second call, no go… I’m not walking another 12 blocks to the next ATM!!!! (the standard block in Paraguay is about 100 meters). I stuck the head behind the ATM, there’s a power plug!
Ok, “Windows system” (reboot) should fix it, why not?, it would be the same as a remote reset… The plug wasn’t of decent quality, as soon as I touched it, it made short circuit and the ATM reseted itself :s
Black screen, doesn’t startup, horror!. Some seconds later and Windows XP boot screen appears, WTF!?, real horror!!. The last time I saw an ATM reboot, it was OS/2 or some sort of custom OS (ugly, but rock solid). I knew this pretty-full-off-ads new machines had to have somethign wrong….
Meanwhile, XP started an autologin and launches the software that seems to handle the ATM logic, Diebold Agilis. A few more seconds… The hardware teller or the part that spits the money starts to make a lot of noise, seems to be initializing the devices… 40 to 60 seconds later, red screen: “Off-line” (damned!!!).
Ok, I give up. “Probably there is a security measure that requieres an operator to connect and enable the ATM”. Leaving the ATM (little?) box, thought again about the distance I had to walk to the next one and I realized that it can be broken too, so I gave it 1 or 2 minutes more, waiting from outside (the wall’s are made of glass).
Suddenly, the message changes to “Out of service” and some seconds later, the dancing puppets appear. Tried to insert the card and it asked for the PIN, SUCCESS!!.
Apparently the device/OS communication fell apart and required a reboot…. At last I extended the life of my shoes, and found out the new ATMs run XP :s

Add comment March 20, 2009
Rebuilding partition table
Recovering partition table from data on disk
Continue Reading Add comment March 15, 2009
Faster Japanese rendering in Firefox
Need decent rendering time for japanese text in Firefox?, here’s the solution..
Continue Reading 1 comment March 15, 2009
Linux support/troubleshooting
Dealing with Novell Linux support found about their supportconfig script, it’s really useful while troubleshooting systems remotely (or on-site
).
It’s basically a bash script that collects data about a linux system (it was made for SLES, but should work with any linux). The result is a nice tarball that you can take with you to analyze the system offsite.
The software: http://www.novell.com/communities/node/2332/supportconfig-linux
Basic health check guide: http://www.novell.com/communities/node/4097/basic-server-health-check-supportconfig
Add comment December 5, 2008
LDAP authentication with apache2
Well, needed to setup authentication using mod_auth_ldap.
First we need to make sure the required modules are loaded on apache2 startup, in SLES9 we should modify /etc/sysconfig/apache2 adding “ldap” and “auth_ldap” to the APACHE_MODULES variable. This modules are builtin in apache2, so we don’t need to install them.
As we are using SSL, we’ll need the certificate of the CA that signs the LDAP server certificate, also two variables need to be setup, LDAPTrustedCAType specifies the certificate type, “BASE64_FILE” would be fine most of the time (the other option would be “DER_FILE”) and LDAPTrustedCA that points to the certificate file.
I created a file named “ldapcert.conf” in /etc/apache2/conf.d/ setting them up, this is the content:
LDAPTrustedCAType BASE64_FILE
LDAPTrustedCA /etc/ssl/certs/infra.ldap.pem
Now, we should setup the authentication requirement for the desired pages, usually this would go in a .htaccess file, this is the content:
AuthName “My WebApp Auth”
AuthType Basic
AuthLDAPURL “ldaps://server1 server2/ou=people,dc=my,dc=comain,dc=com?uid”
require valid-user
In our case, we have two directory servers for redundancy, the should go between “ldaps://” and “/” using spaces, if you use only one, it would look something like “ldaps://server1/ou=people,dc=my,dc=comain,dc=com?uid”.
In case you use user/passwd to bind to the directory, you should use “AuthLDAPBindDN” and “AuthLDAPBindPassword”, couldn’t test this, so it’s just an informative note.
Well, we are almost there, we need to restart apache now, in sles: “rcapache2 restart” .
In the logs we should find this lines:
LDAP: Built with OpenLDAP LDAP SDK <— ldap modules loaded succesfully
LDAP: SSL support available <— CA cert found and read succesfully
That’s all…
Add comment February 29, 2008
The toy arrived…
Well, the GPS logger is here, not thanks to EMS, as it arrived to Asuncion on 8/Oct and i had to pick it up on the mail office on 10/Oct given they weren’t even planning to deliver it :s
So far i tested it on a few trips around town.. This is a picture with APs discovered using kismet:
Well, i’ll post more later…
Add comment October 12, 2007
Ordered a GPS receiver :D

Well, i felt like i was in need of a new toy, so yesterday ordered an i-Blue 747 (gps receiver/track logger). So i guess i’ll be busy playing with it once it arrives. Already found two projects (http://gpsmapper.sourceforge.net/ and http://triptracker.sourceforge.net/) that would allow me to have a realtime track of my position using a GPRS enabled phone with the receiver. Also would like to contribute to OpenStreetMap, as there are no maps available for Paraguay, let’s see how hard can that be….
Add comment September 29, 2007
Enforce HTTPS usage
Want to enforce SSL usage on apache2?, after having it working you only need a few mod_rewrite lines. In the case of SLES9/10, create a file /etc/apache2/conf.d/enforce.conf with the following content:
# Se indica a apache que todas las conexiones al puerto 80 deben ir al puerto 433, sin excepciones/This forces SSL usage without exceptions
<IfModule !mod_rewrite.c>
LoadModule rewrite_module /usr/lib/apache2-prefork/mod_rewrite.so
</IfModule>
<IfModule mod_rewrite.c>
RewriteEngine on
# La siguiente linea indica la condicion para mod_rewrite / mod_rewrite condition
ReWriteCond %{SERVER_PORT} !^443$
# Regla en caso de que la condicion anterior sea verdadera / rule applied in case the above condition is true
RewriteRule ^/(.*) https://%{HTTP_HOST}/$1 [NC,R,L]
</IfModule>
The exact path to mod_rewrite module can be found with “rpm -ql apache2|grep rewrite”. Now restart apache (rcapache2 restart)
Add comment September 29, 2007