Ubuntu Probably the First Ever Linux Distro to Overshoot Popularity of Linux Itself

I don’t know if that is a good news or bad news, but Ubuntu is going to be more popular than Linux itself according to some statistics via Google Trends and Google Insight.

Google Trends is not an authentic source of popularity index, but it can definitely give you a lot of pointers on what future holds for Ubuntu and Linux. As you can see from the above Google Trends screenshot, popularity of Ubuntu is almost same as that of Linux in 2010.

Intermittent small spikes shows the Ubuntu release cycle. And during the last Ubuntu release, Ubuntu 10.04 Lucid Lynx LTS ie, Ubuntu almost overtook Linux’s popularity by a whisker. A feat no other Linux distro ever managed to achieve.

Google Insight’s Forecast of the Future
Google Insight has this forecast feature, using which you can predict the future of different trends. Basically what it does is, it looks into the search history of a term and tries to predict what the future trend of that term will look like. Here is how Ubuntu vs Linux looked like.

As you can see, Ubuntu clearly crossing over Linux’s popularity in late 2010. Though you can’t completely rely on statistics provided by Google Insight, as I said before, they are definitive pointers into the future.

What about other Linux distros?
I took a quick comparative analysis of other popular linux distros like Fedora and Open Suse against Ubuntu and here is what I found.

Ubuntu completely overwhelming the popularity of all other distros and Linux itself is a bad thing? I don’t know. But Ubuntu is Linux. And who ever using Ubuntu long enough will definitely learn about Linux IMO, even if he/she does not ‘search’ the term ‘Linux’ in Google. What you guys think?

HOWTO build the RaLink RT3090 driver on Ubuntu 10.04 LTS Lucid Lynx

* This HOWTO document is placed under the public domain.
* You are free to copy, mirror, link to, or duplicate it.

This HOWTO is mirrored in two places:

* http://www.halibutdepot.org/how_to_build_rt3090_for_ubuntu_lucid/
* http://stat.case.edu/~jrt32/how_to_build_rt3090_for_ubuntu_lucid/

I have an MSI Wind U230 laptop.  The built-in wireless NIC identifies itself
as an "RaLink RT3090 Wireless 802.11n 1T/1R PCIe".  This NIC is not supported
out-of-the-box under Ubuntu 10.04 LTS (Lucid Lynx) because there is no
driver for it in the 2.6.32-22-generic kernel tree.

