@c This is part of the paxutils manual. @c Copyright (C) 2007 Free Software Foundation, Inc. @c This file is distributed under GFDL 1.1 or any later version @c published by the Free Software Foundation. @cindex Device numbers, changing @cindex snapshot files, editing @cindex snapshot files, fixing device numbers Sometimes device numbers can change after upgrading your kernel version or reconfiguring the hardware. Reportedly this is the case with some newer @i{Linux} kernels, when using @acronym{LVM}. In majority of cases this change is unnoticed by the users. However, it influences @command{tar} incremental backups: the device number is stored in tar snapshot files (@pxref{Snapshot Files}) and is used to determine whether the file has changed since the last backup. If the device numbers change for some reason, the next backup you run will be a full backup. @pindex tar-snapshot-edit To minimize the impact in these cases, GNU @command{tar} comes with the @command{tar-snapshot-edit} utility for inspecting and updating device numbers in snapshot files. The utility, written by Dustin J.@: Mitchell, is available from @uref{http://www.gnu.org/@/software/@/tar/@/utils/@/tar-snapshot-edit.html, @GNUTAR{} home page}. To obtain the device numbers used in the snapshot file, run @smallexample $ @kbd{tar-snapshot-edit @var{snapfile}} @end smallexample @noindent where @var{snapfile} is the name of the snapshot file (you can supply as many files as you wish in a single command line). To update all occurrences of the given device number in the file, use @option{-r} option. It takes a single argument of the form @samp{@var{olddev}-@var{newdev}}, where @var{olddev} is the device number used in the snapshot file, and @var{newdev} is the corresponding new device number. Both numbers may be specified in hex (e.g., @samp{0xfe01}), decimal (e.g., @samp{65025}), or as a major:minor number pair (e.g., @samp{254:1}). To change several device numbers at once, specify them in a single comma-separated list, as in @option{-r 0x3060-0x4500,0x307-0x4600}. Before updating the snapshot file, it is a good idea to create a backup copy of it. This is accomplished by @samp{-b} option. The name of the backup file is obtained by appending @samp{~} to the original file name. An example session: @smallexample $ @kbd{tar-snapshot-edit /var/backup/snap.a} file version 2 /tmp/snap: Device 0x0306 occurs 634 times. $ @kbd{tar-snapshot-edit -b -r 0x0306-0x4500 /var/backup/snap.a} file version 2 @end smallexample