I'm creating a python script to automate dd for my raid disk. After dd is complete, i would like to perform other tasks. May i know how can i verify the statues of the dd progress using python?
os.system('sudo losetup -D -v');
os.system('sudo losetup -o 1048576 -f xxx.img');
os.system('sudo losetup -o 1048576 -f xxx.img');
os.system('sudo mdadm --assemble --verbose --force /dev/md0 /dev/loop0 /dev/loop1');
os.system('dd if=/dev/md0 of=/desktop');
(perform other task once dd is complete)
-
Use any subprocess function or Popen, that waits for the command to finish.Maurice Meyer– Maurice Meyer2017年11月10日 09:41:35 +00:00Commented Nov 10, 2017 at 9:41
1 Answer 1
dd does not output anything to stdout, however, it does output to stderr. Pass in stderr=subprocess.STDOUT to get the stderr output: Documentation here
output_dd = subprocess.check_output(['dd', 'if=/dev/md0', 'of=/desktop'] stderr=subprocess.STDOUT)
you will get output like
b'# records in\n# records out\n# bytes transferred in # secs, (# bytes/sec)
where you can use regular expressions to compare file size and the perform other operations(if that's what you want)
answered Nov 10, 2017 at 12:43
WiLL_K
5931 gold badge5 silver badges22 bronze badges
Sign up to request clarification or add additional context in comments.
Comments
lang-py