IndexError on 'check_remote_commands" with 'run nice on remote host'
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Back In Time |
Fix Released
|
Medium
|
Germar |
Bug Description
Configuring a remote backup (unencrypted or encrypted), activating 'run nice' 'on remote host' results in an IndexError on clicking OK:
Back In Time
Version: 1.1.7
Back In Time comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to redistribute it
under certain conditions; type `backintime-qt4 --license' for details.
Check snapshot folder: /opt/backup
0 100% 0.00kB/s 0:00:00 (xfr#1, to-chk=0/1)
Traceback (most recent call last):
File "/usr/share/
if self.validate():
File "/usr/share/
if not self.save_
File "/usr/share/
mnt.
File "/usr/share/
return tools.pre_
File "/usr/share/
self.
File "/usr/share/
if output_
IndexError: list index out of range
(When activating that option in config-file manually, backup works flawlessly notwithstanding...)
Once again: many thanks for your great work! Please let me know if you need any further information.
PS: Is there any way to log the commands used by BiT (and possibly their output)?
Related branches
Changed in backintime: | |
status: | Fix Committed → Fix Released |
I can't reproduce this here. Please apply the attached patch with backintime/ common/ sshtools. py < debug.patch
sudo patch /usr/share/
This will print the command and its output. It should look like this:
command: ['ssh', '-p', '22', '-o', 'ServerAliveInt erval=240' , '-o', 'IdentityFile= /xxxxx' , 'test@foo', 'PATH=/ opt/bin: /opt/sbin: $PATH', 'tmp=aab/tmp_OWH73R ; cleanup(){ test -e $tmp/a && rm $tmp/a >/dev/null 2>&1; test -e $tmp/b && rm $tmp/b >/dev/null 2>&1; test -e smr.lock && rm smr.lock >/dev/null 2>&1; test -e $tmp && rmdir $tmp >/dev/null 2>&1; exit $1; }; test -e $tmp || mkdir $tmp; touch $tmp/a; echo "cp -aRl SOURCE DEST"; cp -aRl $tmp/a $tmp/b >/dev/null; err_cp=$?; test $err_cp -ne 0 && cleanup $err_cp; ls -i $tmp/a; ls -i $tmp/b; echo "chmod u+rw FILE"; chmod u+rw $tmp/a >/dev/null; err_chmod=$?; test $err_chmod -ne 0 && cleanup $err_chmod; echo "find PATH -type f -exec chmod u-wx "{}" \\;"; find $tmp -type f -exec chmod u-wx "{}" \\; >/dev/null; err_find=$?; test $err_find -ne 0 && cleanup $err_find; find $tmp -type f -exec chmod u-wx "{}" + >/dev/null; err_gnu_find=$?; echo "rm -rf PATH"; rm -rf $tmp >/dev/null; err_rm=$?; test $err_rm -ne 0 && cleanup $err_rm; echo "nice -n 19"; nice -n 19 true >/dev/null; err_nice=$?; test $err_nice -ne 0 && cleanup $err_nice; test $err_gnu_find -ne 0 && echo "gnu_find not supported" && exit $err_gnu_find; echo "done"']
output: ['cp -aRl SOURCE DEST', '1215254336 aab/tmp_OWH73R/a', '1215254336 aab/tmp_OWH73R/b', 'chmod u+rw FILE', 'find PATH -type f -exec chmod u-wx {} \\;', 'rm -rf PATH', 'nice -n 19', 'done']
Please post both command and output after activating run nice on remote.
--------
Commands which run during snapshot are logged to syslog. But these automatic tests doesn't log at the moment. I'm planning to move all commands to use subprocess.Popen (the old code is still using os.system and os.popen) and add a generic execute command for this which will have debugging, too. But that's a lot of work to do.