Disk 2 - Dynamisk -Ogiltigt, disk verkar vara kass vad göra?

Permalänk
Medlem

Disk 2 - Dynamisk -Ogiltigt, disk verkar vara kass vad göra?

Jag har lite diskar över från ett äldre datorbygge som blivit slaktat med åren.
Jag har 2 SSD och 2 HDD som blivit över. Min HDD och bägge SSD gick att koppla in i min nuvarande dator och flytta över filer som jag ville spara innan jag formaterade dessa. Nu har jag en 500gb, tillverkad 2011, som jag inte får liv i. I Diskhanteringen i windows är disken markerad som "Dynamisk Ogiltigt". Kan jag komma åt filerna på denna disk? Jag är nästan säker (uteslutningsmetoden) på att det är denna disken är den disk jag hade mina gamla bilder och musik på.

Jag laddade ner Wondershare Recover IT och började pilla runt där. Men jag kan inte hitta disken i det programmet, tror jag. Har en runda som tuggar på just nu och är ca 60% klar. Får se om den ger något resultat.
Jämfört med min andra HDD så låter denna betydlig mycket mer. Bägge är WD blue diskar. Kan kanske vara så att den här äldre disken har gett upp helt?

Ytterst tacksam för hjälp.

Permalänk
Medlem

Tydligen en betaltjänst den här Recover IT. Det kunde den ju sagt innan man fick genomlida en halvtimmes sökande. Verkar dessutom inte vara rätt. Enligt sökresultatet så hittade den 110 000 förlorade filer på C: ,men det är ju inte där jag vill att den ska leta.
Bläddrade igenom många av .jpg filerna den fann och det verkar inte vara vad jag söker efter.

I Diskhanteringen kan jag högerklicka och få två alternativ "reaktivera disk" -fungerade inte, den här åtgärden är inte tillåten. Och alternativ "konvertera till standarddisk" men då varnar den för att disken blir rensad i den formateringen. Och det vill jag ju inte.

Permalänk
Medlem

Precis sådana saker som gör att jag skyr MS hittepå med olika virtuella diskar i en frestande form så att noob börja använda dem utan att förstå vad man ger sig in i - det finns en framtid också när ingen längre kommer ihåg hur det en gång var uppsatt eller om det var beroende mellan flera diskar...

Vet du om detta var en ensam disk eller om det tillhörde en diskset med flera diskar och datat kanske är stripat över flera enheter, även om det är som jbod så kan $MFT vara på den andra, nu icke existerande disken och det du ser är datadelen som identifieras nu med programmet letade efter med magic-word och hoppas på att filerna ligger sekventiellt.

ha i minnet att MS kan totalt scrappa diskarna så fort det pluggas in pga missiriktade aktiviteter av 'chkdsk' som körs dolt när man kopplar in en ny disk.

---

innan du börja med proffessiella diskräddningstool (betalvara) som R-studio mfl.

först ett par USB-diskar som är beytdligt större än den disken du skall jobba med - helst med marginal dubbel större för den disken man skall jobba på och så en för backup av diskimage för disken som du har problem med.

de flesta av programmen som man hittar för diskmanipulering och forensic bygger på linuxplattform vare sig man gillar det eller inte.

det beror på att linux/unix har ett naturligt förhållade där man betrakta diskar som en blockenhet som man läsa och skriva direkt som om det vore filer även utan filsystem alls på dem - något som är krångligt göra likadant i windows-världen

med andra ord.

först gör du en backupkopia av den disken du har krångel med - man jobbar aldrig på disk man har problem med - bara på dess diskimagekopia,

man starta en linux på en USB-sticka typ https://www.system-rescue-cd.org/Download/

