Как полностью вычистить жесткий диск от его содержимого без возможности восстановления?
Скоро буду отдавать рабочий ноут, который несколько месяцев использовал как рабочий.
Вопрос, который меня волнует — как полностью очистить содержимое жесткого диска без возможности восстановления этой информации?
Я знаю такую тулзу. Подробнее.
dd /dev/sdx bs=512 count=1
Так пару раз а потом поставить на него слаку и затереть еще раз.
Увольняешься и хочешь всех кинуть?
Нет, просто переезжаю в другой офис в другом городе)
А ноуты у нас закреплены за офисами компании.
shred
если ssd c trim, то как я понимаю достаточно просто удалить файлы.
dd if=/dev/zero of=/dev/твойдиск
Нет, обычный HDD
Это не сработает, удалит только таблицу разделов после чего восстановить можно всё легко. Юзай утилиту shred специально для этого.
Впрочем хватит и cat /dev/zero > /dev/sdX в принципе. или dd if=/dev/zero of=/dev/sda как выше сказали.
После этого теоретически восстановить ещё можно, на практике вряд ли кто заморочится, так как нужны нетривиальные скиллы и вероятно вскрытие винчестера.
А просветите пожалуйста, почему dd не сработает, а cat должна?
А, пардон, я count=1 не заметил. Да, конечно, если уж забивать нулями, то весь диск.
если ssd c trim, то как я понимаю достаточно просто удалить файлы.
не достаточно. Надо ещё подождать несколько часов(не выключая!). GC работает в фоне и не сразу.
Вопрос, который меня волнует — как полностью очистить содержимое жесткого диска без возможности восстановления этой информации?
правильно тут сказали. Можно сделать проще:
1. удалить все файлы
2. создать ext4 на весь раздел
3. забивать весь диск чем угодно(порнушкой например) пока место есть.
для 100% гарантии можно пару раз. ИМХО shred это уже паранойя в данном случае.
на ssd нужно делать secure erase, тогда и скорость сбросится на заводскую
Надо ещё подождать несколько часов(не выключая!).
Это само собой. Имелось в виду, что не придётся пользоваться специальными затиральщиками.
Для этого нужен софт от производителя и винда?
После этого теоретически восстановить ещё можно,
можно узнать подробности? Я просто впервые о таком слышу.
нет, это инструкция ATA, ее можно выполнить с помощью hdparm, например
А по времени это сколько может занять? HDD 750GB/7200
О, о нем я и забыл
С SSD значит нельзя восстановить файлы, если случайно удалил?
Для этого нужен софт от производителя и винда?
да. Ещё вера в то, что производитель не оставил бекдоров для ББ.
С SSD значит нельзя восстановить файлы
хз. Никакой гарантии нет, даже если сразу в ro смонтировать. Гарантии что всё удалит тоже нет.
Вероятность восстановления удалённого с ssd намного ниже, чем с «блинчатого».
Нужно будет не только в ro перемонтировать, но и убрать discard из опций монтирования. А ведь trim может быть включен на разделе по умолчанию при помощи tune2fs и не указываться как опция монтирования.
dd if=/dev/zero of=/dev/sda
убить в себе жлоба
но и убрать discard из опций монтирования.
не поможет. Команда УЖЕ послана.
Т.е. логика работы следующая:
1. юзер удаляет файл
2. драйвер ФС СРАЗУ посылает в SSD команду TRIM
3. через некоторое время у SSD доходят руки до очистки этих блоков.
Время в п3 зависит не только от погоды на Марсе, но и от загрузки девайса (особенно на запись), ИЧСХ не в ту сторону: если ничего НЕ писать, мусор чистится БЫСТРЕЕ. Если писать, то очередь может дойти быстрее потому, что чистые блоки тупо кончаться.
может быть включен на разделе по умолчанию при помощи tune2fs и не указываться как опция монтирования.
да какая разница, что там БЫЛО. Даже если девайс вообще не смонтирован, сборка мусора всё равно идёт.
Если сразу обесточить, то будет пофиг, что там куда послано. Но, монтировать нужно будет уже ro и без discard.
Если сразу обесточить, то будет пофиг, что там куда послано. Но, монтировать нужно будет уже ro и без discard.
дык в том то и дело, что нет. В SSD поддерживается список свободных блоков(его делает TRIM), и этот список и после выключения сохраняется. Причём делает TRIM, а работает его уже GC, причём пофиг что ты с носителем делаешь. GC работает всегда.
в mhdd есть аппаратная команда быстрой очистки диска
Приведенная команда грохнет только таблицу разделов, которая находится в первых 512 байтах, остальное останется нетронутым. Разделы вместе с данными легко восстанавливаются при помощи testdisk.
dd if=/dev/urandom of=/dev/ada0 bs=1m
wipe удаленные файлы не тронет же.
А по времени это сколько может занять? HDD 750GB/7200
Несколько часов, если только нулями, если не только, то думаю в пределах суток или двух.
Вместо «c:» необходимо указать букву логического раздела.
Ты путаешь форматирование (то есть аналог mkfs) и затирание нулями. Форматирования недостаточно для полного удаления данных.
забивать весь диск чем угодно(порнушкой например) пока место есть.
Могут остаться незатёртые места — там где резервные блоки в ext4 (например пространство зарезервированное для рута), так что shred гораздо проще и надёжней. А ещё есть badblocks который может тестировать поверхность и с записью и в этом случае перезаписывает её четыре раза но без рандома.
У меня на двух винтах купленных в начале 13го года сектора по 4к.
100% гарантии даёт только морг.
так что shred гораздо проще и надёжней.
это в принципе тоже самое, что и забивание мусором. Оно и есть на самом деле.
А ещё есть badblocks который может тестировать поверхность и с записью и в этом случае перезаписывает её четыре раза но без рандома.
а не надо меня учить. Сам почитай:
-t test_pattern Specify a test pattern to be read (and written) to disk blocks. The test_pattern may either be a numeric value between 0 and ULONG_MAX-1 inclusive, or the word «ran- dom», which specifies that the block should be filled with a random bit pattern. For read/write (-w) and non-destructive (-n) modes, one or more test patterns may be specified by specifying the -t option for each test pattern desired. For read-only mode only a single pattern may be specified and it may not be «random». Read-only testing with a pattern assumes that the specified pattern has previously been written to the disk — if not, large numbers of blocks will fail verification. If multiple patterns are specified then all blocks will be tested with one pattern before pro- ceeding to the next pattern.
У меня на двух винтах купленных в начале 13го года сектора по 4к.
и что теперь, обосраться? Ставь 4М, будет быстрее. И не забивай голову всякой ерундой, «размер сектора» тебе всё равно никто не скажет. А в dd это размер блока(записи), который она за 1 раз пишет. Т.е. кусок а 4Г твоя команда будет писать за 1048576 раз.
Выдыхай бобер, команда не моя. На кэше подскользнуться не боишься? И таки да, размер сектора в свежих механических винтах 4к, для упрощения адресации больших хардов.
Ну, хорошо. Сдуваем микросхемы, считываем оттуда и паяем назад. А там хоть трава не расти.
я догадался, что всякое говно копипастишь
На кэше подскользнуться не боишься?
И таки да, размер сектора в свежих механических винтах 4к, для упрощения адресации больших хардов.
кто тебе это сказал-то? В «свежих» это моложе 1990го что-ли?
Источник
Shred и безвозвратное удаление файлов
В этой статье я расскажу, каким образом можно раз и навсегда удалить файлы с жёсткого диска в ОС Ubuntu. Итак, знакомьтесь — команда shred.
Не все знают, что удаляя файл посредством rm или через файловый менеджер, сам файл не удаляется, а затирается лишь его индекс и пространство, которое занимал файл, записывается системой как свободное для записи. Файл, как вы уже поняли, так и остался на своём месте и восстановить его оттуда не составит большого труда. Он пролежит там до тех пор, пока на его место вы не запишите другую информацию.
Shred случайными числами заполняет место, занятое файлом. И уже, даже восстановив ваш удалённый файл, его будет невозможно прочитать. По умолчанию shred не удаляет файл, для этого используется параметр —remove (-u).
shred -u /path/to/file
В shred заложен 25-тикратный цикл, то есть программа перезапишет файл случайным содержимым 25 раз. Чтобы изменить это значение, например на 35-тикратный:
shred -u -n 35 /path/to/file
Если ваша паранойя достигла ещё бОльшего уровня, то вам подойдут следующие советы.
Чтобы спрятать информацию о том, что вы зачищали файл, используйте параметр -z, добавляющий нули в конец файла — это сделает файл непохожим на зашифрованный. Если вам интересно наблюдать за процессом перезаписи, параметр -v (verbose) служит для подробного вывода информации прогресса.
shred -u -z /path/to/file
Если хотите удалить сразу несколько файлов, то укажите их в таком формате:
shred -u -z -n 30 /path/to/file1 /path/to/file2 /path/to/file3
или же можно использовать маску:
shred -u -z -n *.txt
Shred также может удалить содержимое всего жёсткого диска командой
shred /dev/sda
Естественно, время выполнения операций напрямую зависит от размера файла и скорости записи.
Единственным минусом я обнаружил то, что shred не умеет удалять каталоги. В этом нам на помощь приходит утилита wipe:
wipe -rf /path/to/catalog
Для более подробной информации используйте man shred и man wipe.
Если вы уже удалили файлы, и не хотите восстанавливать их и потом «правильно» удалять, ввиду их большого размера, то остаётся одно — перезаписать другой информацией. Информацией, ничего в себе не несущей. В этом вам придёт на помощь утилита dd
dd if=/dev/zero of=/path/to/file.trash bs=1M count=1024
где значением count является нужный вам размер файла. 1024 = 1Гб, 2048 = 2Гб и т.д.
После создания файла, удалите его уже посредством shred’а.
Источник
Уничтожение данных на жестком диске в Linux
Когда мы удаляем файл из файловой системы, данные физически не удаляются: операционная система просто отмечает область, ранее занятую файлом, как свободную и делает ее доступной для хранения новой информации. Единственный способ убедиться, что данные действительно удалены с устройства, – перезаписать их другими данными. Если диск с конфиденциальной информацией меняет владельца и вы боитесь, что она может попасть не в те руки необходимо предпринять определенные действия.
Многие криминалистические инструменты с открытым исходным кодом находятся в свободном доступе в Интернете, и их можно использовать для извлечения потерянных или удаленных данных с жесткого диска. Многие из них настолько просты в использовании, что обычные пользователи настольных компьютеров также могут загрузить их и достать данные.
Рассмотрим некоторые инструменты, которые мы можем использовать, чтобы полностью стереть данные на устройстве.
Стирание данных с использованием dd
Утилита dd – мощная программа, включенная по умолчанию во все основные дистрибутивы Linux. С ее помощью мы можем заполнить содержимое диска нулями или случайными данными. В обоих случаях мы можем использовать данные, сгенерированные специальными файлами: /dev/zero и dev/urandom (или /dev/random) соответственно. Первый возвращает нули каждый раз, когда над ним выполняется операция чтения; второй возвращает случайные байты, используя генератор случайных чисел ядра Linux.
Чтобы заполнить диск нулями, мы можем запустить:
Чтобы использовать случайные данные, вместо этого:
Стирание данных с помощью shred
Основное назначение данной утилиты состоит в том, чтобы перезаписать файлы и при необходимости удалить их. Утилита основана на предположении , что файловая система перезаписывает данные на месте. Однако приложение может не позволить нам достичь ожидаемого результата. Например, в журналируемой файловой системе, таких как ext4 (пожалуй наиболее часто используемая файловая система Linux), если она смонтирована с опцией data=journal.
При монтировании файловой системы ext4 с опциями data=ordered или data=writeback (первая используется по умолчанию) данные записываются в основную файловую систему после фиксации метаданных в журнале. В обоих случаях shred работает нормально, что дает ожидаемые результаты. При использовании опции data=journal помимо метаданных в журнал файловой системы записываются также и сами данные и лишь затем данные записываются в основную файловую систему. Легко понять, почему это может вызвать проблемы.
Рассмотрим несколько примеров использования приложения. Предположим, мы хотим безопасно содержимое файла с именем «test».
Все, что нам нужно сделать, это запустить следующую команду (здесь мы используем опцию -v, чтобы сделать программу более подробной):
Вот что мы можем видеть после выполнения команды:
По умолчанию приложение переписывает указанный файл случайными данными в три прохода. Количество проходов можно изменить с помощью опции -n. Чтобы переопределить файл 6 раз, мы запустим:
В некоторых случаях мы можем скрыть тот факт, что операция удаления была выполнена для файла или устройства. В этих ситуациях мы можем использовать опцию программы -z (сокращение от –zero), чтобы заставить программу выполнить дополнительный проход нулями:
Из подробного вывода команды мы действительно можем заметить, как выполняется последний проход, записав нули ( 000000).
Помимо работы с файлами shred позволяет производить такие же операции с разделами. Например, нам необходимо навсегда затереть информацию на диске sda:
Источник