5f4598814a
Clear screen before printing abort warning
...
* Otherwise the "Abort" string is in the middle of the ddrescue output
* Also added secondary return code to be treated as a user abort
2018-07-19 00:45:04 -06:00
016f87b76c
Don't hide source dev when selecting dest dev
...
* Disable the entry instead
* It's more clear what's being done
2018-07-19 00:43:41 -06:00
7597394d61
Build real ddrescue cmd for Cloning or Imaging
...
* --force is only used for cloning
2018-07-18 23:53:05 -06:00
d09664bb7d
Misc cleanup
2018-07-18 23:37:02 -06:00
e640caee74
Add dest image/map path sections
2018-07-18 23:19:42 -06:00
646e1a3764
Show list of authorized fstypes with error
2018-07-18 22:17:32 -06:00
19dcc87950
Pause when showing usage
2018-07-18 22:09:47 -06:00
e5ce254e8b
Verify destination FS is mounted read-write
2018-07-18 22:02:17 -06:00
f2c557f77c
Added safety checks for the destination
...
* Dev size / avail space checks
* Permission checks
* No mount option checks (yet?)
2018-07-18 20:54:51 -06:00
88c28a3f25
Added auto-continue code
...
* Enabled by default
* Based on static thresholds per pass.
* Pass 1: 85%
* Pass 2: 98%
* If using child devices, all must be above the threshold to continue
2018-07-18 18:26:03 -06:00
9d91a28d7a
Add children pass, status, and update sections
...
* Updating device / child device status/progress done in mark_*() functions
* Add current pass description to main menu
* Current pass (overall) only updated if all children have passed
* Fix Pass 4 crash
2018-07-17 23:22:08 -06:00
c705ba6afc
Add pass completion detection sections
...
* Retry option now sets recovery back to pass 1
2018-07-17 22:10:37 -06:00
a12a591279
Moved SMART sections to a separate script
...
* Refresh rate is now handled by 'watch --interval'
* Allows for much simpler ddrescue execution / tracking
* Removed all 'SMART Report' sections from functions/ddrescue.py
* functions/hw_diags.py has been further extended
* Supports full device paths (only for displaying attributes ATM)
* Adds a timestamp when only displaying attributes
2018-07-17 21:05:37 -06:00
358191539c
Added run_ddrescue() and update_smart_report()
...
* Working "wait" loop while ddrescue is running.
2018-07-17 19:19:38 -06:00
d1d3e1592e
Added get_process()
2018-07-17 18:11:23 -06:00
7d851d2222
Add settings menu
2018-07-17 16:59:45 -06:00
310a2eb63a
Initial Main Menu code
...
* Required refactoring pass status code
* Need to add settings menu next
2018-07-17 16:01:29 -06:00
fd8ac7cf1a
Add child device selection menu for Image mode
...
* Can select either whole device or child dev(s), not both
2018-07-17 14:16:38 -06:00
de8f3bbd2b
Use image file instead of loopback device
...
* Still setup loopback for image details but use image directly in ddrescue
* Adjusted outer/side panes to use image path instead of loopback dev
2018-07-17 13:21:12 -06:00
29266f1611
Added initial Imaging source child dev support
2018-07-17 01:11:43 -06:00
1e4a3b6c0e
Fix provided_path for Imaging and adjust top panes
...
* Moved select_path menu sections to menu_select_path()
2018-07-17 00:49:41 -06:00
007d2ef692
Added select_path() for Image mode
...
* Can select the current path, a local device's volume, or enter manually
* Optionally add a ticket folder to path before imaging
2018-07-17 00:15:28 -06:00
c37dab58af
Updated mount_all_volumes(), now mount_volumes()
...
* Now allows mounting R/W
* Can restrict to a specific device's volume(s)
* Added more data to the returned report
2018-07-17 00:06:43 -06:00
6eb486c770
Extend get_simple_string() to support underscores
2018-07-17 00:05:47 -06:00
9a27afebf7
Moved selection details into its own function
...
* Will allow for better duplication in Image mode
2018-07-16 22:19:39 -06:00
6643cf5d25
Moved outer pane section to its own function
...
* Will allow better duplication with Image mode
2018-07-16 22:08:00 -06:00
552868c26e
Moved safety check into its own function
...
* Will allow better duplication with Image mode
2018-07-16 22:04:09 -06:00
69909fa34c
Added safety check
2018-07-16 21:02:53 -06:00
855884ec93
Added initial update_progress() sections
...
* TODO: expand to support Image mode
2018-07-16 21:01:10 -06:00
ae4f2ac680
Added outer panes
2018-07-16 19:40:29 -06:00
b5d8a55031
Reordered functions
2018-07-16 18:07:12 -06:00
e56296d8b0
Consolidated device selection code
...
* Common code moved to select_device()
* Existing select_device() renamed menu_select_device()
* Fixed skip_device code
* Refactored source/dest vars into dicts
* Added confirmation after source/dest are selected
2018-07-16 18:01:06 -06:00
0c3b90eb63
Add clone destination sections
...
* Hide source device in dest selection menu
2018-07-15 00:04:24 -06:00
cfbd0ec8f2
Add device selection menu
2018-07-14 23:45:08 -06:00
667223b3c2
Check passed source
...
* If it's an image, setup loopback dev
* If it's a child block dev, prompt with option to use parent block
* Show selected source details
2018-07-14 22:52:18 -06:00
8b1e19fa4b
Initial wk-ddrescue menu
2018-07-14 21:19:08 -06:00
d57b08ec6f
Update hw_diags so it can be used by wk-ddrescue
2018-07-14 21:17:32 -06:00
2Shirt
bbfcc2e3fe
Hotfix: Handle size=None in human_readable_size()
2018-05-30 17:26:49 -06:00
2Shirt
24df753a40
Add support for LVM and RAID to mount-all-volumes
...
* Renamed get_mounted_data to get_mounted_volumes
* Report data is now a dict for better clarity
* Widened report hoping that LVM names will fit (they probably wont)
* This fixes #38
2018-05-21 20:25:12 -06:00
2Shirt
25d34e5ace
Copy WinPE.log to new Windows installations
2018-05-21 15:57:24 -06:00
2Shirt
70e4797b7a
Refactored windows_image code
...
* Better names (e.g. 'Letter' instead of 'Source')
* Added 'Local' bool to simplify network-vs-local installs
* Only reassign the source letter if necessary
* Bugfix: Update 'Path' when reassigning a volume letter
* Fixes #33 (again)
2018-05-21 15:43:05 -06:00
2Shirt
e305b3e60f
Add warning for missing archive in extract_item()
2018-05-17 20:56:55 -06:00
2Shirt
27953bde5a
Update backup/restore code
...
* Added support for local backups
* Added volume label detection for local backups
* Replace spaces in backup_prefix with underscores
2018-05-17 20:54:45 -06:00
2Shirt
b997a52385
Updated hw-diags section
...
* Use date_time instead of ticket_number if disabled
2018-05-17 18:17:36 -06:00
2Shirt
db09236b26
Updated user_data_transfer sections
2018-05-17 18:06:26 -06:00
2Shirt
bec947262b
Updated WinPE sections
2018-05-17 18:03:53 -06:00
2Shirt
3114b72178
Add ticket toggle var and get_simple_string func
...
* get_simple_string() will be used for backup prefixes
2018-05-17 17:57:45 -06:00
2Shirt
5ea499d6ff
Assign volume letters before finding source image
...
* Fixes issue #33
2018-05-17 17:09:22 -06:00
2Shirt
1c3520806c
Avoid nohup.out creation
2018-05-17 15:17:14 -06:00
2Shirt
0902a7997f
Moved SafeMode sections into functions/safemode.py
...
* Allows for better descriptions of the actions being taken
* Allowd for better error handling
* Fixes issue #34
2018-05-14 12:58:06 -06:00
2Shirt
6868988cec
Added antivirus check to the system_checklist
...
* Fixes issue #31
2018-05-14 12:11:38 -06:00
2Shirt
8ea17268c7
Fixed local sources for user_data_transfer
...
* Added support for local images and root folders
2018-05-14 09:42:30 -06:00
2Shirt
e751696307
Avoid crash if VCR+ installers are missing
2018-05-14 08:01:09 -06:00
2Shirt
ebffd2a2dd
Added more missing file warnings
...
* Part of the fix for #27
2018-05-14 07:54:33 -06:00
2Shirt
17dc572c4a
Added warnings for missing tools
2018-05-13 18:57:27 -06:00
2Shirt
79d2af6e0a
Fix issue #27
...
Several popen_program() calls were not inside try blocks causing full crashes
2018-05-13 18:20:42 -06:00
2Shirt
18c535dcfd
Bugfix for OS detection
...
* Avoids CurrentBuild collision between Win8 and Win8.1
* Fix DisplayName formatting
2018-05-13 16:09:07 -06:00
2Shirt
ee2bcd5aea
Refactored OS build detection
...
* Known build data moved to settings/windows_builds.py
* OS version statically set in windows_builds.py
* Added Insider Previews to recognized builds
* Shown in red due to their very short support windows
* Windows 8 and Windows 8.1 are now separate versions
* Added codenames to Vista and 7 (for fun!)
* Unrecognized builds have the CurrentBuild number in the DisplayName
2018-05-12 20:13:54 -06:00
2Shirt
04f7ae2f21
Better unit handling during I/O Benchmarks
...
* All results are in MB/s
2018-04-16 14:17:28 -06:00
2Shirt
e55dbeeb23
Add dd drive I/O Benchmark test
...
* All tests: runs if SMART=CS/OVERRIDE & BADBLOCKS=CS
* All drive tests: runs if SMART=CS/OVERRIDE & BADBLOCKS=CS
* I/O tests are readonly, blocksize=4M, and limited to 16 Gb
* Fix issue #23
2018-04-16 02:58:34 -06:00
2Shirt
4b0dde6efe
Re-add keyboard test to HW diag menu
...
* Fix issue #25
2018-04-15 10:25:49 -06:00
2Shirt
8e22aa22b0
Fix issue #22
2018-03-15 15:28:54 -06:00
2Shirt
b080200118
Fix issue #21
2018-03-15 14:30:46 -06:00
2Shirt
ac1ee5f695
More HWiNFO updates
2018-03-08 19:09:22 -07:00
2Shirt
d82ad55113
Fix issue #19
2018-02-28 13:15:00 -07:00
2Shirt
a5630c2837
Updated HWiNFO download sections
2018-02-21 18:08:47 -07:00
2Shirt
64f22fbe30
Updated update.py
...
Support new HWiNFO archives
2018-02-21 14:02:11 -07:00
2Shirt
a0c6569eaf
Fix issue #12
...
The download no longer gets wrapped in a gzip archive.
2018-02-09 11:50:51 -07:00
2Shirt
e958eedfb6
Fix handing of path separators to prevent crashes
2018-02-07 20:15:31 -07:00
2Shirt
44acb9b755
Update windows_setup.py
2018-01-30 17:28:34 -07:00
2Shirt
96c6997a44
Update function docstrings
2018-01-30 16:50:28 -07:00
2Shirt
89c343943f
Replaced remaining show_info calls with show_data
2018-01-30 16:00:59 -07:00
2Shirt
e0db7560e6
Better server share mounting
...
* Added ability to mount read-only or read-write
* Allows the same main.py file to be used for all build scripts.
2018-01-30 15:23:46 -07:00
2Shirt
3ac2d8d1d4
Bugfix: Setting Windows time should work again
...
* Was using the wrong variable name
2018-01-28 18:19:57 -07:00
2Shirt
012da00821
Removed ClientInfo upload code
2018-01-28 17:55:40 -07:00
2Shirt
c24554720f
Add option to upload crash details
...
* Disabled by default, enabled via main.py ENABLE_UPLOAD_DATA
* Upload destination set via main.py CRASH_SERVER variable
2018-01-28 17:48:42 -07:00
2Shirt
d96256fd87
Add reboot/shutdown entries when not in X
2018-01-27 12:45:37 -07:00
2Shirt
30dcd8758e
Added a "Yes to all" option to User Data Transfer
2018-01-26 18:35:05 -07:00
2Shirt
a7451f86ba
Added choice() function
...
* Provides a simlilar interface to the Windows choice command.
2018-01-26 18:32:33 -07:00
2Shirt
f0ae207890
Improved source scanning for user data transfers
...
* Fixes recursion bug when Windows.old folders are present
* Combined logic for file/folder sources and WIM sources
* Code uses proper folder separators for the running OS
* (e.g. '\' for Windows and '/' for the rest)
2018-01-26 17:52:43 -07:00
2Shirt
f7f3f0d53c
Updated info.py
...
Should fix #10
2018-01-17 17:22:45 -07:00
2Shirt
0e87bf55a0
Enable HW-Diags for more devices
...
* Skip all removable WizardKit devices
* Fixes issue #8
2018-01-15 13:45:58 -07:00
2Shirt
c7901d1328
Merge branch 'linux' into dev
2017-12-30 12:30:27 -07:00
2Shirt
43e8746c46
Fixed using local Windows images
2017-12-30 12:04:48 -07:00
2Shirt
698546f823
Switch to single-line disk descriptions
2017-12-27 19:36:22 -07:00
2Shirt
c0cbdc6923
Added pause after audio and network tests
2017-12-27 19:19:29 -07:00
2Shirt
524096165c
Forgot to update_progress during badblocks tests
2017-12-27 14:02:04 -07:00
2Shirt
5d70124c39
Updated badblocks section
...
* Reduced worker pane size
* Save badblocks logs in LogDir
2017-12-27 13:42:10 -07:00
2Shirt
18ce079aa3
Open log after HW diags
2017-12-27 13:11:25 -07:00
2Shirt
6ddf3fca67
Re-added hw-diags quick disk check function
2017-12-27 04:45:59 -07:00
2Shirt
16c20ac6ea
Cleanup and fix results screen during abort
...
* Renamed run_smart to run_nvme_smart to match rest of the code
* Mark NVMe/SMART status as NS earlier in a couple more cases
* Prevent crash when all tests are run and then aborted during Prime95
2017-12-27 04:22:02 -07:00
2Shirt
7fbbde56c6
run_badblocks() working
...
* Re-added and updated hw-diags-badblocks
2017-12-27 04:01:54 -07:00
2Shirt
0ea523a2cf
Show Prime95 final temps in result screen
2017-12-27 02:12:32 -07:00
2Shirt
0bab107e24
Updated results screen formatting
2017-12-27 02:11:28 -07:00
2Shirt
24e72f2f35
SMART section finished
...
* The script waits for the self-test for polling-time+5min
* Unless it detects completion after 60 seconds
* Fixed missing linebreaks in progress panes
* BREAKING: TESTS data structure reworked to support per-dev status
2017-12-27 01:42:04 -07:00
2Shirt
579a747878
Started work on results screen
2017-12-26 21:43:23 -07:00
2Shirt
a6917fc129
run_mprime() finished
...
* Results now determined from log files
2017-12-26 15:57:36 -07:00
2Shirt
8ff33547c4
Save temps just before stopping Prime95
2017-12-26 15:16:15 -07:00
2Shirt
03d7646685
Enabled logging for hw-diags
2017-12-26 14:17:53 -07:00
2Shirt
74ba8fb758
Added hw-diags-prime95 and still removing libtmux
2017-12-24 18:46:02 -07:00