linux poison RSS
linux poison Email

Windows XP like Linux - Linux XP

Linux XP is a shareware operating system that was first released by EnabledPeople. It is designed to imitate the Windows environment. It is currently owned by Trustverse and is under development. The current version's graphical interface is designed to imitate Windows Vista. By means of the use of the open-source Wine compatibility layer, Linux XP can run some Windows programs. The current stable version of Linux XP is titled Linux XP Desktop 2008. Linux XP uses the GNOME desktop environment.

Similar to MS Windows, after installation, Linux XP has to be registered within a 30-Day trial period or the OS will deactivate.

Linux XP Desktop makes your computer virus-free, stable and dependable. You'll spend less time fixing your PC and more time using a standard well-known graphical interface to get work done.

    * The most user-friendly interface ever made for Linux
    * Simple and clear installation and Windows-style setup tools
    * Full set of applications for work in the Internet.
    * Support of Microsoft Office document formats (WORD, EXCEL and others)
    * Useful tools for working with Windows networks and VPN
    * Full control of your computer, data and applications
    * Stable, dependable and without any reinstallation
    * Absolutely virus-free environment
    * Free updates through a simple but useful interface (no RPM knowledge is required)

A set of Windows-like setup tools allows you to perform system management duties in a way that is familiar to you.
Read more

Installation and Configuration of Gnome-DO

GNOME enthusiasts have a couple of good options when it comes to searching, launching, and otherwise manipulating and accessing files, applications, and information right from the desktop: GNOME-Do, and the GNOME Deskbar applet.

GNOME-Do is a desktop search and application-launching applet similar to the now-defunct GNOME Launchbox. It's inspired by Quicksilver, an applet for Apple's Mac OS X operating system. Do was built for the GNOME desktop but also runs on KDE. Developers call Do an "intelligent launcher tool" because it uses predictive technology to guess what you want to do when you start typing the first few letters of the name of an application, file, or contact.

openSUSE 11.0
GNOME Do is installed by default but it's version 0.4 and new plugins aren't compatible with this version. To install the newest version just click here.

GNOME do is in the repos for all stable Fedora releases and the development branch, use the graphical tools to install it or invoke the following as root:

# yum install gnome-do

Start GNOME Do by selecting the GNOME Do entry in the Applications > Accessories menu, or by executing the command:

$ gnome-do

Once the application is running, you can summon it by pressing Super + Space. On most keyboards the super key is the same as the Windows key or the Command key. If you'd like to use a different keybinding for GNOME Do

You should see a dialog with a search icon and two panes in the center of your screen. The pane on the left is the item pane, which shows the item you have selected, and the pane on the right is the action pane, which shows the action you wish to perform on the item.

