Fix: aggiunta comando unplug (per rendere possibile la rimozione dei dischi spare) #1
@@ -3415,6 +3415,24 @@ $ rm /mnt/verifica.txt
|
||||
if((mdOp==="--stop-rebuild"&&mdArray==="/dev/md0")||(t[1]==="--stop-rebuild"&&t[2]==="/dev/md0")){if(!state.rebuild.active)return termPrint("mdadm: nessun rebuild attivo.","warn");stopRebuild(false);termPrint("mdadm: rebuild interrotto (didattica).","warn");if(state.scenario.name==="rebuild_interrupted"&&!state.scenario.checkpoints.stopped){state.scenario.checkpoints.stopped=true;addScore(6,"(scenario) rebuild interrotto.");}render();scenarioCheck();return;}
|
||||
return termPrint("mdadm: opzione non supportata. Digita 'help'.","err");
|
||||
}
|
||||
if(c0==="unplug"){
|
||||
const dev=t[1];
|
||||
if(!dev){
|
||||
return termPrint("unplug: specifica il disco spare da rimuovere (simulazione). Esempio: unplug /dev/sdX","err");
|
||||
}
|
||||
const spareIndex=state.spares.findIndex(d=>d.dev===dev);
|
||||
if(spareIndex===-1){
|
||||
return termPrint(`unplug: ${dev} non è uno spare o non esiste.`,`err`);
|
||||
}
|
||||
const spare=state.spares[spareIndex];
|
||||
spare.state=DiskState.REMOVED;
|
||||
state.spares.splice(spareIndex,1);
|
||||
pushDmesg("warn",`${dev}: unplugged dallo spare`);
|
||||
termPrint(`unplug: ${dev} rimosso.`,`ok`);
|
||||
render();
|
||||
scenarioCheck();
|
||||
return;
|
||||
}
|
||||
if(c0==="lsblk"){termPrint(lsblk(),"dim");scenarioActionDiag();render();scenarioCheck();return;}
|
||||
if(c0==="fdisk"&&t[1]==="-l"){termPrint(fdiskL(),"dim");scenarioActionDiag();render();scenarioCheck();return;}
|
||||
if(c0==="blkid"){termPrint(blkid(),"dim");scenarioActionDiag();render();scenarioCheck();return;}
|
||||
|
||||
Reference in New Issue
Block a user