diff --git a/.bin/Scripts/functions/disk.py b/.bin/Scripts/functions/disk.py index a0f994d5..571fa8cf 100644 --- a/.bin/Scripts/functions/disk.py +++ b/.bin/Scripts/functions/disk.py @@ -116,8 +116,13 @@ def get_partition_details(disk, partition): if 'Letter' in details: # Disk usage - tmp = shutil.disk_usage('{}:\\'.format(details['Letter'])) - details['Used Space'] = human_readable_size(tmp.used) + try: + tmp = psutil.disk_usage('{}:\\'.format(details['Letter'])) + except OSError as err: + details['FileSystem'] = 'Unknown' + details['Error'] = err.strerror + else: + details['Used Space'] = human_readable_size(tmp.used) # fsutil details cmd = [ @@ -146,7 +151,7 @@ def get_partition_details(disk, partition): details['Name'] = details.get('Volume Name', '') # Set FileSystem Type - if details.get('FileSystem', '') != 'RAW': + if details.get('FileSystem', '') not in ['RAW', 'Unknown']: details['FileSystem'] = details.get('File System Name', 'Unknown') return details diff --git a/.bin/Scripts/functions/winpe_menus.py b/.bin/Scripts/functions/winpe_menus.py index 5e06edce..9c741d80 100644 --- a/.bin/Scripts/functions/winpe_menus.py +++ b/.bin/Scripts/functions/winpe_menus.py @@ -125,6 +125,8 @@ def menu_backup(): data = par['Display String'] if par['Number'] in disk['Bad Partitions']: show_data(message=message, data=data, width=30, warning=True) + if 'Error' in par: + show_data(message='', data=par['Error'], error=True) elif par['Image Exists']: show_data(message=message, data=data, width=30, info=True) else: