Commit graph

343 commits

Author SHA1 Message Date
172cb398ba
Convert hardware objects to dataclasses 2022-04-04 18:30:21 -06:00
3b3f737ed5
Merge remote-tracking branch 'upstream/new-ddrescue-arguments' into new-ddrescue-arguments 2022-03-31 17:43:46 -06:00
8dd8701e8d
Split read phase into two parts
Addresses issue #184

The first read phase will skip a lot more to try to recover more data
from the whole source.  Then the second read phase will fill in like
the previous configuration.
2022-03-25 18:45:28 -06:00
981abbb8c2
Merge remote-tracking branch 'upstream/new-ddrescue-arguments' into new-ddrescue-arguments 2022-03-08 15:21:34 -07:00
4e61025e99
Fix --sector-size argument 2022-03-08 13:02:33 -07:00
b66f25dfea
Only open ddrescueview if running with a DISPLAY 2022-03-08 12:36:49 -07:00
b82493b12b
Generate new map files when starting a recovery
This is done to define the domain size and let us use --complete-only.

This also enables us to open ddrescueview immediately since that tool
requires a valid map file from the start.  If you open an empty map
file ddrescueview doesn't auto-reload the file correctly.

Addresses #184
2022-03-08 11:55:23 -07:00
9d2eb8b175
Fix initial and max skip sizes
ddrescue's minimum is 64KiB so we should respect that.

Addresses #184
2022-03-08 11:53:56 -07:00
ea9e3b3696
Disable broken --sector-size argument
Addresses #184
2022-03-08 11:52:04 -07:00
c3ec690318
Add new ddrescue argument options
Addresses #184
2022-03-07 23:49:15 -07:00
2ce057e394
Adjust ddrescue-tui main menu 2022-02-22 16:49:21 -07:00
16d47a12a6
Simplify the WKClone source/dest selection
Only show confirmation #2 if using advanced partition selection.
2022-02-22 13:14:25 -07:00
487bfba2e5
Skip updating disk checkboxes if no disks present
Addresses issue #6
2022-02-21 00:46:01 -07:00
0e4ee42f28
Add "Fresh start" menu entry to ddrescue-tui
Addresses issue #15
2022-02-20 20:22:25 -07:00
abd1855bc9
Fix whitespace 2022-02-20 18:14:58 -07:00
06c7d2ca20
Merge remote-tracking branch 'upstream/dev' into dev
Addresses issue #12
2022-02-20 18:13:49 -07:00
a35ffdda23
Open ddrescueview during recovery
Addresses issue #182
2022-02-20 18:10:13 -07:00
147c35f0c6
Add support for tech notes in ddrescue-tui
Addresses issue #11
2022-02-19 18:47:12 -07:00
b3f4a31ed2
Move detect drives logic to its own function 2022-02-19 18:42:41 -07:00
4550b13565
Add osTicket pane to ddrescue-tui
Addresses issue #10
2022-02-18 17:21:56 -07:00
7dc64fb73b
Merge remote-tracking branch 'upstream/dev' into dev 2021-12-14 15:34:27 -07:00
a19714d735
Skip CPU tests by default for TestStations
Addresses #179
2021-12-14 14:08:22 -07:00
af6119feb5
Fix more pylint warnings 2021-09-30 17:48:10 -06:00
c747b66455
Merge remote-tracking branch 'upstream/dev' into dev 2021-09-30 17:42:31 -06:00
90fb97ad91
Fix various pylint warnings 2021-09-27 21:48:11 -06:00
7dfd399e6e
Update __init__.py files 2021-09-13 18:42:36 -06:00
29dc4694b4
Merge remote-tracking branch 'upstream/dev' into dev 2021-06-23 23:36:03 -06:00
9c5767f71f
Update CPU testing sections 2021-06-23 23:33:45 -06:00
8e0fdf641b
Retest temps with sysbench if Prime95 runs too hot
If the CPU reaches the failing temps during Prime95 then sysbench will be
run to emulate a less artificial workload.  The both the overall and sysbench
max temps are recorded and shown in the results.

Added new option to track an alternate max temp value in wk.hw.sensors.
This was needed so show two different max temps recorded during CPU testing.

Sysbench was added to the Linux package list and is compiled for macOS.
Without manually compiling the package it brings in way too many dependencies
to support SQL DB testing (which we don't need).
2021-06-17 03:16:34 -06:00
eaa367a5c9
Fix imports under Windows 2021-05-02 02:14:28 -06:00
2a90a381a4
Merge remote-tracking branch 'upstream/dev' into dev 2021-05-02 01:17:13 -06:00
ffa2df416b
Set source drive to sleep instead of detaching it 2021-04-16 01:07:56 -06:00
da9563f870
Merge remote-tracking branch 'upstream/dev' into dev 2021-04-15 01:37:18 -06:00
20fe08dbb4
Get correct size for child dev under macOS 2021-04-14 02:16:58 -06:00
a4ee7b890c
Disable image mode in ddrescue-tui (for now) 2021-04-13 23:16:55 -06:00
d781038e88
Enable ddrescue-tui under macOS
Currently limited to only cloning whole disks, not select partitions.
We need to specify the --size due to a bug under macOS; it fails to
detect the size of the device/partition and reports 8192 PiB instead.
2021-04-13 02:18:17 -06:00
c90bc0ef37
Merge remote-tracking branch 'upstream/dev' into dev 2021-04-11 15:32:16 -06:00
535455813c
Use the new command name for pipes.sh 2021-04-11 15:30:32 -06:00
c6ca5228ac
Merge remote-tracking branch 'upstream/dev' into dev 2021-04-11 15:28:27 -06:00
b047b28f30
Fix typo 2021-04-11 15:27:51 -06:00
bed7e79758
Add questionable argument to hw-diags
I, the author of this script, strongly recommend against using this!

References issue #139
2021-04-09 04:15:20 -06:00
4b956cb488
Disable benchmarks only for smaller USB drives
Addresses issue #128
2021-04-09 03:51:13 -06:00
a42d5e06f4
Merge remote-tracking branch 'upstream/dev' into dev 2021-04-09 03:08:19 -06:00
66bf189e55
Disable benchmark tests on surface scan failures 2021-04-09 03:02:28 -06:00
b3a667641d
Show failed attributes during surface scans 2021-04-09 02:29:06 -06:00
ce8dddd9b7
Include note if attributes fail mid-diagnostics 2021-04-09 02:27:11 -06:00
d0b8b3ad57
Add even more pylint cleanup fixes 2021-04-09 00:18:18 -06:00
af09772d67
Merge remote-tracking branch 'upstream/dev' into dev 2021-04-09 00:16:41 -06:00
812fd15011
Add more pylint cleanup fixes 2021-04-09 00:15:59 -06:00
8689a68c2f
Skip asking for a ticket ID twice
For this to happen the tech has to disable osTicket integration first
so in that case just set ticket to the date.  No need asking again.

Addresses issue #132 (I think, couldn't reproduce)
2021-04-08 23:58:44 -06:00
388c6302cb
Merge remote-tracking branch 'upstream/dev' into dev 2021-04-08 23:41:01 -06:00
9d3508909a
Add DRIVE_POWEROFF_TIMEOUT to wk.cfg.ddrescue
This replaces a magic number
2021-04-08 23:40:00 -06:00
249e868c3d
Merge remote-tracking branch 'upstream/dev' into dev 2021-04-08 23:22:56 -06:00
830e088ccf
Report if the dest starts failing during recovery 2021-04-08 23:17:00 -06:00
5a2d35d3cc
Prevent recovering to wrong devices or paths
Before starting a recovery run verify the source and destination have
not changed.  This will prevent issues on some extreme edge cases but
the main goal is for disappearing source drives with heavy damage.

e.g. A very damaged source drive disappears mid-recovery, drops off and
before would need a restart, or unplug/replug, to continue.  Now we can
attempt to re-detect the drive and resume recovery without leaving the
script.  If for some reason the drive order were to change then we'll
avoid using the wrong source or destination device.
2021-04-08 23:09:00 -06:00
43fd30322e
Expand checks for missing source or destination
Addresses issue #155
2021-04-08 22:43:13 -06:00
18bc139d25
Add 'Detect drives' option to ddrescue-tui 2021-04-08 20:55:28 -06:00
c452256fe7
Fix pylint issues in wk/hw/ddrescue.py 2021-04-08 20:49:21 -06:00
1a3b57da66
Poweroff source drives after ddrescue errors
Addresses issue #165
2021-04-08 19:41:05 -06:00
a5766a8a1e
Avoid more possibles crashes when uploading graphs 2021-04-06 17:27:44 -06:00
86f0f14c34
Merge remote-tracking branch 'upstream/dev' into dev 2021-04-06 17:06:30 -06:00
9478000cdf
Add Clock Sync option to HW-Diags menu under macOS 2021-04-06 16:57:31 -06:00
61f2b00a2a
Export SMC data in HW Diagnostics
Addresses issue #154
2021-04-06 15:53:19 -06:00
641695a2be
Avoid crash if benchmark image fails to generate 2021-04-01 23:22:04 -06:00
586e3fc61c
Merge remote-tracking branch 'upstream/dev' into dev 2021-03-26 01:24:35 -06:00
ae42634a8e
Add SMART override for some Samsung devices
* Addresses issue #163
2021-03-26 00:57:08 -06:00
1e09ddc9ff
Merge remote-tracking branch 'upstream/dev' into dev 2021-03-25 21:28:50 -06:00
9818d5196f
Export state objects as pickle files
This should better ensure debugging an issue will have all the relevant
info at the ready.
2021-03-25 21:15:56 -06:00
3f48b10942
Apply "temp" fix for macOS HW-Diags 2021-03-25 21:11:21 -06:00
60e5d86f8e
Merge remote-tracking branch 'upstream/dev' into dev 2021-03-24 22:22:54 -06:00
2Shirt
7147ef1753 Fix get_serial() 2021-03-19 15:23:49 -06:00
2Shirt
080383d9a9 Fix bad call to mount_disk() 2021-03-19 03:37:40 -06:00
2Shirt
207c52663b Allow mounting of protected macOS partitions
Renamed mount_volumes() to mount_disk() to better match diskutil naming.
Dropped read_write from mount_disk() since it isn't used
2021-03-18 22:23:07 -06:00
2Shirt
7c1a9f4bdc Fix osTicket volume report 2021-03-18 21:52:29 -06:00
2Shirt
2b98eeabca Include GPT info when saving hw-diaqs debug data 2021-03-18 21:41:59 -06:00
2Shirt
908ffdc999 Add mount_volumes() to wk.os.mac
Supports both CoreStorage and APFS containers
2021-03-18 03:23:09 -06:00
2Shirt
bc3f6946f7 Add support for macOS High Sierra Base Images 2021-03-17 01:23:12 -06:00
2Shirt
4dc5c51beb Include Mac serial number in OST Post 2021-03-13 03:20:51 -07:00
2Shirt
314675c32e Unknown 2021-03-13 03:15:30 -07:00
7d77aa81b0 Update sensors.py to improve CPU data
Include AMD CCD sensors
Exclude current sensors
2021-01-09 21:08:53 -07:00
a4df2f41d3
Added wk.exe.stop_process()
* Replaced wk.hw.ddrescue.stop_ddrescue()
2020-02-25 20:52:08 -07:00
45a6b31910
Added periodic destination health check
* Addresses issue #158
2020-02-25 20:45:59 -07:00
94a428f6da
Added check for missing source/destination
* Addresses issue #155
2020-02-25 20:15:13 -07:00
0a00e17536
Avoid another rare crash when saving average temps 2020-02-17 16:54:51 -07:00
1f1fdfc738
Avoid rare crash when saving average temps 2020-02-17 16:44:33 -07:00
1b7c248102
Merge remote-tracking branch 'upstream/dev' into dev 2020-02-03 18:16:12 -07:00
3b640ac85b
Addressed issue #153 2020-02-03 18:09:46 -07:00
c1970b8c23
Merge remote-tracking branch 'upstream/dev' into dev 2020-01-30 14:09:13 -07:00
e8522bf2bb
Added pause if fan speed can't be set under macOS
* This can be removed after a bit of real-world testing
2020-01-30 14:08:05 -07:00
a66c27be84
Updated get_disk_details_macos() 2020-01-30 14:01:30 -07:00
ebbdedef6c
Added get_fstype_macos() 2020-01-30 13:59:12 -07:00
ad1adba837
Add APFS and HFS/HFS+ to RECOMMENDED_MAP_FSTYPES 2020-01-30 13:51:23 -07:00
385b2158fd
Improved method to avoid crash during self-tests 2020-01-30 13:28:52 -07:00
dc6dcfb845
Revert "Avoid crash during SMART self-test"
This reverts commit cc8c0992f6.
2020-01-30 13:25:46 -07:00
c8f95d866a
Typo fix 2020-01-30 13:24:49 -07:00
86f0f1e5fd
Avoid rare crash concerning disk attributes
* Crash would occur under these circumstances:
  * Disk Attributes test was not selected
  * One or more other disk tests were selected
  * A non-blocking attribute error was detected
2020-01-30 13:16:48 -07:00
98032a0fed
Removed stale TODO statements 2020-01-28 19:00:47 -07:00
1a26aead44
Network test working under macOS 2020-01-28 18:38:33 -07:00
869293ced9
Merge remote-tracking branch 'upstream/dev' into dev 2020-01-28 18:30:35 -07:00
f14f5e0d72
Adjusted logging 2020-01-28 18:21:24 -07:00