Tutorial: How to Build and Install Partclone on Fedora 11 x86_64

Mr. Teo En Ming (Zhang Enming) space.time.universe at gmail.com
Wed Nov 18 05:37:46 UTC 2009


Partclone is an open source filesystem backup/cloning utility which
supports the following filesystems:

   * Ext2, Ext3, and Ext4
   * Reiserfs
   * Reiser4
   * Xfs
   * NTFS
   * FAT
   * HFS plus
   * UFS/UFS2

It is a complement to the popular partimage tool which does not
support ext4 filesystems.

The project's official website is at

http://partclone.org/index.php

Question: Why do I want to write this tutorial for building and
installing partclone?
Answer: The authors of partclone only provide Debian .deb binary
packages in addition to source tarballs. There are no RPM binary
packages for partclone at all.

Pre-requisites:

1. Install the following development packages.

# yum install glibc-devel e2fsprogs-devel

2. Install the libufs2 port to Linux. Read the tutorial here:
http://www.redhat.com/archives/fedora-list/2009-November/msg01253.html

Download the latest partclone source release from
http://sourceforge.net/projects/partclone/files/0.1.9/partclone_0.1.9-4.tar.gz/download

Extract the partclone source tarball after completing the download.

$ tar xfvz partclone_0.1.9-4.tar.gz

Change directory into the partclone source directory tree.

$ cd partclone-0.1.9

Apply the following patch to the configure script.

$ patch < configure-fc11.patch

File configure-fc11.patch:

<CODE>
Patch by Mr. Teo En Ming (Zhang Enming) to allow partclone to compile
and install on Fedora 11 x86_64
Email: space.time.universe at gmail.com
MSN: teoenming at hotmail.com
Mobile Phone: +65-8369-2618
Location: Bedok Reservoir Road, Singapore
Date: 18 November 2009 Wednesday SGT

--- configure   2009-11-16 13:59:33.000000000 +0800
+++ configure   2009-11-17 13:30:57.825923347 +0800
@@ -7729,7 +7729,7 @@

 { $as_echo "$as_me:$LINENO: checking version of libextfs" >&5
 $as_echo_n "checking version of libextfs... " >&6; }
-extfs_version=`gcc -static  $srcdir/src/deplib_version.c -o
$srcdir/get_lib_version -lext2fs -DEXTFS`
+extfs_version=`gcc $srcdir/src/deplib_version.c -o
$srcdir/get_lib_version -lext2fs -DEXTFS`
 extfs_version=`$srcdir/get_lib_version extfs | cut -d'.' -f1`
 extfs_version_major=`$srcdir/get_lib_version extfs | cut -d'.' -f2`
 extfs_version_minor=`$srcdir/get_lib_version extfs | cut -d'.' -f3`
@@ -8365,7 +8365,7 @@

 { $as_echo "$as_me:$LINENO: checking version of libreiserfs" >&5
 $as_echo_n "checking version of libreiserfs... " >&6; }
-reiserfs_version=`gcc -static  $srcdir/src/deplib_version.c -o
$srcdir/get_lib_version -lreiserfs -DREISERFS`
+reiserfs_version=`gcc $srcdir/src/deplib_version.c -o
$srcdir/get_lib_version -lreiserfs -DREISERFS`
 reiserfs_version=`$srcdir/get_lib_version reiserfs | cut -d'.' -f1`
 reiserfs_version_major=`$srcdir/get_lib_version reiserfs | cut -d'.' -f2`
 reiserfs_version_minor=`$srcdir/get_lib_version reiserfs | cut -d'.' -f3`
@@ -8746,7 +8746,7 @@

 { $as_echo "$as_me:$LINENO: checking version of libreiser4" >&5
 $as_echo_n "checking version of libreiser4... " >&6; }
-reiser4_version=`gcc -static  $srcdir/src/deplib_version.c -o
$srcdir/get_lib_version -lreiser4 -laal -DREISER4`
+reiser4_version=`gcc $srcdir/src/deplib_version.c -o
$srcdir/get_lib_version -lreiser4 -laal -DREISER4`
 reiser4_version=`$srcdir/get_lib_version reiser4 | cut -d'.' -f1`
 reiser4_version_major=`$srcdir/get_lib_version reiser4 | cut -d'.' -f2`
 reiser4_version_minor=`$srcdir/get_lib_version reiser4 | cut -d'.' -f3`
@@ -9084,7 +9084,7 @@

 { $as_echo "$as_me:$LINENO: checking version of libntfs" >&5
 $as_echo_n "checking version of libntfs... " >&6; }
-ntfs_version=`gcc -static  $srcdir/src/deplib_version.c -o
$srcdir/get_lib_version -lntfs -DNTFS`
+ntfs_version=`gcc $srcdir/src/deplib_version.c -o
$srcdir/get_lib_version -lntfs -DNTFS`
 ntfs_version=`$srcdir/get_lib_version ntfs | cut -d':' -f1`
 ntfs_version_major=`$srcdir/get_lib_version ntfs | cut -d':' -f2`
 ntfs_version_minor=`$srcdir/get_lib_version ntfs | cut -d':' -f3`
</CODE>

Configure partclone with the following options.

$ ./configure --prefix=/usr/local --enable-dependency-tracking
--enable-extfs --enable-ufs --enable-ncursesw --with-gnu-ld

Build partclone.

$ make

Install partclone

$ sudo make install

Congratulations! You are now able to backup ext2/3/4, FAT, NTFS and
UFS/UFS2 filesystems on your Fedora 11 desktop.


More information about the freebsd-amd64 mailing list