Tag Archives: Ubuntu - Page 2

Connect to Office Communicator/Lync with Pidgin

This is a post I have wanted to write for a very long time 😀

My company has an Office Communciator 2010 setup, and for a long time I have tried to connect to it with my (X)Ubuntu computer. Pidgin has not worked, and installing Office Communicator 2010 in Wine has not worked either. But now… the stars were obviously aligned, I was lucky to try the right configuration, or some update to the Office Communicator Plugin for Pidgin fixed something. Error messages from Pidgin are usually not very detailed or helpful.

My configuration:

  1. You need the pidgin-sipe package (Xubuntu 13.04)
  2. Username: my email address
  3. Login: username\domain
  4. Advanced:
  5. Server: set this one
  6. Connection Type: TCP
  7. Authentication Scheme: NTML

Of course, your OCS Server might be configured in a different way. But perhaps this is a little helpful to someone. The way I obtained the server address was to run the netstat command on a windows computer before and after starting and stopping the Office Communicator 2010 client.

Ubuntu on Pentium M without PAE

Update 2014-05-25: I have now tested the new forcepae feature in 14.04 (new post) myself and it works just fine.

Update 2014-04-27: Ubuntu 14.04 has been released and it works almost “out of the box” for Pentium M CPUs that have PAE but fail to advertise it properly. This seems to be very relevant now that XP is out of support and many owners of fine laptops will try to find an alternative to Windows XP. If this is your situation and you are completely new to Linux/Ubuntu I suggest you give Xubuntu a try first, and if you find it too heavy or slow, try Lubuntu. You dont have to install it to try it – you can run it “Live” from a DVD/USB-memory – but it will run faster and better if you install it on your hard drive. Finally, the PAE issue: The instructions are found in the section “Installing on Pentium M laptop (with forcepae)” of the official Ubuntu PAE page. Those few lines relevant to you are:

The ISO image will fail to boot (“This kernel requires the following features not present on the CPU: pae.”) If a few lines above this text there is a warning “WARNING: PAE disabled. Use parameter ‘forcepae’ to enable at your own risk!”, then you can boot by pressing tab at the boot screen and appending the kernel parameter “forcepae” after the “– “.

You should not need to read or understand anything else from that page. I do not have any such hardware available at the moment, so I can not write a guide myself. You are welcome to comment about your success/failure here.

Update 2014-03-13: It seems some progress has been made and this should not be a problem with Ubuntu 14.04 (which should be on the way soon). There are already daily builds of Lubuntu, Xubuntu and Ubuntu for the upcoming 14.04 that are supposed to work (unclear about Kubuntu and the others). I have not tested this myself yet – currently no such hardware available. The boot is supposed to fail with a message like “kernel flag forcepae is required”, and when adding that flag at boot time things should proceed normally.

Update 2013-12-26: I successfully upgraded 13.04 with FakePAE installed to 13.10. No warnings, no errors, no problems, no hacks. And FakePAE still hacks /proc/cpuinfo correctly.

This may be relevant to you if you want to install (or upgrade to) Ubuntu 12.10 or 13.04 on a computer that reportedly lacks PAE support. It only applies to x86/32-bit AMD/Intel CPUs and Ubuntu versions.

A little background first. 32-bit computers can handle up to 2GB of RAM perfectly; in principle, if you have up to 2GB you neither need PAE or 64-bit CPU/OS. If you have more than 2GB or RAM, but not more than 4GB you may have some benefits of PAE or 64-bit CPU/OS. If you have more than 4GB or RAM, you should have 64-bit CPU/OS, or if your CPU does not support it, use PAE to make use of more than 4GB RAM.

PAE makes the CPU/OS handle 64GB of RAM instead of 4GB (the normal 32-bit limit), but applications still only see a maximum of 4GB each (in practice, most often not more than 2GB).

Until 12.04 this was not an issue for Ubuntu users. There was both a PAE and a non-PAE 32-bit kernel available for x86 ubuntu, and a serparate 64 bit version of Ubuntu. But beyond 12.04, there is no longer a non-PAE kernel. This means that if you have an x86 CPU that lacks PAE support, you can not run Ubuntu beyond 12.04 (unless you find/build a non-standard kernel).

