aboutsummaryrefslogtreecommitdiff
path: root/bin/ak-filesplitter
diff options
context:
space:
mode:
Diffstat (limited to 'bin/ak-filesplitter')
-rwxr-xr-xbin/ak-filesplitter136
1 files changed, 0 insertions, 136 deletions
diff --git a/bin/ak-filesplitter b/bin/ak-filesplitter
deleted file mode 100755
index c675870..0000000
--- a/bin/ak-filesplitter
+++ /dev/null
@@ -1,136 +0,0 @@
-#!/bin/bash
-#
-# The concept is simple
-#
-# 1. For a given file we split in 1MB files inside a temporary directory
-#
-# 2. We then create a map file, containing the resulted files and their sha512sum
-#
-# 3. We move the files to our $CHKDIR named after their checksums
-#
-# We ultimately want to be seeding the file so
-#
-# 4. We append the checksum of the original file with its name into the map file
-#
-# 5. We rename the map file after its checksum and move it to maps directory
-#
-# 6. We are done!
-#
-
-# Uncomment next line if you want to debug
-# set -xe
-PROGRAM="$(basename $0)"
-
-if [ ! -f "$1" ]
-then
- echo "[ERROR] File not found"
- exit 1
-else
- FILE="$1"
-fi
-
-# The directory where the chunked data will be living at
-CHKDIR="$AK_WORKDIR/ftr/"
-# The directory for the map files so we can reconstruct the file
-FILEMAPSDIR="$AK_WORKDIR/fmp/"
-# A temporary root dir to work on
-TEMPORARYDIR="/tmp/tltmp"
-# A subdir to split the files there
-TECHDIR="/tmp/tltmp/chks/"
-# A pin point to return from where we came from
-CURRENTDIR="$(pwd)/"
-
-# Our snippet for logging debug info
-logit(){
- ak-logthis "<$PROGRAM>" "$1" "$2"
-}
-
-# Checking directories and create them if necessary
-
-# TECHDIR
-if [ ! -d "$TECHDIR" ]
-then
- mkdir -p "$TECHDIR"
- if [ "$?" == 0 ]
- then
- logit "[INFO]" "Folder $TECHDIR created!"
- else
- logit "[ERROR]" "Problem occured while creating $TECHDIR"
- echo "[ERROR] Can't create $TECHDIR"
- exit 1
- fi
-else
- logit "[INFO]" "Temp dir found"
-fi
-
-# FILEMAPSDIR
-if [ ! -d "$FILEMAPSDIR" ]
-then
- mkdir -p "$FILEMAPSDIR"
- if [ "$?" == 0 ]
- then
- logit "[INFO]" "Folder $FILEMAPSDIR created!"
- else
- logit "[ERROR]" "Problem occured while creating $FILEMAPSDIR"
- echo "[ERROR] Can't create $FILEMAPSDIR"
- exit 1
- fi
-else
- logit "[INFO]" "Mapsdir found"
-fi
-
-# CHKDIR
-if [ ! -d "$CHKDIR" ]
-then
- mkdir -p "$CHKDIR"
- if [ "$?" == 0 ]
- then
- logit "[INFO]" "Folder $CHKDIR created!"
- else
- logit "[ERROR]" "Problem occured while creating $CHKDIR"
- echo "[ERROR] Can't create $CHKDIR"
- exit 1
- fi
-else
- logit "[INFO]" "Workdir found"
-fi
-
-# Uncomment next line in case you want to debug the resulting script as well
-# echo 'set -xe' > $TEMPORARYDIR/cmd_queue.sh
-
-# We get the SHA512 hash for the $FILE given
-CHECKSUM=$(sha512sum "$FILE"|awk '{print $1}')
-
-# We split the file into 1048576 bytes and output the chunks into TECHDIR
-split -b 1048576 --additional-suffix ".chk" -d "$FILE" "$TECHDIR$(basename "$FILE")-"
-
-# We go over there...
-cd $TECHDIR
-
-# We get every chunks' SHA512 and we craft a script to rename the chunks and
-# move them to CHKDIR
-sha512sum * > $TEMPORARYDIR/map; while IFS="" read -r p || [ -n "$p" ]
-do
- echo $p | awk '{print "mv " $2 " '$CHKDIR'" $1}' >> $TEMPORARYDIR/cmd_queue.sh
-done < $TEMPORARYDIR/map
-
-# We run the crafted script
-sh $TEMPORARYDIR/cmd_queue.sh
-
-# and we delete it
-rm $TEMPORARYDIR/cmd_queue.sh
-
-# We inform the map about the original $FILE name and SHA512
-echo "$CHECKSUM $(basename "$FILE")" >> $TEMPORARYDIR/map
-
-# We get the SHA512 hash of the resulted map file
-MAPFILEHASH="$(sha512sum $TEMPORARYDIR/map | awk '{ print $1 }')"
-
-# and we rename it with it and move it to FILEMAPSDIR
-`sha512sum $TEMPORARYDIR/map | awk '{print "mv " $2 " '$FILEMAPSDIR'" $1}'`
-
-# We remove the TEMPORARYDIR
-rm -rf $TEMPORARYDIR
-
-# and print the MAPFILEHASH
-echo "$MAPFILEHASH"