mirror of
https://github.com/amadvance/snapraid.git
synced 2026-10-26 19:01:57 -04:00
Allow the --force-device option to work with smart/up/down/devices
This commit is contained in:
parent
37b0064d60
commit
19c75877f1
2 changed files with 19 additions and 7 deletions
|
|
@ -1001,6 +1001,10 @@ int main(int argc, char* argv[])
|
|||
switch (operation) {
|
||||
case OPERATION_FIX :
|
||||
case OPERATION_CHECK :
|
||||
case OPERATION_SMART :
|
||||
case OPERATION_DEVICES :
|
||||
case OPERATION_SPINUP :
|
||||
case OPERATION_SPINDOWN :
|
||||
break;
|
||||
default :
|
||||
if (opt.force_device) {
|
||||
|
|
|
|||
|
|
@ -310,15 +310,23 @@ static void state_config_check(struct snapraid_state* state, const char* path, t
|
|||
for (l = 0; l < state->level; ++l) {
|
||||
for (s = 0; s < state->parity[l].split_mac; ++s) {
|
||||
if (disk->device == state->parity[l].split_map[s].device) {
|
||||
/* LCOV_EXCL_START */
|
||||
log_fatal("Disk '%s' and %s '%s' are on the same device.\n", disk->dir, lev_name(l), state->parity[l].split_map[s].path);
|
||||
if (state->opt.force_device) {
|
||||
/* note tha we just ignore the issue */
|
||||
/* and we DON'T mark the disk to be skipped */
|
||||
/* because we want to use these disks */
|
||||
if (!state->opt.no_warnings)
|
||||
log_fatal("DANGER! Ignoring that disks '%s' and %s '%s' are on the same device\n", disk->dir, lev_name(l), state->parity[l].split_map[s].path);
|
||||
} else {
|
||||
/* LCOV_EXCL_START */
|
||||
log_fatal("Disk '%s' and %s '%s' are on the same device.\n", disk->dir, lev_name(l), state->parity[l].split_map[s].path);
|
||||
#ifdef _WIN32
|
||||
log_fatal("Both have the serial number '%" PRIx64 "'.\n", disk->device);
|
||||
log_fatal("Try using the 'VolumeID' tool by 'Mark Russinovich'\n");
|
||||
log_fatal("to change one of the disk serial.\n");
|
||||
log_fatal("Both have the serial number '%" PRIx64 "'.\n", disk->device);
|
||||
log_fatal("Try using the 'VolumeID' tool by 'Mark Russinovich'\n");
|
||||
log_fatal("to change one of the disk serial.\n");
|
||||
#endif
|
||||
exit(EXIT_FAILURE);
|
||||
/* LCOV_EXCL_STOP */
|
||||
exit(EXIT_FAILURE);
|
||||
/* LCOV_EXCL_STOP */
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue