Sunday 15 January 2012

How to create a Swap Space ?

-->
In Linux, as in most other Unix-like operating systems, it is common to use a whole partition of a hard disk for swapping. However, with the 2.6 Linux kernel, swap files are just as fast as swap partitions, although I recommends using a swap partition. The administrative flexibility of swap files outweighs that of partitions; since modern high capacity hard drives can remap physical sectors, no partition is guaranteed to be contiguous. You can add swap file as a dedicated partition or use following instructions to create a swap file. 

Procedure To Add a Swap File Under Linux
You need to use the dd command to create swap file. The mkswap command is used to set up a Linux swap area on a device or in a file.
Step 1: Login as the Root User
Open a terminal window (select Applications > Accessories > Terminal) or login to remote server using the ssh client. Switch to the root user by typing su - and entering the root password, when prompted

Step 2: Create Storage File

Type the following command to create 1024MB swap file (1024 * 1024MB = 1048576 block size):
[root@linuxnotes~]# dd if=/dev/zero of=/swapfile1 bs=1024 count=1048576
Where,
  1. if=/dev/zero : Read from /dev/zero file. /dev/zero is a special file in that provides as many null characters to build storage file called /swapfile1.
  2. of=/swapfile1 : Read from /dev/zero write stoage file to /swapfile1.
  3. bs=1024 : Read and write 1024 BYTES bytes at a time.
  4. count=1048576 : Copy only 1048576 BLOCKS input blocks.

Step 3: Set Up a Linux Swap Area

Type the following command to set up a Linux swap area in a file:
[root@linuxnotes~]# mkswap /swapfile1
Setup correct file permission for security reasons, enter:
[root@linuxnotes~]# chown root:root /swapfile1

[root@linuxnotes~]# chmod 0600 /swapfile1
A world-readable swap file is a huge local vulnerability. The above command make sure only root user can read/write to the file.
Finally, activate /swapfile1 swap space immediately, enter:
[root@linuxnotes~]# swapon /swapfile1

 To activate /swapfile1 after Linux system reboot, add entry to /etc/fstab file. Open this file using a text editor such as vi:
[root@linuxnotes~]# vi /etc/fstab
Append the following line:
/swapfile1 swap swap defaults 0 0
Save and close the file. Next time Linux comes up after reboot, it enables the new swap file for you -->automatically.
How do I Verify Swap is Activated or Not?
Simply use the free command:
[root@linuxnotes~]#free -m