Chciałbym zrozumieć, co tak naprawdę usuwa formatowanie.
Podczas uruchamiania komputera pojawia się coś przypominającego DOS. Nie można tego zapisać na dysku twardym? Gdzie to jest wtedy przechowywane?
Czytałem, że na dysku twardym znajduje się sektor rozruchowy. Czy po sformatowaniu jest na nim trochę resztek? Czy to naprawdę kończy się z 0 bajtów na dysku?
hard-drive
formatting
Chatai
źródło
źródło
chkdsk /b
.Odpowiedzi:
To naprawdę trzy różne pytania, z długą, trudną drogą do pełnego zrozumienia.
Pozwól mi spróbować skompresować to do mniejszych, prostszych pomysłów ...
Pomyśl o dysku twardym jak o książce z indeksem z tyłu, aby szybko wyszukać odpowiednie sekcje. Następnie usuń indeks. Książka jest nadal czytelna, ale tylko w bardziej liniowy sposób. Trudniej jest znaleźć odpowiedni rozdział, ale nie jest to niemożliwe.
Jeśli szybko sformatujesz dysk, wszystko, co naprawdę robisz, to usunięcie „indeksu” - wszystkie rzeczywiste dane nadal tam są. W tym momencie, gdyby cokolwiek próbowało zapisać na dysk, nie „wiedziałby”, że istnieją tam stare dane, a więc zbudowałby nowy „indeks” i zapisałby na starych danych.
Pełny format nadpisuje same dane - choć nadal można je odzyskać za pomocą zaawansowanych technik.
Kiedy uruchamiasz komputer z wyczyszczonym lub całkowicie pustym dyskiem twardym, widzisz niewielki system operacyjny (właściwie samodzielny program, ale działa jak mały system operacyjny, zgodnie ze wszystkimi celami i celami), który jest przechowywany na rzeczywistym sprzęcie komputerowym , nie na samym dysku twardym - co po prostu mówi maszynie, gdzie szukać instrukcji.
Sektor rozruchowy jest małym sektorem dysku twardego, który zawiera instrukcję informującą komputer, gdzie szukać następnego systemu w pełni rozruchowego.
źródło
Tutaj są 3 pytania.
Odnośnie formatowania: Istnieje kilka metod formatowania. Jeden nazywa się szybkim formatem. Wystarczy zaznaczyć partycję sformatowaną jako pustą bez faktycznego usuwania danych. Normalny format oznaczy partycję jako pustą, a ponadto zapisze zero na całej partycji. Nadal pozwoli to niesformatowanemu programowi odzyskać dane, ale zajmie to więcej czasu. Są też programy, które mogą bezpiecznie wyczyścić dysk, zapisując na nim wiele losowych danych w więcej niż jednym cyklu, co utrudnia niesformatowanym programom odzyskiwanie danych.
Należy pamiętać, że po sformatowaniu dysku i wyświetleniu go jako pustego (nawet przy użyciu metody szybkiego formatowania) po rozpoczęciu zapisywania danych, dane zostaną zastąpione w miejscu, w którym dane były wcześniej przechowywane. Utrudni to przywracanie danych przez przywrócony program.
Następnie ekran tekstowy, który widzisz po uruchomieniu komputera, nazywa się BIOS. BIOS (Basic Input Output System) to system operacyjny, który komunikuje się ze sprzętem i umożliwia systemowi Windows lub innemu systemowi operacyjnemu interakcję ze sprzętem. Biorąc pod uwagę, że czasami trzeba ustalić, kiedy sprzęt umiera, BIOS ma interfejs tekstowy i program SETUP do interakcji z nim. Ten interfejs tekstowy jest widoczny podczas uruchamiania komputera. Należy pamiętać, że większość BIOSów ma funkcję wyświetlania obrazu, aby nie mylić użytkownika.
Bootsector dysku twardego to określone miejsce na dysku twardym, które zmienia się tylko podczas zmiany partycji. Bootsector określa, z której partycji należy uruchomić komputer, jeśli spróbujesz uruchomić komputer z tego konkretnego dysku twardego. Formatowanie NIE wpływa na sektor rozruchowy. Zmiana tylko sektora rozruchowego sprawi, że dysk twardy będzie działał poprawnie, z wyjątkiem tego, że nie można go uruchomić.
źródło
"The bootsector basically is a config file"
- może na systemach (U) EFI / GPT? W systemach opartych na MBR przynajmniej sektor rozruchowy zawiera kod. (Fakt, że istnieje konfiguracja, jest raczej zależny od kodu na początku sektora.)Gdy komputer „formatuje” dysk lub partycję, oznacza to utworzenie woluminu systemu plików. „Wolumin” jest w zasadzie miejscem przechowywania plików; w przypadku starych dyskietek cały dysk był w zasadzie woluminem. W przypadku dysków twardych wolumin był przechowywany na partycji, a jeden dysk może mieć wiele partycji (co oznacza, że miałby wiele woluminów).
Zasadniczo formatowanie kończy się tworzeniem pustej tabeli. Kiedy mówię „tabela”, możesz pomyśleć o wykresie z wierszami i kolumnami. Każdy wiersz odnosi się do nazwy pliku. Każda kolumna identyfikuje fragment pliku. Na przykład „pierwszy fragment tego pliku znajduje się w sektorze 1000”. „Drugi fragment tego pliku znajduje się w sektorze 2000”. Proces formatowania tworzy pustą tabelę, a następnie ta tabela jest wypełniana podczas tworzenia plików. W systemie DOS typ systemu plików został nazwany na podstawie tej tabeli, która została nazwana „tablicą alokacji plików”.
Jeśli nie martwisz się o stare dane i kto może uzyskać dostęp do starych danych (co może być problemem, jeśli dane te są poufne / wrażliwe), najlepiej jest zrobić „szybki format”, który po prostu tworzy minimalne szczegóły dla woluminu systemu plików, który śledzi pliki. Jeśli masz wybór między formatem „minimalnym” / „szybkim” a formatem „pełnym” / „rozszerzonym”, wówczas ten drugi format może zrobić coś z każdym sektorem dysku, który jest częścią woluminu systemu plików. Może to oznaczać usunięcie każdego sektora lub po prostu wykonanie innej kontroli, aby upewnić się, że sektor jest fizycznie użyteczny.
Podobnie jak odpowiedź LPChip , zakładam, że masz na myśli proces „uruchamiania systemu”. Na starszych komputerach nazywało się to zwykle Podstawowym systemem wejścia / wyjścia, w skrócie BIOS. Istnieją pewne standardy dotyczące działania systemu BIOS, aby oprogramowanie komputerowe (takie jak system operacyjny) mogło wchodzić w interakcje z częściami komputera. Wiele nowszych systemów korzysta z nowszego standardu, zwanego (U) EFI ((Unified) Extensible Firmware Interface). Nie znalazłem żadnego terminu, który przemysł szeroko używał do opisania zarówno BIOSu, jak i (U) EFI, więc właśnie wymyśliłem termin „uruchomienie systemu”.
Głównym powodem, dla którego uważam, że możesz nazywać to „przypominającym DOS”, jest użycie trybu tekstowego. (Dobry stary CP437 !) Jednak z tego, co przeczytałem, miałem wrażenie, że (U) EFI można kontrolować za pomocą wiersza poleceń (być może za pomocą tylko niektórych implementacji).
Jest to zwykle przechowywane całkowicie w niektórych układach scalonych. W starszych systemach były to ROM (pamięć tylko do odczytu). Jednak gdy nowa technologia (np. Większe dyski twarde) stała się niezgodna z układami, ludzie musieli fizycznie wymienić układy, aby obsługiwać nowszą technologię. Pod koniec lat 90. ludzie zaczęli używać zapisywalnej pamięci, którą często nazywali „pamięcią flash”. Pamięci takiej nie należy zapisywać zbyt często.
Gdy zmienisz opcje konfiguracji w tym oprogramowaniu do uruchamiania systemu, szczegóły konfiguracji zostaną zapisane w innej pamięci, zwanej zwykle CMOS. To niewielka pamięć (inna niż pamięć RAM), przechowywana na płycie głównej.
Systemy używające standardu BIOS sprawdzałyby dyski twarde, aby sprawdzić, czy 511 i 512 bajty zawierają następujące bity: 0101 0101 1010 1010
Jeśli tak, dysk uznano za „bootowalny”, a BIOS powiedziałby procesorowi, aby zaczął postępować zgodnie z instrukcjami umieszczonymi na pierwszym bajcie dysku. Pierwsze 512 bajtów dysku nazwano „Master Boot Record” („MBR”). Kod przechowywany w MBR musiał być raczej mały, ponieważ 511-ty bajt musiał mieć postać 01010101, jeśli komputer miał się uruchomić. W rzeczywistości większość tego kodu rozruchowego zrobiłaby sprawdzenie bajtów od 447 do 510 za pomocą standardu zwanego „tablicą partycji”. Bajty w tej tabeli określałyby, gdzie była partycja (lub więcej niż jedna partycja). Zwykle pierwsza partycja uruchamia się na drugim cylindrze dysku twardego. (W przypadku starych dysków twardych termin „cylinder” odnosi się do fizycznej właściwości dysku twardego.
(U) EFI jest nieco bardziej skomplikowany, ponieważ rozumie bardziej skomplikowaną strukturę GPT.
W każdym razie formatowanie nie ma z tym nic wspólnego. Formatowanie jest powiązane z danymi w partycji (często zaczynającymi się od drugiego cylindra, który często był nazywany cylindrem numer 1, ponieważ pierwszy cylinder był często nazywany cylindrem numer zero). Dlatego formatowanie nie powinno wpływać na początkowy kod rozruchowy używany przez MBR na dysku. Formatowanie może jednak wpłynąć na kod, którego komputer próbuje użyć po wykorzystaniu danych MBR.
Masz na myśli 0 zużytych bajtów? Absolutnie nie. Na dysku są zużyte absolutnie bajty. Partycja przechowuje wolumin systemu plików, który zawiera tabelę, która będzie używana do śledzenia nazw plików i miejsca przechowywania fragmentów pliku. Zwykle istnieją inne szczegóły, takie jak „etykieta” (która jest nazwą, którą można przypisać do woluminu systemu plików). To powinna być stosunkowo niewielka ilość danych na dysku, ale jest to część dysku, która się zużywa.
Gdy pytasz system operacyjny, ile bajtów jest dostępnych, systemy operacyjne zwykle informują, ile bajtów można wykorzystać do przechowywania plików. Są to dane, którymi interesuje się większość ludzi. System operacyjny nie zgłasza bajtów używanych do przechowywania tabeli plików ani bajtów poza partycją (np. MBR).
Ponieważ jednak tabela jest pusta, wszystkie bajty, które mogą przechowywać fragmenty plików, są dostępne, a zero z nich jest zużyte. Zawartość starych plików może znajdować się na dysku, jeśli dysk został szybko sformatowany. (Program taki jak TestDisk może pomóc w znalezieniu takiej zawartości.) Jednak gdy poprosisz system operacyjny o zapisanie nowej zawartości w nowych plikach, system operacyjny użyje tych obszarów dysku (ponieważ tabela nie mówi, że te obszary dysku przechowujemy fragmenty plików, które są dla nas ważne). Tak więc stare dane mogą zostać zastąpione nowymi danymi (co spowoduje, że TestDisk będzie w stanie odzyskać te stare dane, kiedy to nastąpi). Pamiętaj, że nawet jeśli zawartość plików zostanie zapisana, szczegóły takie jak nazwy tych plików mogły zostać zastąpione podczas formatowania dysku. (Mówię „może”, ponieważ istnieją różne sposoby przechowywania plików. Niektóre z tych sposobów śledzenia danych mogą obejmować tabelę o stałym rozmiarze, zajmującą miejsce do śledzenia sekcji na dysku, nawet jeśli te sekcje nie są przechowywanie plików jeszcze. Inne metody mogą zmieniać rozmiar tabeli w zależności od tego, jakie dane są przechowywane na dysku, więc pusty dysk może mieć małą tabelę. Może więc niektóre z tych nazw plików są nadal fizycznie przechowywane na dysku, ale system operacyjny nie śledzi tych starych danych, a więc dane mogą zostać usunięte, gdy system operacyjny odniesie z tego korzyść).
źródło
Na podstawie faktycznych eksperymentów (zamiast zgadywania lub odwoływania się do innego źródła), jakie stare dane zostaną zastąpione, będą zależeć od tego, jak wykonasz ten „format” .
Gdy partycja jest tworzona i formowana przez Linux (przy użyciu GParted) (dla NTFS lub Ext4) lub „szybka” formowana przez Windows 7, tylko minimalna liczba sektorów jest nadpisywana, aby zainicjować system plików. Sektory, które są nieprzydzielone (i mogą być używane przez pliki użytkownika) są nietknięte i zachowują stare dane.
Gdy partycja jest tworzona i formowana przez system Windows 7 (nieużywając opcji szybkiej), wszystkie sektory na partycji są zastępowane. Stare dane w sektorach, które są nieprzydzielone (i mogą być używane przez pliki użytkownika) są nadpisywane zerami. Odzyskanie starych danych i plików będzie niemożliwe.
Prawdopodobnie masz na myśli program BIOS lub UEFI, który byłby (zwykle) przechowywany w układzie pamięci flash (na płycie głównej).
Możesz łatwo sprawdzić, czy ten samodzielny program (który nie jest systemem operacyjnym) jest lokalny dla komputera, a nie na żadnym dysku twardym lub dysku SSD, poprzez ponowne uruchomienie płyty głównej bez podłączonych napędów. (Oczywiście odłącz dyski, gdy komputer nie jest zasilany.)
W pierwszym sektorze dysku znajduje się program rozruchowy (np. MBR, Master Boot Record) i inny program rozruchowy na początku każdej partycji rozruchowej.
MBR to prosty program rozruchowy, który ładuje program rozruchowy partycji oznaczonej jako „aktywny”.
Program rozruchowy partycji aktywnej zostanie zainstalowany przez system plików. Może to być inny program ładujący pośredni dla programu rozruchowego zdolnego do rzeczywistego załadowania systemu operacyjnego (np. GRUB).
Nie jest oczywiste, o co pytasz.
Zauważ, że będą sektory, które nie zostaną przydzielone do żadnej partycji, które nigdy nie zostaną zapisane w żadnym formacie. Pomiędzy MBR a pierwszą partycją może być aż 1024 (tworzenie partycji przez Linux) lub 2047 (tworzenie partycji przez Win7) nieużywane sektory. Pomiędzy partycjami mogą być również niewykorzystane sektory. Rzeczywista liczba sektorów może się różnić w zależności od tego, gdzie kończy się poprzednia partycja i gdzie zaczyna się „sąsiednia” partycja, która będzie zależeć od rodzaju wyrównania partycji (np. „Cylindra” lub na megabajt).
źródło
Starsze dyski twarde miały mechanizm poruszania głową w dyskretnych krokach; informacje o tym, gdzie zaczyna się każdy sektor, były przechowywane w tym samym „strumieniu danych”, co zawartość rzeczywistych sektorów. Aby zapisać sektor nr 5 ścieżki, napęd zaczynałby się w trybie „odczytu”, dopóki nie zobaczył znacznika „To jest początek sektora nr 5”, przełącz się do trybu zapisu, zapisz trochę pustej spacji, a następnie uruchom ponownie znacznik, zacznij wyrzucać wszystkie bajty w sektorze, a następnie przełącz się z powrotem do trybu odczytu, kiedy to zostanie zrobione.
Jeśli ścieżka nie była znana z odpowiednio umieszczonego zestawu znaczników sektora (jak w przypadku całkowicie pustego, niesformatowanego dysku), należy ją sformatować przed użyciem. Aby to zrobić, dysk przełącza się w tryb zapisu, zapisuje przerwę, a następnie wielokrotnie zapisuje nagłówek sektora, niewielką przerwę, nagłówek drugiego startu i wartość arbitralnych danych sektora, a także inną przerwę. Po wykonaniu tej czynności dysk przełączy się w tryb odczytu i zapewni, że wszystkie sektory będą czytelne (jeśli przerwy między sektorami były zbyt długie, ostatni sektor może zastąpić pierwszy; jeśli przerwy są zbyt krótkie, zmiany prędkości napędu mogą powodować późniejsza operacja zapisu sektora w celu rozszerzenia jej na następny sektor).
Wykonanie formatu „niskiego poziomu” na takim dysku całkiem dobrze skasowałoby wszelkie informacje na nim, ale zajęłoby to więcej czasu niż typowe polecenie formatu „wysokiego poziomu”, które po prostu zapewnia, że każdy sektor jest czytelny, nie zawracając sobie głowy przepisywaniem nagłówków sektorów sektory, które są.
Nowoczesne dyski wymagają znaczników formatowania umieszczanych na talerzach przy użyciu specjalistycznego sprzętu, który jest precyzyjniej skalibrowany niż cokolwiek w napędzie. Wykonanie formatu niskiego poziomu na takich dyskach byłoby niemożliwe bez dodatkowego wyposażenia. Nadpisanie danych we wszystkich sektorach prawdopodobnie spowodowałoby, że większość z nich nie byłaby możliwa do odzyskania, ale niektóre dyski mają specjalną logikę do wykrywania, kiedy obszary dysku wydają się zepsute i przenoszą informacje, które normalnie byłyby przechowywane w takich obszarach, gdzie indziej. Jeśli sektor zawierający poufne dane zostanie przeniesiony, ponieważ dysk uważa, że może on znajdować się na niestabilnej części dysku, kolejne próby usunięcia tego sektora mogą zniszczyć późniejszą kopię, pozostawiając nienaruszony oryginał.
źródło
Nie, po pierwsze formatowanie jest procesem wykonywanym na partycji, a nie na dysku jako całości, więc nie wpływa na tablicę partycji, inne partycje ani MBR na dysku. To, co widzisz, brzmi jak bootloader, jest to mały program, który jest wykonywany bezpośrednio przez BIOS, który następnie ma za zadanie wybranie i uruchomienie jądra systemu operacyjnego, w tym przypadku sformatowanie partycji oznacza, że bootloader nie może znaleźć jądro do wykonania.
To powiedziawszy, nawet jeśli proces zastosowany do całego dysku jest błędem, sądzę, że formatowanie faktycznie usuwa zawartość pliku z dysku, ponieważ tak naprawdę nie robi tego. Kiedy dysk jest sformatowany, metadane takie jak tabela alokacji plików, superbloki itp. Są usuwane, a na ich miejscu zapisywana jest pusta struktura.
Sam proces formatowania nie wpływa na rzeczywistą zawartość plików. Analogią byłoby wykasowanie spisu treści książki, w której rozdziały byłyby tam nadal, mimo że nie ma spisu treści, który mógłby je wymienić.
Istnieje oprogramowanie, które może zignorować metadane i szukać bezpośrednio rzeczywistych śladów samych plików na dysku. W większości przypadków odzyskiwanie plików jest dość proste, chyba że część miejsca zajmowanego przez plik została ponownie wykorzystana i nadpisana przez nowe dane.
Jeśli naprawdę chcesz zniszczyć dane na dysku, istnieją metody, które byłyby odpowiednie, zależą od czynników takich jak rodzaj napędu (dyski SSD mają łatwiejsze sposoby bezpiecznego wymazywania niż na przykład dyski HDD), w przypadku napędów magnetycznych innym czynnikiem jest tylko to, jaki poziom pożądane jest zniszczenie. Istnieje różnica między niszczeniem danych, więc nie może być odzyskany przez komercyjny dysk twardy, a próba zniszczenia go do tego stopnia, że bardzo wrażliwy sprzęt do analizy kryminalistycznej nie może odzyskać żadnego śladu danych.
EDYCJA: Uwaga, chyba że maszyna została uszkodzona przez przerwaną aktualizację systemu BIOS lub podobnie, nawet maszyna z całkowicie pustymi napędami pokaże coś, gdy spróbujesz ją włączyć. BIOS nie jest przechowywany na żadnym dysku, to mały program przechowywany w małym półprzewodnikowym układzie pamięci na płycie głównej.
źródło