From b4379817f962fd8625be2639a8c32f5dbbfc034e Mon Sep 17 00:00:00 2001 From: Hans Krijger Date: Thu, 11 Aug 2016 10:56:59 -0700 Subject: [PATCH] fix dd command --- azurelinuxagent/daemon/resourcedisk/default.py | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/azurelinuxagent/daemon/resourcedisk/default.py b/azurelinuxagent/daemon/resourcedisk/default.py index b900b06..2621d8e 100644 --- a/azurelinuxagent/daemon/resourcedisk/default.py +++ b/azurelinuxagent/daemon/resourcedisk/default.py @@ -204,16 +204,23 @@ class ResourceDiskHandler(object): if ret == 0: return ret + logger.info("fallocate unsuccessful, falling back to dd") + # dd fallback dd_maxbs = 64 * 1024 ** 2 dd_cmd = "umask 0077 && dd if=/dev/zero bs={0} count={1} conv=notrunc of={2}" blocks = int(nbytes / dd_maxbs) if blocks > 0: - ret = shellutil.run(dd_cmd.format(dd_maxbs, fn_sh, blocks)) << 8 + ret = shellutil.run(dd_cmd.format(dd_maxbs, blocks, fn_sh)) << 8 remains = int(nbytes % dd_maxbs) if remains > 0: - ret += shellutil.run(dd_cmd.format(remains, fn_sh, 1)) + ret += shellutil.run(dd_cmd.format(remains, 1, fn_sh)) + + if ret == 0: + logger.info("dd successful") + else: + logger.error("dd unsuccessful") return ret