However, there are CPUs, especially Pentium M CPUs that have perfect PAE support, but they do not advertise it properly – and Ubuntu refuse to try to run the PAE-kernel at all (but it works perfectly).

Now, if you are still reading and you think this is relevant information to you, you should first read this article. It is written by the people who know stuff and it tells you what to do.

The rest of my article will describe some details about my experiences when I tried to upgrade a Pentium M computer from 12.04 to 12.10.

First, this is my CPU (as it reports under 12.04 non-PAE kernel). It denies PAE support (pae not present under flags).

$ cat /proc/cpuinfo 
processor	: 0
vendor_id	: GenuineIntel
cpu family	: 6
model		: 9
model name	: Intel(R) Pentium(R) M processor 1400MHz
stepping	: 5
microcode	: 0x5
cpu MHz		: 600.000
cache size	: 1024 KB
fdiv_bug	: no
hlt_bug		: no
f00f_bug	: no
coma_bug	: no
fpu		: yes
fpu_exception	: yes
cpuid level	: 2
wp		: yes
flags		: fpu vme de pse tsc msr mce cx8 mtrr pge mca cmov clflush dts acpi mmx fxsr sse sse2 tm pbe up bts est tm2
bogomips	: 1194.24
clflush size	: 64
cache_alignment	: 64
address sizes	: 32 bits physical, 32 bits virtual
power management:

I only have 768Mb of RAM – I dont really need PAE, but I have to have it to run Ubuntu 12.10 or 13.04.

I first tried to install 13.04 from scratch – the installation immediately failed because my (false) lack of PAE. So I decided (knowing that I would probably run into some problems) to upgrade from 12.04 to 12.10. Now, the upgrade was mostly fine, but, the kernel was not upgraded from 3.2 to 3.5, all packages were not completely set up, and there were broken dependencies. But the computer was working.

So I tried to install fake-pae using the method in the article. However, that did not really work – probably because of my broken dependencies apt-get didn’t want to do anything before the problems were fixed. So I downloaded the fake-pae package manually, unpacked it, and had a look at it. The magic trick is (as root):

# cat /proc/cpuinfo | sed 's/flags\t*:/& pae/' > /tmp/cpuinfo_pae
# mount -o bind /tmp/cpuinfo_pae /proc/cpuinfo
# mount -o remount,ro,bind /proc/cpuinfo

You can run this yourself (without installing/downloading fake-pae). I did, and then the kernel upgrade finally worked, the dependency problems were solved, and both me and Ubuntu were happy again.

Now, with dependency problems solved, fake-pae installed perfectly, and this is my CPU (now running 12.10):

$ cat /proc/cpuinfo 
processor	: 0
vendor_id	: GenuineIntel
cpu family	: 6
model		: 9
model name	: Intel(R) Pentium(R) M processor 1400MHz
stepping	: 5
microcode	: 0x5
cpu MHz		: 600.000
cache size	: 1024 KB
fdiv_bug	: no
hlt_bug		: no
f00f_bug	: no
coma_bug	: no
fpu		: yes
fpu_exception	: yes
cpuid level	: 2
wp		: yes
flags		: pae fpu vme de pse tsc msr mce cx8 sep mtrr pge mca cmov clflush dts acpi mmx fxsr sse sse2 tm pbe up bts est tm2
bogomips	: 1194.22
clflush size	: 64
cache_alignment	: 64
address sizes	: 36 bits physical, 32 bits virtual
power management:

Notice, address sizes is now 36 bit physical – this is real information from the PAE kernel. Also not the pae-flag; which is the result of fake-pae.

You should keep fake-pae installed, and hopefully you will be able to upgrade your computer in the future.

A few final words
I find this design choice of Ubuntu odd. I mean, computers with more than 4GB of RAM should use 64-bit version of Ubuntu anyway. And seriously, how many 32-bit systems have more than 4GB or RAM anyway? I think it would make more sense to not support PAE or more than 4GB or RAM for x86, than to abandon non PAE-CPUs. But probably there are companies (Ubuntu customers) out there running top modern 64-bit i7-CPUs in x86 PAE mode, rather than in x64 mode, for reasons I do not understand. Anyway, since this problem applies to a lot of Pentium M CPUs, the PAE check probably makes more Pentium M upgrade fail than it protects Pentium PRO and earlier systems.