Type in the left pane to search for an item, anything from programs, to contacts, to albums, to text can be used as an item. Pressing Tab will switch you from the Item pane to the Action pane, allowing you to select an action to perform on that item, by typing its name. All panes of gnome-do have autocomplete (so you don't have to type the full name of an item or action), and active learning, so your most used items come up first when searched. Hitting Enter at any time will perform the action on the right to the item on the left, such as running a program, opening a bookmark, sending an e-mail, etc.
Read more

How to create own Grub Splash Screen

Customizing your boot screen with a favorite photo, your company logo, or even a cartoon is quite straightforward:

1. Prepare a suitable image. The image must be 640x480 pixels and have a maximum of 14 colours, because the VGA mode used during boot has a resolution of 640x480 pixels with 16 colours and 2 colours are reserved for text (white and black). If you're using the Gimp graphics editor, simply ensure that your image is 640x480 pixels (the titlebar of the image window displays the image size) and then select the menu option Image>Mode>Indexed, entering 14 as the "Maximum number of colours".

2. Save the image to your /boot/grub directory with an extension of .xpm.gz

3. Edit your /boot/grub/grub.conf file so that the splashimage entry points to our new image file. This path will be relative to the start of the /boot partition, so /boot/grub/myimage.xpm.gz would be written as (hdX,Y)/grub/myimage.xpm.gz (where X is the BIOS/Grub disk number and Y is the BIOS/Grub partition number).

      title Fedora (
      root (hd0,0)
      kernel /vmlinuz- ro root=/dev/hda6 quiet
      initrd /initrd-
Reboot to see the result.

The XPM format used by Grub is very unusual: it's actually a snippet of C source code containing an ascii-to-colour translation table and the image encoded as ASCII art. You can see this by using gunzip to decompress the file and then viewing it as text.

Tips on preparing a grub splash image:

 * Choose an image with a small number of colours to avoid excessive dithering or solarization when converting to indexed format.   

* Grub displays text in white with a black drop-shadow, so it should be visible against any colour background -- but it it's best to avoid white or really light colours for maximum readability.
Read more

ACL Editor - Eiciel

Traditionally, in UNIX, files have three kind of permissions associated to them. Those permissions, called UGO (from User, Group and Others) allow you to set whether a user can read, write or execute a file.
Permissions can only be changed by the owner (or the superuser).

UGO permissions are suitable for most scenarios. However, IEEE POSIX workgroup was conscious that sometimes they are too limiting and defined an interface in POSIX 1003.1e DRAFT 17 intended to manage file ACLs. That proposal was left out from the standard but is implemented in several BSD (Solaris and FreeBSD 5) and GNU/Linux (as of version 2.6 of the kernel).

ACL allow to set permissions in a per-user or per-group fashion. For instance, it is not feasible in UGO permissions to have two users (bob and alice) where bob can only read, alice can read and write and no other user can access the file.

Traditionally, tools to manage file ACL entries have been setfacl and getfacl. Those are command-line tools and some people can feel uncomfortable using them.

Eiciel allows you to visually edit file ACL entries. You can add and remove users and groups who will be granted permissions through the graphical interface.


After checking you satisfy all the requirements of Eiciel.

$ tar xvfj eiciel-XXX.tar.bz2
$ cd  eiciel-XXX
$ ./configure
$ make
$ su
# make install

Don't forget to restart Nautilus. The following command will quit it, but GNOME will restart it again.

$ nautilus -q

For Eiciel 0.7 and later configure needs to know where Nautilus extensions must be installed. It will try to detect it automatically. If the directory is incorrectly guessed you can override it with --with-nautilus-extensions-dir=directory.

For Eiciel 0.6 or former configure needs to know where Bonobo servers must be installed. It will try to detect it automatically. If the directory is incorrectly guessed you can override it with --with-bonobo-dir=directory.
Read more

Package management in Fedora 9

To manage packages from the command line in Fedora 9, there are two options available: first, you could continue to use the yum command which is still present. The second option is to use the PackageKit command-line tool, pkcon, which works a lot like the yum command but which interfaces with the PackageKit service.

Like yum, pkcon accepts a subcommand and arguments. Here are some of the more common uses and the closest corresponding yum command:

pkcon commandyum commanddescription
pkcon search name patternyum list patternlists packages with names containing pattern (note: with yum it's necessary to specify wildcard astrisks if required.).
pkcon search details patternyum search patternlists packages with details (including description) containing pattern
pkcon install packageIdyum install packagenameinstalls the designated package
pkcon install-file filenameyum localinstall filenameinstalls the designated RPM file, resolving dependencies through yum repositories as required
pkcon update-systemyum updateupdate all packages on the system for which updates are available
pkcon update packageIdyum update packagenameupdate only the specified package
pkcon get description packageIdyum info packagenameget detailed information on the specified package
pkcon get depends packageIdyum deplist packagenamedisplay dependency information for a package

Since pkcon queues requests with the PackageManager service, it does not ask for confirmation before proceeding with an installation or removal (which is the default behavior for yum). However, you do have the option of adding the -n option to the command line to enqueue a request without waiting for it to complete.
Read more

Installing Real Player and Configuring Mozilla Plugin

The following steps show how to install Real Player 11 and Mozilla Plugin for Firefox 3.x browsers running on Hardy Heron.

Download Real Player 11 from:

Open a terminal and change to the directory where the file was downloaded. Grant execute permissions and run the setup using the following commands:

  # chmod 770 RealPlayer11GOLD.bin
  # sudo ./RealPlayer11GOLD.bin
Use the following default installation directory during the installation:



1) Run Real Player using command: realplay and click on "next" till you reach the screen (below) to configure the mozilla plugins

After completion, Open Firefox and type about:plugins in the address bar. Scroll down and look for the following entry.

Helix DNA Plugin: RealPlayer G2 Plug-In Compatible

File name:
Helix DNA Plugin: RealPlayer G2 Plug-In Compatible version built with gcc 3.4.3 on Feb 25 2008

If found, your Real Player and its Plugin is installed properly!
Read more

How to check is service is tcpwrapper enable

In order to use hosts_access (hosts.allow/hosts.deny), a service would need to be compiled in with tcpwrapper (tcpd) support and can be checked easily with the below commands.

# ldd `which sshd` | grep -i libwrap


# strings `which sshd` | grep -i libwrap

Both the commands should echo out which would mean hosts_access can be used for service sshd.

Make sure you are able to connect to ssh, add your IP to "/etc/hosts.allow". In the below case I am using the full range of my local intranet (LAN).

# Allow localhost
ALL: 127.
# Allow LAN
sshd: 192.168.

Now to block ssh access to others, simply add the below lines to "/etc/hosts.deny".

# Block everyone else from SSH
sshd: ALL

Note: hosts.allow takes precedence over hosts.deny.
Read more

Usefull 100+ Commands

   1. Schedule a queue to run at 9am on March 1st. Note: Ctrl-d to save and exit.

      $ at 9am March 1

   2. Schedule a queue to run after 5 minutes.

      $ at now +5 minutes

   3. Check any jobs pending to run, same as at -l .

      $ atq

   4. Empty out a file.

      $ cat /dev/null > /path/to/file

   5. Change directory, see also pushd and popd.

      $ cd

   6. List run level information for the service type.

      $ chkconfig --list

   7. Change owner recursively.

      $ chown -R : /path/to/directory

   8. Change shell.

      $ chsh

   9. Scan recursively for viruses.

     $ clamscan -r

  10. Compare two files.

     $ cmp file1 file2

  11. Copy keeping the directory structure.

      $ cp --parent /source/path /destination/path

  12. Copy keeping the permissions of the user.

      $ cp -p

  13. Copy recursive.

      $ cp -r

  14. Copy without shell aliasing.

      $ \cp

  15. List crontab for user.

      $ crontab -u -l

  16. Check current date and time.

      $ date

  17. Set current date and time, may need to set the hardware clock to the system time too, `man hwclock`.

      $ date -s 'Wed May 28 11:35:00 EST 2003'

  18. Show disk free in human readable format.

      $ df -h

  19. Configure interface using DHCP protocol.

      $ dhclient eth0

  20. Find context differences between two files.

      $ diff -c

  21. Creating a patch file.

      $ diff -Naur oldDir/oldFile newDir/newFile > new_patchFile

  22. Kernel buffer

      $ dmesg

  23. Show disk used in human readable format.

      $ du -h /path/to/directory

  24. Find files larger than 10MB.

      $ find /path/to/file -size +10000k

  25. Find file permissions with setuids.

      find / \( -perm -4000 -o -perm -2000 \) -exec ls -ldb {} \;>> /tmp/suids

  26. Search for world writable files and directories.

      $ find / -perm -002

  27. Display information on free and used memory.

      $ free

  28. Grep on word boundaries.

      grep -w

  29. Count the number of mathces - similar to “wc -l”.

      $ grep -c

  30. Perform timings of device reads for benchmark and comparison purposes.

      $ hdparm -t /dev/hda1

  31. Set the hardware clock to the current system time.

      $ hwclock --systohc

  32. check the ip address

      $ ifconfig

  33. Add an  ip address to eth0.

      $ ifconfig eth0:x

  34. Install loadable kernel module. You can also use `modprobe` to do the same.

      $ insmod

  35. Displays information about your system’s CPU and I/O.

      $ iostat [ interval [ count ] ]

  36. List iptables firewall rules in numeric format.

      $ iptables -L -n

  37. HangUP process so it will re-read the config file.

      $ killall -HUP

  38. Install the boot loader and increase verborsity.

      $ lilo -v -v

  39. Query the boot map.

      $ lilo -q

  40. One time boot to the named kernel.

      $ lilo -R

  41. Create symbolic link to the target file or directory.

      $ ln -s

  42. Configure dynamic linker run-time bindings

      $ ldconfig

  43. List the IPs bound via Ensim

      $ listaliases

  44. Quickly search for indexed files. Run `updatedb` to update the indexed database.

      $ locate

  45. List files.

      $ ls

  46. List loaded kernel modules

      $ lsmod

  47. Create the access.db file database map for sendmail.

      $ makemap hash /etc/mail/access.db < /etc/mail/access

  48. Create/Make a new directory.

      $ mkdir

  49. Generate a random 128 character length password.

      $ mkpasswd -l 128

  50. Read in the contents of your mbox (or the specified file).

      $ mail -f /var/mail/nameOfFile

  51. Print the mail queue

      $ mailq


      $ mailstat /path/to/procmail/log

  53. Description of the hierarchy directory structure of the system

      $ man hier

  54. Check the MD5 message digest.

      $ md5sum

  55. Mount points check.

      $ mount

  56. Provide information about your systems’ processor.

      $ mpstat [ interval [ count ] ]


      $ ncftpget -R -u  -p
      hostname /local_dir /remote_dir


      $ netstat -a | grep -i listen

  59. Will show you who is attached to what port.

      $ netstat -anpe


      $ netstat -n

  61. See which programs are listening on which port

      $ netstat -lnp

  62. Will show you what local TCP ports are open and what programs are running on them.

      $ netstat -lntpe

  63. Will show you what local UDP ports are open and what programs are running on them.

      $ netstat -lnupe

  64. Run a program with modified scheduling priority. (# range between -20 to +20, negative is higher priority)

      $ nice -n # [command to nice]

  65. Scan network

      $ nmap -v hostname/ip

  66. Patch and keep a backup

      $ patch -p# -b < patch_file


      $ ps -ecaux

  68. Turn off all quotas for users and groups, verbose mode

      $ quotaoff -augv

  69. Check quota for all users and groups interactively, do quotaoff first.

      $ quotacheck -augmiv

  70. Turn on all quotas for users and groups

      $ quotaon -augv

  71. Add host ip to route on a particular device.

      $ route add -host dev eth0:x


      $ rdate

  73. Remove file

      $ rm

  74. Remove kernel module

      $ rmmod

  75. Display the routing table in numeric.

      $ route -n


      $ rpm

  77. Uninstall/erase package.

      $ rpm -e

  78. Erase without dependency check.

      $ rpm -e --nodeps

  79. List out installed rpms by date, latest on top.

      $ rpm -qa --last | less

  80. Rebuild rpm database.

      $ rpm --rebuilddb

  81. Find which package owns the file.

      $ rpm -qf /path/to/file
      $ rpm -q --whatprovides /path/to/file

  82. Verify package.

      $ rpm -V


      $ rpm -Vf /path/to/file

  83. Locate documentation for the package that owns the file.

      $ rpm -qdf /path/to/file

  84. Query information on package.

      $ rpm -qip

  85. Query files installed by package.

      $ rpm -qlp

  86. Gives list of files that will be installed/overwritten.

      $ rpm -ql

  87. Will show the scripts that will be executed.

      $ rpm -q --scripts

  88. Display system activity information

      $ sar

  89. Print a 0 padded sequence of numbers.

      $ seq -w 1 10

  90. Record eveything printed on your terminal screen.

      $ script -a

      Ctrl+D to exit out. `more ` to view.

  91. Check the status of a service.

      $ service status

  92. Restart after shutdown and force fsck (fsck may take a while).

      $ shutdown -rF now

  93. Split a file into pieces with numeric suffixes, so it can be burnt to cds.

      $ split -d -b 640k big_input_filename.gz piece_file_prefix.gz.

      To piece it back you can `cat piece_file_prefix.gz.* > original.gz`
  94. Determine if a network service binary is linked againt tcp wrapper, libwrap.a

      $ strings -f | grep hosts_access

  96. how to use tar

      $ tar -cvzf fileName.tar.gz `find /file/path -mtime -1 ! -type d -print`


      $ tar -xvzpf fileName.tar.gz /path/to/file.txt

  98. How to use tcpdump

      $ tcpdump -i eth0 dst port 80 | more

  99. System process status

      $ top

 100. View the full command line.

      $ top -c

 101. Create empty file of 0 byte

      $ touch

 102. Similar to `which` - shows full path to the command.

      $ type

 103. Check the limit of user

      $ ulimit -a

 104. Check the version of kernel running

      $ uname -a

 105. Update package profile with rhn

      $ up2date -p

 106. Install package via up2date.

      $ up2date -i


      $ uptime


      $ usermod

 109. Utility reports virtual memory statistics

      $ vmstat [second interval] [no. of count]

 110. Show who is logged on and what they are doing.

      $ w

 111. Periodically watch output of a command in full screen

      $ watch ''

 112. Run and generate the apache reports using webalizer

      $ webalizer -c /path/to/webalizer.conf

 113. Recursive download of a url, converting links, no parent.

      $ wget -r -k -np

 114. Mirror, convert links, backup original, dynamic to html and output a “logFile”.

      $ wget -m -k -K -E -o [logFile]

 115. Locate the binary, source, and manual page files for a command.

      $ whereis

 116. Shows the full path of command.

      $ which

 117. Show who is logged on.

      $ who

 118. Yum package updates

      $ yum check-update           -- check to see what updates are needed
      $ yum info     -- show basic information about a package
      $ yum update   -- update particular package

 119. Control jobs:

      $ Ctrl-z   -- suspend foreground job
      $ jobs     -- list jobs
      $ bg       -- send job to background
      $ fg       -- bring job to foreground
Read more

How to Upgrade to latest Firefox on openSUSE

In order to have the latest Firefox running on your box, you need to add a repository to your system so that whenever a new version of Firefox is released we can simply upgrade it without any pain.

1) Add the Firefox repository (goto): Yast -- Software -- Software Repositories
Repository Name (A description that is meaningful to you)
Directory on Server: /repositories/mozilla/openSUSE_11.0/

click OK, then (optionally) Refresh Now, then Finish. Now, you can update Firefox the same way you update openSUSE

2) Installation
Now got to Yast -- Software -- Software Management and search for firefox

Click on "Accept" to start with the installation of Latest firefox release. After successful installation, check the firefox version to confirm

Now, whenever there is a new firefox release, just refresh the repository, search for firefox and upgrade it, easy
Read more

Accept/Reject mails from domain using Sendmail (access.db)

The sendmail access database file can be created to accept or reject mail from selected domains.
Since "/etc/mail/access" is a database, after creating the text file, use makemap to create the database map.

# makemap hash /etc/mail/access.db < /etc/mail/access

Below is example access file

# by default we allow relaying from localhost...
localhost.localdomain           RELAY
localhost                       RELAY                       RELAY

# accept mail from PayPal      OK

# Reject Mail     REJECT REJECT                 REJECT                     REJECT REJECT                   REJECT

# Discard Mail  DISCARD
# forum admin mails:         DISCARD

# Reject full mailbox ERROR:4.2.2:450 mailbox full REJECT

# Blacklist recipients ERROR:550 That host does not accept mail

# Spam friend domains: exempt domains from dnsbl list checking      FRIEND

# Spam friend users: exempt email users from dnsbl list checking
# example:
# Spam:user@domain.tld         FRIEND
# clients  FRIEND
Read more

VLC media player installation on OpenSuse

First, add a new repository (installation source) in YaST (YaST2 -> Software -> Installation Sources)

Add the following Repository:

Type: HTTP / Servername: /
Directory: /pub/videolan/vlc/SuSE/

Replace in the Directory above with your installed SuSE Version. Supported at this time are :


Confirm the addition.

The repository is signed with a GPG Key (gpg key C8DA93D2 fingerprint BC8D 780D E330 8581 B2E0 7085 33DE 8FB7 C8DA 93D2). Accept this key in YaST and it will warn you in case there is something suspect with the repository.
Accept everything by clicking Finish.


Go to Software Management and enter VLC in the searchbox and search for it. Select it and click Accept to install it with all it's dependencies. This might require the SUSE CD or DVD.

If you want VLC's Mozilla Plugin, you have to select the vlc-mozillaplugin manually. It does not get installed by dependencies.

Read more

Mac OS like Dock in openSUSE (Avant Window Navigator)

Avant Window Navigator (AWN/Awn) is a dock-like navigation bar for the linux desktop that positions itself at the bottom of the screen. It can be used to keep track of open windows and behaves like a normal window list, something like ...


1. your system should support Compositing (using AIGLX or XGL). In openSUSE 11.0 AIGLX compositing is enabled by default.

2. Make suere Compositing is enabled. To verify this

    # grep -i composite /etc/X11/xorg.conf
    Option       “Composite” “on”

If missing, under “Section Extensions” add the line

    Option       “Composite” “on”

So it looks as follows:

    Section “Extensions”
    Option “Composite” “on”

3. Make sure Compositing Manager is installed. Compiz, Compiz-manager, Beryl, metacity etc


1) Got to yast --> Software Management and search for "avant" and select and install it (For this make sure you have the packman repso include)

Running and Configuration:

1) After sucessfull installation run the  avant window navigator using following command
#  avant-window-navigator

2) Now run the Avant manager to preferences and setting using following command
# awn-manager

3) under General tab click Bar Appearance. Select “3D look” under Look listbox.

4) under General. There is a list box for “Icon Effects”. Select your icon effect. Once selected, click referesh button to update.

5) You can select from a list of various available applets under Applets. Select the applet and click Activate.

6) Download and install the plugins from here

7) Download and install the required thems from here

8) To make the Dock appear online, add it to the system startup in GNOME here

Finally Avant in action

Read more

How to add a program/Script to Gnome Startup

Things are always simple in Linux, it's just a mater to know them to do it.

There may be a case where you want to kick start a particular application or script as soon as you login into your Gnome desktop. For example I want to run "Avant Window Navigator" every time I login into my Gnome.

Here is the way to do this....

Go to Gnome contor center by using command: gnome-control-center
This should open up the control center from where you can manage your personal desktop settings

Now go to group "System" and select "Session" this should open up the windows where all the start up applications are listed, click on "Add" to add or browser to your application or script to get executed every time you login to Gnome

Read more

How to view Routing Table and Change your default Gateway

The netstat -nr command will provide the contents of the touting table. Networks with a gateway of are usually directly connected to the interface. No gateway is needed to reach your own directly connected interface, so a gateway address of seems appropriate. The route with a destination address of is your default gateway.

