{"id":208095,"date":"2023-09-07T16:03:59","date_gmt":"2023-09-07T16:03:59","guid":{"rendered":"https:\/\/www.ninjaone.com\/script-hub\/cancellare-dati-da-un-disco-rigido-con-powershell\/"},"modified":"2024-03-04T16:27:33","modified_gmt":"2024-03-04T16:27:33","slug":"cancellare-dati-da-un-disco-rigido-con-powershell","status":"publish","type":"script_hub","link":"https:\/\/www.ninjaonesandbox.dev\/it\/script-hub\/cancellare-dati-da-un-disco-rigido-con-powershell\/","title":{"rendered":"Come cancellare dati da un disco rigido con Powershell, in modo sicuro, in ambiente Windows"},"content":{"rendered":"<p><span class=\"TextRun SCXW3111736 BCX0\" lang=\"EN-US\" data-contrast=\"auto\"><span class=\"NormalTextRun SCXW3111736 BCX0\">Nel momento che stiamo vivendo dal punto di vista della sicurezza dei dati, cancellare dati da un disco rigido in modo corretto \u00e8 fondamentale. Per i professionisti IT e i fornitori di servizi gestiti (MSP), disporre di strumenti affidabili per queste attivit\u00e0 \u00e8 essenziale. In questo post sul blog, <\/span><span class=\"NormalTextRun SCXW3111736 BCX0\">andremo a vedere<\/span><span class=\"NormalTextRun SCXW3111736 BCX0\"> nel dettaglio un versatile <strong>script PowerShell progettato per cancellare dati da un disco rigido in modo sicuro ed efficiente<\/strong>. <\/span><span class=\"NormalTextRun SCXW3111736 BCX0\">E andremo<\/span><span class=\"NormalTextRun SCXW3111736 BCX0\"> anche <\/span><span class=\"NormalTextRun SCXW3111736 BCX0\">a fornire<\/span><span class=\"NormalTextRun SCXW3111736 BCX0\"> suggerimenti essenziali per garantire il successo dell&#8217;esecuzione dello script e della rimozione dei dati.<\/span><\/span><\/p>\n<h2>La potenza di PowerShell per la gestione dei dischi<\/h2>\n<p><span class=\"TextRun SCXW129074721 BCX0\" lang=\"EN-US\" data-contrast=\"auto\"><span class=\"NormalTextRun SCXW129074721 BCX0\">PowerShell, il potente linguaggio di scripting di Microsoft, offre importanti capacit\u00e0 di gestione e protezione dei dati. Grazie alle sue consolidate funzionalit\u00e0, come la possibilit\u00e0 di formattare un&#8217;unit\u00e0 e di cancellare dati da un disco rigido, PowerShell <\/span><span class=\"NormalTextRun ContextualSpellingAndGrammarErrorV2Themed SCXW129074721 BCX0\">diventa<\/span><span class=\"NormalTextRun SCXW129074721 BCX0\"> uno strumento prezioso per chiunque abbia a che fare con frequenti attivit\u00e0 di gestione dei dati.<\/span><\/span><\/p>\n<h2>Sfruttare il potenziale dello script PowerShell per cancellare dati da un disco rigido da remoto<\/h2>\n<p><span data-contrast=\"auto\">Lo script PowerShell di cui stiamo parlando \u00e8 stato creato per cancellare dati da un disco rigido in modo definitivo, da remoto, su un dispositivo. \u00c8 in grado di agire in diverse modalit\u00e0, ognuna delle quali offre un livello diverso di eliminazione dei dati e di ripristino del sistema, per soddisfare diversi requisiti di sicurezza dei dati che hai bisogno di cancellare da un disco.<\/span><\/p>\n<p><span data-contrast=\"auto\">Ma come puoi essere sicuro che questo script venga eseguito correttamente e che quindi riesca a cancellare dati da un disco con successo? Ecco alcuni suggerimenti:<\/span><\/p>\n<ol>\n<li><span data-contrast=\"auto\"><strong> Verifica la compatibilit\u00e0:<\/strong> Assicurati che il sistema di destinazione sia compatibile con il metodo scelto. Ad esempio, i metodi &#8220;WipeProtected&#8221; e &#8221; WipePersistUserData&#8221; sono supportati solo su build specifiche di Windows 10 o superiori.<\/span><\/li>\n<\/ol>\n<ol start=\"2\">\n<li><span data-contrast=\"auto\"><strong> Verifica il nome del computer:<\/strong> Il parametro ComputerName deve corrispondere al nome del computer su cui viene eseguito lo script. In caso contrario, lo script verr\u00e0 eseguito senza apportare alcuna modifica e quindi senza cancellare dati da un disco. Lo switch ComputerNameBypass pu\u00f2 essere usato per escludere questa opzione.<\/span><\/li>\n<\/ol>\n<ol start=\"3\">\n<li><span data-contrast=\"auto\"><strong> Testa prima della distribuzione:<\/strong> Testa sempre lo script in un ambiente controllato prima di distribuirlo in un ambiente di produzione e tentare di cancellare dati da un disco importante. Questo aiuta a identificare e correggere eventuali problemi prima che abbiano un impatto sui sistemi critici.<\/span><\/li>\n<\/ol>\n<ol start=\"4\">\n<li><span data-contrast=\"auto\"><strong> Monitora l&#8217;esecuzione lo script:<\/strong> Tieni d&#8217;occhio l&#8217;esecuzione dello script. Fai attenzione a eventuali messaggi relativi a errori o eccezioni generati dallo script. Questi messaggi possono fornire indicazioni preziose su eventuali problemi che possono impedire allo script di cancellare dati da un disco.<\/span><\/li>\n<\/ol>\n<ol start=\"5\">\n<li><span data-contrast=\"auto\"><strong> Verifica l\u2019avvenuta cancellazione dei dati:<\/strong> Dopo l&#8217;esecuzione dello script, verifica che lo script sia riuscito a cancellare i dati da un disco con successo. Questo pu\u00f2 essere fatto tentando di recuperare i dati dall&#8217;unit\u00e0. Se il recupero \u00e8 impossibile, puoi essere sicuro che lo script sia stato in grado di cancellare dati da un disco.<\/span><\/li>\n<\/ol>\n<ol start=\"6\">\n<li><span data-contrast=\"auto\"><strong> Documenta il processo:<\/strong> Conserva una trascrizione dell&#8217;intero processo, dall&#8217;esecuzione dello script iniziale fino al momento in cui andrai a verificare che lo script sia riuscito a cancellare dati da un disco. Questa documentazione pu\u00f2 essere una risorsa preziosa da usare come punto di riferimento in futuro o in caso di audit.<\/span><\/li>\n<\/ol>\n<p>Lo script: Cancellare dati da un disco di un dispositivo Windows da remoto<br \/>\n<pre class=\"EnlighterJSRAW\" data-enlighter-language=\"powershell\"> #Requires -Version 5.1\r\n\r\n&lt;#\r\n.SYNOPSIS\r\n    Remote Wipe a device.\r\n.DESCRIPTION\r\n    Remote Wipe a device via InvokeMethod from a Cim Session. doWipe, doWipeProtected, doWipePersistUserData, and doWipePersistProvisionedData are supported.\r\n    See examples for how to use each.\r\n.EXAMPLE\r\n    -Method Wipe -ComputerName \"PC-001\"\r\n    Runs the doWipe method. Equivalent to running \"Reset this PC &gt; Remove everything\" from the Settings app, with Clean Data set to No and Delete Files set to Yes.\r\n    ComputerName needs to match the computer name of the computer the script is running on. If it doesn't then the script will exit, doing nothing.\r\n.EXAMPLE\r\n    -Method Wipe -ComputerNameBypass\r\n    Runs the doWipe method. Equivalent to running \"Reset this PC &gt; Remove everything\" from the Settings app, with Clean Data set to No and Delete Files set to Yes.\r\n    Will bypass the computer name check and run regards less.\r\n.EXAMPLE\r\n    -Method WipeProtected -ComputerName \"PC-001\"\r\n    Runs the doWipeProtected method. Performs a remote reset on the device and also fully cleans the internal drive.\r\n    Windows 10 build version 1703 and above.\r\n    ComputerName needs to match the computer name of the computer the script is running on. If it doesn't then the script will exit, doing nothing.\r\n.EXAMPLE\r\n    -Method WipePersistUserData\r\n    Runs the doWipeProtected method. Equivalent to selecting \"Reset this PC &gt; Keep my files\" when manually starting a reset from the Settings app.\r\n    Windows 10 build version 1709 and above.\r\n    ComputerName needs to match the computer name of the computer the script is running on. If it doesn't then the script will exit, doing nothing.\r\n.EXAMPLE\r\n    -Method WipePersistProvisionedData\r\n    Runs the doWipeProtected method. Provisioning packages in the %SystemDrive%ProgramDataMicrosoftProvisioning folder will be retained and then applied to the OS after the reset.\r\n    The information that was backed up will be restored and applied to the device when it resumes.\r\n    ComputerName needs to match the computer name of the computer the script is running on. If it doesn't then the script will exit, doing nothing.\r\n.NOTES\r\n    Reference: https:\/\/docs.microsoft.com\/en-us\/windows\/client-management\/mdm\/remotewipe-csp\r\n    Release Notes:\r\n    Initial Release\r\nBy using this script, you indicate your acceptance of the following legal terms as well as our Terms of Use at https:\/\/www.ninjaonesandbox.dev\/terms-of-use.\r\n    Ownership Rights: NinjaOne owns and will continue to own all right, title, and interest in and to the script (including the copyright). NinjaOne is giving you a limited license to use the script in accordance with these legal terms. \r\n    Use Limitation: You may only use the script for your legitimate personal or internal business purposes, and you may not share the script with another party. \r\n    Republication Prohibition: Under no circumstances are you permitted to re-publish the script in any script library or website belonging to or under the control of any other software provider. \r\n    Warranty Disclaimer: The script is provided \u201cas is\u201d and \u201cas available\u201d, without warranty of any kind. NinjaOne makes no promise or guarantee that the script will be free from defects or that it will meet your specific needs or expectations. \r\n    Assumption of Risk: Your use of the script is at your own risk. You acknowledge that there are certain inherent risks in using the script, and you understand and assume each of those risks. \r\n    Waiver and Release: You will not hold NinjaOne responsible for any adverse or unintended consequences resulting from your use of the script, and you waive any legal or equitable rights or remedies you may have against NinjaOne relating to your use of the script. \r\n    EULA: If you are a NinjaOne customer, your use of the script is subject to the End User License Agreement applicable to you (EULA).\r\n#&gt;\r\n\r\n[CmdletBinding()]\r\nparam (\r\n    [Parameter(Mandatory = $true)]\r\n    [ValidateSet(\"Wipe\", \"WipeProtected\", \"WipePersistProvisionedData\", \"WipePersistUserData\")]\r\n    [String]\r\n    $Method,\r\n    [Parameter()]\r\n    [String]\r\n    $ComputerName,\r\n    [Parameter()]\r\n    [switch]\r\n    $ComputerNameBypass\r\n)\r\n\r\n# ComputerNameBypass was used, continue on.\r\nif ($PSBoundParameters.ContainsKey(\"ComputerNameBypass\") -and $ComputerNameBypass) {\r\n    Write-Host \"Bypassing Computer Name check.\"\r\n}\r\nelse {\r\n    # If computer name matches, continue on.\r\n    if ($ComputerName -notlike $env:COMPUTERNAME) {\r\n        Write-Error \"Computer Name does not match.\"\r\n        exit 1\r\n    }\r\n}\r\n\r\n# Check if the requested Method is supported or not\r\n$BuildVersion = [System.Environment]::OSVersion.Version.Build\r\nif ($BuildVersion -lt 1703 -and $Method -like \"WipeProtected\") {\r\n    Write-Host \"WipeProtected is only supported on Windows 10 build version 1703 and above.\"\r\n    exit 1\r\n}\r\nif ($BuildVersion -lt 1709 -and $Method -like \"WipePersistUserData\") {\r\n    Write-Host \"WipePersistUserData is only supported on Windows 10 build version 1709 and above.\"\r\n    exit 1\r\n}\r\n\r\n$session = New-CimSession\r\n\r\n$params = New-Object Microsoft.Management.Infrastructure.CimMethodParametersCollection\r\n$param = [Microsoft.Management.Infrastructure.CimMethodParameter]::Create(\"param\", \"\", \"String\", \"In\")\r\n$params.Add($param)\r\n\r\n$CimSplat = @{\r\n    Namespace = \"rootcimv2mdmdmmap\"\r\n    ClassName = \"MDM_RemoteWipe\"\r\n    Filter    = \"ParentID='.\/Vendor\/MSFT' and InstanceID='RemoteWipe'\"\r\n}\r\n\r\ntry {\r\n    $instance = Get-CimInstance @CimSplat\r\n    $session.InvokeMethod($CimSplat[\"Namespace\"], $instance, \"do$($Method)Method\", $params)\r\n}\r\ncatch {\r\n    Write-Error $_\r\n    exit 1\r\n}<\/pre>\n<p>&nbsp;<\/p>\n<br \/>\n<div class=\"in-context-cta\"><p>Accedi a oltre 700 script nel Dojo di NinjaOne <a href=\"https:\/\/www.ninjaonesandbox.dev\/it\/prova-gratuita\/\">Ottieni l&#8217;accesso<\/a><\/p>\n<\/div><\/p>\n<p><span class=\"TextRun SCXW186655300 BCX0\" lang=\"EN-US\" data-contrast=\"auto\"><span class=\"NormalTextRun CommentStart SCXW186655300 BCX0\">Gli script PowerShell, come quello di cui parliamo in questo post sul blog, possono essere strumenti potenti per i professionisti IT e gli MSP, utili a <\/span><span class=\"NormalTextRun SCXW186655300 BCX0\">migliorare<\/span><span class=\"NormalTextRun SCXW186655300 BCX0\"> l\u2019efficienza e la sicurezza dei dati. Con una chiara comprensione dello script e seguendo questi suggerimenti, potrai essere sicuro della corretta esecuzione dello script e del fatto che sia riuscito a cancellare dati da un disco. Nel campo della gestione dei dati, disporre di strumenti e conoscenze cos\u00ec affidabili ha un valore inestimabile.<\/span><\/span><span class=\"EOP SCXW186655300 BCX0\" data-ccp-props=\"{}\">\u00a0<\/span><\/p>\n<p><span data-contrast=\"auto\">A questo punto potresti chiederti, &#8220;E per cancellare dati da un disco in ambiente Mac?&#8221;, e possiamo aiutarti anche con questo. Dai un&#8217;occhiata al nostro post sul blog &#8220;<a href=\"https:\/\/www.ninjaonesandbox.dev\/blog\/wipe-a-mac-hard-drive-remotely-bash-script\/\">Come cancellare dati da un disco in ambiente Mac con uno script Bash<\/a>&#8220;.<\/span><\/p>\n<h2>Come NinjaOne pu\u00f2 aiutare<\/h2>\n<p>Per le organizzazioni che desiderano portare la sicurezza dei dati e la gestione IT a un livello superiore, l&#8217;integrazione di una soluzione come NinjaOne pu\u00f2 rappresentare una differenza significativa. Sebbene gli script PowerShell siano gi\u00e0 di per s\u00e9 potenti per attivit\u00e0 come quella di cancellare dati da un disco rigido, la gestione di questi script su un gran numero di dispositivi pu\u00f2 risultare complessa. NinjaOne semplifica questo aspetto offrendo <a href=\"https:\/\/www.ninjaonesandbox.dev\/it\/rmm\/automazione-it\/\">funzionalit\u00e0 centralizzate di distribuzione e automazione degli script<\/a>. \u00c8 possibile distribuire gli script PowerShell per cancellare dati da un disco rigido da remoto su pi\u00f9 dispositivi, il tutto da un&#8217;unica dashboard.<\/p>\n<p>Inoltre, NinjaOne offre reportistica e analisi avanzate, permettendoti di verificare facilmente il successo delle operazioni di cancellazione dei dati e di mantenere i record di conformit\u00e0. Nel caso in cui lo script incontri problemi a cancellare dati da un disco o eccezioni, il monitoraggio in tempo reale di NinjaOne ti avviser\u00e0, consentendoti di intervenire rapidamente. Questo riduce al minimo i rischi e garantisce che il processo di rimozione dei dati sia completo e sicuro.<\/p>\n<p>Quindi, che tu sia un professionista IT o un fornitore di servizi gestiti, l&#8217;integrazione di NinjaOne nelle tue pratiche di gestione e sicurezza dei dati ti pu\u00f2 offrire un ulteriore livello di efficienza e affidabilit\u00e0. Non si tratta solo di eseguire uno script, ma di gestirlo efficacemente in tutta l&#8217;organizzazione, e NinjaOne pu\u00f2 aiutarti a farlo. <a href=\"https:\/\/www.ninjaonesandbox.dev\/it\/gestione-degli-endpoint-demo-gratuita\/\">Guarda una demo<\/a> per capire perch\u00e9 NinjaOne \u00e8 stato votato come il <a href=\"https:\/\/www.ninjaonesandbox.dev\/it\/gestione-endpoint\/\">software di gestione degli endpoint<\/a> numero 1 su G2 Crowd.<\/p>\n","protected":false},"author":35,"featured_media":206761,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"_relevanssi_hide_post":"","_relevanssi_hide_content":"","_relevanssi_pin_for_all":"","_relevanssi_pin_keywords":"","_relevanssi_unpin_keywords":"","_relevanssi_related_keywords":"","_relevanssi_related_include_ids":"","_relevanssi_related_exclude_ids":"","_relevanssi_related_no_append":"","_relevanssi_related_not_related":"","_relevanssi_related_posts":"","_relevanssi_noindex_reason":"","_lmt_disableupdate":"no","_lmt_disable":""},"operating_system":[4212],"use_cases":[4222],"class_list":["post-208095","script_hub","type-script_hub","status-publish","has-post-thumbnail","hentry","script_hub_category-windows"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.ninjaonesandbox.dev\/it\/wp-json\/wp\/v2\/script_hub\/208095","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.ninjaonesandbox.dev\/it\/wp-json\/wp\/v2\/script_hub"}],"about":[{"href":"https:\/\/www.ninjaonesandbox.dev\/it\/wp-json\/wp\/v2\/types\/script_hub"}],"author":[{"embeddable":true,"href":"https:\/\/www.ninjaonesandbox.dev\/it\/wp-json\/wp\/v2\/users\/35"}],"replies":[{"embeddable":true,"href":"https:\/\/www.ninjaonesandbox.dev\/it\/wp-json\/wp\/v2\/comments?post=208095"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.ninjaonesandbox.dev\/it\/wp-json\/wp\/v2\/media\/206761"}],"wp:attachment":[{"href":"https:\/\/www.ninjaonesandbox.dev\/it\/wp-json\/wp\/v2\/media?parent=208095"}],"wp:term":[{"taxonomy":"script_hub_category","embeddable":true,"href":"https:\/\/www.ninjaonesandbox.dev\/it\/wp-json\/wp\/v2\/operating_system?post=208095"},{"taxonomy":"use_cases","embeddable":true,"href":"https:\/\/www.ninjaonesandbox.dev\/it\/wp-json\/wp\/v2\/use_cases?post=208095"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}