Search

Domino Upgrade

VersionSupport end
5.0
6.0
6.5
7.0
8.0
8.5
Upgrade to 9.x now!
(see the full Lotus lifcyle) To make your upgrade a success use the Upgrade Cheat Sheet.
Contemplating to replace Notes? You have to read this! (also available on Slideshare)

Languages

Other languages on request.

Twitter

Useful Tools

Get Firefox
Use OpenDNS
The support for Windows XP has come to an end . Time to consider an alternative to move on.

About Me

I am the "IBM Collaboration & Productivity Advisor" for IBM Asia Pacific. I'm based in Singapore.
Reach out to me via:
Follow notessensei on Twitter
(posts)
Skype
Sametime
IBM
Facebook
LinkedIn
XING
Amazon Store
Amazon Kindle
NotesSensei's Spreadshirt shop
profile for stwissel on Stack Exchange, a network of free, community-driven Q&A sites

14/08/2014

Time stamped encrypted archives

Category
Developers use Version Control, business users Document management and consultants ZIP files.
From time to time I feel the need to safeguard a snapshot in time outside the machine I'm working with. Since "storage out of my control" isn't trustworthy, I encrypt data. This is the script I use:
#!/bin/bash
############################################################################
# Saves the given directory (%1) in an SSL encrypted zip file (%2) within
# the personalFiles folder. The name of the ZIP file needs to be without zip
# extension but might already contain the date. Destination might be %3
############################################################################
# Adjust these three values to your needs. Don't use ~ otherwise it doesn't
# work when you use sudo
tmplocation=/home/user/temp/
keyfile=/home/user/.ssh/pubkey.pem
privatekey=/home/user/.ssh/privkey.pem
if [ -z "$3" ]
  then
    secureloction=./
else
    secureloction=$3
fi
fullzip=$tmplocation$2.zip
fulldestination=$secureloction$2.szip
securesource=$1

#If the final file exists we unencrypt it first to update it
if [ -f "${fulldestination}" ]
then
    echo "Decrypting ${fulldestination}..."
    openssl smime -decrypt -in "${fulldestination}" -binary -inform DEM -inkey $privatekey -out "${fullzip}"
    # Zip the directory
    echo "Updating from ${securesource}"
	zip -ru $fullzip $securesource
else
    echo "Creating from ${securesource}"
	zip -r $fullzip $securesource
fi

#Encrypt it
echo Encrypting $fulldestination
openssl smime -encrypt -aes256 -in $fullzip -binary -outform DEM -out $fulldestination $keyfile
#Remove the temp file
shred -u $fullzip
notify-send -t 1000 -u low -i gtk-dialog-info "Secure backup completed: ${fulldestination}"

To make that work, you need Encryption keys, you can create yourself. A typical script to call the script above would look like this:
#!/bin/bash
############################################################################
# Save the Network connections from /etc/NetworkManager/system-connections
# in an SSL encrypted zip file
############################################################################
securesource=/etc/NetworkManager/system-connections
#Save one version per day
now=$(date +"%Y%m%d")
#Save one version per month
#now=$(date +"%Y%m")
zipfile=networkconnections_$now
secureloction=/home/user/allmyzips/
zipAndEncrypt $securesource $zipfile $secureloction

When you remove the decryption part (one time creation only, no update), you would only need to have access to the public key, which you could share, so someone else can provide you with a zip file encrypted just for you.
As usual: YMMV.

28/03/2013

Round-Trip editing experience in web browsers

Category  
Our applications are increasingly moving to http(s) based interfaces, that is HTML(5) or apps. Besides the irony, that we abandon client applications on desktops to reintroduce them on mobile devices (is ObjectiveC the VB of the 21st century?), that's a good thing
However from time to time, unless you live in the cloud, we need to integrate into extisting standing desktop applications, mostly but not limited to Office applications. The emerging standard for this is clearly CMIS. Most office packages do support CMIS in one way or the other today. However it does not integrate into file managers like Finder, Explorer or Nautilus (at least not to my best knowledge at time of writing). One could sidestep that shortcoming by using CmisSync, but that only works as long as you have enough local storage and corporate security lets you do so.
Another challenge to sort out: once applications that "surround" Office documents are all HTML based, one should be able to commence editing directly from clicking something in the web based business application. So the criteria are:
  1. Ability to interact with documents using File-Open in applications (ironically the ODMA standard got that working more than 15 years ago, but died due to vendor negligence)
  2. Ability to interact with documents using the default file navigator (Finder, Nautilus, Explorer, mobile devices)
  3. Ability to have a full roundtrip editing experience in the browser. A user clicks on a button or link (or icon), the document opens, editing commences. When hitting the save button the original document is updated, so when someone else clicks on that link the latest updates can be seen there
Once you want to support non-Windows platforms (and work in multiple browsers) ActiveX (the approach Microsoft choose) is ruled out. Enter webDAV. It covers #1 and #2, with some difficulties to a point that the commercial package for webDAV on IBM platforms (Connections, Domino, Quickr) doesn't support Explorer on Windows 7, a flaw it coincidentally shares with a much older package, but not with the current project.
The challenge for #3: Whenever a browser encounters an URL with http(s) it will try to handle that target. If the mime type is not directly handled by the browser it will trigger the download of the file and hand it over to the application (with or without a dialog, depending on your settings). When the user then interacts with that document, it is the downloaded version in a temp directory. Changes are not send back!
On the other hand: if a user opens a file directly in the office application by selecting a webfolder, a mounted file system or directly specifying the URL, then roundtrip editing happens since the office applications check the URL for webDAV capabilities (I had some fun with Apache's TCPMon figuring that out).
The solution for this puzzle is to use a different protocol. Protocols are simply indicators for the operating system what application is in charge. The commonly known are http(s), ftp, ssh, mailto (and gopher for the old generation), but also notes or sap (and others).
For my approach I used webdav(s) as protocol name. On Windows protocols live in the registry, on other operating system in configuration files.
Once configured correctly a little helper application would pick up the webdav(s) URL from the browser, check for the default application and launch it with the URL converted to http(s) on the command line - and voila roundtrip editing happens (check out the project).
Of course some stuff needs handling: the office application doesn't share credentials with the browser, so SSO or other means need to be in place to ensure smooth user experience. Also MS-Office not only probes for webDAV capability of that URL, but also if that server behaves like SharePoint by probing an extra URL (some enlightenment what it is looking for would be nice).
On Linux (and probably OS/X) one doesn't need a C++ program to figure out the right application, a shell script does the trick.

25/09/2012

Starting Domino on Linux using UPSTART

QuickImage Category  
When running Domino on a proper platform (AIX, Solaris, Linux) starting and stopping the Domino server was left to customizing a script from a technote or a Redbook's FTP site, as far as official IBM resouces go. Of course the professional source is Daniel Nashed's ultimate Domino startup script. One script to rule them all.
On Linux however the way services are started has changed a while ago. The prefered method (definitely in Ubuntu, but also Fedora, RedHat and OpenSuse as option) is Upstart (there seems to be a push towards systemd, but that's a story for another time).
Upstart allows for a more flexible control and faster boot times of your environment. To configure your Domino on Linux we will use 2 scripts and one configuration file for each instance (inspired by the same approach for node.js).
The first file is /etc/init/domino.conf with the following content:
# Sample job script for domino, experimental - use at your own risk, don't use in production
description 'lotus domino upstart script'
author '@notessensei'

#Stop on shutdown - but no start directive - since it gets started by another script
stop on shutdown

#Instance allows for multiple scripts running
instance "Domino - $NAME"

# Restart if it was crashing, with a limit
respawn
respawn limit 5 60

# Will go into the background
expect fork

# Kill timeout 20 sec - to give Domino a shutdown chance
kill timeout 20

# Check for the password file
pre-start script
    . /etc/domino/$NAME.conf
    # Ensure the pwd file is there and has the right owner/access
    if [ ! -f $PWD_LOCATION ]; then
        touch PWD_LOCATION
    fi
    chmod 0400 $PWD_LOCATION
    chown $SERVER_USER:$SERVER_GROUP $PWD_LOCATION
end script

# The script to start the server
script
    . /etc/domino/$NAME.conf
    exec sudo -u $SERVER_USER -c "cd ${DATA_LOCATION}; cat ${PWD_LOCATION}|PWD_LOCATION/server" >> $LOG_TO 2>&1 &
end script

# Run before shutdown - tell Domino to go down peacefully
pre-stop script
     . /etc/domino/$NAME.conf
    exec sudo -u $SERVER_USER -c "cd ${DATA_LOCATION}; /opt/ibm/lotus/bin/server -q"
end script

# Make sure it is really dead
post-stop script
    . /etc/domino/$NAME.conf
    exec sudo -u $SERVER_USER -c "cd ${DATA_LOCATION}; /opt/ibm/lotus/bin/nsd -kill"
end script
Secondly you create the configuration file in /etc/domino/server1.conf (you need to create the directory if needed, it isn't there by default):
#Configuration variables for Domino instance startup
#User and group for Domino
SERVER_USER="domino"
SERVER_GROUP="domino"
#Where does the data go
DATA_LOCATION="/home/domino/server1/data"
#Must exist and have 0400 doe SERVER_USER:SERVER_GROUP
PWD_LOCATION="${DATA LOCATION}/.domino.pwd"
#Log file
LOG_TO="${DATA LOCATION}/domino.log"
The script will be able to start the domino instance using start domino NAME=server1. For additional instances (partitioned servers) you only need to create an additional conf file in /etc/domino.
The final missing piece is the script that starts all the configured instances. Here we can more or less copy Ian's node script as /etc/init/alldomino.conf:
description 'Start all domino instances at boot'
author '@notessensei'

start on (local-filesystems and net-device-up)

task

script
  for file in `ls /etc/domino/*.conf` ; do
    filename=`basename ${file%.*}`
    start domino NAME=$filename
  done
end script
That's all you need. As usual YMMV.

12/06/2012

Share your application setup

Category
There are situations where you want to document or share (eventually with yourself) the list of all applications packages you have installed on your Ubuntu Linux system. To do that you have a 2 step process: document the packages and document the repositories. A sensible approach is to do that in a "ready to install" way. With a little help from AskUbuntu, here is the solution:
#! /bin/sh
# Run this on the source system
sudo dpkg --get-selections > ~/Desktop/packages

# Run this on the target system (after copying the packages list and activating the repository
sudo dpkg --set-selections < ~/Desktop/packages && sudo apt-get -u dselect-upgrade
And for the list of repositories:
#! /bin/sh
# listrepositories - script to get all the repositories incl ppa installed on a system
# ready to be reloaded using apt-add-repository
for APT in `find /etc/apt/ -name *.list`; do
    grep -Po "(?<=^deb\s).*?(?=#|$)" $APT | while read ENTRY ; do
        HOST=`echo $ENTRY | cut -d/ -f3`
        USER=`echo $ENTRY | cut -d/ -f4`
        PPA=`echo $ENTRY | cut -d/ -f5`
        #echo sudo apt-add-repository ppa:$USER/$PPA
        if [ "ppa.launchpad.net" = "$HOST" ]; then
            echo sudo apt-add-repository ppa:$USER/$PPA
        else
            echo sudo apt-add-repository \'${ENTRY}\'
        fi
    done
done
 
You need to listrepositories > addrep.sh to get the script to copy to the target system
As usual YMMV
References: Packages,Repositories

11/06/2012

Change partition layout on LUKS encrypted LVM volumes

Category
This serves as a reference on what to do if you have (a) LUKS encrypted disk(s) that contains a LVM layout and you need to alter the partition layout
  1. Back up your data! While everything typically works out, you want to be save, so back up your data (and make sure the backup is readable)
  2. Boot from stick
  3. If not installed, install support libraries
    sudo apt-get install lvm2 cryptsetup system-config-lvm
  4. If not existing, create your mount points (presuming LVM contains 2 volumes here)
    sudo mkdir -p /luksdisk/root
    sudo mkdir /luksdisk/home
  5. Probe the drivers
    sudo modprobe dm-crypt
  6. Open the volume (it might be a different disk/partition on your system)
    sudo cryptsetup luksOpen /dev/sda5 crypt1
  7. Show the physical volumes
    sudo pvscan
  8. Find the volume groups
    sudo vgscan --mknodes
    sudo vgchange -ay
  9. List them (memorize the name - I presume it is mylvmdisk here)
    sudo lvscan
  10. Start the LVM GUI and make all necessary changes
    sudo system-config-lvm
  11. When done, mount the volumes
    sudo mount /dev/mylvmdisk/root /luksdisk/root
    sudo mount /dev/mylvmdisk/home /luksdisk/home
Reference: Ubuntu Geek, LinuxWave
As usual YMMV

23/03/2012

Connecting to Wireless@SGx using Ubuntu Linux

Category   
Singapore's island wide wireless network Wireless@SG provides encrypted and unencryped Wifi access. Unless your are a fan of being a Firesheep target, you want to use Wireless@SGx with encryption. Singtel provides detailed instructions for many platform with the unsurprising absence of instructions for Linux. So here you go:
  1. You will need the certificate they use from GoDaddy. So go to their certificate site and download the "Go Daddy Class 2 Certification Authority" in DER format. Note down the SHA1 key for the file: 27 96 BA E6 3F 18 01 E2 77 26 1B A0 D7 77 70 02 8F 20 EE E4. Optional (but highly recommended): open a terminal and check the checksum of your download: sha1sum gd-class2-root.cer
  2. In your network manager applet connect to Wireless@SGx. You will be prompted with "Wireless Network Authentication Required"
    Wireless SGx settings
  3. Fill in the form:
    • Wireless security: WPA & WPA2 Enterprise
    • Authentication: Protected EAP (PEAP)
    • Anonymous identity:: leave empty
    • CA certificate: gd-class2-root.cer (The one you downloaded in step 1)
    • PEAP version: Automatic
    • Inner authentication: MSCHAPv2
    • Username/Password: Your Wireless@SG credentials
A little embarrassment for SingTel: The registration page (at of today 23 March 2012) uses an outdated https certificate.
As usual YMMV

07/12/2011

Building a Linux gaming PC

Category
"Daddy the Mac is really laggy" will wear any daddy thin. The trusted Mac Mini 1,1 only sports an Intel GMA 950 graphic adapter which is overwhelmed when rendering 1920x1200 for more than eMail and simple browsing. So I will procure a Linux workstation for them. Luckily custom build machines are easy to come by in Singapore, so I can - within a budget - pick the finest components. Of course choice can be bad and a lot of decisions need to be made (that's why Apple basically says: pick your size, off you go). What I know so far:
  • I will aim for an Intel I7 processor or its AMD equivalent
  • It will be a big case to have space for enough hard disks
  • The system will have at least 8 GB (eventually more) RAM since I want to run VMs when the kids are not playing
  • Disks will run RAID1 (no SSD, to expensive for gaming)
  • It will run Ubuntu 11.10 with PlayOnLinux installed. I probably will try KDE, Unity and Gnome shell in different accounts
  • No IBM software required. It's a game machine and the kids school uses Google Docs
Now there are a lot of open questions (which look like having cross dependencies):
  1. Should I use 32Bit Ubuntu or 64Bit Ubuntu? Where would WINE powered applications run best?
  2. Intel or AMD?
  3. What mother board should I use? I suspect a newer EFI board would be better than the good ol' bios. But which one is well supported on Linux? The Asus P9X79 looks good, but even that comes in 4 different models
  4. What graphic card should I use? Which one works best on Ubuntu with PlayOnLinux?
  5. What else is important?
Feedback is very much appreciated!

14/09/2011

Less passwords, more security. ssh connections with certificates

QuickImage Category
Succeful server administration depends on automation. Only when you can declare Runs-in-AutoPilot-mode™ your servers will run cost efficient. While DDM, Activity Trends or Domino Policies can do that for you on the Domino level (you might want to have a look at more tools and utilities), there are times where you need to automate OS level tasks (If you don't promise to never ever use this to FTP a NSF, stop reading now and go away) like moving installer files or start and stop remote services. Once you start scripting them you will run into the issue of remote authentication. For SSH connections there is a very elegant way to have a secure connection using a public private key pair. Let's presume our remote host name is everest at everest.company.com and your user id there is joeadmin. These are the steps:
  1. Create a directory to keep your keys:
    mkdir ~/.sshkeys
    chmod 700 ~/.sshkeys
    cd ~/.sshkeys

    (the chmod isn't strictly necessary, but we want to make sure that access to the key files is minimal)
  2. Generate a key pair:
    ssh-keygen -t dsa -b 1024 -f ~/.sshkeys/everest-access-key
    For automation without a password you need to press Enter twice. Be aware, that the security of access it as strong or as weak as the access protection of your workstation. So you should use strong disk encryption
  3. Protect the generated file: chmod 600 everest-access-key
  4. Copy the public file to the remote server:scp everest-access-key.pub joeadmin@everest.company.com:/home/joeadmin
  5. Login to the server: ssh joeadmin@everest.company.com (This will be the last time your need the password)
  6. Create the directory for your keys:
    mkdir ~/.ssh
    chmod 700 ~/.ssh
    cd ~/.ssh
  7. Create your key file to recognize you:
    touch authorized_keys
    cat ~/everest-access-key.pub >> authorized_keys
    rm ~/everest-access-key.pub
    chmod 600 authorized_keys
  8. Now logout and you are ready to use the key driven access
  9. To login use: ssh -i ~/.sshkeys/everest-access-key joeadmin@everest.company.com  (which of course you use in a script)
Once all admins who need access to that server have their keys in place it is time to lock ssh down. Edit the file /etc/ssh/sshd_config and make sure the following values are set:
  1. ListenAddress {your IP/IPv6} to limit SSH to one IP address (remember your servers most likely will have more than one IP)
  2. LoginGraceTime 10 since all logins will directly use a key pair, 2 min grace period is way to long
  3. PubkeyAuthentication yes so your keys will work
  4. PasswordAuthentication no so nobody can try to hack in using a password attack
  5. Installing the denyhosts package (sudo apt-get install denyhosts) reduced the attack surface further. Go read the full explanations
Also works great for zLinux or AIX. As usual YMMV

26/07/2011

Support the Novacut Video Editor!

Category
Novacut is an innovative Video Editor. They are looking for funding. Even a 5$ contribution can help. Go check it out!

26/04/2011

Installing additional software in Ubuntu

QuickImage Category
I'm a happy camper running Ubuntu as my main desk operating system. IBM has done a great job in providing internal repositories that add all the IBM software I would want to the Ubuntu software centre for point and click install (actually I prefer the command line with apt-get, but that usability consideration will be topic of a future post). However there is are some tools I use/evaluate that are neither in the standard Ubuntu nor in the IBM provided repositories. Ubuntu provides for independent tools or "the next version" a nice platform named LaunchPad. It hosts so called "Personal Package Archives" (PPA) that are repositories for additional software like the very useful screen shot tool Shutter. Since I help colleagues and friends to move on I keep that list of repositories close:
##############################################################################
# PPA List for Update function
# This file MUST NOT have empty lines. Lines with # in the beginning are OK
# Commented out repositories are either not yet or no longer available
##############################################################################
deb http://dl.google.com/linux/deb/ stable non-free
deb http://dl.google.com/linux/deb/ testing non-free
ppa:ailurus/ppa/ubuntu
ppa:alecive/antigone
ppa:am-monkeyd/nautilus-elementary-ppa
ppa:and471/kazam-daily-builds
#ppa:anders-kaseorg/subversion-1.6/ubuntu
ppa:banshee-team/ppa
ppa:bisigi
ppa:bisigi/ppa
ppa:bisigi/ppa/ubuntu
ppa:cardapio-team/unstable
ppa:chromium-daily/ppa/ubuntu
ppa:c-korn
ppa:compiz
ppa:cybolic/vineyard-testing
ppa:docky-core/ppa
#ppa:do-core/ppa/ubuntu
#ppa:doctormo/barry-snapshot
ppa:doctormo/ppa
ppa:drizzle-developers/ppa/ubuntu
ppa:elementaryart
ppa:elementaryart/elementarydesktop
ppa:ferramroberto/gimp
ppa:flozz/flozz
#ppa:gdm2setup/gdm2setup
ppa:geod/ppa-geod
#ppa:globalmenu-team/ubuntu
#ppa:gloobus-dev/covergloobus
ppa:gloobus-dev/gloobus-preview
#ppa:gnome-colors-packagers/ppa/ubuntu
ppa:gnome-media-player-development/development
ppa:gnomenu-team/ppa
#ppa:gtg/ppa/ubuntu
ppa:iaz/battery-status
ppa:jconti/recent-notifications
ppa:jimjimovich/starry-hope-uploader 
ppa:jkakavas/creepy
ppa:jonoomph/openshot-edge
ppa:kilian/trimage
ppa:kubuntu-ppa/backports/ubuntu
ppa:kubuntu-ppa/staging/ubuntu
ppa:libreoffice/ppa
ppa:me-davidsansome/clementine-dev
ppa:mozillateam/firefox-stable
ppa:murrine-daily/ppa
ppa:network-manager/ppa
ppa:nijel/ppa
ppa:nilarimogard/webupd8
ppa:n-muench/programs-ppa
ppa:n-muench/vlc
ppa:osmoma/audio-recorder
ppa:pdfmod-team/ppa
ppa:rabbitvcs/ppa
ppa:realtime.sunlight.wallpaper/rsw
# ppa:ricotz/testing
ppa:robert-ancell/simple-scan
ppa:rye/ubuntuone-extras
ppa:screenlets-dev/ppa
ppa:shnatsel/gimp-paint-studio
ppa:shutter/ppa/ubuntu
ppa:sikon/steadyflow
ppa:tehnick/tehnick
ppa:testdrive/ppa
ppa:tgm4883/ppa/ubuntu 
#ppa:the-board-team/dev-snapshots
ppa:tiheum/equinox
ppa:tldm217/tahutek.net
# ppa:tp-fan/ppa
ppa:tualatrix/ppa
ppa:ubuntu-packaging-guide-team/ppa
ppa:ubuntu-wine/ppa
ppa:ubuntu-x-swat/x-updates
ppa:vincent-c/nevernote
ppa:webkit-team/epiphany/ubuntu
ppa:webupd8team/themes
ppa:webupd8team/ubuntu-font-family
ppa:webupd8team/unstable
ppa:webupd8team/y-ppa-manager
# ppa:wvengen/ppa
ppa:xsisqox/ppa
ppa:zeitgeist/ppa
Using a short script all these repositories are added to your repository list and made available. Be careful! Some of the repositories contain newer releases in test form of existing applications and might break applications. I don't mind using beta software, it comes with my job, but you might and probably will mind. So I strongly recommend you exercise caution, install and use the Y-PPA Manager that makes it very easy to get rid of unwanted repositories. The bash script to read in all these:

17/01/2011

Little Linux GTD Gem

QuickImage Category  
On my Ubuntu 10.10 Gnome desktop I use Docky for my "Application Dock". It can be run "Apple style" horizontally - or taking advantage of wide screen monitors vertically. As most Linux tools it is highly customizable. Besides links to applications and documents Docky can host Docklets, that do all sorts of useful things. One particularly interesting docklet for GTD aficionados is the Timer Docklet. It allows with a simple mouse wheel scroll to create a timer and run it.
2min Docky Timer
So tracking "2 minutes or less" is just a click away. Installation with:
sudo add-apt-repository ppa:docky-core/ppa
sudo apt-get update && sudo apt-get install docky

(You can install Docky also from the Ubuntu application catalogue, but I'm too lazy to deal with the GUI. Once you know the command line is so much faster). You will find Docky in Applications - Accessories and can set auto-start in the preferences.

05/01/2011

Adventures in new-z-land: Configuring LVM on zLinux

QuickImage Category  
This week I'm honing my skills on Domino for zLinux. z/VM allows to run a nearly unlimited number of guests with various operating systems. For Domino IBM supports Suse 64Bit Linux and Redhat 64Bit Linux. The Domino server is a full 64Bit implementation on zLinux. The mainframe also supports all sorts of storage. Typically one would find large disk farms with iSCSI connectors, but the "traditional storage" would be DASD (direct attached storage device). z/VM makes DASD devices visible as 1, 2, 4, 8, 24 and 54 GB storage devices. So instead of going after a large chunk of the attached iSCSI I decided to get a set of smalish DASD devices and test the Logical Volume Manager on Linux to combine them into a larger entity. This is relevant also for standard Linux server (with bigger disk to start with) once you run out of storage on your RAID 10 storage and want to add more. While Domino offers directory links LVM is more flexible since it will appear as single storage to the application. LVM is a standard feature of Linux and is available on all mayor distributions (You might need to install the files first). In my test I used RedHat Enterprise Linux 5.2 for zOS, where LVM is pre-installed (check this Redbook for details). LVM pools physical disks, RAID arrays or SAN storage into "Volume Groups". Inside such a group multiple partitions can be created that then are formatted with a file system. Volume groups can be extended just by adding disk and thereafter carry additional partitions or allow to enlarge the partitions to cater for more data
Linux Logical Volume Manager
Depending on the file system it might need to be unmounted before it can be extended, so we typically don't see the root ( / ) or boot partition inside a volume group. There are a number of steps involved to configure the LVM which are almost identical on all Linux versions, except for dealing with raw storage (which would be DASD in my case). I configured all steps using the command line. If that is not your cup of tea, Redhat provides the command system-config-lvm that provides a GUI (which I used for the screen shots). To get the GUI working you need to login into zLinux with ssh -X to start support for XWindows (Windows users: check what application supports XWindows). As first step we want to check

30/12/2010

Simplify Domino installation on Ubuntu

QuickImage Category   
Installing Domino on Linux requires a few extra steps. You need to create user/group and implement a startup script. The best one can be found on Daniel Nash's site. A good instruction, step by step has been provided by Danilo Dellaquila in Part 1:Ubuntu installation and Part 2:Domino installation. Danilo went the extra mile and created a deb package for download that takes care of the details and simplifies your chores. Details are in his wiki.
As usual: YMMV

16/12/2010

Linux Foundation is getting traction in China

QuickImage Category
Linux is getting traction in China despite the fact that you can buy a (pirated) Windows CD for a dollar a pop. There is Red Flag, a Chinese incarnation of Fedora and a trend for more large Chinese companies to join the Linux Foundation. In November China Mobile Communications Corporation (CMCC), the world largest mobile operator joined the foundation as Gold Member followed by Huawei, the makers of network gear and mobile devices (We all love the E5) joining in December. This highlights 2 interesting trends: Huawei and CMCC are both Telecom players. Huawei builds networks, CMCC runs networks. Secondly China is striving to transform from the world's workbench to the world's R&D centre. Judging from my interaction with my Chinese colleagues I would say: they are on the right trajectory. So is it now time to brush up your Chinese and join the Linux Foundation yourself and time for IBM to revisit Domino Designer on Linux?

13/12/2010

Ubuntu Christmas

Category  
This just came in:
Ubuntu Backpack Ubuntu Cycling shirt
Happy camper I am!

01/11/2010

Shortcut for launching Lotus Notes

QuickImage Category  
I'm a fulltime Ubuntu user. And I love keyboards (probably due to the fact that my first computer was a IBM S/36). So I use shortcuts a lot. Recently I installed Ubuntu Tweak. Besides a lot of other kewl stuff it allows me to define arbitrary commands and assign them to keyboard shortcuts. So I assigned Ctrl+Alt+n to Lotus Notes, so it is just one key press away (Use this command line:opt/ibm/lotus/notes/framework/../notes). On the same note (pun intended): I'm using Cardapio for my menu. It has (like Spotlight in OS/X or Windows7) a Super - Space shortcut that opens the menu and focus on the search box. You can type and on key press results from the menu, a local search and a web search are presented to choose. It even lists software you can install from the Ubuntu Software centre.

20/07/2010

Command line tool for Linux command line junkies

QuickImage Category
I found a little gem for "Friends of the commandline"TM. Since the autor suggested to improve this with zenity I went ahead and created ~/bin/runthis:
#!/bin/sh
#~/bin/runthis
############################################################################
# Runs the command on the command line or prompts that have been entered in the prompt box
# Originally published here: http://crunchbanglinux.org/forums/topic/2848/bash-at-your-fingertips-nifty-notifysend/
# Replaced command line with zenity dialog
############################################################################
if [ -z "$1" ]; then
    what=$(zenity  --entry  --text "Type a command");
else
    what=$1
fi
info=$(eval "$what"  2> /dev/null);
notify-send -t $((1000+300*`echo -n $info | wc -w`)) -u low -i gtk-dialog-info "$what" "$info" || exit 2
Make it executable with chmod +r ~/bin/runthis. Final step: go to the CompitzConfig Settings Manager (or the Gnome shortcut settings) and assign it a key combination (I use Ctrl+Alt+r). Now you can hit the combination, enter a command and the result will be shown in a notification dialog. For the rationale, read the original source
As usual YMMV

20/07/2010

Run SUNORACLE VirtualBox with KVM modules on

Category
KVM and VirtualBox are two virtualization solutions for Linux. KVM requires the module kvm_intel to be loaded, while VirtualBox can't run with the module running. So if you can't makeup your mind what to use, you need a little script magic to get this working. Here are the steps:
  1. Download libnotify for nice bubble notifications (just eye candy):
    sudo apt-get install libnotify (Of course you can use the Synaptics package manager in System-Administration and simply search for the library, but that's not sporty)
  2. Create a script (see below) in ~/bin/vboxkvm
  3. Make it executable with chmod +x ~/bin/vboxkvm
  4. Change the command in the VirtualBox menu entry from VirtualBox to vboxkvm
The script (Keep in mind that Linux is cAsEsEnsItIvE):
#!/bin/sh
SERVICE='kvm'
 
if ps ax | grep -v grep | grep $SERVICE > /dev/null
then
    notify-send -t 10000 -u low -i gtk-dialog-info "Removing kvm and starting Virtualbox"
   gksu "modprobe -r kvm_intel"
else
    notify-send -t 10000 -u low -i gtk-dialog-info "OK kvm not loaded,  Virtualbox starting"
fi
VirtualBox $
As usual: YMMV

26/06/2010

There's a storm coming, Harry

Category  
Thanks to an article in the OMG Ubuntu blog I'm using the Real-time Sunlight Wallpaper. It updates my screen background every 30 minutes with a current satellite picture. Casually glancing at the background I saw this (around 1500GMT):
Is that a hurricane
Hagrid would say "There's a storm coming, Harry" and if I'm not very wrong in my geography that one is heading toward Hawaii.

08/05/2010

Ubuntu 10.4 coming my way

Category
I'm a week late to the party. Every time I tried downloading from a server in AP I got 5-20kb/s download speed. And I'm hardly long enough in one place to wait that long. Enter Bittorrent and its default Ubuntu client Transmission
A cool 1 MB download for Ubuntu
1 MB/s is the stated maximum of my broadband plan.
Nota bene: This is a perfect example how Bittorrent is used for effective and efficent distribution of fully legal content.

17/12/2008

Ubuntu 8.10, Sun Java 6 and Firefox 3.0.x

Category
The Mini is running Ubuntu 8.10 by now and does that quite well. Only Firefox somehow didn't load Java applets properly despite the fact that I had the latest and greatest JVM. 6.0_10-b33. Command line Java programs (like Websphere, Tomcat and some of the stuff for AD215) work plesantly fast. So something in the combination of Ubuntu, Java and Firefox doesn't seem to work. After a little research it turned out, that Sun has created a next generation plug-in that is supposed to address all the short comings in the Java plug-ins. There are a number of solutions out there, which didn't work for me. This worked:
  1. Install Java6: sudo apt-get install sun-java6-bin sun-java6-jre sun-java6-plugins and update-alternatives --config java
  2. Change to the plugin directory: cd /usr/lib/jvm/java-6-sun-1.6.0.10/jre/plugin/i386/ns7
  3. Delete (or rename): rm libjavaplugin_oji.so
  4. Create a symboliv link: ln -s /usr/lib/jvm/java-6-sun/jre/lib/i386/libnpjp2.so libjavaplugin_oji.so
  5. Start Firefox, type about:plugins and you should see libnpjp2.so as your Java plugin name
  6. Check on this page (scroll down) if the applet is working
However you must be clear that this qualifies as ugly hack which most probably won't survive the next Java update.

08/12/2008

Happy Hari Raya - Time to Switch to Linux?

Category
Happy Hari Raya to all my Muslim friends worldwide. While you celebrate worldwide, take a second and consider: is it time to switch your computer operating system? Would you consider to switch if you get (for free) a set of Islamic software: prayer times, Quran study tool, web content filtering etc. All this is actually available today in the Ubuntu Muslim Edition. It is free and it is based on the currently most popular Linux distribution Ubuntu. Go check it out!

30/09/2008

Follow the Leader - Put Linux on your server!

Category
According to Microsoft's Steve Ballmer: "Forty percent of servers run Windows, 60 percent run Linux" (I presume he is talking about the x86 based servers, not the whole server market). <irony>So sticking to the popular strategy "Follow the leader" it is time to kick out that Windows servers.</irony> Of course together with IIS, since that is trailing Apache HTTP for quite some time now. While you are on it, check out IBM's Open Client and get your desktop some Suse, Redhat or Ubuntu.

07/07/2008

Welcome to a new Linux Blogger

Category
My ex-IBM colleague Han Wen Kam is now working for Novell. He is one of Singapore's outstanding Suse Linux experts. You can follow this thoughts on his blog titled Selling free software for a living.

Disclaimer

This site is in no way affiliated, endorsed, sanctioned, supported, nor enlightened by Lotus Software nor IBM Corporation. I may be an employee, but the opinions, theories, facts, etc. presented here are my own and are in now way given in any official capacity. In short, these are my words and this is my site, not IBM's - and don't even begin to think otherwise. (Disclaimer shamelessly plugged from Rocky Oliver)
© 2003 - 2017 Stephan H. Wissel - some rights reserved as listed here: Creative Commons License
Unless otherwise labeled by its originating author, the content found on this site is made available under the terms of an Attribution/NonCommercial/ShareAlike Creative Commons License, with the exception that no rights are granted -- since they are not mine to grant -- in any logo, graphic design, trademarks or trade names of any type. Code samples and code downloads on this site are, unless otherwise labeled, made available under an Apache 2.0 license. Other license models are available on written request and written confirmation.