CINXE.COM
Finding RAID parameters
<!DOCTYPE html> <html lang="en"> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <meta name="viewport" content="width=device-width,initial-scale=1" /> <meta http-equiv="content-language" content="en" /> <link rel="stylesheet" type="text/css" href="/includes/en/style.css" /> <link rel="shortcut icon" href="/images/rtt.ico" /> <link rel="icon" type="image/png" href="/images/rtt.png" sizes="64x64"> <link rel="stylesheet" type="text/css" href="/includes/event/cyber_week.css" /> <meta name="keywords" content="RAID parameters, RAID recovery, disk array recovery, RAID reconstruction, data structure, object on disk, Master Boot Record, determine RAID offset, NTFS boot sector"/> <meta name="Description" content="How to find parameters of the RAID to be reconstructed and recover lost data"/> <title>Finding RAID parameters</title> <style type="text/css"> a:link.link1 {text-decoration: none; color:grey;} a:active.link1 { color:cyan; text-decoration: underline} a:visited.link1 { color:violette; text-decoration: none} a:hover.link1 { text-decoration: underline; color: blue} </style> <script type="text/javascript" charset="utf-8"> // Generic routines function strTrim(str) { return str.replace(/^\s+|\s+$/gm,''); } // Single element class manipulations function _nodeGetClassPos(Node,className) { if (!Node||!Node.className) return -1;if ((!className)||(className.length<=0)) return 0; for(var s=0;true;) { var p=Node.className.indexOf(className,s);if (p<0) return -1; s=p+className.length; if ((p>0)&&(Node.className.charCodeAt(p-1)>32)) continue; if ((s<Node.className.length)&&(Node.className.charCodeAt(s)>32)) continue; return p; } return -1; } function nodeHasClass(Node,className) { return (_nodeGetClassPos(Node,className)>=0); } function nodeAddClass(Node,className) { if ( (!Node) || (!className) || (className.length<=0) || (nodeHasClass(Node,className)) ) return false; if ( (Node.className) && (Node.className.length>0) ) Node.className+=" "; Node.className+=className; return true; } function nodeDelClass(Node,className) { if ( (!Node) || (!Node.className) || (!className) || (className.length<=0) ) return false; var pos=_nodeGetClassPos(Node,className);if (pos<0) return false; var pos2=pos+className.length; if ((pos>0)&&(Node.className.charCodeAt(pos-1)<=32)) {pos--;} else if ((pos2<Node.className.length)&&(Node.className.charCodeAt(pos2)<=32)) {pos2++;} Node.className = Node.className.slice(0,pos) + Node.className.slice(pos2); return true; } function nodeSwitchClass(Node,className) { if ((!Node)||(!className)) return; if (nodeHasClass(Node,className)) { nodeDelClass(Node,className); } else { nodeAddClass(Node,className); } } // Multiple elements class manipulations function nodesHasClass(Nodes,className) { for(var i=0;i<Nodes.length;i++) {if (nodeHasClass(Nodes[i],className)) return true;} return false; } function nodesAddClass(Nodes,className) { for(var i=0;i<Nodes.length;i++) {nodeAddClass(Nodes[i],className);} } function nodesDelClass(Nodes,className) { for(var i=0;i<Nodes.length;i++) {nodeDelClass(Nodes[i],className);} } // Supplement search functions function _findBuild(Selector) { var Search = {Elem:'',Class:'',Type:''}; if (typeof Selector === 'string') Search.Elem=Selector; var pos=Search.Elem.indexOf('[type=');if (pos>=0) { var pos2=Search.Elem.lastIndexOf(']'); if (pos2>pos) { Search.Type=Search.Elem.slice(pos+6,pos2-pos-6); Search.Elem=Search.Elem.slice(0,pos)+Search.Elem.slice(pos2+1); } } pos=Search.Elem.indexOf('.');if (pos>=0) { Search.Class=Search.Elem.slice(pos+1); Search.Elem=Search.Elem.slice(0,pos); } Search.Elem=Search.Elem.toUpperCase(); return Search; } function _findDoesNodeMatch(Search,Node) { if ((!Node)||(Node.nodeType!=1)) return false; var bMatch=true; if ( (Search.Elem!="") && ((!Node.tagName)||(Node.tagName!=Search.Elem)) ) {bMatch=false;} if ( (Search.Type!="") && ((!Node.type)||(Node.type!=Search.Elem)) ) {bMatch=false;} if ( (Search.Class!="") && (!nodeHasClass(Node,Search.Class)) ) {bMatch=false;} return bMatch; } // Search for nodes, Selector = 'element.class[type=typename]', each part can be omited, i.e. '.class' or 'element[type=typename]' for example function nodeFindChildren(Node,Selector) { // Search for matched children nodes, recursively var res = [];if (!Node) return res; var Search = (typeof Selector === 'object')?Selector:_findBuild(Selector); var Children = Node.childNodes; for(var i=0;i<Children.length;i++) { if (Children[i].nodeType!=1) continue; if (_findDoesNodeMatch(Search,Children[i])) {res.push(Children[i]);} res=res.concat(nodeFindChildren(Children[i],Search)); } return res; } function nodeFindDirectChildren(Node,Selector) { // Search for matched children nodes, only children of this node var res = [];if (!Node) return res; var Search = _findBuild(Selector); var Children = Node.childNodes; for(var i=0;i<Children.length;i++) { if (Children[i].nodeType!=1) continue; if (_findDoesNodeMatch(Search,Children[i])) {res.push(Children[i]);} } return res; } function nodeFindParent(Node,Selector) { // Search for first matched parent node if (!Node) return null; var Search = _findBuild(Selector); for(var Res=Node.parentNode;Res;Res=Res.parentNode) { if (_findDoesNodeMatch(Search,Res)) return Res; } return null; } // Check if Node have specified Child on any level function hasSpecifiedChild(Node,Child) { if (!Node) return false; var Children = Node.childNodes; for(var i=0;i<Children.length;i++) { if (Children[i].nodeType!=1) continue; if (Children[i] === Child) return true; if (hasSpecifiedChild(Children[i],Child)) return true; } return false; } </script><script type="text/javascript" charset="utf-8"> function onImgBigClose(Node) { if (Node) Node.parentNode.removeChild(Node); } function onImgBigShow(Node) { if (!Node) return; var strImgSrc=Node.getAttribute("big-src"); if (!strImgSrc) { strImgSrc=Node.getAttribute("src");if (!strImgSrc) return; if (nodeHasClass(Node,"big")) { var p=strImgSrc.lastIndexOf(".");if (p<=0) return; strImgSrc=strImgSrc.slice(0,p)+"_big"+strImgSrc.slice(p); } } var strImgAlt=Node.getAttribute("title"); if (!strImgAlt) {strImgAlt=Node.getAttribute("alt");} var ImgModal=document.createElement("div");if (!ImgModal) return; ImgModal.className="img-big-modal"; ImgModal.id="img-big-modal"; var ImgClose=document.createElement("span"); var ImgImg=document.createElement("img"); var ImgCaption=document.createElement("div"); if (!ImgClose || !ImgImg || !ImgCaption) return; ImgClose.innerHTML="×"; ImgClose.onclick = function(){onImgBigClose(this.parentNode);} ImgModal.appendChild(ImgClose); ImgImg.setAttribute("src",strImgSrc); ImgModal.appendChild(ImgImg); if (strImgAlt) {ImgCaption.innerText=strImgAlt;} ImgModal.appendChild(ImgCaption); if (ImgModal.addEventListener) { ImgModal.addEventListener('mouseup',function(e) { var Trg=e.target;if (!Trg) return; var ImgModal=document.getElementById('img-big-modal');if (!ImgModal) return; if (Trg === ImgModal) onImgBigClose(ImgModal); }); } var InsertBefore=Node.nextSibling; if (InsertBefore) {Node.parentNode.insertBefore(ImgModal,InsertBefore);} else {Node.parentNode.appendChild(ImgModal);} } function onImgBigShowInit() { var aImgBig = nodeFindChildren(document,'img.big'); aImgBig = aImgBig.concat(nodeFindChildren(document,'img.rsz')); for(var i=0;i<aImgBig.length;i++) {aImgBig[i].onclick = function(){onImgBigShow(this);};} if (document.addEventListener) { document.addEventListener('keyup',function(e) { if (e.keyCode != 27) return; onImgBigClose(document.getElementById('img-big-modal')); }); } } </script> </head> <body> <div id="root"> <div> <div style="overflow-x:hidden;"> <div id="hdr-wrapper" class="hdr-wrapper"> <div id="hdr-hdr" class="section hdr-hdr"> <div class="hdr-logo"> <a href="https://www.r-tt.com/" title="R-Tools Technology Inc."> <img src="/images/event/rtt-logo-cyber_week.png" alt="R-Tools Technology Inc." width="225" height="85" /> </a> </div> <div class="hdr-search-container"> <form class="hdr-search-form" name="search_form" action="/scripts/search" method="post" onsubmit="return doSearch(document.search_form)"> <input type="hidden" name="config" value="../../../r-tt/private/config/ssserver.en" /> <div class="hdr-search-row"> <span class="hdr-search-icon" onclick="doSearch(document.search_form)"></span> <input type="text" name="QUERY" class="hdr-search-input" value="Search..." onfocus="onSearchFocus(document.search_form)" /> </div> </form> </div> <script type="text/javascript" charset="utf-8"> function onSearchFocus(F) { if (F.QUERY.value == "Search...") { F.QUERY.value=""; F.QUERY.style.color = "#404040"; } return true; } function doSearch(F) { if (F.QUERY.value == "Search...") {F.QUERY.value="";} if (F.QUERY.value == "") {alert("Please specify search pattern");F.QUERY.focus();return false;} return true; } </script> <div class="hdr-info"> <div> We are committed to providing fast, efficient, and affordable software solutions that set new standards in the software development industry. </div> </div> <div class="clearwoflex"></div> <div class="hdr-langs"> <div class="langs-block"> <div class="langs-btn"> <div class="langs-cur-flag"> <img width="51" height="29" alt="" src="/images/lang/en.png"/> </div> <span class="langs-sel"></span> </div> <div class="langs-list"> <a href="https://www.r-studio.com/de/ermitteln-der-raid-parameter.html"> <img src="/images/lang/de.png" width="51" height="29" alt="" /> <span>Deutsch</span> </a> <a href="https://www.r-studio.com/fr/trouver-les-parametres-raid.html"> <img src="/images/lang/fr.png" width="51" height="29" alt="" /> <span>Français</span> </a> <a href="https://www.r-studio.com/it/Trovare-i-parametri-RAID.html"> <img src="/images/lang/it.png" width="51" height="29" alt="" /> <span>Italiano</span> </a> <a href="https://www.r-studio.com/es/busqueda-de-parametros-de-raid.html"> <img src="/images/lang/es.png" width="51" height="29" alt="" /> <span>Español</span> </a> <a href="https://www.r-studio.com/pt/Como-encontrar-os-parametros-do-RAID-a-serem-reconstruidos-e-recuperar-dados-perdidos.html"> <img src="/images/lang/pt.png" width="51" height="29" alt="" /> <span>Português</span> </a> <a href="https://www.r-studio.com/pl/znajdowanie-parametrow-RAID.html"> <img src="/images/lang/pl.png" width="51" height="29" alt="" /> <span>Polski</span> </a> <a href="https://www.r-studio.com/ru/finding-raid-parameters.html"> <img src="/images/lang/ru.png" width="51" height="29" alt="" /> <span>Русский</span> </a> </div> </div> </div> <div class="hdr-menu"> <div class="menu-container" id="menu-container"> <span class="menu-button"> <span class="menu-button-open"></span> <span class="menu-button-close"></span> </span> <a href="https://www.r-tt.com/" class="menu-logo" title="R-Tools Technology Inc."> <img src="/images/event/rtt-logo-cyber_week.png" alt="R-Tools Technology Inc." width="225" height="85" /> </a> <ul class="menu-main" id="menu-main"> <li class="menu-item"><div class="menu-item-wrap"> <span class="menu-title"> <span class="menu-icon-left"></span> PRODUCTS <span class="menu-icon-right"></span> </span> <div class="menu-dd"> <div class="menu-dd-cont"> <div class="menu-dd-title"> FREEWARE </div> <div class="menu-dd-items"> <ul class="menu-dd-ul"> <li> <a href="https://www.r-undelete.com/">R-Undelete Home</a> </li> <li> <a href="https://www.r-undelete.com/free_photo_recovery/">R-Photo</a> </li> <li> <a href="https://www.r-studio.com/free-linux-recovery/">R-Linux</a> </li> <li> <a href="https://www.r-wipe.com/#lite">R-Wipe & Clean Lite</a> </li> </ul> </div> </div> <div class="menu-dd-cont"> <div class="menu-dd-title"> FOR COMMERCIAL USE </div> <div class="menu-dd-items"> <ul class="menu-dd-ul"> <li> <a href="https://www.r-studio.com/Data_Recovery_Technician.shtml"> R-Studio Technician for Data Recovery Services </a> </li> <li> <a href="https://www.drive-image.com/Drive_Image_Licensing.shtml#commercial"> R-Drive Image for Backup and Deployment Services </a> </li> </ul> </div> </div> <div class="menu-dd-cont"> <div class="menu-dd-title"> FOR PERSONAL AND BUSINESS USE </div> <div class="menu-dd-items"> <div class="menu-dd-cols"> <div class="menu-dd-col-title"> <a href="https://www.r-studio.com/data-recovery-software/"> PRO Data Recovery: </a> </div> <div class="menu-dd-col-ul"><ul class="menu-dd-ul"> <li> <a href="https://www.r-studio.com/">R-Studio for Windows</a> </li> <li> <a href="https://www.r-studio.com/data_recovery_macintosh/">R-Studio for Mac</a> </li> <li> <a href="https://www.r-studio.com/data_recovery_linux/">R-Studio for Linux</a> </li> </ul></div> <div class="clearthis"></div> </div> <div class="menu-dd-cols"> <div class="menu-dd-col-title"> Backup and System Restore: </div> <div class="menu-dd-col-ul"><ul class="menu-dd-ul"> <li> <a href="https://www.drive-image.com/">R-Drive Image</a> </li> <li> <a href="https://www.drive-image.com/Drive_Image_Licensing.shtml#technician">R-Drive Image Technician</a> </li> </ul></div> <div class="clearthis"></div> </div> <div class="menu-dd-cols"> <div class="menu-dd-col-title"> PC Privacy and Security: </div> <div class="menu-dd-col-ul"><ul class="menu-dd-ul"> <li> <a href="https://www.r-wipe.com/">R-Wipe & Clean</a> </li> <li> <a href="https://www.r-wipe.com/#mac">R-Wipe & Clean for Mac</a> </li> </ul></div> <div class="clearthis"></div> </div> </div> </div> </div> </div></li> <li class="menu-item"><div class="menu-item-wrap"> <span class="menu-title"> <span class="menu-icon-left"></span> <span class="alt-tr-ru-1">BUY ONLINE</span> <span class="menu-icon-right"></span> </span> <div class="menu-dd"> <div class="menu-dd-cont"> <div class="menu-dd-items"> <ul class="menu-dd-ul"> <li> <a href="https://www.r-tt.com/VolumeLicensing.shtml" class="alt-tr-ru-1">Quote</a> </li> <li> <a href="https://www.r-tt.com/GetInvoice.shtml">Get Invoice</a> </li> <li> <a href="https://www.r-tt.com/FAQ.shtml">Sales FAQ</a> </li> <li> <a href="https://www.r-tt.com/BuyOnLine.shtml">Sales Policy</a> </li> </ul> </div> </div> </div> </div></li> <li class="menu-item"><div class="menu-item-wrap"> <span class="menu-title"> <span class="menu-icon-left"></span> SUPPORT <span class="menu-icon-right"></span> </span> <div class="menu-dd"> <div class="menu-dd-cont"> <div class="menu-dd-items"> <ul class="menu-dd-ul"> <li> <a href="https://www.r-tt.com/TechnicalSupport.shtml">Technical Support</a> </li> <li> <a href="https://www.r-tt.com/PurchasingRequest.shtml">Customer Support</a> </li> <li> <a href="https://www.r-studio.com/File_Recovery_FAQ.shtml">FAQ</a> </li> <li> <a href="https://www.r-tt.com/Knowledge-Base.html">Knowledge Base</a> </li> <li> <a rel="noopener" target="_blank" href="https://forum.r-tt.com/">R-TT Forum</a> </li> </ul> </div> </div> </div> </div></li> <li class="menu-item"><div class="menu-item-wrap"> <span class="menu-title"> <span class="menu-icon-left"></span> DISTRIBUTION <span class="menu-icon-right"></span> </span> <div class="menu-dd"> <div class="menu-dd-cont"> <div class="menu-dd-items"> <ul class="menu-dd-ul"> <li> <a href="https://www.r-tt.com/Affiliate_Program.shtml">Affiliate Program</a> </li> <li> <a href="https://www.r-tt.com/Resellers.shtml">Resellers</a> </li> <li> <a href="https://www.r-tt.com/Distribution.shtml">Regional Distributors</a> </li> <li> <a target="_blank" rel="noopener" href="https://secure.r-tt.com/distributor/login/">Login</a> </li> </ul> </div> </div> </div> </div></li> <li class="menu-item"><div class="menu-item-wrap"> <span class="menu-title"> <span class="menu-icon-spare"></span> <a href="https://secure.r-tt.com/UserConsole.shtml">MY ORDER</a> </span> </div></li> </ul> </div> </div> <div class="clearwoflex"></div> </div><div class="event-back event-back-cyber"><div class="event-center event-center-cyber"> <div class="event-body cyber-body"><div> <img class="cyber-circle" src="/images/event/cyber-circle.png"/> <img class="cyber-add-1" src="/images/event/cyber-add-1.png"/> <img class="cyber-add-2" src="/images/event/cyber-add-2.png"/> <img class="cyber-text" src="/images/event/cyber-text.png"/> <img class="cyber-off" src="/images/event/cyber-off.png"/> <img class="cyber-close" id="event-done" src="/images/event/cyber-close.png"/> <div class="event-clone"> <img id="event-info-0" alt="" /> <img id="event-info-1" alt="" /> <img id="event-info-2" alt="" /> <img id="event-info-3" alt="" /> <img id="event-info-4" alt="" /> </div> </div></div> </div></div> </div> <div> <div class="row-blue row-section"><div class="section"><ul class="page-title"> <li> <div class="page-title-main"> Finding RAID parameters </div></li> </ul></div></div> <div class="row-section page-height-info"><div class="section"> <div class="social-share"> <a target="_blank" href="https://www.facebook.com/sharer.php?u=https://www.r-studio.com/finding-raid-parameters.html" title="Share on Facebook"><img src="/images/social/fb-share32.png"/></a> <a target="_blank" href="https://twitter.com/intent/tweet?url=https://www.r-studio.com/finding-raid-parameters.html&text=Finding%20RAID%20parameters" title="Share on Twitter"><img src="/images/social/tw-share32.png"/></a> <a target="_blank" href="http://pinterest.com/pin/create/button/?url=https://www.r-studio.com/finding-raid-parameters.html&description=Finding%20RAID%20parameters" title="Share on Pinterest"><img src="/images/social/pt-share32.png"/></a> <a target="_blank" href="http://www.reddit.com/submit?url=https://www.r-studio.com/finding-raid-parameters.html&title=Finding%20RAID%20parameters" title="Share on Reddit"><img src="/images/social/reddit-share32.png"/></a> </div> <p> When we discussed data recovery from <a href="https://www.r-studio.com/What-is-Hardware-RAID.html">RAIDs</a>, we assumed that we already knew the RAID parameters. However, in some cases we do not know the parameters of the RAID to be reconstructed. How do you find the required parameters? RAID vendors can help you with their default values, but sometimes the parameters were customized and are now unknown. Can R-Studio help in this case? Yes, we can use either automatic RAID parameter detection, or the built-in Text/hexadecimal editor to analyze data in RAID components for the purpose of finding its parameters. In this article we will show you how to do this, using a simple NTFS RAID 5 as an example. The article <a href="https://www.r-studio.com/automatic-raid-detection.html">Automatic RAID Parameter Detection</a> explains how to find RAID parameters automatically<br/> <br/> Such a task requires at least a basic knowledge of RAID data structures and file systems. If necessary, you may find some useful information on these Web sites.<br/> RAIDs: <a target="_blank" rel="nofollow noopener" href="https://en.wikipedia.org/wiki/RAID">http://en.wikipedia.org/wiki/RAID</a><br/> NTFS basics: <a target="_blank" rel="nofollow noopener" href="https://en.wikipedia.org/wiki/NTFS">http://en.wikipedia.org/wiki/NTFS</a><br/> NTFS in depth: <a target="_blank" rel="nofollow noopener" href="http://technet.microsoft.com/en-us/library/cc758691.aspx">http://technet.microsoft.com/en-us/library/cc758691.aspx</a><br/> <br/> So, let's try to find the required parameters for a simple unknown RAID 5.<br/> <br/> Its known parameters are:<br/> 1. Number of disks: Three<br/> 2. File System: NTFS (created by Windows XP/2003 and later using a standard Master Boot Record (MBR start block)<br/> 3. Type: Basic volume<br/> <br/> Its unknown parameters that must be found are:<br/> 1. Disk order<br/> 2. Block size 3<br/> 3. Block order<br/> 4. Disk offset<br/> <br/> The RAID disks are represented as image files created in R-Studio:<br/> Disk1.arc<br/> Disk2.arc<br/> Disk3.arc<br/> <img class="big" style='text-align: center' src="/Disk_Recovery_Articles/Finding_RAID_parameters/Finding_RAID_Parameters_Rec1.png" width="586" height="400" alt="Finding RAID parameters: Image files of RAID components"/><br/> <i>Click image to enlarge</i><br/> <b>Image files of RAID components</b> <br/><br/> Please note that even though R-Studio has found a Disk1 object on Disk2.arc, that does not necessarily indicate that this is the first disk in the RAID. <br/><br/><br/> <b>Finding Master Boot Record</b><br/> First we need to find the MBR to determine a RAID offset. <br/> 1. One after another, open all the tree image files in the Text/hexadecimal editor.<br/> 2. <b>Do not enable write</b> to prevent accidental data corruption in the objects being edited! <br/> 3. Write down the Windows disk signature for each object to recognize later which Editor's window belongs to which object.<br/> 4. Search for the MBR start block. On the <i>Search</i> dialog box, enter <i>33 C0 8E D0 BC</i> (this is a standard MBR start block, but in some cases it may be different) into the <i>HEX</i> field; then select <i>From start position</i> and enter 0 in <i>Search at offset</i>. <br/> 5. Click OK to start searching.<br/> <img class="big" style='text-align: center' src="/Disk_Recovery_Articles/Finding_RAID_parameters/Finding_RAID_Parameters_2.png" width="345" height="281" alt="Finding RAID parameters: Search dialog box"/><br/> <b>Data in Search dialog box to begin search for the Master Boot Record (MBR)</b> <br/><br/> Search results:<br/> <img class="big" style='text-align: center' src="/Disk_Recovery_Articles/Finding_RAID_parameters/Finding_RAID_Parameters_Rec2.png" width="586" height="416" alt="Finding RAID parameters: Disk1.arc opened in the Text/hexadecimal editor"/><br/> <i>Click image to enlarge</i><br/> <b>Disk1.arc opened in the Text/hexadecimal editor</b> <br/><br/> <img class="big" style='text-align: center' src="/Disk_Recovery_Articles/Finding_RAID_parameters/Finding_RAID_Parameters_Rec3.png" width="586" height="415" alt="Finding RAID parameters: Disk2.arc opened in the Text/hexadecimal editor"/><br/> <i>Click image to enlarge</i><br/> <b>Disk2.arc opened in the Text/hexadecimal editor. MBR pattern found.</b> <br/><br/> <img class="big" style='text-align: center' src="/Disk_Recovery_Articles/Finding_RAID_parameters/Finding_RAID_Parameters_Rec4.png" width="586" height="415" alt="Finding RAID parameters: Disk3.arc opened in the Text/hexadecimal editor"/><br/> <i>Click image to enlarge</i><br/> <b>Disk3.arc opened in the Text/hexadecimal editor. MBR pattern found.</b> <br/><br/> The result is that the Text/hexadecimal editor finds this pattern at address 00 on Disk2.arc and Disk3.arc; Disk1.arc shows only zeros. That means that the offset is 0, and Disk1.arc cannot be the first disk in the RAID.<br/> <br/> Meanwhile, the Editor correctly recognized those patterns on Disk2 and Disk3 as master bootstrap loader code. In our case, two disks have the same MBR data on the same place.<br/> <br/> Now, as a second step, we need to find the NTFS boot sector.<br/> Take a look on the <i>Sectors preceding partition</i> field on the <i>Template</i> pane<br/> <img class="big" style='text-align: center' src="/Disk_Recovery_Articles/Finding_RAID_parameters/Finding_RAID_Parameters_Rec5.png" width="257" height="281" alt="Finding RAID parameters: Disk template"/><br/> <i>Click image to enlarge</i><br/> <b>Template pane for Disk2 and Disk3</b> <br/><br/> For our case, the sector preceding the partition is 16,065.<br/> <br/> If this value is larger than 63, we should divide it by N -1, where N is the number of disks (in our case, N = 3), which gives us 8,032. This is an approximate position to start searching for the NTFS boot sector. We will start the search from this position to avoid finding false NTFS boot sectors that may remain from previous NTFS partitions.<br/> <br/> Jump to that sector in the Editor and then search for the NTFS boot sector pattern.<br/> <img class="big" style='text-align: center' src="/Disk_Recovery_Articles/Finding_RAID_parameters/Finding_RAID_Parameters_Rec6.png" width="586" height="86" alt="Finding RAID parameters: Sector search"/><br/> <i>Click image to enlarge</i><br/> <b>The Sectors search field in the Text/hexadecimal editor</b><br/> <br/><br/> On the <i>Search</i> dialog box, enter <i>EB 52 90 4E 54 46 53 20 20 20 20</i> (the NTFS boot sector <b>always</b> starts from these bytes) into the <i>HEX</i> field, select <i>From current position</i> and enter 0 in <i>Search at offset</i>.<br/> <img class="big" style='text-align: center' src="/Disk_Recovery_Articles/Finding_RAID_parameters/Finding_RAID_Parameters_6.png" width="345" height="281" alt="Finding RAID parameters: Search for NTFS boot sector"/><br/> <i>Click image to enlarge</i><br/> <b>Data in Search dialog box to start search for NTFS boot sector</b> <br/><br/> The Editor finds this pattern at sector 8064 on Disk2 and Disk3.<br/> <br/> Now select the <i>Boot sector NTFS</i> pattern on the <i>Template</i> pane. <br/> <img class="big" style='text-align: center' src="/Disk_Recovery_Articles/Finding_RAID_parameters/Finding_RAID_Parameters_Rec7.png" width="586" height="423" alt="Finding RAID parameters: NTFS boot sector found"/><br/> <i>Click image to enlarge</i><br/> <b>Disk2.arc opened in the Text/hexadecimal editor. NTFS boot sector pattern found. The same pattern is found on Disk3.arc.</b> <br/><br/> <u>Required parameters that we have found</u><br/> Bytes per sector: 512<br/> Sectors per cluster: 8<br/> Logical Cluster Number for the file $MFT: 786432<br/> <br/> <u>Previously found parameters:</u><br/> RAID offset: 0<br/> <br/> Next we need to find the MFT (master file table) on the disk:<br/> <br/> 1. We will try to find an approximate MFT offset from the RAID start:<br/> MFT offset from the partition start in sectors = Logical Cluster Number for the file $MFT * Sectors per cluster+RAID offset = 786,432*8+0 = 6,291,456<br/> If the RAID offset is not 0, we need to add the offset to the result of the equation above.<br/> MFT start on the first disk = MFT offset from the partition start in sectors/(N-1) = 6,291,456/2 = 3,145,728<br/> <br/> 2. We will begin to search for the exact MFT start at a position a couple thousand sectors less than this value. Say, sector 3,140,000. <br/> On the Search dialog box, enter "FILE" into the ANSI field, then select From current position and enter 0 in Search at offset.<br/> <img class="big" style='text-align: center' src="/Disk_Recovery_Articles/Finding_RAID_parameters/Finding_RAID_Parameters_8.png" width="345" height="281" alt="Finding RAID parameters: File pattern"/><br/> <i>Click image to enlarge</i><br/> <b>This pattern is found at sector 10,241,463 on Disk2 and at sector 3,153,792 on Disk3.</b> <br/><br/> <img class="big" style='text-align: center' src="/Disk_Recovery_Articles/Finding_RAID_parameters/Finding_RAID_Parameters_Rec8.png" width="586" height="369" alt="Finding RAID parameters: File pattern"/><br/> <i>Click image to enlarge</i><br/> <b>First file record sector in Disk3. Start of a data block.</b> <br/><br/> What is important: The signature FILE ends with 0, which means that the file record number is not overwritten with a fixup. If it had ended with * (FILE*), we would not have been able to proceed further in our search and would have needed to use another technique.<br/> <br/> The pattern <i>$.M.F.T. (HEX 24 00 4D 00 46 00 54)</i> shows that this is a correct MFT beginning. <br/> Because sector 3,153,792 is closer to our expected value of sector 3,145,728 than to sector 10,241,463, we may assume that Disk3 is the first disk in the RAID.<br/> <br/> To proceed further, we need to keep in mind that a file record in MFT occupies two sectors, and that data is written to a RAID 5 successively, one data block to one disk, then the next data block to the next disk, and a parity block to the third disk. We can represent an example of such a scheme in the following table ...<br/> <table border=1 cellspacing=0 cellpadding=3 class="articles920"> <tr><td width=33% valign=top style='border:solid windowtext 1.0pt'> <b>First RAID disk</b> </td><td width=33% valign=top style='border:solid windowtext 1.0pt'> <b>Second RAID disk</b> </td><td width=33% valign=top style='border:solid windowtext 1.0pt'> <b>Third RAID disk</b> </td></tr> <tr><td width=33% valign=top style='border:solid windowtext 1.0pt'> PD </td><td width=33% valign=top style='border:solid windowtext 1.0pt'> 1 </td><td width=33% valign=top style='border:solid windowtext 1.0pt'> 2 </td></tr> <tr><td width=33% valign=top style='border:solid windowtext 1.0pt'> 3 </td><td width=33% valign=top style='border:solid windowtext 1.0pt'> PD </td><td width=33% valign=top style='border:solid windowtext 1.0pt'> 4 </td></tr> <tr><td width=33% valign=top style='border:solid windowtext 1.0pt'> 5 </td><td width=33% valign=top style='border:solid windowtext 1.0pt'> 6 </td><td width=33% valign=top style='border:solid windowtext 1.0pt'> PD </td></tr> </table> ... where the numbers represent the order in which the data blocks are written to their respective disks, and PD stands for the "parity of data" block.<br/> (This table represents only an example, and the block order may be arbitrary in a general case.)<br/> <br/> Here that means that the file record numbers in MFT will increase by one within one data block. Then the MFT will continue on another disk, where file record numbers will increase by one within its respective data block, the third disk containing the parity block. And so on.<br/> <br/> So, to find the block size, we will look at the file record numbers on this disk to discover the place where they no longer increase by one. This place would mean the end of that data block. Then we will look at other disks to find the disk and the place on it where file record numbers in the MFT resume increasing by one. Then we will look at another disk to find where the MFT continues, and so on.<br/> <br/> Such a search can be done by scrolling down the text in the Editor by two sectors.<br/> <br/> On Disk 3 the data block ends in sector 3,153,919 with file record number 3F 00.<br/> <br/> <img class="big" style='text-align: center' src="/Disk_Recovery_Articles/Finding_RAID_parameters/Finding_RAID_Parameters_Rec9.png" width="586" height="193" alt="Finding RAID parameters: Last file record"/><br/> <i>Click image to enlarge</i><br/> <b>Last file record in Disk3. End of a data block is on the next sector (3,153,919).</b> <br/><br/> Looking at other disks, we find that this MFT continues on Disk 1 in sector 3,153,792 with file record number 40 00 and ends in Sec: 3,153,919 with file record number 7F 00. And so on.<br/> <br/> <img class="big" style='text-align: center' src="/Disk_Recovery_Articles/Finding_RAID_parameters/Finding_RAID_Parameters_Rec10.png" width="586" height="219" alt="Finding RAID parameters: File record in Disk1"/><br/> <i>Click image to enlarge</i><br/> <b>File record continues in Disk1. Start of a data block.</b> <br/><br/> <img class="big" style='text-align: center' src="/Disk_Recovery_Articles/Finding_RAID_parameters/Finding_RAID_Parameters_Rec11.png" width="586" height="220" alt="Finding RAID parameters: End of data block"/><br/> <i>Click image to enlarge</i><br/> <b>Last file record in Disk1. End of the data block is on the next sector (3,153,919)</b> <br/><br/> The final results are represented in the Table below:<br/> <table border=1 cellspacing=0 cellpadding=3 class="articles920"> <tr><td width=33% valign=top style='border:solid windowtext 1.0pt'> <b>Disk1</b> </td><td width=33% valign=top style='border:solid windowtext 1.0pt'> <b>Disk2</b> </td><td width=33% valign=top style='border:solid windowtext 1.0pt'> <b>Disk3</b> </td></tr> <tr><td width=33% valign=top style='border:solid windowtext 1.0pt'> Sec: 3,153,792 Rec: 40 00<br/> Sec: 3,153,918 Rec: 7F 00<br/> Sec: 3,153,919 End of stripe<br/> </td><td width=33% valign=top style='border:solid windowtext 1.0pt'> Sec: 3,153,792 No records<br/> Sec: 3,153,918 No records<br/> Sec: 3,153,919: End of stripe<br/> </td><td width=33% valign=top style='border:solid windowtext 1.0pt'> Sec: 3,153,792 Rec: 00 00<br/> Sec: 3,153,918 Rec: 3F 00<br/> Sec: 3,153,919 End of stripe<br/> </td></tr> <tr><td width=33% valign=top style='border:solid windowtext 1.0pt'> Sec: 3,153,920 Rec: No records<br/> Sec: 3,154,046 Rec: No records<br/> Sec: 3,154,047 End of stripe<br/> </td><td width=33% valign=top style='border:solid windowtext 1.0pt'> Sec: 3,153,920 Rec: C0 00<br/> Sec: Sec: 3,154,046 Rec: FF 00<br/> Sec: 3,154,047 End of stripe<br/> </td><td width=33% valign=top style='border:solid windowtext 1.0pt'> Sec: 3,153,920 Rec: 80 00<br/> Sec: 3,154,046 Rec: BF 00<br/> Sec: 3,154,047 End of stripe<br/> </td></tr> <tr><td width=33% valign=top style='border:solid windowtext 1.0pt'> Sec: 3,154,048 Rec: 00 01<br/> Sec: 3,154,174 Rec: 3F 01<br/> Sec: 3,154,175 End of stripe<br/> </td><td width=33% valign=top style='border:solid windowtext 1.0pt'> Sec: 3,154,048 Rec: 40 01<br/> Sec: Sec: 3,154,174 Rec: 7F 01<br/> Sec: 3,154,175 End of stripe<br/> </td><td width=33% valign=top style='border:solid windowtext 1.0pt'> Sec: 3,154,048 Rec: No records<br/> Sec: 3,154,174 Rec: No records<br/> Sec: 3,154,175 End of stripe<br/> </td></tr> </table> <i>No records</i> mean this is a parity block.<br/> <br/> <img class="big" style='text-align: center' src="/Disk_Recovery_Articles/Finding_RAID_parameters/Finding_RAID_Parameters_Rec12.png" width="586" height="564" alt="Finding RAID parameters: Parity sector"/><br/> <i>Click image to enlarge</i><br/> <b>Example of a parity sector</b> <br/><br/> Looking at the table above, we can find the following parameters:<br/> <br/> Disk order: <br/> First RAID disk Disk3.arc<br/> Second RAID disk Disk1.arc<br/> Third RAID disk Disk2.arc<br/> <br/> Offset: 0<br/> Stripe size: 128 sectors, or 65,536KB (64KB)<br/> Stripe order: (PD stands for Parity of Data)<br/> <br/> <table border=1 cellspacing=0 cellpadding=3 class="articles920"> <tr><td width=33% valign=top style='border:solid windowtext 1.0pt'> <b>First RAID disk</b> </td><td width=33% valign=top style='border:solid windowtext 1.0pt'> <b>Second RAID disk</b> </td><td width=33% valign=top style='border:solid windowtext 1.0pt'> <b>Third RAID disk</b> </td></tr> <tr><td width=33% valign=top style='border:solid windowtext 1.0pt'> 1 </td><td width=33% valign=top style='border:solid windowtext 1.0pt'> 2 </td><td width=33% valign=top style='border:solid windowtext 1.0pt'> PD </td></tr> <tr><td width=33% valign=top style='border:solid windowtext 1.0pt'> 3 </td><td width=33% valign=top style='border:solid windowtext 1.0pt'> PD </td><td width=33% valign=top style='border:solid windowtext 1.0pt'> 4 </td></tr> <tr><td width=33% valign=top style='border:solid windowtext 1.0pt'> PD </td><td width=33% valign=top style='border:solid windowtext 1.0pt'> 5 </td><td width=33% valign=top style='border:solid windowtext 1.0pt'> 6 </td></tr> </table> <br/> Now we can create such a RAID in R-Studio:<br/> <img class="big" style='text-align: center' src="/Disk_Recovery_Articles/Finding_RAID_parameters/Finding_RAID_Parameters_Rec13.png" width="586" height="485" alt="Finding RAID parameters: RAID 5 object created"/><br/> <i>Click image to enlarge</i><br/> <b>RAID 5 object created in R-Studio</b> <br/><br/> R-Studio finds a valid file system on the RAID (Partition 1)<br/> <br/> Double-click Partition 1 to enumerate its files:<br/> <img class="big" style='text-align: center' src="/Disk_Recovery_Articles/Finding_RAID_parameters/Finding_RAID_Parameters_Rec14.png" width="586" height="485" alt="Finding RAID parameters: Folder/File structure found"/><br/> <i>Click image to enlarge</i><br/> <b>Folder/File structure found by R-Studio</b> <br/><br/> R-Studio shows a valid folder/file structure, which is a good symptom. To finally verify that we created the RAID with the correct parameters, you can preview a file. A file for the preview should be larger than the block size * (Number of disks -1). 128KB for our case.<br/> <img class="big" style='text-align: center' src="/Disk_Recovery_Articles/Finding_RAID_parameters/Finding_RAID_Parameters_Rec15.png" width="586" height="441" alt="Finding RAID parameters: Picture preview"/><br/> <i>Click image to enlarge</i><br> <b>Preview of file Picture 236.jpg</b> <br><br> The file is previewed successfully. We have created a RAID with correct parameters. </p> </div></div> <div class="row-blue row-section footer-articles"><div class="section"> <div class="articles-items" id="articles-cols"> <div class="bottom-title">Data Recovery Articles</div> <ul class="bottom-col-left"> <li><a href="https://www.r-studio.com/Data_Recovery_Guide.shtml">Data Recovery Guide</a></li> <li><a href="https://www.r-studio.com/Why_RStudio.shtml">Why R-Studio?</a></li> <li><a href="https://www.r-studio.com/Forensic-and-DataRecovery-Business.html">R-Studio for Forensic and Data Recovery Business</a></li> <li><a href="https://www.r-tt.com/r-studioreview_toptenreviews/">R-STUDIO Review on TopTenReviews</a></li> <li><a href="https://www.r-studio.com/SSD_Recovery.html">File Recovery Specifics for SSD devices</a></li> <li><a href="https://www.r-studio.com/How-to-recover-NVMe-device.html">How to recover data from NVMe devices</a></li> <li><a href="https://www.r-studio.com/Success-of-File-Recovery.html">Predicting Success of Common Data Recovery Cases</a></li> <li><a href="https://www.r-studio.com/Recovery_Overwritten_Data.html">Recovery of Overwritten Data</a></li> <li><a href="https://www.r-studio.com/Emergency_File_Recovery.shtml">Emergency File Recovery Using R-Studio Emergency</a></li> <li><a href="https://www.r-studio.com/RAID_Recovery_Presentation.shtml">RAID Recovery Presentation</a></li> <li><a href="https://www.r-studio.com/RStudio_BrokenComputer.shtml">R-Studio: Data recovery from a non-functional computer</a></li> <li><a href="https://www.r-studio.com/File_Recovery_from_a_Computer_that_Wont_Boot.shtml">File Recovery from a Computer that Won't Boot</a></li> <li><a href="https://www.r-studio.com/Clone_Disks_Before_File_Recovery.shtml">Clone Disks Before File Recovery</a></li> <li><a href="https://www.r-studio.com/Video_Recovery.shtml">HD Video Recovery from SD cards</a></li> <li><a href="https://www.r-studio.com/File_Recovery_from_Unbootable_Mac.shtml">File Recovery from an Unbootable Mac Computer</a></li> <li><a href="https://www.r-studio.com/best-file-recovery-mac-system-disk.shtml">The best way to recover files from a Mac system disk</a></li> <li><a href="https://www.r-studio.com/Data_Recovery_From_Encrypted_Linux_Disk.shtml">Data Recovery from an Encrypted Linux Disk after a System Crash</a></li> <li><a href="https://www.r-studio.com/Data_Recovery_From_DMG_Files.shtml">Data Recovery from Apple Disk Images (.DMG files)</a></li> <li><a href="https://www.r-studio.com/File_Recovery_after_Reinstalling_Windows.shtml">File Recovery after Re-installing Windows</a></li> <li><a href="https://www.r-studio.com/DataRecovery_over_Network.shtml">R-Studio: Data Recovery over Network</a></li> <li><a href="https://www.r-studio.com/RStudio_Network_Package.shtml">How To Use R-Studio Corporate Package</a></li> <li><a href="https://www.r-studio.com/Data_Recovery_After_Reformat_NTFS.shtml">Data Recovery from a Re-Formatted NTFS Disk</a></li> <li><a href="https://www.r-studio.com/ReFS-recovery.html">Data Recovery from an ReFS disk</a></li> <li><a href="https://www.r-studio.com/Data_Recovery_After_Reformat_exFAT.shtml">Data Recovery from a Re-Formatted exFAT/FAT Disk</a></li> <li><a href="https://www.r-studio.com/Data_Recovery_After_Erase_HFS.shtml">Data Recovery from an Erased HFS Disk</a></li> <li><a href="https://www.r-studio.com/data-recovery-after-erase-APFS.html">Data Recovery from an Erased APFS Disk</a></li> <li><a href="https://www.r-studio.com/Data_Recovery_After_Reformat_Ext4FS.shtml">Data Recovery from a Re-Formatted Ext2/3/4FS Disk</a></li> <li><a href="https://www.r-studio.com/XFS-recovery.html">Data Recovery from an XFS Disk</a></li> <li><a href="https://www.r-studio.com/NAS_Data_Recovery.shtml">Data Recovery from a Simple NAS</a></li> <li><a href="https://www.r-studio.com/connect-virtual-raid-to-operating-system.html">How to connect virtual RAID and LVM/LDM volumes to the operating system</a></li> </ul> <ul class="bottom-col-right"> <li><a href="https://www.r-studio.com/ntfs-recovery-after-quick-format.html">Specifics of File Recovery After a Quick Format</a></li> <li><a href="https://www.r-studio.com/data-recovery-after-partition-manager-crash.html">Data Recovery After Partition Manager Crash</a></li> <li><a href="https://www.r-studio.com/file-recovery-vs-file-repair.html">File Recovery vs. File Repair</a></li> <li><a href="https://www.r-studio.com/data-recovery-from-virtual-machines.html">Data Recovery from Virtual Machines</a></li> <li><a href="https://www.r-studio.com/Connect-Disks-to-Computer.html">How to Connect Disks to a Computer</a></li> <li><a href="https://www.r-studio.com/emergency-data-recovery-over-network.html">Emergency Data Recovery over Network</a></li> <li><a href="https://www.r-studio.com/data-recovery-over-the-internet.html">Data Recovery over the Internet</a></li> <li><a href="https://www.r-studio.com/creating-custom-file-type-r-studio.html">Creating a Custom Known File Type for R-Studio</a></li> <li><a href="https://www.r-studio.com/finding-raid-parameters.html">Finding RAID parameters</a></li> <li><a href="https://www.r-studio.com/recovering-partitions-on-damaged-disk.html">Recovering Partitions on a Damaged Disk</a></li> <li><a href="https://www.r-studio.com/remote-recovery-nat-firewall-traversal.html">NAT and Firewall Traversal for Remote Data Recovery </a></li> <li><a href="https://www.r-studio.com/external-disk-recovery.html">Data Recovery from an External Disk with a Damaged File System</a></li> <li><a href="https://www.r-studio.com/file-recovery-basics.html">File Recovery Basics</a></li> <li><a href="https://www.r-studio.com/macos-raid-recovery-parameters.html">Default Parameters of Software Stripe Sets (RAID 0) in Mac OS X</a></li> <li><a href="https://www.r-studio.com/vhd-disk-recovery.html">Data Recovery from Virtual Hard Disk (VHD/VHDX) Files</a></li> <li><a href="https://www.r-studio.com/encrypted-disks-recovery.html">Data Recovery from Various File Container Formats and Encrypted Disks</a></li> <li><a href="https://www.r-studio.com/automatic-raid-detection.html">Automatic RAID Parameter Detection</a></li> <li><a href="https://www.r-studio.com/data_recovery_technology.html">IntelligentScan Data Recovery Technology</a></li> <li><a href="https://www.r-studio.com/Multipass-imaging-damaged-drives.html">Multi-pass imaging in R-Studio</a></li> <li><a href="https://www.r-studio.com/runtime-drive-imaging.html">Runtime Imaging in R-Studio</a></li> <li><a href="https://www.r-studio.com/LinearImaging-vs-RuntimeImaging-vs-MultiPassImaging.html">Linear Imaging vs Runtime Imaging vs Multi-Pass Imaging</a></li> <li><a href="https://www.r-studio.com/USB-Stabilizer-for-unstable-drives.html">USB Stabilizer Tech for unstable USB devices</a></li> <li><a href="https://www.r-studio.com/improve-pc3000-data-analysis.html">Joint work of R-Studio and PC-3000 UDMA hardware</a></li> <li><a href="https://www.r-studio.com/HDDSuperClone-drive-imaging.html">Joint work of R-Studio and HDDSuperClone</a></li> <li><a href="https://www.r-studio.com/pro-data-recovery-and-forensic-for-small-business.html">R-Studio T80+ - A Professional Data Recovery and Forensic Solution for Small Business and Individuals Just for 1 USD/day</a></li> </ul> <div class="clearthis"></div> <ul class="bottom-col-left"> <li class="bottom-title">Backup Articles</li> <li><a href="https://www.drive-image.com/r-drive-image-license-transfer.html">R-Drive Image Standalone and Corporate license transferring</a></li> <li><a href="https://www.drive-image.com/fixing-Windows-update-error-0x80070643.html">Fixing Windows update error 0x80070643 with R-Drive Image</a></li> <li><a href="https://www.drive-image.com/backup_software.shtml">Backup with Confidence</a></li> <li><a href="https://www.drive-image.com/Free-Partition-Manager.html">R-Drive Image as a free powerful partition manager</a></li> <li><a href="https://www.drive-image.com/Computer_Recovery_and_System_Restore.shtml">Computer Recovery and System Restore</a></li> <li><a href="https://www.drive-image.com/Disk_Cloning_and_Mass_System_Deployment.shtml">Disk Cloning and Mass System Deployment</a></li> <li><a href="https://www.drive-image.com/imaged-disk-access.html">Accessing Individual Files or Folders on a Backed Up Disk Image</a></li> <li><a href="https://www.drive-image.com/How-to-use-Startup-Bootable-version.html">R-Drive Image startup / bootable version</a></li> <li><a href="https://www.drive-image.com/backup-files-personal-computers-laptops-of-home-self-employed-users.html">File Backup for Personal Computers and Laptops of Home and Self-Employed Users</a></li> <li><a href="https://www.drive-image.com/data-backup-plan.html">Creating a Data Consistent, Space Efficient Data Backup Plan for a Small Business Server</a></li> <li><a href="https://www.drive-image.com/how-move-installed-Windows-from-HDD-to-SSD.html">How to Move the Already Installed Windows from an Old HDD to a New SSD Device and Create a Hybrid Data Storage System</a></li> <li><a href="https://www.drive-image.com/Moving-Windows-to-New-SSD.html">How to Move an Installed Windows to a Larger Disk</a></li> <li><a href="https://www.drive-image.com/Moving-BitLocker-System-Disk-to-New-Device.html">How to Move a BitLocker-Encrypted System Disk to a New Storage Device</a></li> <li><a href="https://www.drive-image.com/Disk-Backup-Mac-Linux.html">How to backup and restore disks on Linux and Mac computers using R-Drive Image</a></li> </ul> <ul class="bottom-col-right"> <li class="bottom-title">Undelete Articles</li> <li><a href="https://www.r-undelete.com/Get_Deleted_Files_Back/">Get Deleted Files Back</a></li> <li><a href="https://www.r-undelete.com/free_photo_recovery/SD-card-recovery.html">Free Recovery from SD and Memory cards</a></li> <li><a href="https://www.r-undelete.com/free_photo_recovery/undelete-HD-video.html">R-Undelete: Video Recovery</a></li> <li><a href="https://www.r-undelete.com/Damaged_File_System.shtml">Recovery from an External Device with a Damaged File System</a></li> <li><a href="https://www.r-undelete.com/File_Recovery_From_Non-Functional_Computer.shtml">File recovery from a non-functional computer</a></li> <li><a href="https://www.r-undelete.com/Free_File_Recovery_from_Android_Phone_Memory_Card.html">Free File Recovery from an Android Phone Memory Card</a></li> <li><a href="https://www.r-undelete.com/free_photo_recovery/how-to-tutorial/">Free Photo and Video File Recovery Tutorial</a></li> <li><a href="https://www.r-undelete.com/easy-file-recovery-in-three-steps.html">Easy file recovery in three steps</a></li> </ul> <div class="clearthis"></div> <div class="bottom-title">PC Privacy Articles</div> <ul class="bottom-col-left"> <li><a href="https://www.r-wipe.com/computer-privacy-and-identity-theft-protection.html">Computer Privacy and Identity Theft Protection</a></li> <li><a href="https://www.r-wipe.com/disk-cleanup.html">Disk Cleanup: How to free up disk space</a></li> <li><a href="https://www.r-wipe.com/clear-browsers-cache-history.html">Clear Browser Cache, History, and Other Data</a></li> <li><a href="https://www.r-wipe.com/bulk-file-delete-registry-cleaning.html">Wipe lists in R-Wipe&Clean</a></li> <li><a href="https://www.r-wipe.com/maintain-computer-privacy-SSD-storage-device.html">SSD Storage Devices and Computer Privacy</a></li> </ul> <div class="clearthis"></div> </div> <div class="articles-more-container"><span class="articles-more" id="articles-more"></span></div> </div></div> <script type="text/javascript" charset="utf-8"> function onArticlesMore(el) { var cols=document.getElementById("articles-cols"); var more=document.getElementById("articles-more"); if (cols && more) { nodeSwitchClass(cols,"articles-full"); nodeSwitchClass(more,"articles-full"); } } function onArticlesInit() { var more=document.getElementById("articles-more"); if (more) {more.onclick = function(){onArticlesMore(this);};} } </script> <div class="row-blue row-section"><div class="section reviews-col reviews-one"> <div class="bottom-col-right"> <div class="feedbacks-header"> <div class="bottom-title"> Data Recovery Feedback </div> <div class="feedbacks-meta"> <span itemscope itemtype="http://schema.org/LocalBusiness"> <meta itemprop="name" content="www.r-studio.com"> <meta itemprop="url" content="https://www.r-studio.com"> <meta itemprop="description" content="System Utilities - File recovery and Data Recovery Software, Mail recovery, Undelete, Drive Image, Disk Cleaning, Data Undelete, Security tools for Windows, Mac and Linux, R-Tools Technology Inc."> <span itemprop="aggregateRating" itemscope itemtype="http://schema.org/AggregateRating"> <span itemprop="reviewCount">372</span> <a href="/data-recovery-feedback/">feedbacks</a> <br /> Rating: <span itemprop="ratingValue">4.8</span> / <span itemprop="bestRating">5</span> <meta itemprop="worstRating" content = "1"> </span> <meta itemprop="telephone" content="(888) 978-8266"> </span> </div> </div> <div class="feedbacks-wrapper clearfix"> <div class="feedbacks-right"> <a href="https://www.r-tt.com/Feedback.shtml?product=Data%20Recovery" title="Add your input"> <span class="btn-add-big btn-add-white"></span> </a> </div> <div class="feedbacks-left jhscroll-container"> <div class="jhscroll-area feedbacks-scroll-area"><div> <div class="feedbacks-items"> <div class="feedbacks-item"> <div class="feedbacks-text"><div> I have used R-studio with USB Stabilizer,Rapid-spar,Deep spar, Pc3000, MRT.I am thoroughly satisfied.Now i have made head maps to isolate bad heads of hard disk when used with mounted disks. </div></div> <div class="feedbacks-info"> <span class="feedbacks-rating"> <span></span><span></span><span></span><span></span><span></span> </span> <span class="feedbacks-author"> <a href="/data-recovery-feedback/">Simran Arora (Data recovery factory mumbai)</a> </span> </div> </div> <div class="feedbacks-item"> <div class="feedbacks-text"><div> I was completely lost. My Mac seemed to have eaten my 4TB external USB drive - was formatted APFS encrypted. The volume just disappeared while running and I had to reboot and when it came back the volume could not be unlocked / mounted natively. I tried a whole heap of methods (https://github.com/libyal/libfsapfs/, drat and many others) to no avail. R-Studio data recovery was able to recover the entire volume - a complete life saver, worth every cent! </div></div> <div class="feedbacks-info"> <span class="feedbacks-rating"> <span></span><span></span><span></span><span></span><span></span> </span> <span class="feedbacks-author"> <a href="/data-recovery-feedback/">James Haworth-Wood (EADIT Security Solutions)</a> </span> </div> </div> <div class="feedbacks-item"> <div class="feedbacks-text"><div> I really love your R-Studio product, I am doing Data Recovery as a professional, I used RS since the early versions and I loved the product, as far as I can tell, R-Studio, especially the Tech Version (but including the standard) is one of the best and excellent tools for a pro to have in the arsenal of tools in a pro DR lab, especially combining with the specialized Data Recovery hardware providers like DeepSpar, and PC3000, the rest of `wannabees` out there are waste of time, strongly recommend </div></div> <div class="feedbacks-info"> <span class="feedbacks-rating"> <span></span><span></span><span></span><span></span><span></span> </span> <span class="feedbacks-author"> <a href="/data-recovery-feedback/">Michael Avraham (OmniDataPlus Data recovery and repair)</a> </span> </div> </div> <div class="feedbacks-item"> <div class="feedbacks-text"><div> I lost more than 200K files from my NAS due to a mistake. I tried 3 different recovery solutions over the 4 TB raid disks, and all of them performed ok but to be honest none of them were able to Raw recover the files and rename them with meaningful names out of the Metadata like R-TT did, then I was able to sort again my files and pictures and kind of restore all of them. <br /> <br />R-TT may not be the easiest or most user-friendly solution, but the algorithm used for the renaming saved me THOUSAND of hours of opening ... </div></div> <div class="feedbacks-info"> <span class="feedbacks-rating"> <span></span><span></span><span></span><span></span> </span> <span class="feedbacks-author"> <a href="/data-recovery-feedback/">Cesar reyes</a> </span> </div> </div> <div class="feedbacks-item"> <div class="feedbacks-text"><div> Just recovered my old ext4 partition with R-Studio after trying testdisk and R-Linux without success. That partition was overwritten by another ext4 partition and I was losing my hope until I tried R-Studio demo. It detected all my files and directories again! <br /> <br />Bought it and 100% recommend it for anyone with a similar issue. </div></div> <div class="feedbacks-info"> <span class="feedbacks-rating"> <span></span><span></span><span></span><span></span><span></span> </span> <span class="feedbacks-author"> <a href="/data-recovery-feedback/">Edgar Endo</a> </span> </div> </div> </div> </div></div> <div class="jhscroll-bar"><div></div></div> </div> </div> </div> <script type="text/javascript" charset="utf-8"> function scrollGetArea(Container) { if (!Container) return null; var aAreas=nodeFindChildren(Container,".jhscroll-area");if ((!aAreas)||(aAreas.length!=1)) return null; aAreas=nodeFindDirectChildren(aAreas[0],"div");if ((!aAreas)||(aAreas.length!=1)) return null; return aAreas[0]; } function scrollGetBar(Container) { if (!Container) return null; var aBars=nodeFindChildren(Container,".jhscroll-bar");if ((!aBars)||(aBars.length!=1)) return null; aBars=nodeFindDirectChildren(aBars[0],"div");if ((!aBars)||(aBars.length!=1)) return null; return aBars[0]; } function onScrollScroll(ScrlArea,ScrlBar) { if ((!ScrlArea||!ScrlBar)||(ScrlArea.scrollWidth<=0)) return; var iSizePerc=Math.round(ScrlArea.clientWidth*100/ScrlArea.scrollWidth); if (iSizePerc>100) {iSizePerc=100;} if (iSizePerc<10) {iSizePerc=10;} var iLeftPerc=Math.round(ScrlArea.scrollLeft*100/ScrlArea.scrollWidth); if (iLeftPerc+iSizePerc>100) {iLeftPerc=100-iSizePerc;} ScrlBar.style.left=iLeftPerc.toString()+'%'; ScrlBar.style.width=iSizePerc.toString()+'%'; } function onScrollInit() { var aScrolls=nodeFindChildren(document,".jhscroll-container"); if (!aScrolls||!aScrolls.length) return; for(var i=0;i<aScrolls.length;i++) { var ScrlArea=scrollGetArea(aScrolls[i]);if (!ScrlArea) continue; var ScrlBar=scrollGetBar(aScrolls[i]);if (!ScrlBar) continue; onScrollScroll(ScrlArea,ScrlBar); ScrlBar.ondragstart = function() { return false; }; ScrlBar.onmousedown = function(e) { e = e || window.event; if (e.preventDefault) {e.preventDefault();} else {e.returnValue=false;} var ThisBar=this;if (!ThisBar) return; var ThisBarParent=ThisBar.parentNode;if (!ThisBarParent) return; var iBarWidth=ThisBar.offsetWidth; var iBarParent=ThisBarParent.offsetWidth; if (iBarWidth>=iBarParent) return; var ThisScroll=nodeFindParent(ThisBar,".jhscroll-container"); var ThisArea=scrollGetArea(ThisScroll);if (!ThisArea) return; var iOrigX=e.clientX;var iOrigLeft=ThisBar.offsetLeft;var iLastPerc=-1; document.onmousemove = function(e) { e = e || window.event; var iNewLeft=iOrigLeft+e.clientX-iOrigX; if (iNewLeft<0) {iNewLeft=0;} if (iNewLeft+iBarWidth>iBarParent) {iNewLeft=iBarParent-iBarWidth;} var iBarLeftPerc=Math.round(iNewLeft*100/ThisBarParent.offsetWidth); if (iBarLeftPerc==iLastPerc) return false; iLastPerc=iBarLeftPerc; ThisBar.style.left=iBarLeftPerc.toString()+'%'; var iAreaWidth=ThisArea.scrollWidth; var iAreaWindow=ThisArea.clientWidth; if (iAreaWindow>=iAreaWidth) return; ThisArea.scrollLeft=Math.round((iNewLeft/(iBarParent-iBarWidth))*(iAreaWidth-iAreaWindow)); return false; } document.onmouseup = function() { document.onmousemove = null; document.onmouseup = null; } } ScrlArea.onscroll=function() { var ThisScroll=nodeFindParent(this,".jhscroll-container"); var ThisBar=scrollGetBar(ThisScroll);if (!ThisBar) return; onScrollScroll(this,ThisBar); } } } onScrollInit(); </script> </div></div> </div> <div class="ftr-footer-wrapper"> <div class="section ftr-footer"> <div class="footer-wdir"> <ul class="footer-wdir-ul"> <li><a href="https://www.r-tt.com/technology-articles/">Technology articles</a></li> <li><a href="https://www.r-tt.com/Glossary.html">Glossary</a></li> <li><a href="http://directory.r-tt.com/">Web directory</a></li> </ul> </div> <div class="ftr-social-container"> <div class="social"> <a rel="nofollow noopener" target="_blank" href="https://twitter.com/RTT_Inc" class="social-item" title="Twitter"><span class="social-twitter"></span></a> <a rel="nofollow noopener" target="_blank" href="https://www.facebook.com/pages/R-Tools-Technology-Inc/236155899748769" class="social-item" title="Facebook"><span class="social-facebook"></span></a> <a rel="nofollow noopener" target="_blank" href="http://rtoolstechnology.tumblr.com/" class="social-item" title="Tumblr"><span class="social-tumblr"></span></a> <a rel="nofollow noopener" target="_blank" href="https://rtoolstechnology.wordpress.com/" class="social-item" title="Wordpress"><span class="social-wordpress"></span></a> </div> </div> <div> <ul class="footer-nav"> <li id="nfm_1"><a href="https://www.r-studio.com/Terms_Of_Use.shtml">Terms of Use</a></li> <li id="nfm_2"><a href="https://www.r-studio.com/Privacy_Policy.shtml">Privacy Policy</a></li> <li id="nfm_3"><a target="_blank" href="https://www.r-tt.com/RTTInfo.shtml">Contact Us</a></li> <li id="nfm_4"><a target="_blank" href="https://www.r-tt.com/Feedback.shtml">Feedback</a></li> <li id="nfm_5"><a href="https://www.r-studio.com/SiteMap.shtml">Site Map</a></li> <li id="nfm_6"><a target="_blank" rel="noopener" href="https://forum.r-tt.com/viewforum.php?f=13">R-Studio Forum</a></li> </ul> </div> <div class="clearthis"></div> <div class="footer-copyright"> © Copyright 2000-2024 R-Tools Technology Inc. </div> </div> </div> </div> </div> </div> <script type="text/javascript" charset="utf-8"> function removeMediaQueries() { var minWidth=982; document.body.setAttribute("style","min-width: "+(minWidth+8).toString()+"px;"); var styleSheets = document.styleSheets;if (!styleSheets) return; for (var i = 0;i<styleSheets.length;i++) { var cssRules = styleSheets[i].cssRules;if (!cssRules) continue; for (var j = 0;j<cssRules.length;j++) { if (!(cssRules[j] instanceof CSSMediaRule)) continue; var n=cssRules[j].media.mediaText.indexOf("max-width:");if (n<=0) continue; n=parseInt(cssRules[j].media.mediaText.substring(n+10));if ((n<=0)||(n>minWidth)) continue; cssRules[j].media.mediaText = "(max-width:1px)"; } } } function onFlexDetect() { var fbd_doc = document.body || document.documentElement;var fbd_style = fbd_doc.style; if (!(fbd_style.webkitFlexWrap == '' || fbd_style.msFlexWrap == '' || fbd_style.flexWrap == '' )) { var hdr=document.getElementById("hdr-hdr"); if (hdr) { hdr.className+=" no-flex"; removeMediaQueries(); } } } onFlexDetect(); </script> <script type="text/javascript" charset="utf-8"> function onMenuInit() { if(document.getElementById('menu-main')) { var menu = document.getElementById('menu-main'), menuContainer = document.getElementById('menu-container'), menuItems = nodeFindChildren(menu,'.menu-item'), menuTitle = nodeFindChildren(menu,'.menu-title'), menuBtn = nodeFindChildren(menuContainer,'.menu-button'); // show menu function showMenu() {nodeAddClass(menuContainer,'show-menu');} // hide menu function hideMenu() {nodeDelClass(menuContainer,'show-menu');} // menu button function clickButton(_this) { if(nodeHasClass(_this,'active')) { nodeDelClass(_this,'active'); nodesDelClass(menuItems,'active'); hideMenu(); } else { nodeAddClass(_this,'active'); showMenu(); } }; for(var i=0;i<menuBtn.length;i++) {menuBtn[i].onclick = function(){clickButton(this);};} // click on menu function clickItem(_this) { if(window.innerWidth < 982) { var _par = _this.parentNode; if (nodeHasClass(_par,'menu-item-wrap')) {_par=_par.parentNode;} if(nodeHasClass(_par,'active')) { nodeDelClass(_par,'active'); } else { var Siblings = _par.parentNode.childNodes; for(var i=0;i<Siblings.length;i++) { if ((Siblings[i].nodeType!=1)||(Siblings[i]==_par)) continue; nodeDelClass(Siblings[i],'active'); } nodeAddClass(_par,'active'); } } }; for(var i=0;i<menuTitle.length;i++) {menuTitle[i].onclick = function(){clickItem(this);};} // close adaptive menu on events function closeAdaptiveMenu() { if(nodesHasClass(menuBtn,'active')) { hideMenu(); nodesDelClass(menuBtn,'active'); } if(nodesHasClass(menuItems,'active')) { nodesDelClass(menuItems,'active'); } } // click outside adaptive menu if (document.addEventListener) { document.addEventListener('mouseup', function(e) { if((window.innerWidth < 982) && !(menuContainer === e.target) && !hasSpecifiedChild(menuContainer,e.target) ) { closeAdaptiveMenu(); } }); } // process window resize, for off of open dropdown in case of mobile->desktop if (window.addEventListener) { window.addEventListener('resize', function() { if(window.innerWidth > 982) {closeAdaptiveMenu();} }); }; } } onMenuInit(); </script> <script type="text/javascript" charset="utf-8"> if (typeof onImgBigShowInit !== 'undefined') {onImgBigShowInit();} if (typeof onArticlesInit !== 'undefined') {onArticlesInit();} if (typeof onReviewsInit !== 'undefined') {onReviewsInit();} if (typeof onOsTabsInit !== 'undefined') {onOsTabsInit();} </script> <div id="pp-info"> <ul> <li> We use cookies to ensure you get the best experience on our website. <a href="https://www.r-studio.com/Privacy_Policy.shtml" target="_blank">Read more</a> </li> <li> <a id="pp-done">Got It</a> </li> </ul> <img id="pp-info-0" alt="" /> <img id="pp-info-1" alt="" /> <img id="pp-info-2" alt="" /> <img id="pp-info-3" alt="" /> <img id="pp-info-4" alt="" /> <img id="pp-info-5" alt="" /> </div> <script type="text/javascript" charset="utf-8"> function getCookie(cname) { var name = cname + "="; var decodedCookie = decodeURIComponent(document.cookie); var ca = decodedCookie.split(';'); for(var i = 0; i <ca.length; i++) { var c = ca[i]; while (c.charAt(0) == ' ') { c = c.substring(1); } if (c.indexOf(name) == 0) { return c.substring(name.length, c.length); } } return ""; } function setCookie(cname, cvalue, exdays) { var d = new Date(); d.setTime(d.getTime() + (exdays*24*60*60*1000)); var expires = "expires="+ d.toUTCString(); document.cookie = cname + "=" + cvalue + ";" + expires + ";path=/"; } function pingCookie(strId,aDomains,strGif) { for(i=0;i<aDomains.length;i++) { var strImgId=strId+"-"+i; document.getElementById(strImgId).src=aDomains[i]+strGif; document.getElementById(strImgId).style.display = ""; } } </script><script type="text/javascript" charset="utf-8"> var strPpCookie="r_pp_v1"; var strPpDoneGif="r_pp_v1_ji8s9nde.gif"; var aPpDomains=["https://secure.r-tt.com/","https://www.r-tt.com/","https://www.r-studio.com/","https://www.r-undelete.com/","https://www.r-wipe.com/","https://www.drive-image.com/"]; function onPpInfoDone() { document.getElementById("pp-info").style.display = "none"; setCookie(strPpCookie,"1",3650); pingCookie("pp-info",aPpDomains,strPpDoneGif); } function onPpInfoShow() { var pp_cookie = getCookie(strPpCookie); if (pp_cookie == "") {document.getElementById("pp-info").style.display = "block";} } document.getElementById("pp-done").onclick = onPpInfoDone; setTimeout(function(){onPpInfoShow();},1500); </script> <script type="text/javascript" charset="utf-8"> var strSeCookie="r_se_v1"; var strSeDoneGif="r_se_v1_ji8s9nde.gif"; var aSeDomains=["https://www.r-tt.com/","https://www.r-studio.com/","https://www.r-undelete.com/","https://www.r-wipe.com/","https://www.drive-image.com/"]; function onEventInfoDone() { nodeDelClass(document.getElementById("hdr-wrapper"),"special-event") setCookie(strSeCookie,"1",12); pingCookie("pp-info",aSeDomains,stSepDoneGif); } function onEventInfoShow() { var se_cookie = getCookie(strSeCookie); if (se_cookie == "") {nodeAddClass(document.getElementById("hdr-wrapper"),"special-event");} } if (document.getElementById("event-done")) { var iSecurePos=window.location.href.indexOf("secure."); if (iSecurePos<0) { document.getElementById("event-done").onclick = onEventInfoDone; setTimeout(function(){onEventInfoShow();},1000); } } </script> </body></html>