I searched for a solution and found that other people who are running
Lucid Lynx and using the same unsupported rt3090 NIC are getting it to work
by using the old version of the rt3090 driver packaged by Markus Heberling
in his PPA (https://launchpad.net/~markus-tisoft/+archive/rt3090).

I'm grateful to Markus Heberling for doing all of the hard work
to package RaLink's driver for Ubuntu.  But because his PPA for
the rt3090 has not been updated since Ubuntu 9.10 (Karmic Koala),
and because RaLink has released a newer version 2.3.1.4 that no one
has packaged, I don't feel comfortable relying on the old rt3090
package built for Karmic, even though it does work fine on Lucid.

Below I describe the procedure I used in order to build an rt3090-dkms
package just like the one that Markus Heberling built for Karmic Koala.
The process involves downloading the newest rt3090 driver from RaLink
(version 2.3.1.4 at the time of this writing), applying Markus Heberling's
patches against it, and building a package from the source.

Here is the procedure:

 (1) Install packages required to build packages.
     (a) sudo apt-get install build-essential
     (b) sudo apt-get install devscripts
     (c) sudo apt-get install cdbs

 (2) Define a root directory in which to download files.
     (a) cd /path/to/some/download/directory/
     (b) export DOWNLOAD=`pwd`

 (3) Get the rt3090 drivers from the manufacturer's website.
     (a) Option 1: Use the pre-saved RaLink tarball from
         http://stat.case.edu/~jrt32/how_to_build_rt3090_for_ubuntu_lucid/RT3090_LinuxSTA_V2.3.1.4_20100222.tar.bz2
     (b) Option 2: Download the tarball directly from RaLink:
         Go to http://eng.ralinktech.com.tw/support.php?s=2
     (c) Download the file "RT3090PCIe".
         (RT3090_LinuxSTA_V2.3.1.4_20100222.tar.bz2)

 (4) Get Markus Heberling's Ubuntu-friendly patches against RaLink's driver tarball.
     (a) Option 1: Download a mirrored copy of Markus Heberling's patch:
         http://stat.case.edu/~jrt32/how_to_build_rt3090_for_ubuntu_lucid/rt3090_2.3.1.3-0ubuntu0~ppa1.diff.gz
     (b) Option 2: Download the patches from Markus Heberling's PPA:
         Browse to https://launchpad.net/~markus-tisoft/+archive/rt3090/+packages
     (c) Expand the release "rt3090 - 1:2.3.1.3-0ubuntu0~ppa1".
     (d) Download the patch "rt3090_2.3.1.3-0ubuntu0~ppa1.diff.gz"

 (5) Get my patch to bump the packaged version number to 2.3.1.4 .
     (a) Download this patch:
         http://stat.case.edu/~jrt32/how_to_build_rt3090_for_ubuntu_lucid/rt3090-2.3.1.3-2.3.1.4.diff

 (6) Apply patches against RaLink's drivers.
     (a) Create a staging directory:
         mkdir -p /path/to/some/staging/directory
         cd /path/to/some/staging/directory
         export STAGING=`pwd`

     (b) Extract RaLink's drivers to the staging directory.
         cd $STAGING
         tar xfj $DOWNLOAD/RT3090_LinuxSTA_V2.3.1.4_20100222.tar.bz2
         cd $STAGING/RT3090_LinuxSTA_V2.3.1.4_20100222/

     (c) Apply Markus' patches to the extracted sources.
         cd $STAGING/RT3090_LinuxSTA_V2.3.1.4_20100222/
         gzip -dc $DOWNLOAD/rt3090_2.3.1.3-0ubuntu0~ppa1.diff.gz | patch -p1

     (d) Update the version number from 2.3.1.3 to 2.3.1.4 .
         cd $STAGING/RT3090_LinuxSTA_V2.3.1.4_20100222/
         patch -p1 < $DOWNLOAD/rt3090-2.3.1.3-2.3.1.4.diff

 (7) Build a DKMS-friendly .deb package.
     (a) cd $STAGING/RT3090_LinuxSTA_V2.3.1.4_20100222/
     (b) dpkg-buildpackage -A -sa -us -uc
     (c) An installable .deb package gets created and stored as
         $STAGING/rt3090-dkms_2.3.1.4-0ubuntu0~ppa1_all.deb
     (d) Optional: You may download my pre-built rt3090-dkms package here:
         http://stat.case.edu/~jrt32/how_to_build_rt3090_for_ubuntu_lucid/rt3090-dkms_2.3.1.4-0ubuntu0~ppa1_all.deb

 (8) Install the newly-built package.
     (a) sudo dpkg -i $STAGING/rt3090-dkms_2.3.1.4-0ubuntu0~ppa1_all.deb
     (b) sudo reboot

 (9) Appendix: Automatically rebuilding the module via DKMS.
     Sometimes I switch to a different kernel (such as the one provided
     in the package "linux-rt").  This breaks the wireless NIC because
     the module hasn't yet been built and installed in the new kernel.
     Because we built a DKMS module, we can have it rebuilt automatically
     after we reboot into a new kernel:
     (a) sudo dkms build -m rt3090 -v 2.3.1.4
     (b) sudo dkms install -m rt3090 -v 2.3.1.4

Ubuntu – Installing Microsoft Fonts

Microsoft Fonts

Note: The package ttf-liberation contains free variants of the Times, Arial and Courier fonts. Those fonts are recommended instead unless you specifically need one of the other Microsoft fonts.

To install the Microsoft core fonts, you will first need to enable the Multiverse repository. Then install the msttcorefonts package by any of the means listed here. After installing the font package you will need to update the shared font directories with the following command in a terminal shell.

sudo fc-cache -f -v

Note: the msttcorefonts package does not work if you are behind a proxy server.

Face Recognition Security Software

A quick Google search turned up a number of projects in early development, and a couple of commercial systems with price tags in the hundreds of dollars (presumably for enterprise-level applications).

Of course, you do know biometrics are a bit of a joke, and nowhere near as secure and reliable as a good password, right? You can fool 2D facial recognition apps with a photograph. Fingerprint scanners can be fooled by a piece of tape with a lifted fingerprint, or a piece of damp paper with a photocopy of the person’s fingerprint. Voice recognition software can be fooled by a digital voice recorder with a decent speaker.

And all of them will fail due to normal bodily changes. Gain or lose a few pounds, or wear a bit more or less makeup than usual, and the facial recognition software might not recognize your face. Get a cut or burn on your finger, and the fingerprint scanner won’t let you log in to your computer. Catch a cold or laryngitis, and neither will voice recognition software.

On the other hand, if a password is at least eight characters, includes numbers and/or special characters, and is something you can easily remember, it will always work, and is very secure as long as you keep it in your head.

SELinux

A maioria dos métodos de autenticação de controle de acesso são arbitrários. O dono do objeto (seja um programa ou dado) pode alterar as permissões para outras pessoas e grupos.
Anos atrás, a Agência de Segurança Nacional (NSA) criou um projeto para aplicar “Mandatory Access Control” (MAC) dentro do kernel Linux. Este projeto ficou conhecido como “Security Enhanced Linux” ou “SELinux”. O MAC reforça as políticas de segurança que limitam o que um usuário ou programa pode fazer, e quais arquivos, portas, aparelhos e diretórios um programa ou usuário pode acessar.
SELinux tem três modos: “Desabilitado”, “Permissivo” e “Execução”. No modo “Desabilitado” nada é feito. Neste modo você tem as políticas configuradas e prontas, mas não ativas. O modo “Permissivo” registra as violações da política em arquivos de log para que você possa verificar ou monitorar. No modo “Execução” qualquer violação da política de segurança será contida.
SELinux utiliza cerca de 5 a 10% do desempenho do sistema quando no modo de Execução ou Permissivo.
Da mesma forma, o SELinux pode ser executado em uma política de “Orientada” ou “Estrita”. A política “Orientada” significa que os controles MAC apenas se aplicam a determinados processos. A “Estrita” significa que os controles MAC se aplicam a todos os processos. As pessoas devem ser advertidas de que o uso indiscriminado da política “Estrita” do SELinux pode tornar o sistema praticamente inutilizável para alguns usuários. Tem que haver um compromisso de manter o sistema seguro, mas permitindo que os usuários façam o seu trabalho.
Argumenta-se que o SELinux é um “exagero” em um sistema de um único usuário, mas com modernos exploits e o poder do “sistemas de um único usuário”, podemos encontrar mais e mais aplicações do SELinux em um desktop de um único usuário.