lägger det på en USB-sticka med typ rufus som hjälp och boota upp din dator där du helst har ingen disk alls inmonterad (och disken du har problem med i en USB-docka som kan senare anslutas, liksom dina externa USB-diskar som du skall arbeta med

när det hela är uppstartad (och du har valt rätt nation på tangentbord...)

börja med 'lsblk <enter>' (efter förutsätts alltid <enter> efter varge kommandorad)

där bör bara 'sda' finnas om du bara hade USB-stickan som du startade upp på.

anslut den USB-disken som du lägga diskimage för backup på.

när det startat upp och man provar med 'lsblk'

så har förmodligen en sdb och en sdb1 dykt upp.

montera sdb1 (som är partionen på disken) med:

'mount /dev/sdb1 /mnt'

med 'cd /mnt/' och 'ls' bör du se eventuella filer på din disk om den hade några sedan innan, jag bruka köra 'mc' för bekvämlighet och med ctrl-o växlar man mellan paneler och terminal

därefter koppla in disk med problem (i USB-dockan)

när det hela varvat upp bör med 'lsblk' dykt upp en sdc och kanske sdc1, sdc2 om det är flertal partitioner.

nu gör vi dock en heldisk-backup - inte partitioner _om_ den finner några partitioner, det görs på den disken som är minst av dina två USB-diskar men skall ändå rymma hela problematiska diskens storlek

detta görs med ddrescue då den är en smula barnsäker mot fatala misstag.

nu kopierar vi hela den trubbliga disken från först till sista sektor till USB-disken som en fil.

'ddrescue /dev/sdc /mnt/diskimage_av_sdc /mnt/logfil_sdc'

nu kommer det vara progress och det kommer ta ett tag - kanske hel dag om disken är på flera TB storlek.

---

när det är klart skall du ta bord USB-disken och lägga undan denna - det är en backup!!

det innan borttagande görs med:

'cd /'

'umount /mnt'

kolla med lsblk

'lsblk'

att disken sdb inte är kopplad till någon mapp

ryck ur sladden för den externa disken och lägg undan denna

nu tar du den stora USB-disken disken - om trubbliga disken är 2TB så bör denna arbetsdisken vara på minst 6TB ledig utrymme, kan gå med 4 TB men...

gör samma procedur som ovan, dvs.

lsblk ; om sdb har kommit tillbaka eller nya disken heter sdd och sdd1 - vi antar att nya USB-disken döptes till sdd

mount /dev/sdd1 /mnt

ls /mnt/* ; bör se enstaka filer här

'ddrescue /dev/sdc /mnt/diskimage_av_sdc /mnt/logfil_sdc'

vänta troligen minst halvdag innan det är klart om stor disk

när det är klart, koppla ur USB-dockan med sladd - behövs inte mer i övningen (den är inte monterad och därmed inget extra innan borttagandet)

imagen kan man prova flera olika sätt om man hittar en windows filsystem även om den inte finns synlig i partitionstabellen

det första man kan prova är med 'file'

file /mnt/diskimage_av_sdc

/mnt/diskimage_av_sdc: DOS/MBR boot sector MS-MBR XP english at offset 0x12c "Invalid partition table" at offset 0x144 "Error loading operating system" at offset 0x163 "Missing operating system", disk signature 0x4766211d; partition 1 : ID=0x7, active, start-CHS (0x3ff,254,63), end-CHS (0x3ff,254,63), startsector 1024, 407616001 sectors

sista raden är det intressanta och dess startsektor 'startsector 1024' måste multipliceras med 512, mount vill ha i antal byte offset då det är 512 byte/sektor vilket blir 524288 byte i offset.

men innan mount måste vi skapa en mapp att montera diskimagen emot

'mkdir /mnt1'

prova att montera partionen i readonly mode. - om NTFS är nedstängd 'dirty' (dvs inte hållt skift nere när man stänger av windows så är filsystemet öppet och då vill det inte montera i read/write)

mount -t ntfs /mnt/diskimage_av_sdc /mnt -o loop,offset=524288,ro

om allt fungerar bra så kommer du att hitta dina filer under /mnt1 och kan
flytta dessa till tex. /mnt/ - görs enklast med 'mc'

---

Är partitionen borta eller det hela är förskjutet i någon ytterligare partitions-kapsling för den virtuella filsystemet och man vet att ntfs förhoppningsvis finns där någonstans - så kan man försöka leta efter starten på ntfs-filsystemet

då kan man med cat och grep försöka hitta ett magic number "NTFS " - observera att 4 mellanslag ingår i magick number efter NTFS (försvinner i forum-visningen)

cat /mnt/diskimage_av_sdc | grep -a -o -b "NTFS "

fösta träffen bruka gå ganska fort och ser liknande:

524291:NTFS
126677916:NTFS
314879600:NTFS
535166206:NTFS
535226276:NTFS
1174170136:NTFS

ser man på tex https://en.wikipedia.org/wiki/NTFS en bit ned under rubriken "Partition Boot Sector (VBR)"

så ser man att 'N' i "NTFS " är på position 0x03. - alltså fjärde positionen från starten av NTFS-filsystemet och skall backas 3 steg för position 1 (0x00)

det betyder att "524291:NTFS" som var den första raden som spottades så skall dess byte-värde minskas 3

dvs 524291 - 3 = 524288 - en siffra vi känner igen från tidigare i texten och kan då monteras med

mount -t ntfs /mnt/diskimage_av_sdc /mnt -o loop,offset=524288,ro

precis som innan.

hittar man inte någon 524291:NTFS utrapporterat när man kör

cat /mnt/diskimage_av_sdc | grep -a -o -b "NTFS "

trots att man kört igenom hela diskimagen så är prognosen extremt låg att hitta någon duglig NTFS-filsystem i diskimagen och då likaså med någon kommersiell diskräddningsprogram.

dock kan man prova med lite program liknande

https://eforensicsmag.com/extracting-data-damaged-ntfs-drives...
https://www.caine-live.net/

bara tagen hur högen när det gäller forensic-paket när man skall gräva på diskar - de flesta ligger på linux och att skriva olika kommandon i terminal... vill man klicka och dra i gui i windows så är det kommersiella diskräddningsprogram som gäller och det är ingen garanti att de lyckas bättre heller - det finns många med olika kvalitet och att prova och betala för var och en blir lätt dyrt...

när det är klart så kan man avmotera filerna med umount /mnt och umount /mnt1

och sedan stänga av datorn och ta ut sin USB-bootsticka - koppla in de vanliga diskarna och radera diskimagefilerna när man bedömmer att det inte behövs längre

Permalänk
Medlem
Skrivet av xxargs:

Vilken hjälte du är, som klockan sex på morgonen sitter och skriver detta monstruösa inlägg för att hjälpa mig.
Jag får extremt dåligt samvete efter att jag läst nästan hela ditt inlägg inser att detta är inget jag kommer våga mig på. Jag kände att jag var med fram till att jag skulle skaffa en usb-sticka med Linux på. Sen efter det förstod jag inte jättemycket.

Förlåt för att du lade ner den tiden du gjort och att jag inte tar till vara på den hjälp du givit. Men det här är långt över mina kunskaper.

Permalänk
Medlem

Så mycket över dina kunskaper är det inte - försökt skriva det mer som recept på en maträtt du aldrig har gjort förr....

Det är inget som inte går att lära sig utan det handlar främst om att våga!- - prova på annan disk med oviktig data först så att du ser att det verka fungera!!

Jobbar du på en diskimage (det kan tas ut med andra program än under linux om det känns bättre och sedan kopiera diskimagen du skapade till din arbetsdisk) - så kan du klanta hur mycket du vill och det är bara att kopiera från backupimagen igen - dock är beskrivningen som skrivs och om du följer det tänkt för största möjliga säkerhet av den ursprungliga datat - därför myckna kopierandet i första delen med dubbel backup.

Varför dubbelt upplaga beror på att i andra sammanhang så har man kanske bara en enda chans att läsa från orginaldisken om den är väldigt risig (och ddrescue är mycket bra på att mjölka trötta diskar med mycket läsfel om man läge in lite extra flaggor - det enda den inte kan automatiskt hantera är om disken hänger sig var gång den åker in i fel (som WD-RED och olika SSD/NVMe) utan måste hjälpa manuellt med fysisk ström av och påslag på disken och det gäller att man skaffar sig bra vanor redan från början när man skall börja innehållsrädda corrupta diskar.

Har tvingats från och till gräva djupt i den här typen av problem och det finns en anledning varför jag ogillar NTFS och anser den bräcklig och då speciellt i samband i användning med externa USB-diskar och med dessa mer eller mindre buggiga USB/SATA-kontroller från främst jmicron i WD-book och WD-element...

just länken https://eforensicsmag.com/extracting-data-damaged-ntfs-drives... såg mycket intressant där man försöker bygga tillbaka NTFS-filsystemet från grenarna mot roten är mycket intressant - ett scenario som förekommer rätt ofta även här i forumet att man formaterat om en disk med viktig data av misstag - det är något jag hade behövt för många år sedan på just extern USB-disk där hela roten wipades pga. buggbeteende i USB/SATA-adapern i WD-BOOK i samband med en avmontering i windows enligt instruktion (windows skickade avstängningskommandot av USB-disken för snabbt efter att man uppdaterat filsystemets headrar när denna stängdes och första klustret av $MFT och $MFTMirr fylldes med slumpvärden - detta gjorde ont på riktigt - två 4K-block överskrivna med slump och man förlorade hela disken i en nivå som inte ens R-studio kunde få ut någon meningsfullt ur...)

Skall man lagra backupdata på extern USB-disk så skall det helst inte göra det på NTFS-filsystem, men från windows är det inte mycket alternativ tyvärr...

Själv lägger jag allt i backupväg på BTRFS-filsystem idag då jag har plågat den mycket med fula avstängingar, glappa sladdar på USB och nätsidan under full skrivning och hittills har jag inte lyckats knäcka filsystemet så att den inte är monteringsbar längre - NTFS är enda filsystemet jag förlorat massiva mängder data på...

---

notering

MS använder sina egna VHD och VHDX även för att göra systembackup mm. och använder man VHDx format (som är vanliga i VM) även i virtuell filsystem så kommer inte ovanstående beskrivning att fungera lika bra - det beror på att även om header mm är rätt för NTFS så har övergripande systemet som kapslar in NTFS inte skrivit något data på disken för 'ledig utrymme' på den tänkta filsystemet och det hela är packat och heller inte i linjär ordning - snarare som en journal allt eftersom sektorer som allokerats när NTFS inne i VHD har skrivit nya sektorer. - försöker man montera en sådan framletad NTFS-header i en VHD-file med mount med offset så kommer det snabb att bli väldigt fel. man måste ha en wrapper som förstår vhd och vhdx-formatet och kan expandera den ingående NTFS rätt och i rätt ordning för dess sektorer.

Unix/linux har också den här funktionen på filer och kallas 'sparse' eller att filen har 'holes' - data som ännu inte är skrivet inom filen (och tex skrivningen söks fram och tillbaka med 'lseek' som tex torrent-nedladdning gör) så tar det inte plats på disken - dvs öppnar man en fil i tex ett C-program - med lseek söker sig 1 TB bort - skriver lite data i slutet och sedan stänger filen så kommer den inte vara mer än några 4 kb stor upptagen plats på disken i förbrukad utrymme fast 'ls' säger att disken är 1 TB stor i storlek, och att det går att göra även om fysiska disken bara är 240 GB-stor.

När man har det bekymret med komprimerad VHD och VHDX-filer (som kan vara gömd i en partition för virtuell fil) så får man leta fram i linux speciella programpaket som hanterar VHD(x)-filer som "sudo apt-get install libguestfs-tools" eller liknande - det som är knepigt är att hitta startpunkten på dessa i en anonym partition/filkropp - men cat och grep som tidigare skrivet och man vet vilken magic number de börja med så är det möjligt och sedan kan man klippa ut med 'dd' till en separat (VHD)fil som man sedan försöker montera med 'guestmount'

som sagt man får leta och forska lite - leta med google efter tips och om andra har gjort liknande övningar redan kanske har färdiga script.