Lubuntu 13.04 on Eee 701

Do you still have an Eee 701 (4GB SSD version), and dont know what OS to put on it? Try Lubuntu 13.04 – it works perfectly, no tweaking, no problems. Just create a bootable USB memory using Unetbootin, boot it, try it, install it.

Of course, it is the 32-bit (x86) version of Lubuntu, that you should use.

Handbrake for Ubuntu 13.04 Raring Ringtail

Handbrake is a fantastic piece of software that I prefer to run on my Ubuntu machine, that I updated to 13.04 a little while ago.

There are Handbrake versions for Ubuntu available via the Stebbins PPA (thank you very much!).

At this time, no version for 13.04 (Raring Ringtail), only for older versions of Ubuntu. However, I found that the 12.10 (Quantal) version works perfectly with 13.04. You just need to:

  1. Add deb http://ppa.launchpad.net/stebbins/handbrake-releases/ubuntu quantal main to /etc/apt/sources.list
  2. Add the key using apt-key (paste the key to a textfile)
  3. apt-get update
  4. apt-get install handbrake-gtk

Probably not so long until Stebbins releases for 13.04, but until then this might be useful for someone.

Ubuntu 13.04 and GeForce 8200

Update: for Xubuntu 13.10

My private Linux workstation is an ASUS Barebone V3-M3N8200, equiped with an Athlon II @ 3GHz. Not the fanciest machine, but it is ok. As mentioned before I have had video-related problems when running Ubuntu on it. Well, it worked fine until 12.10, when I needed to fall back from proprietary Nvidia drivers to Nouveau drivers. That is just fine with me, except lately those drivers have not been working perfectly either (lightdm has not always started automatically, so I have needed to Ctrl-Alt-F1, log in, service lightdm restart…).

Everything applies to the x64-version. I dont bother with x86. I also use Xubuntu rather than Ubuntu, but I believe most of what I write is true for [L/K/X/Ed]Ubuntu.

So, I decided to give 13.04 (Raring Ringtail) a try before it is actually released.

Result first, for those who have Nvidia GeForce 8200 and problems with 13.04. LiveCD does not work at all. Upgrade from (fresh) 12.10 to 13.04 leaves you with unusuable system, unless you have SSH Server activated! To fix 13.04 ssh to the system, remove all nvidia drivers and nouveau drivers, and install nvidia-173.

Some more details follow.

13.04 LiveCD problems
The LiveCD starts, the screen goes black. Ctrl-Alt-F1 does nothing. I found no way forward. It could be that the Xserver starts correctly, and that Compiz crashes for some reason – I have no idea.

Upgrade from 12.10
Installing 12.10 works just fine. I update it completely. I install SSH-server and then upgrade to 13.04:

$ sudo apt-get install openssh-server
$ update-manager -d

It can be a good idea to test the ssh-server, if nothing else to make sure you know your IP (hopefully you get the same after upgrade), before you go on with the upgrade. The upgrade is quite simple, just follow instructions.

For me, upgrade gave me an unusuable system, just like the LiveCD. But – I can now SSH into it!

Nouveau does not work
Noveau-driver, installed by default, and uninstalled and installed with:

$ sudo apt-get purge xserver-xorg-video-nouveau
$ sudo apt-get install xserver-xorg-video-nouveau

does not work. Ctrl-Alt-F1 does not give me a console.

nvidia-current does not work
nvidia-current-driver, installed by default, and uninstalled and installed with:

$ sudo apt-get purge nvidia-current
$ sudo apt-get install nvidia-current

does not work. Ctrl-Alt-F1 does not give me a console.

nvidia-313-updates do not work
I installed those ones via the GUI (update-manager, Additional Drivers tab), and uninstalled with:

$ sudo apt-get purge nvidia-313-updates

I dont know what the “updates”-word mean in this situation. However, the 313-driver was a little better; Ctrl-Alt-F1 worked, and I could see boot-information (press C to abort disk checking…).

nvidia-173 works!
The old nvidia 173 driver works though (maybe thats why it is still there). Install with:

$ sudo apt-get install nvidia-173

Make sure you have purged all the other drivers.

Submitting a bug? Helping out?
There are many registered Ubuntu-bugs related to Nouveau and/or GeForce 8200. Many of them are old. Some seem to overlap. Some seem to more or less describe my problem. I dont really know if this is a Nouveau-problem, a problem for Nvidia, or a problem for Canonical. I am willing to give more information, logs, or test stuff if anyone is interested, but for now, no submitted bug.

Problems upgrading to Ubuntu 12.10

Innocently I decided to just upgrade my desktop Ubuntu PC to 12.10 (from 12.04). I say innocently, because nowadays I just expect Ubuntu to work – better so than Windows which often causes weird problems.

I was a bit disappointed though. I upgraded using the GUI tools, just pretending I knew nothing and cared nothing about the process and just wanted it complete.

When the computer restarted I was met by

error: file not found.
grub resque>

Haha! Not. I mean, what would normal people do now? Consider files lost and go shop a new computer? This disappoints me, because my computer has updated kernel/reinstalled GRUB several times since I installed 12.04. And I dont edit grub config files just to mess with Ubuntu (I only do that when it refuses to boot).

I am not going to tell you about all my failed attempts to fix the problem, but I will tell you what worked. I have two hard drives in my computer, like this:

sda1: boot
sda2: home
sdb1: root
sdb2: (big backup data partition)

Naturally, BIOS boots sda (where boot is). Now, after Ubuntu upgraded, it obviously put GRUB on sdb, and telling BIOS to boot sdb instead of sda fixed the problem. My /boot on sda is still in use. What assumption is it, to assume that GRUB should be installed on the drive where / is, regardless where /boot is, and regardless where GRUB used to be installed? I am not going to investigate this further now, my computer boots and I have more problems to solve 😉

Next problem… Ubuntu starts and the display just turns black… CTRL-ALT-F1 works and gives me a console. Obviously something fishy with the X-server. Well, my computer has an onboard Nvidia 8200 and in the past I have been struggling a little with it. However, with 12.04 it worked out of the box. I tried

$ sudo apt-get install nvidia-experimental-310

No success. Turns out, however that:

$ sudo apt-get purge nvidia-current

(and/or whatever nvidia drivers you have installed) makes Ubuntu fall back to the Nouveau drivers, and those seem to work very fine. I dont expect (or need) much 3D acceleration, but 2D performance seems good so far.

Install Citrix Receiver on Ubuntu 12.04

Update 2014-01-03: Installing Citrix in Linux is still a hazzle. Please have a look at my new post: Install Citrix Reciever 13 on Ubuntu 13.10. The below post applies to the older Citrix Client version 12.

Installing Citrix in Linux is always a hazzle. The following worked for me on a fresh installation of Ubuntu 12.04.

Prerequisites (amd64):

$ sudo apt-get install ia32-libs-multiarch:i386
$ sudo apt-get install libmotif4:i386

Prerequisites (i386):

$ sudo apt-get install libmotif4

Now choosing Citrix version was not so easy… I found:

icaclient_12.0.0_amd64.deb     (failed to meet dependencies)
icaclient_12.1.0_amd64.deb     (failed to meet dependencies)
icaclient_12.0.0_i386.deb      (OK! - both i386 & amd64)
icaclient_12.1.0_i386.deb      (broken gzip!!!)
linuxx86-  (did not test)
linuxx86-  (broken gzip!!!)

The amd64 bit packages do not seem to contain a 64-bit Citrix client. They are just built to install cleanly on a 64-bit system, but it doesn’t on Ubuntu 12.04 (perhaps better luck in Debian). The broken gzip-errors were really weird.

amd64 specific plugin issues
Now when Citrix is installed it can be useful to know that it ends up in /opt/Citrix. That is, on amd64, you need to tell Firefox to open ica-files with /opt/Citrix/ICAClient/wfica. The plugin /opt/Citrix/ICAClient/npica.so appears to be i386 (no suprise) and will not work with amd64. I tried to install firefox:i386 instead of the amd64-version, but then none of the other plugins worked. It is probably possible to fix, but I will not.

Also, you (may) need to fix certificates:

zo0ok@oden:/opt/Citrix/ICAClient/keystore$ ls
zo0ok@oden:/opt/Citrix/ICAClient/keystore$ sudo mv cacerts cacerts.orig
zo0ok@oden:/opt/Citrix/ICAClient/keystore$ sudo ln -s /usr/share/ca-certificates/mozilla cacerts

Finally, Citrix receiver 12.0 works nicely in Unity and Ubuntu 12.04. This was not the case a few versions ago.

Install Ubuntu 12.04 on Eee 701

Update: Have a look at installing 13.04 first.

Summary: add an 8GB SD card to your Eee 701 an install Ubuntu 12.04 on it! I believe Ubuntu has improved for this netbook with every release and now it is really nice.
Ubuntu 12.04 is the best Linux distribution and operating system for the Eee 701. This is with 1GB RAM. Not so sure about running with original 512Mb.

You need to make a little fix to run the CPU at 900MHz instead of 630MHz (if you want to).

$ sudo apt-get update
$ sudo apt-get install cpufreqd cpufrequtils
$ sudo modprobe p4_clockmod

$ cat /proc/cpuinfo
(should tell you CPU runs 900MHz)

$ sudo vi /etc/modules
(add p4_clockmod on a line, to make it work after reboot)

On disk usage and partitioning
I choose to partition putting /var on a 1.5GB partition on the SD card, and use the rest of the SD card for /usr. The root partition (/) goes on the internal SSD, giving me more than 3GB for fast /home (also on /, to be clear). No swap. I use ext2 for all filesystems (journaling can hardly be faster than not journaling).

The great thing compared to earlier versions of Ubuntu, is that with final 12.04 Ubuntu recognizes the SD card as installable media. It will not complain that the 4GB SSD is not enough as it used to!

Install Ubuntu 12.04 (beta 1) on Eee 701

Update: Install 12.04 on Eee 701

I have been running Xubuntu a while on my Eee 701. However the 4 GB SSD drive is not enough for making system updates anymore. I could probably get rid of some applications to fix it, but I decided to try Ubuntu 12.04 instead. To improve the storage situation I got an 8GB SD Card. I have 1GB of RAM in this Eee 701, and perhaps the original 512Mb is not enough for Ubuntu.

Note, with the small 800×480 display, Alt-F7 helps you move windows around.

The disk limit
The Ubuntu installer complains that it does not have 8.6GB available. It seams it knows that it needs 4.3GB, but it wants extra space… and, I dont think it reconizes the SD Card as a legal place to install. Anyway, there is a file where you can make a change:

min_disk_size = size * 2

Replace the 2 with for example 0.5, and you can attempt any configuration you want.

Partitioning and disk usage
When installing, I had the following drives:

/dev/sda     -- 4GB (internal SSD)
/dev/sdb     -- USB memory that I install from
/dev/sdc     -- 8GB (SD Card)

I decided to try the following partitioning:

/dev/sda1    -- 128 MB /boot  (24 MB used)
     sda5    -- 3.8 GB /home  (empty)
/dev/sdc1    -- 8 GB   /      (3.8 GB used, usr=3.2GB, var=423Mb, lib=176Mb)

The safer alternative would be to put / on sda, and /usr on sdc (but that would leave me with 600Mb less space for home).

Boot issues
Two possible problems with my setup:

  1. Is the memory card available when / needs to be mounted, at boot?
  2. Will Ubuntu figure out that what was sdc during install is now sdb?

Second problem should be easy to fix.

So, after installing, I rebooted WITH install USB memory stick (sbd) still inserted. And the system boots perfectly. I attempt a boot without the memory stick inserted. As I feared, root filesystem is not found, but I get a prompt (not a Panic like in the old days):

BusyBox v1.18.5...
Enter 'help'...


I boot back into Ubuntu (so I put the USB stick back – and now sbc is root again) to fix Grub. Now, this is how grub works… you edit /etc/default/grub and/or files in /etc/grub.d/. Then you run grub-update. However, this procedure automatically figures out your root device, and that is what you want to change… so I did the forbidden:

