den4uk/andriller

OS space issue

kmsgli opened this issue · 5 comments

Hey is there anyway to have Andriller use a different folder then /tmp it seems to be running out of space since /tmp is using ram not hdd space here is the error i get after the backup is taken and the extraction starts.

INFO:andriller.gui.core:Reading information...
INFO:andriller.gui.core:Acquiring data...
INFO:andriller.gui.core:Extracting data from source...
INFO:andriller.gui.core:Unpacking backup...
Exception in thread Thread-6:
Traceback (most recent call last):
  File "/usr/lib/python3.9/threading.py", line 973, in _bootstrap_inner
    self.run()
  File "/usr/lib/python3.9/threading.py", line 910, in run
    self._target(*self._args, **self._kwargs)
  File "/home/*****/builds/andriller/andriller/utils.py", line 40, in command
    return method(self, *args, **kwargs)
  File "/home/******/builds/andriller/andriller/gui/windows.py", line 418, in RunUsbExtraction
    drill.DataExtraction()
  File "/home/*******/builds/andriller/andriller/driller.py", line 316, in DataExtraction
    self.AndroidBackupToTar()
  File "/home/******/builds/andriller/andriller/driller.py", line 253, in AndroidBackupToTar
    self.tarfile = self.tools.ab_to_tar(self.backup)
  File "/home/********/builds/andriller/andriller/utils.py", line 163, in ab_to_tar
    temptar.write(c)
  File "/usr/lib/python3.9/tempfile.py", line 474, in func_wrapper
    return func(*args, **kwargs)
OSError: [Errno 28] No space left on device

Any help is greatly appreciated.

Thanks

Hi, if you are running from the source code, change the following value from to_tmp=True to to_tmp=False on this line.

Hey thanks for your tip. It did not error out right away upon extracting like usual but some time later it gave this to me;

INFO:andriller.gui.core:Extracting from backup...
Exception in thread Thread-4:
Traceback (most recent call last):
  File "/usr/lib/python3.9/threading.py", line 973, in _bootstrap_inner
    self.run()
  File "/usr/lib/python3.9/threading.py", line 910, in run
    self._target(*self._args, **self._kwargs)
  File "/home/hisham/builds/andriller/andriller/utils.py", line 40, in command
    return method(self, *args, **kwargs)
  File "/home/hisham/builds/andriller/andriller/gui/windows.py", line 418, in RunUsbExtraction
    drill.DataExtraction()
  File "/home/hisham/builds/andriller/andriller/driller.py", line 320, in DataExtraction
    self.ExtractFromTar(targets=targets)
  File "/home/hisham/builds/andriller/andriller/driller.py", line 257, in ExtractFromTar
    for fn in self.tools.extract_form_tar(
  File "/home/hisham/builds/andriller/andriller/utils.py", line 174, in extract_form_tar
    for tar_name in tar.getnames():
  File "/usr/lib/python3.9/tarfile.py", line 1807, in getnames
    return [tarinfo.name for tarinfo in self.getmembers()]
  File "/usr/lib/python3.9/tarfile.py", line 1799, in getmembers
    self._load()        # all members, we first have to
  File "/usr/lib/python3.9/tarfile.py", line 2388, in _load
    tarinfo = self.next()
  File "/usr/lib/python3.9/tarfile.py", line 2321, in next
    raise ReadError("unexpected end of data")
tarfile.ReadError: unexpected end of data

Was the backup even complete? I would suggest to try extracting again. Try opening the tar in some archive manager to see if it is healthy.

Same issue trying to extract again, and it appears to be healthy as archive manager shows me the data inside when i open it.

The flag for using temp dir has been removed for these extractions in version 3.6.2