Friday 14 September 2012

How To Find The Location Of Command In Linux

Sometimes you need to find the pathnames or locations of commands you use frequently. In this post, I am going to discuss two useful commands that are useful for locating Linux commands.

The first command to locate the Linux commands is which. This command returns the pathnames of the files or links. However, it does not follow the symbolic links.

samar@Techgaun:~$ which bash
/bin/bash

You can also find the pathnames of multiple commands at once using which command.

samar@Techgaun:~$ which -a bash cat ls iftop
/bin/bash
/bin/cat
/bin/ls
/usr/sbin/iftop

The other command is type command which is useful to determine if a command is an alias, a built-in command or an independent command.

samar@Techgaun:~$ type gedit
gedit is /usr/bin/gedit
samar@Techgaun:~$ type grep
grep is aliased to `grep --color=auto'
samar@Techgaun:~$ type -t iftop
file

You can play more with the type command. I hope this helps :)


Read more...

Wednesday 12 September 2012

Disable Guest Account Login In Ubuntu 12.04

Security is an important issue and I do not want anyone to access my machine, not even as the guest. Like almost every operating systems, I could see guest logon option in Ubuntu 12.04 which was turned on by default. This post provides the steps to enable or disable the guest account login in Ubuntu 12.04.

Fire up your terminal and type the following command:

samar@samar-Techgaun:~$ sudo nano /etc/lightdm/lightdm.conf

Now add a new line at the end containing the string as below:

allow-guest=false

Now reboot your system or type the following in your terminal:
samar@samar-Techgaun:~$ sudo /etc/init.d/lightdm restart

The guest account will no longer be active. If you want to enable the guest login again, just remove the line you added or change the value to true. I hope this helps :)


Read more...

How To Fix Bootmgr Missing In UNetBootin

Sometimes while working with the LiveUSBs using UNetBootin, you might face the issue that says the Bootmgr is missing and it also says, Press Ctrl + ALT + DELETE TO Restart. This post will help you to fix this particular issue.

First off, format your USB as a FAT32 since it happens commonly because your USB drive is formatted as NTFS and UNetBootin seems to have issues with NTFS filesystems. If formatting to FAT32 also does not work, then try formatting as FAT filesystem.

If you still get boot errors from USB, it is possible that the partition is not marked as active. Assuming you're on windows, you can use the diskpart tool to make the partition active. See the process below:

list disk

The above command will display the disks and their sizes as well. Choose the appropriate disk as below:

select disk 1

Replace the value 1 in above command to select the correct USB drive. Then again list the partitions but usually you can select the partition for USBs as below and then activate it:

select partition 1
active

The active command will mark the currently selected partition as active. Now reboot and enjoy booting from LiveUSB.


Read more...

Tuesday 11 September 2012

How To Enable Native PDF Viewer In Firefox 15

Firefox 14 added a native HTML5 and javascript based PDF reader to read PDF files within the browser but it is disabled by default in Firefox 15 since it is not totally ready. If you don't mind few minor glitches, you can experience the native PDF viewer in Firefox 15 through about:config

Browser developers are integrating many functionalities in the browsers themselves. PDF viewer is no exception and Mozilla is still working for fully functional PDF viewer based on HTML5 and javascript which is called as pdf.js. Pdf.js is still in Beta phase and Mozilla has not declared it as 100% usable so it is disabled by default in firefox 15.

Type about:config in the URL bar (and ignore warning if it appears). Then search for pdfjs. A particular preference pdfjs.disabled will be listed on the search result whose value is by default set to true.

You will just need to double click on this preference row and it will be set to false. This will enable the native PDF viewer in Firefox 15.


You'll possibly have to restart your browser to see the effect in action.

I have been using the native PDF viewer and haven't faced any glitches or problem still. I hope this is helpful :)


Read more...

Ubuntu Desktop Edition No More In LiveCD

The ubuntu team has announced that they have dropped the LiveCD option for Ubuntu and now onwards Ubuntu will be available as a single 800MB image that can be used from USB or DVD.

The mailing list reads "For the client, this release now has a consolidated Ubuntu image. There is no longer a traditional CD sized image, DVD or alternate image, but rather a single 800MB Ubuntu image that can be used from USB or DVD. This change does not affect Ubuntu Server, which remains a traditional CD sized image.

That is, starting from Ubuntu 12.10 "Quantal Quetzal", we will have a single 800 MB disk image that can only be used with USB or DVD. The decision does not seem to affect Ubuntu's user base since DVDs and USBs are getting cheaper and LiveUSBs are being popular these days.


Read more...

Monday 3 September 2012

Preventing Accidental Overwriting Of Files In Bash Shell

How many times has this happened to you? It used to happen once in a while with me. A Linux user learns to use the redirection operators such as '>' and '>>' but accidental overwriting starts to become common in commands you use and shell scripts you write.

The accidental overwriting of files that happens unintentionally is known as clobbering and it commonly happens while using the '>' redirection operator.

samar@Techgaun:~$ mycmd > myfile

In the above example, the mycmd clobbers any existing data in the myfile file if that file exists already. Worse things may happen sometime. Imagine accidentally typing

samar@Techgaun:~$ mycmd > /etc/passwd

instead of possibly using other redirection operators (like >> or <). Thankfully, you could recover /etc/passwd from either /etc/passwd- or /var/backups/passwd.bak if you hadn't rm'd these files.

To prevent such accidental overwriting, we can set the noclobber environment variable. Below is a session of enabling this variable:

samar@Techgaun:~/Desktop/test$ echo "www.techgaun.com" > myfile
samar@Techgaun:~/Desktop/test$ echo "Overwriting techgaun.com" > myfile
samar@Techgaun:~/Desktop/test$ set -o noclobber
samar@Techgaun:~/Desktop/test$ echo "Retrying to overwrite" > myfile
-bash: myfile: cannot overwrite existing file

As seen above, you have to turn on the noclobber variable using the set -o noclobber command in your shell. However, you might want to intentionally overwrite contents of certain files even when the noclobber is turned on.

samar@Techgaun:~$ mycmd >| myfile

Notice the >| in place of your normal > redirection operator. Using this operator, you can however overwrite the existing files even if the noclobber is turned on.

If you want to turn off the noclobber variable, type the following:

samar@Techgaun:~$ set +o noclobber

You can also permanently turn on the noclobber by the following command:

samar@Techgaun:~$ echo "set -o noclobber" >> ~/.bashrc

Moreover, such accidental overwriting can be prevented by enabling the interactive mode which is available in most of the linux commands. For example, you can write the alias for many commands that are likely to cause accidental overwriting. See some examples of aliases below:

samar@Techgaun:~$ alias rm=rm -i
samar@Techgaun:~$ alias mv=mv -i

You could even keep these aliases in your ~/.bashrc file permanently. Enabling such interactive modes by default in the commands that are more likely to cause accidental overwriting can prevent clobbering in many cases.

I hope this proves useful to you :)


Read more...

Sunday 2 September 2012

How To Search Manual Pages In Linux

Linux system consists of hundreds of binaries, several syscalls, and other stuffs that do have manual page. What if you want to locate or find the commands by searching through the manual pages? In this post, I am going to talk about one such useful command to search through the manual page names and short descriptions.

The command I am talking about is the apropos command. The best way to learn any linux command is to read its corresponding manual and go through the help (-h or --help) so lets poke through the help of apropos itself.

samar@Techgaun:~$ apropos -h
Usage: apropos [OPTION...] KEYWORD...

  -d, --debug                emit debugging messages
  -v, --verbose              print verbose warning messages
  -e, --exact                search each keyword for exact match
  -r, --regex                interpret each keyword as a regex
  -w, --wildcard             the keyword(s) contain wildcards
  -a, --and                  require all keywords to match
  -l, --long                 do not trim output to terminal width
  -C, --config-file=FILE     use this user configuration file
  -L, --locale=LOCALE        define the locale for this search
  -m, --systems=SYSTEM       use manual pages from other systems
  -M, --manpath=PATH         set search path for manual pages to PATH
  -s, --section=SECTION      search only this section
  -?, --help                 give this help list
      --usage                give a short usage message
  -V, --version              print program version

Mandatory or optional arguments to long options are also mandatory or optional
for any corresponding short options.

The --regex option is enabled by default.

Report bugs to cjwatson@debian.org.

Particularly, the -e switch is quite useful to filter out your search. See the example below:

samar@Techgaun:~$ apropos -e tar
bf_tar (1)           - shell script to write a tar file of a bogofilter direc...
bf_tar-bdb (1)       - shell script to write a tar file of a bogofilter direc...
git-tar-tree (1)     - Create a tar archive of the files in the named tree ob...
lz (1)               - gunzips and shows a listing of a gzip'd tar'd archive
mxtar (1)            - Wrapper for using GNU tar directly from a floppy disk
ptar (1)             - a tar-like program written in perl
tar (1)              - The GNU version of the tar archiving utility
tar (5)              - format of tape archive files
tgz (1)              - makes a gzip'd tar archive
uz (1)               - gunzips and extracts a gzip'd tar'd archive

Each command has its associated short description and the apropos command searches the short description section of appropriate manual page for the provided keyword. You can also specify the search keywords in the form of regular expression for more flexibility. I hope this command counts as useful one :)


Read more...

Saturday 1 September 2012

Access Linux Filesystems In Windows Using Linux Reader

Earlier today, I had to access my HDD in Windows 7 through USB bridge which I had been using as an internal hard disk for my laptop but unfortunately it didn't. A quick googling revealed a very useful tool by Diskinternals.

Linux Reader is a free software from Diskinternals which excel in building recovery software solutions. Linux reader supports several filesystems used by Linux OS. Below is the list of supported filesystems:

  • Ext2/3/4
  • ReiserFS, Reiser4
  • HFS, HFS+
  • FAT, exFAT
  • NTFS, ReFS
  • UFS2

The program provides for read-only access and does not allow you to make records in file system partitions. This guarantees that the interference in an alterative file system will not affect the work of Linux later. Apart from this, it is necessary to note, that it gives you an opportunity to use common Windows Explorer for extracting data. A preview option for pictures is one more pleasant point, which is worth mentioning. While saving, it ignores file security policies. It means that it is possible to access absolutely any file on a Linux disk from Windows.

More details on Diskinternal's site

Download Linux Reader


Read more...