Krótka odpowiedź: zrobi mniej więcej tyle, ile chcesz, a potem nic nie zadziała. Używanie dd
działa na poziomie poniżej systemu plików, co oznacza, że wszelkie obowiązujące ograniczenia nie są już istotne (nie oznacza to, że jądro nie mogło temu zapobiec - ale tak nie jest). Niektóre treści z systemu plików są już w pamięci, na przykład jądro i dd
sam program, a niektóre będą w pamięci podręcznej. Istnieje możliwość, że jeśli system działa w trybie wielu użytkowników, niektóre pliki mogą zostać zapisane w trakcie trwania dd
, przy założeniu, że faktycznie się zmieniły, a jeśli jesteś pod presją pamięci, niektóre strony mogą również zostać zamienione (powinny być zaszyfrowane i dlatego nie można ich używać po ponownym uruchomieniu).
Większość poleceń, które wydasz po tym - w tym reboot
- nie będzie w pamięci podręcznej, a więc nie będzie działać. Więc jeśli jesteś w trybie pojedynczego użytkownika, zrobi to wyjątkowo dobrze, jeśli jesteś w trybie wielu użytkowników, wyczyści on ogromną większość danych. Idealnie powinieneś to zrobić z jakiegoś innego nośnika (być może nawet zatrzymując się na initrd), aby mieć pewność, skąd pochodzą wszystkie zapisy.
Jeśli chcesz mieć bezpieczne czyszczenie, nie wykona tego zadania, ponieważ pozostaną pewne ślady oryginalnych danych, jeśli tylko je wyzerujesz. Zazwyczaj potrzebujesz do trzech losowych zapisów, co oznaczałoby kopiowanie /dev/urandom
zamiast /dev/zero
- znacznie wolniej, ale bezpieczniej. Niektórzy mogą sugerować, że używasz urządzenia, /dev/random
które służy do „czystych” losowych danych - bez pseudolosowych - ale w tym celu szansa na to, że ktoś zdoła złamać ziarno PRNG i skutecznie zamaskować dane, jest w zasadzie nieistotna.
Jeśli jesteś naprawdę paranoikiem, musisz wrzucić urządzenie magazynujące do pieca, aby się rozmagnesował / wyładował.