Example below:

# netstat -nr
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface   U         0 0          0 eth0     U         0 0          0 eth0         UG        0 0          0 eth0

Change Your Default Gateway

you'll need to update your /etc/sysconfig/network file to reflect the change. This file is used to configure your default gateway each time Linux boots.

Read more

DPKG and APT-GET commands for packages (Debian/Ubuntu)


    * Clean up non-existent data
      # apt-get autoclean

    * Update list
      # apt-get update

    * Install/update a package
      # apt-get install

    * review dist-upgrade prior:
      # apt-get -Vsu -o Debug::pkgProblemResolver=yes dist-upgrade

    * Apply updates
      # apt-get -Vu upgrade

    * Upgrade all dependencies
      # apt-get -Vu dist-upgrade

    * Search cache
      # apt-cache search

    * Remove and purge packages
      # apt-get --purge remove


    * Install/Update package
      # dpkg -i

    * Check listing of installed packages
      # dpkg -l **

    * file belongs to
      # dpkg --search /path/to/file

    * List of file in package
      #dpkg -L

    * Info about package
      # dpkg -s
Read more

openSUSE or Novell SUSE

openSUSE 11.0 is based on the Linux kernel version 2.6.25 and provides a cornucopia of features. If you choose to download the full DVD, you can expect a whopping 4.5 GBs for the iso-format file. Other options include a Live CD and over the network. The good news is that you can use a BitTorrent client to get the iso file.

So what differentiates openSUSE from Novell's other distributions, namely SUSE Linux Enterprise Desktop (SLED) and SUSE Linux Enterprise Server (SLES)? To quote from the openSUSE FAQ:

"openSUSE, created and maintained by the openSUSE project, is a stable, integrated Linux operating system that includes the latest open source packages for desktop productivity, multimedia, Web-hosting, networking infrastructure and application development. It contains everything you need to get started with Linux and is ideal for individuals who wish to use Linux on their personal workstations or to drive their home networks."

"Novell refines and enhances openSUSE to create a hardened and supported suite of enterprise Linux products suitable for data center deployments, edge server deployments, business desktops, and business infrastructure deployment."

