From 1d08e57609a1a02b746fac9b08fa1c1084e39561 Mon Sep 17 00:00:00 2001 From: Gerfried K Date: Thu, 11 Apr 2024 16:38:23 +0200 Subject: [PATCH] snapshot --- printstats.sh | 2 ++ recv.sh | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ rsync.log | 0 run.sh | 5 ++++- script copy.sh | 35 +++++++++++++++++++++++++++++++++++ script.sh | 8 ++++++-- 6 files changed, 96 insertions(+), 3 deletions(-) create mode 100755 recv.sh create mode 100644 rsync.log create mode 100755 script copy.sh diff --git a/printstats.sh b/printstats.sh index 3c991e6..16f71f3 100755 --- a/printstats.sh +++ b/printstats.sh @@ -9,6 +9,8 @@ for i in {01..10}; do MEMFREE=$(echo -e $MEMINFO | grep -Po '(?<=MemFree: )[0-9]{1,10}(?= kB)') MEMAVAIL=$(echo -e $MEMINFO | grep -Po '(?<=MemAvailable: )[0-9]{1,10}(?= kB)') echo -e "\tTOAL|FREE|AVAIL\t(GB)\t$(($MEMTOTAL / 1000000))\t$(($MEMFREE / 1000000))\t$(($MEMAVAIL / 1000000))" + DISK=$(ssh -q fc$i 'df -H | grep sda3') + echo -e "\t$DISK" done exit 0 \ No newline at end of file diff --git a/recv.sh b/recv.sh new file mode 100755 index 0000000..d4fa99b --- /dev/null +++ b/recv.sh @@ -0,0 +1,49 @@ +#!/bin/bash + +HOME_DIR="\$(pwd)" + +REMOTE_REPO_NAME="iqeval" +REMOTE_REPO_DIR="$HOME_DIR/$REMOTE_REPO_NAME" + +SCREEN_SESSION_NAME="iqeval" + +RSYNC_EXCLUDE_FILE="rsync_excludes" + +download_dir () { + RSYNC_FROM=$1 + RSYNC_TO=$2 + rsync -e 'ssh -q' -a --no-links --exclude-from=$RSYNC_EXCLUDE_FILE $RSYNC_FROM $RSYNC_TO > rsync.log +} + +# declare -a paths=("/dev/shm/$SCREEN_SESSION_NAME/figures" "/dev/shm/$SCREEN_SESSION_NAME/.cachedir") +# declare -a paths=("~/iqeval/analysis/pdp/figures" "/dev/shm/$SCREEN_SESSION_NAME/.cachedir") +declare -a paths=("/dev/shm/$SCREEN_SESSION_NAME/logf/") + + +for i in {01..10}; do + printf "FALCON $i | " + + IS_FIN=$(ssh -q fc$i "[ -f /dev/shm/$SCREEN_SESSION_NAME/.fin ] && echo 1") + + if [ -z "$IS_FIN" ]; then + echo "Not finished yet" + continue + else + echo "Finished" + fi + + for REMOTE_DIR in "${paths[@]}"; do + + echo -e "\tDownload dir $REMOTE_DIR" + + IS_VALID_PATH=$(ssh -q fc01 "[ -d $REMOTE_DIR ] && echo 1") + + if [ ! -z $IS_VALID_PATH ]; then + download_dir fc$i:$REMOTE_DIR ../logf/ + fi + done + +done + + +exit 0 \ No newline at end of file diff --git a/rsync.log b/rsync.log new file mode 100644 index 0000000..e69de29 diff --git a/run.sh b/run.sh index 2dd5f3e..8f5a80a 100755 --- a/run.sh +++ b/run.sh @@ -30,7 +30,9 @@ for i in {01..10}; do ssh -q fc$i "screen -S $SCREEN_SESSION_NAME -X quit" > /dev/null # Generate script and upload it - script_template "20230220 12-22-06" "\$(for j in {0..17}; do printf \"\$((\$j + 18 * ($i-1))) \" ; done)" + script_template "20230221 18-12-12" "\$(for j in {0..17}; do printf \"\$((\$j + 18 * (10#$i-1))) \" ; done)" + # script_template "20230220 12-22-06" "\$(for j in {0..17}; do printf \"\$((\$j + 18 * (10#$i-1))) \" ; done)" + # script_template "20230328 12-18-41" "\$(for j in {0..17}; do printf \"\$((\$j + 18 * (10#$i-1))) \" ; done)" # Upload script to Falcon server scp -q $SCRIPT_TEMP_DIR fc$i:/tmp @@ -47,6 +49,7 @@ for i in {01..10}; do else printf "session exists\n" fi + sleep 20 done diff --git a/script copy.sh b/script copy.sh new file mode 100755 index 0000000..97f280b --- /dev/null +++ b/script copy.sh @@ -0,0 +1,35 @@ +#!/bin/bash + + +script_template () { + echo -e "#!/bin/bash + +signal_handler () { + echo \"SCRIPT QUIT\" + kill \$PID0 +} + +trap signal_handler SIGINT + +wait_ctrl_c () { + echo \"Waiting for CTRL-C to quit ...\" + while true; do sleep 5; done +} + +source $VENV_HOME_DIR +cd $REMOTE_REPO_DIR + +python3 main.py -p REFMEAS\#1 p0 -mid \"$1\" -sid $2 -njobs 4 & +PID0 = \$! +wait \$PID0 + +python3 analysis/pdp/main.py -mid \"$1\" + +wait_ctrl_c + +" > $SCRIPT_TEMP_DIR + +chmod +x $SCRIPT_TEMP_DIR + +} + diff --git a/script.sh b/script.sh index 934258d..baa0069 100755 --- a/script.sh +++ b/script.sh @@ -20,11 +20,15 @@ wait_ctrl_c () { source $VENV_HOME_DIR cd $REMOTE_REPO_DIR -python3 main.py -p REFMEAS\#1 p0 -mid \"$1\" -sid $2 -njobs 4 & -PID0 = \$! +python3 main.py -p REFMEAS\#1 p0 -mid \"$1\" -sid $2 -njobs 2 & +PID0=\$! wait \$PID0 +#python3 analysis/pdp/main.py -mid \"$1\" + +touch /dev/shm/$REMOTE_REPO_NAME/.fin + wait_ctrl_c " > $SCRIPT_TEMP_DIR -- 2.22.0