If you are new to Unixmen, you may want to subscribe : ![]()
![]()
![]()
![]()
|
12 August 2009
Posted in
Linux tutorials -
Linux tutorials
The cpio command is one of the most commonly used Linux back up tools.
The cpio command has two unusual features. Unlike tar , in which the files to back up are typed in as part of the command, cpio reads the files to work with from the standard input (in other words, the screen). This feature means that cpio must be used as part of a multiple command or with a redirection pipe.
cpio must always be used with one of three flags. Flags are options that set the mode in which the command runs. Only one flag can be used at a time, and it must come before any other options. In addition, the choice of flags limits the options that can be used. Each flag also has a gnu option that can used in its place. The gnu option gives a convenient name for each flag: extract, create, and pass- through. (definition from debianhelp.uk)
- Download and install CPIO in Linux debian/ubuntu
$sudo apt-get  install  cpio
Download and install CPIO in Fedora/centos/RHEL
#yum install cpio -y
How to use cpio commands :
Lets give some examples to explain you the use of cpio commands.
Backup :
For example, we have to backup directory  /home/unixmen1
-go to this directory
[root@localhost pirat9]# cd /home/unixmen1/
see the content of this directory :
[root@localhost unixmen1]# ls -altr
total 16
drwxr-xr-x. 5 root root 4096 2009-08-12 09:05 ..
-rw-r--r-- 1 root root   0 2009-08-12 09:05 unixmen_com.file
drwxr-xr-x 2 root root 4096 2009-08-12 09:05 directory1
drwxr-xr-x 2 root root 4096 2009-08-12 09:05 directory6
-rw-r--r-- 1 root root   0 2009-08-12 09:06 fileX
drwxr-xr-x 4 root root 4096 2009-08-12 09:06 .
-rw-r--r-- 1 root root   0 2009-08-12 09:06 logo.GIF
[root@localhost unixmen1]#
now we will backup this directory and copy the backup file to /opt directory
[root@localhost unixmen1]# find . -print | cpio -ocv > /opt/backup.cpio
.
./directory6
./directory1
./logo.GIF
./fileX
./unixmen_net.file
2 blocks
[root@localhost unixmen1]# ls -altr /opt
total 16
drwxr-xr-x  7 root root 4096 2009-07-01 09:38 omni
drwxr-xr-x. 25 root root 4096 2009-08-11 03:16 ..
drwxr-xr-x  3 root root 4096 2009-08-12 09:10 .
-rw-r--r--Â Â 1 root root 1024 2009-08-12 09:10 backup.cpio
lets remove some file from /home/unixmen1 to check the backup
[root@localhost unixmen1]# ls
directory1Â directory6Â fileXÂ logo.GIFÂ unixmen_net.file
[root@localhost unixmen1]# rm -f logo.GIF unixmen_com.file
[root@localhost unixmen1]# ls
directory1Â directory6Â fileX
Restore :
Now we want to restore the directry .
[root@localhost unixmen1]# cpio -icuvd  < /opt/backup.cpio
.
directory6
directory1
logo.GIF
fileX
unixmen_net.file
2 blocks
check if the files are back. with
[root@localhost unixmen1]# ls -altr
total 16
drwxr-xr-x. 5 root root 4096 2009-08-12 09:05 ..
drwxr-xr-x 2 root root 4096 2009-08-12 09:05 directory1
drwxr-xr-x 2 root root 4096 2009-08-12 09:05 directory6
-rw-r--r-- 1 root root   0 2009-08-12 09:12 unixmen_com.file
-rw-r--r-- 1 root root   0 2009-08-12 09:12 logo.GIF
-rw-r--r-- 1 root root   0 2009-08-12 09:12 fileX
drwxr-xr-x 4 root root 4096 2009-08-12 09:12 .
Congratulation , your  files are back :) .
Related Articles By Tags:
-
2010-04-13 16:18:19 | Jim

cpio -p (pass thru) is handy to move files from one directory to another. This usually includes all files and directories below the chosen directory to be backed up. Most often this will be to migrate from one file system to another.
I believe cpio may be more portable when dealing with unlike (source and target) machines. cpio has it's roots in AT&T System V unix. tar is probably from the Berkley version.
tar is suited well to tape backup and restore.


cpio reads the files to work with from the standard input (in other words, the screen).
I think you mean "the keyboard." Standard out is the screen.
Cheers.