sudo vi /boot/grub/grub.cfg

and replaced root=/dev/sdc1 with root=/dev/sdb1. Finally, I ran

sudo /usr/sbin/grub-setup /dev/sda

And shutdown, remove memory stick, and boot… and it works! To make sure everything is in order, I now automatically generate /boot/grub/grub.cfg

sudo update-grub
sudo /usr/sbin/grub-setup /dev/sda

And confirm with another reboot.

I believe that now everything weird I have done is history, and I have a clean system. Booting is actually reasonably fast from SD Card. Probably using the internal SSD for / would give better performance.

Updated disk usage
After updating the Beta to latest everything, this is how disk usage looks like:

8.6M	bin
48M	boot
15M	etc
288M	lib
106M	opt
8.8M	sbin
3.3G	usr
894M	var

Could be interesting for those of you who wants to install on limited disk. Probably /var can be reduced (and will grow when updating the system). Chrome is installed in /opt.

Raise CPU from 630Mhz to 900MHz
The Eee 701 is equipped with a 900MHz CPU clocked at 630MHz. It is perfectly fine to run at 900MHz, especially when plugged in to AC. This is what I did:

sudo apt-get install cpufreqd cpufrequtils
sudo modprobe p4_clockmod

# now check with
cat /proc/cpuinfo

sudo vim /etc/modules
# add p4_clockmod

If you are not connected to AC, the cpu will run slower. See /etc/cpufreqd.conf.

Moving / to SSD?
Now that I know how much disk space is required it is tempting to move / to the SSD (sda). I did some read/write performance tests…

              SSD (sda)      SD (sdb)
Write 1GB      44s            327s
Read  1GB      35s             64s

Firefox Kerberos and Active Directory SSO

At my company there are several internal Windows web servers using AD and Kerberos single sign on. That means, on a Windows computer with Internet Explorer, I dont need to authenticate to access those web servers. Using Firefox, I have to give username and password to each and every site. This article tells how I made single sign on work with firefox.

Ubuntu (Natty) client with Firefox 4
First, Kerberos needs to be installed, which obviously was not default in Ubuntu Natty. When running kinit I got the following:

$ kinit
No command 'kniit' found, did you mean:
 Command 'kinit' from package 'heimdal-clients' (universe)
 Command 'kinit' from package 'krb5-user' (main)

I guessed correctly and installed krb5-user:

$ sudo apt-get install krb5-user

That installation asked me for my realm (or something), and I gave the internal DNS domain name, which is on the form:


The servers I want to access are called things like:


This realm was then stored in the kerberos configuration file:

# /etc/krb5.conf
        default_realm = AD.MYCOMPANY.INTRA

Now running kinit asked me for my password, I authenticated successfully. My username on my Ubuntu client happened to be the same as my username in Active Directory:

zo0ok@zo0ok-workstation:~$ kinit
Password for zo0ok@AD.MYCOMPANY:INTRA: 
zo0ok@zo0ok-workstation:~$ klist
Ticket cache: FILE:/tmp/krb5cc_1000
Default principal: zo0ok@AD.MYCOMPANY.INTRA

Valid starting     Expires            Service principal
05/26/11 13:10:39  05/26/11 23:11:09  krbtgt/AD.MYCOMPANY.INTRA@AD.MYCOMPANY.INTRA
	renew until 05/27/11 13:10:39
zo0ok@zo0ok-workstation:~$ kdestroy

Above example authenticates, lists my tickets and destroys them.

Now it is time for Firefox configuration. In the URL-field, type about:config. You may get a warning about dangerous things and voiding warranty. Proceed and you get to a page with very many configurations. We want to set:

network.negotiate-auth.trusted-uris = .ad.mycompany.intra

I have been told the . before ad is important. Not sure. It should also be possible to include more servers/domains using , between them. I dont know exactly how flexible the field is, but the above setting works for me.

Now, I can single sign on to internal webpages using Firefox on Linux! Note that I have to authenticate using the “kinit” command. It does not work to authenticate to one site in Firefox, and hope to get SSO to all the others.