Novell markets the SLED and SLES products at organizations looking for a fully hardened and supported Linux distribution. They also include some products that can't be shipped with the openSUSE distribution. Novell chose the GNOME desktop to base its SLED product around for a number of reasons, not the least of which was the influence of Miguel de Icaza and Nat Friedman. The Mono project is also tightly coupled with GNOME and gives Novell a strong application development and porting base to offer enterprise customers.
Read more

VLC Media player problem with Compiz

Today after log time I was running compiz under Gnome (OpenSuse 11)  to impress my wife :) and fired up VLC to play a movie and oops -- VLC din't show up any video and was only playing the audio part of the movie.

So, If you are facing similar issue then follow this ....

Open VLC preference settings: Go to Settings --> Preferences

From the preference window go to Video --> Output modules and select the "Advance option" and select the video output module as "X11 Video Output" from the drop down

Save the settings and restart VLC and now you should able to see the video under compiz.
Read more

How to restore GRUB with an Ubuntu Live CD

Sometimes, if an Ubuntu installation goes wrong, or a Windows bootloader overwrites MBR and doesn't recognise the Linux installation, we have to restore our GRUB bootloader

we boot the Live CD, we choose the first option and in a few minutes we have arrived at the Live CD Desktop.

So, we go :  Applications --> Accessories --> Terminal

Then, we have to remember which is our Ubuntu installation partition.

In our example, it is the second one (/dev/sda2), formatted as ext3, in the first HDD of a SATA controller. We suppose that it is the second one, since, in case we have Windows that demand to be in the first partition (/dev/sda1), this one is occupied.

Now, you have to be really careful. You have to enter the right partition, instead of sda2 (unless it is the same) In the terminal :

  cd /
  sudo -s -H
  mount -t ext3 /dev/sda2 /mnt
  mount -t proc proc /mnt/proc
  mount -t sysfs sys /mnt/sys
  mount -o bind /dev /mnt/dev
  chroot /mnt  /bin/bash

And now, you are actually "running" Ubuntu within the Hard Drive but through Live CD's terminal.

Now we restore GRUB like that:

1) Restoration to MBR

  grub-install /dev/sda

2) Restoration to partition (example: /dev/sda2)

  grub-install /dev/sda2

In the first case (that is the most usual) you have certainly installed GRUB on MBR after you receive, in the terminal, the message that there are no errors.

After you reboot, you have your favorite bootloader restored.
Read more

Tune TCP/IP setting using sysctl

Tunable TCP settings can be found on /proc/sys/net/ipv4 . Here are the details of few of them.

tcp_keepalive_probes : Number of KEEPALIVE probes tcp sends out, until the server decides that the connection is broken.

tcp_keepalive_time : This value shows how often tcp sends out KEEPALIVE messages. The default is 7200 (2 hours).

tcp_syn_retries : Number of times initial SYNs for a TCP connection attempt will be retransmitted. This value should not be more than 255. This is only the timeout for outgoing connections.

tcp_retries1 : This defines how often an answer to a TCP connection request is retransmitted before it gives up. This is only the timeout for incoming connections.

tcp_fin_timeout : The length of time (in seconds) TCP takes to receive a final FIN before the socket is always closed. This is required to prevent DoS attacks

You can change the values by updating the files in /proc/sys/net/ipv4 or sysctl . To make it permanent add it to /etc/sysctl.conf. Below are the default values of these parameters, you can change these values to suite your requirement.

# vi /etc/sysctl
net.ipv4.tcp_fin_timeout = 60
net.ipv4.tcp_retries1 = 3
net.ipv4.tcp_keepalive_probes = 9
net.ipv4.tcp_keepalive_time = 7200
net.ipv4.tcp_syn_retries = 5
Read more

Tweak Your Ubuntu The Easy Way

If you are constantly confused over the command line, and wanted to look for an easy way to tweak your Ubuntu, then Ubuntu Tweak is definitely the application for you.

Ubuntu Tweak allows you to tweak many desktop and system settings without going to the terminal. It provides a single access point for you to change some of the hidden Ubuntu settings that are not available during your default desktop installation.

UT is currently designed for Ubuntu GNOME desktop only.

Read more :
Read more

Setup and Configuration of Opensource Media Center - Elisa

Elisa is an open source cross-platform media center connecting the Internet to an all-in-one media player.

The Elisa Media Center has many advanced features that will make your media center experience unique. It features an intuitive interface with a professional look and feel which can be easily used with a standard TV remote control.

  * Watch pictures with previews and animated slideshows
  * Watch movies and video clips
  * Browse music collection by artists or albums covers
  * Browse internet radio and picture websites
  * Media Browsing using Cover flow, Grid view, List view, Drag-and-drop
  * Audio visualization during playback
  * Supports all media formats using Gstreamer multimedia framework
  * Autodetection of media on your network that includes:
Network Drives
Windows Mediaplayer
iPods, cameras
USB hard drives
  * Flickr integration and basic browsing
  * YouTube integration and basic browsing
  * Shoutcast integration and basic browsing
  * Remote control support
  * TouchScreen Support
  * Samba & UPnP and DAAP shares
  * Automatic updates of plugins and core
  * Themes

OpenSuse user can use 1 click installer - here from Packman which supports openSUSE 11.0/10.3/10.2. This will download the elisa YaSt Metapackage (YMP) file and launch YaST Package manager for installation.

For Ubuntu:
Add the following line in /etc/apt/sources.list:
deb gutsy main

Import the GPG key:
$ wget -O - | sudo apt-key add -

$ sudo aptitude update

$ sudo aptitude install elisa
$ sudo aptitude install elisa-extra

