Progressbar for extracting Basefiles

Karsten Nordsiek <[email protected]>
Newsgroups gmane.linux.debian.fai
Message-ID <[email protected]>
Hello to all,

a small problem and I hope you can help me

I want to show a progressbar while extracting the basefile so I have 
done some changes as follows:

changes in /srv/fai/nfsroot/usr/sbin/ftar

Usage: ftar [OPTION] ... SOURCE

    -1                   Use only first tar file matching class name.
    -c class[class]      Define classes (space separated).
    -d                   Delete all files in target before extracting.
    -D                   Create debug output.
    -h                   Show summary of options.
    -p                   Show progress indicator
    -r                   Recursively remove files in target before 
extracting.
    -s source_dir        Look for source files relative to source_dir.
    -t target_dir        Extract files relativ to target_dir.
    -v                   Be verbose. Not yet used.

(Option p added to the Optionlist)

declare Variables:

source=$FAI/files
target=$FAI_ROOT
deletefiles=0
removedir=0
tardone=0
single=0
ignore=0
progress=0

(added progress=0)

Changes in Section extract()

     if [ $progress -eq 1 ]; then

         echo "ftar: extracting $file to $target/$dir" | tr -s '/'
         $catname $file | pv -s $(du -sb $file | awk '{print $1}') | tar 
$xattrs --numeric-owner -C $target/$dir $vflag -xf -
     else
         echo "ftar: extracting $file to $target/$dir" | tr -s '/'
         $catname $file | tar $xattrs --numeric-owner -C $target/$dir 
$vflag -xf -
         tardone=1
         # if option -1 is set, only one class will be used
         [ $single -eq 1 ] && exit 0
     fi

Changes in File /srv/fai/nfsroot/usr/lib/fai/subroutines

changes in Section task_extrabse()

fetch-basefile
     # remember, ftar extracts into $FAI_ROOT by default, so / means 
$FAI_ROOT/
     # copy the base file class based if it exists
     [ -d $FAI/basefiles ] && ftar -1vp -s $FAI/basefiles /
     if [ $? -ne 0 ]; then
         if [ $do_init_tasks -eq 1 ]; then
             ftar -p -1v -c base -s /var/tmp /
         else
                [ -d $NFSROOT/var/tmp ] &&
                ftar -p -1v -c base -s $NFSROOT/var/tmp /
         fi

         # if no base file was extracted, call debootstrap
         if [ ! -d $FAI_ROOT/etc ]; then
             echo "No base file found. Calling debootstrap."
             [ -z "$FAI_DEBOOTSTRAP" ] && die "\$FAI_DEBOOTSTRAP 
undefined. Aborting"
             call_debootstrap $FAI_DEBOOTSTRAP
             task_error 801 $?
         fi
     fi


The file has been extracted but there is no output in Stdout (Terminal)

Let me know if you need more Informations
Greetings


Karsten Nordsiek
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.