Setup and Configuration:
Thanks to the distro-specific packages provided by Fluendo, installation is simple for the majority of users. On launch, Elisa looks for the configuration file ~/.elisa/elisa.conf. If it does not find one (and it won't the first time you run Elisa), it creates a skeleton elisa.conf file that you can then edit in any text editor.

The important options to customize are the locations in which Elisa will look for media. The default elisa.conf specifies ./sample_data/movies, ./sample_data/music, and ./sample_data/pictures -- directories that do not even exist inside ~./elisa/.

You can add as many locations as you like. Just scroll down in the file to find each list. To configure movie directory, for example, look for the line [plugins.movies]. Beneath it is a line reading locations = ['file://./sample_data/movies/*'] -- change this to point to a directory on your own system, such as locations = ['file:///home/yourusername/movies/*']. If you have multiple directories, separate them with commas: locations = ['file:///home/yourusername/movies/*', 'file:///home/yourusername/tvshows/*'].

You are not limited to file:// URLs, either -- network shares are accessible via other standard protocols, from smb:// or nfs:// to http://. When you have made the appropriate changes to the [plugins.movies], [], and [] sections, save elisa.conf and restart Elisa.

Demo (Youtube):

Read more

PDFedit - Opensource PDF editor

PDFedit - Free editor for PDF documents. Complete editing of PDF documents is possible with PDFedit. You can change raw pdf objects (for advanced users) or use many gui functions. Functionality can be easily extended using a scripting language (ECMAScript).

    Convert PDT to XML files
    Insert pages from other PDF documents
    Save pages as image files
    Delinearize PDF files
    Extract text from PDF files
    Add text, Add text strikethrough & highlighting
    Rotate pages, Edit page metrics
    Draw lines and rectangles in the document
    Add fonts to the page

OpenSuse 11.0 user can install it using 1 click - here
Other - here
Read more

BasKet - note pad

BasKet Note Pads is an application that provides several baskets into which the user can drop all sorts of notes: rich text, links, images, sounds, files, colors, application launchers, and more.

Objects in the baskets can be edited, copied, and rearranged. This application can be used to quickly store Web objects (such as links, text, or images) or notes, and it can also help clean up a clutered desktop. It is also useful for collecting information for a report. The data in baskets can be shared with co-workers by exporting them to HTML.

OpenSuse 11.0 user can use 1 click install - here
For other, download here
Read more

How to Enable-Disable Compiz Fusion effects in openSUSE

There may be instances when you need to disable Desktop Effects (Compiz Fusion) temporarily in openSUSE.

To disable Desktop Effects temporarily,

    Press + F2 and type “metacity — replace

This should let compiz to start but disables later on. This will replace metacity as the new Window Manager.

To re-enable Desktop Effects

    Press + F2 and type “compiz-manager –replace

This will let you make compiz-manager as the Window Manager again.
Read more

OpenSuse/Fedora/CentOS performance boost by using prelink

prelink is a program which modifies ELF shared libraries and ELF dynamically linked binaries, so that the time which dynamic linker needs for their relocation at startup significantly decreases and also due to fewer relocations the run-time memory consumption decreases too (especially number of unshareable pages). Such prelinking information is only used if all its dependent libraries have not changed since prelinking, otherwise programs are relocated normally.

Download prelink for OpenSuSe - here
You can also search for Fedora/CentOS prelink package (prelink-0.4.0-15.1)

Install it: # rpm -ivh prelink-0.4.0-15.1

After sucesfull installation, run the following command (you need to be root)
# prelink -avmR

This can take a long time, after completion reboot your box and feel the difference in preformance.

Then same can be applied for fedora/CentOs
Read more

iptables - Block Diagram

Read more

Power saving options of the hard disk

In Linux, the hard disk can be put to sleep entirely if it is not needed or it can be run in a more economic or quieter mode. On modern laptops, you do not need to switch off the hard disks manually, because they automatically enter an economic operating mode whenever they are not needed. However, if you want to maximize power savings, test some of the following methods.

The hdparm application can be used to modify various hard disk settings. The option -y instantly switches the hard disk to the standby mode. -Y puts it to sleep. hdparm -S x causes the hard disk to be spun down after a certain period of inactivity. Replace x as follows: 0 disables this mechanism, causing the hard disk to run continuously. Values from 1 to 240 are multiplied by 5 seconds. Values from 241 to 251 correspond to 1 to 11 times 30 minutes.

Internal power saving options of the hard disk can be controlled with the option -B. Select a value from 0 to 255 for maximum saving to maximum throughput. The result depends on the hard disk used and is difficult to assess. To make a hard disk quieter, use the option -M. Select a value from 128 to 254 for quiet to fast.

Often, it is not so easy to put the hard disk to sleep. In Linux, numerous processes write to the hard disk, waking it up repeatedly. Therefore, it is important to understand how Linux handles data that needs to be written to the hard disk. First, all data is buffered in the RAM. This buffer is monitored by the pdflush daemon. When the data reaches a certain age limit or when the buffer is filled to a certain degree, the buffer content is flushed to the hard disk. The buffer size is dynamic and depends on the size of the memory and the system load. By default, pdflush is set to short intervals to achieve maximum data integrity. It checks the buffer every 5 seconds and writes the data to the hard disk. The following variables are interesting:

contains the delay until a pdflush thread wakes up in hundreths of a second.

defines after which timeframe a dirty page should be written out latest. Default is 3000 which means 30 seconds.

maximum percentage of dirty pages until pdflush begins to write them. Default is 5%.

when the dirty page exceed this percentage of the total memory, processes are forced to write dirty buffers during their time slice instead of doing more writes.

Another important factor is the way active programs behave. For example, good editors regularly write hidden backups of the currently modified file to the hard disk, causing the disk to wake up. Features like this can be disabled at the expense of data integrity.

In this connection, the mail daemon postfix makes use of the variable POSTFIX_LAPTOP. If this variable is set to yes, postfix accesses the hard disk far less frequently.
Read more

Hex Editor

Bless is a high quality, full featured hex editor.

It is written in mono/Gtk# and its primary platform is GNU/Linux. However it should be able to run without problems on every platform that mono and Gtk# run

Main Features
Bless currently provides the following features:

    * Efficient editing of large data files and block devices.
    * Multilevel undo - redo operations.
    * Customizable data views.
    * Fast data rendering on screen.
    * Multiple tabs.
    * Fast find and replace operations.
    * A data conversion table.
    * Advanced copy/paste capabilities.
    * Highlighting of selection pattern matches in the file.
    * Plugin based architecture.
    * Export of data to text and html (others with plugins).
    * Bitwise operations on data.
    * A comprehensive user manual.

To build and run the latest version of Bless you need:

    * Mono >= 1.1.14 and Gtk#2 >= 2.8:

Step 1: Untar the source package
For a tar.gz package use: tar -xzvf bless-a.b.c.tar.gz

Step 2: Configure the build
Enter the directory created in the previous step (bless-a.b.c) and type ./configure'. The script will check if your system has all the required libraries. Use the --prefix=PREFIX option to set the installation directory prefix. By default the prefix is '/usr/local'.

You can also use the --enable-debug option to build bless with debug information.

Step 3: Build the program
Type 'make'. This will create bless exe and the necessary libraries in the bin/ directory and the bless launcher script in the bless-a.b.c directory. You can also type 'make check' to run some tests on various bless components.

Step 4: Install the program (optional)
Become root and type 'make install'.
Read more

Split and merge large files

Use the split command to do this:

split --bytes=1024m bigfile.iso small_file_

That command will split bigfile.iso into files that are 1024 MB in size (1GB) and name the various parts small_file_aa, small_file_ab, etc. You can specify b for bytes, k for Kilobytes and m for Megabytes to specify sizes.

To join the files back together on Linux:

cat small_file_* > joined_file.iso

Similarly to join the split files on a Windows machine, use the copy command:

copy /b small_file_* joined_file.iso
Read more

How To use Automount Service to import/mount NFS File Systems?

The autofs daemon can be used to mount remote file systems automatically. To do this, add the following entry in the your /etc/auto.master file:

/nfsmounts /etc/auto.nfs

Now the /nfsmounts directory acts as a root for all the NFS mounts on the client if the auto.nfs file is completed appropriately. The name auto.nfs is chosen for sake of convenience—you can choose any name. In the selected file (create it if it does not exist), add entries for all the NFS mounts as in the following example:

localdata -fstype=nfs server1:/data
nfs4mount -fstype=nfs4 server2:/

Activate the settings with rcautofs start. For this example, /nfsmounts/localdata, the /data directory of server1, is then mounted with NFS and /nfsmounts/nfs4mount from server2 is mounted with NFSv4.
Read more

Announcing the Ubuntu Manpage Repository - This site contains nearly 300,000 HTML viewable manpages included in Ubuntu releases (Dapper, Feisty, Gutsy, Hardy, Intrepid) and across all of (main, universe, restricted, multiverse) and across all languages where manpages are available. It is automatically updated daily.
Read more

Tuning MySQL Performance With MySQLTuner

You should carefully read the output, especially the recommendations at the end. It shows exactly which variables you should adjust in the [mysqld] section of your my.cnf (on Debian and Ubuntu the full path is /etc/mysql/my.cnf). Whenever you change your my.cnf, make sure that you restart MySQL. You can then run MySQLTuner again to see if it has further recommendations to improve the MySQL performance. This way, you can optimize MySQL step by step

Complete Story
Read more

DNS and it's Terminology

The domain namespace is divided into regions called zones. For instance, if you have, you have the example section, or zone, of the com domain.

DNS server
The DNS server is a server that maintains the name and IP information for a domain. You can have a primary DNS server for master zone, a secondary server for slave zone, or a slave server without any zones for caching.

Master zone DNS server
The master zone includes all hosts from your network and a DNS server master zone stores up-to-date records for all the hosts in your domain.

Slave zone DNS server
A slave zone is a copy of the master zone. The slave zone DNS server obtains its zone data with zone transfer operations from its master server. The slave zone DNS server responds authoritatively for the zone as long as it has valid (not expired) zone data. If the slave cannot obtain a new copy of the zone data, it stops responding for the zone.

Forwarders are DNS servers to which your DNS server should send queries it cannot answer.

The record is information about name and IP address. Supported records and their syntax are described in BIND documentation. Some special records are:

NS record
An NS record tells name servers which machines are in charge of a given domain zone.

MX record
The MX (mail exchange) records describe the machines to contact for directing mail across the Internet.

SOA record
SOA (Start of Authority) record is the first record in a zone file. The SOA record is used when using DNS to synchronize data between multiple computers.
Read more

Structure of a PAM Configuration File

Each line in a PAM configuration file contains a maximum of four columns:

PAM modules are processed as stacks. Different types of modules have different purposes, for example, one module checks the password, another one verifies the location from which the system is accessed, and yet another one reads user-specific settings. PAM knows about four different types of modules:

The purpose of this type of module is to check the user's authenticity. This is traditionally done by querying a password, but it can also be achieved with the help of a chip card or through biometrics (fingerprints or iris scan).

Modules of this type check whether the user has general permission to use the requested service. As an example, such a check should be performed to ensure that no one can log in under the username of an expired account.

The purpose of this type of module is to enable the change of an authentication token. In most cases, this is a password.

Modules of this type are responsible for managing and configuring user sessions. They are started before and after authentication to register login attempts in system logs and configure the user's specific environment (mail accounts, home directory, system limits, etc.).

The second column contains control flags to influence the behavior of the modules started:

A module with this flag must be successfully processed before the authentication may proceed. After the failure of a module with the required flag, all other modules with the same flag are processed before the user receives a message about the failure of the authentication attempt.

Modules having this flag must also be processed successfully, in much the same way as a module with the required flag. However, in case of failure a module with this flag gives immediate feedback to the user and no further modules are processed. In case of success, other modules are subsequently processed, just like any modules with the required flag. The requisite flag can be used as a basic filter checking for the existence of certain conditions that are essential for a correct authentication.

After a module with this flag has been successfully processed, the calling application receives an immediate message about the success and no further modules are processed, provided there was no preceding failure of a module with the required flag. The failure of a module with the sufficient flag has no direct consequences, in the sense that any subsequent modules are processed in their respective order.

The failure or success of a module with this flag does not have any direct consequences. This can be useful for modules that are only intended to display a message (for example, to tell the user that mail has arrived) without taking any further action.

If this flag is given, the file specified as argument is inserted at this place.

The module path does not need to be specified explicitly, as long as the module is located in the default directory /lib/security. The fourth column may contain an option for the given module, such as debug (enables debugging) or nullok (allows the use of empty passwords).
Read more

Fully Automatic Installation for all distributions

FAI is an automated installation tool to install or deploy Debian GNU/Linux and other distributions on a bunch of different hosts or a Cluster. It's more flexible than other tools like kickstart for Red Hat, autoyast and alice for SuSE or Jumpstart for SUN Solaris. FAI can also be used for configuration management of a running system.

You can take one or more virgin PCs, turn on the power and after a few minutes Linux is installed, configured and running on all your machines, without any interaction necessary.

FAI it's a scalable method for installing and updating all your computers unattended with little effort involved. It's a centralized management system for your Linux deployment.

FAI's target group are system administrators who have to install Linux onto one or even hundreds of computers. It's not only a tool for doing a Cluster installation but a general purpose installation tool. It can be used for installing a Beowulf cluster, a rendering farm, a web server farm, or a linux laboratory or a classroom. Even installing a HPC cluster or a GRID and fabric management can be realized by FAI. Large-scale linux networks with different hardware and different installation requirements are easy to establish using FAI and its class concept. Remote OS installations, Linux rollout, mass unattended installation and automated server provisioning are other topics for FAI.

Read More at :
Read more

Opensource load balancing Software

Linux Virtual Server
The Linux Virtual Server Project is a project to cluster many real servers together into a highly available, high-performance virtual server. The LVS load balancer handles connections from clients and passes them on the the real servers (so-called Layer 4 switching) and can virtualize almost any TCP or UDP service, like HTTP, HTTPS, NNTP, FTP, DNS, ssh, POP3, IMAP4, SMTP, etc. It is fully transparent to the client accessing the virtual service.

BalanceNG is a modern software IP load balancing solution. It is small, fast, and easy to use and setup. It offers session persistence, different distribution methods (Round Robin, Random, Weighted Random, Least Session, Least Bandwidth, Hash, Agent, and Randomized Agent) and a customizable UDP health check agent in source code. It supports VRRP to set up high availability configurations on multiple nodes. It supports SNMP, integrating the BALANCENG-MIB with Net-SNMPD. It implements a very fast in-memory IP-to-location database, allowing powerful location-based server load-balancing.

HAproxy is a high-performance and highly-robust TCP and HTTP load balancer which provides cookie-based persistence, content-based switching, advanced traffic regulation with surge protection, automatic failover, run-time regex-based header control, Web-based reporting, advanced logging to help trouble-shooting buggy applications and/or networks, and a few other features. Its own event-driven state machine achieves 20,000 hits per second and surpasses GigaEthernet on modern hardware, even with tens of thousands of simultaneous connections.

Pen is a load balancer for "simple" TCP-based protocols such as HTTP or SMTP. It allows several servers to appear as one to the outside. It automatically detects servers that are down and distributes clients among the available servers. This gives high availability and scalable performance.

Crossroads Load Balancer
Crossroads is a daemon running in user space, and features extensive configurability, polling of back ends using wake up calls, status reporting, many algorithms to select the 'right' back end for a request (and user-defined algorithms for very special cases), and much more. Crossroads is service-independent: it is usable for any TCP service, such as HTTP(S), SSH, SMTP, and database connections. In the case of HTTP balancing, Crossroads can provide session stickiness for back end processes that need sessions, but aren't session-aware of other back ends. Crossroads can be run as a stand-alone daemon or via inetd.

Balance is a simple but powerful generic TCP proxy with round-robin load balancing and failover mechanisms. Its behavior can be controlled at runtime using a simple command line syntax. Balance supports IPv6 on the listening side, which makes it a very useful tool for IPv6 migration of IPv4 only services and servers.

Distributor load balancer
Distributor is a software TCP load balancer. Like other load balancers, it accepts connections and distributes them to an array of back end servers. It is compatible with any standard TCP protocol (HTTP, LDAP, IMAP, etc.) and is also IPv6 compatible. It has many unique and advanced features and a high-performance architecture.

Pure Load Balancer
Pure Load Balancer is a high-performance software load balancer for the HTTP and SMTP protocols. It uses an asynchronous non-forking/non-blocking model, and provides fail-over abilities. When a backend server goes down, it automatically removes it from the server pool, and tries to bring it back to life later. Pure Load Balancer has full IPv6 support and works on OpenBSD, NetBSD, FreeBSD and Linux.

Load Balancer Project
The Load Balancer Project is a tool that allows you to balance requests using clusters of servers. The goal is to achieve high availability load balancing with a simple configuration for the load balancer and the network topology. It leaves the servers untouched so the configuration only resides on the load balancer, and it allows you to manage any type of service via a plugin model design and a transparent proxy feature.

mod_athena is an Apache-based application load balancer for large systems. It allows the HTTP server to act as a load balancer either internally to Apache's own mod_proxy (for reverse proxying), or externally to machines querying it. Arbitrary statistics are sent to the engine via a simple GET plus query-string interface, from which it will then make decisions based on chosen algorithms.

Udpbalancer is a reverse proxy that sorts UDP requests from your clients to your servers. It may operate in round-robin, volume balance, and load balance modes.

MultiLoad is a load balancer that redirects HTTP requests to pre-defined servers/locations. It gives the provider a way to balance the traffic and hides the real download location. It allows you to manage different version of each download. It is also a load balancing server extension. You can distribute files on some servers so that a downloaded file can be loaded form different servers. These servers can have different priorities to control the active traffic.
Read more

How to setup Boot Password (Grub)

Even before the operating system is booted, GRUB enables access to file systems. Users without root permissions can access files in your Linux system to which they have no access once the system is booted. To block this kind of access or prevent users from booting certain operating systems, set a boot password.
As the user root, proceed as follows to set a boot password:

At the root prompt, encrypt the password using grub-md5-crypt:

# grub-md5-crypt
Password: ****
Retype password: ****
Encrypted: $1$lS2dv/$JOcHkLosIn7CJk9xShzzJVw/

Paste the encrypted string into the global section of the file menu.lst:

gfxmenu (hd0,4)/message
color white/blue black/light-gray
default 0
timeout 8
password --md5 $1$lS2dv/$JOcHkLosIn7CJk9xShzzJVw/

Now GRUB commands can only be executed at the boot prompt after pressing P and entering the password. However, users can still boot all operating systems from the boot menu.

To prevent one or several operating systems from being booted from the boot menu, add the entry lock to every section in menu.lst that should not be bootable without entering a password. For example:

title linux
   kernel (hd0,4)/vmlinuz root=/dev/sda7 vga=791
   initrd (hd0,4)/initrd

After rebooting the system and selecting the Linux entry from the boot menu, the following error message is displayed:

Error 32: Must be authenticated

Press Enter to enter the menu. Then press P to get a password prompt. After entering the password and pressing Enter, the selected operating system (Linux in this case) should boot.
Read more
Related Posts with Thumbnails