Что происходит, когда я использую 'dd' для перезаписи диска, от которого работает Ubuntu?

Что произошло бы, если я использую

sudo dd if=/dev/zero of=/dev/sda

от установки Ubuntu, работающей от /dev/sda?


Я попробовал его в VM, и это, кажется, правильно вытерло диск. Это будет иметь место каждый раз? Действительно ли это - безопасный способ "вытереть" установку Ubuntu и все данные?

Мой вопрос несколько вдохновлен:

  1. Как я удаляю Ubuntu от компьютера?
  2. Как 'комната-rf /' способный удалить все файлы в системе?.
9
задан 13 April 2017 в 05:23

5 ответов

На самом деле файловая система все еще смонтирована, и некоторые записи буферизуются, означая, что они находятся все еще в RAM, ожидающей, чтобы быть записанными в диск. Скажем, dd правильно перезаписи все, и только позади него буферы становятся вспыхнувшими, и некоторые потенциально уязвимые данные становятся записанными обратно к диску. Так не, это не безопасный способ вытереть диск.

можно избежать этого выпуска первым перемонтированием в режиме только для чтения корневая файловая система и любые другие файловые системы, которые находятся на диске (или размонтирование их полностью, но Вы не сможете с корневой файловой системой), и затем, больше записей не должно быть позволено в файловых системах вообще (так никакие буферы для сбрасывания), таким образом, команда должна быть безопасной теперь, даже при том, что это - все еще плохая идея в случае паники, потому что требуется много времени.

, Если Вы хотите иметь своего рода панику, удаляют функцию, я предлагаю шифровать Ваш диск с LUKS (установщик Ubuntu может сделать это), и затем после мой ответ на Exchange Стопки безопасности. Это включает стирание cryptheader, который составляет только 2 МБ в размере, и это берет меньше, чем секунда для перезаписи. Затем перезапустите систему, и ключи шифрования диска закончатся из памяти без способов восстановить их, так как самого cryptheader не стало также.

16
ответ дан 16 November 2019 в 06:00

Я пожертвовал VM использование немного более усовершенствованного использования dd одолженный и немного измененный от страницы .

Arch Wiki

Первая установка хороший метр прогресса:

sudo apt-get install pv

И затем выполненный 'расширенное' dd команда

sudo openssl enc -aes-256-ctr -pass pass:"$(dd if=/dev/urandom bs=128 count=1 2>/dev/null \
| base64)" -nosalt </dev/zero \
| pv -bartpes "$(sudo blockdev --getsize64 /dev/sda)" \
| sudo dd bs=64K of=/dev/sda

Это оставит диск заполненным шифрованным текстом AES. Полная и безопасная дисковая очистка? Вероятно, лучше, чем Ваше собственное dd пример, но ничто не абсолютно безопасно или гарантировано...

enter image description here

И Вы должны мне один VM :)

Ссылки:

10
ответ дан 16 November 2019 в 06:00

Короткий ответ: это сделает примерно, что Вы хотите, и затем ничто не будет работать. Используя dd Вы действуете на уровне ниже файловой системы, что означает, что любые ограничения, которые применялись бы, там больше не релевантны (это не означает, что ядро не могло предотвратить Вас делающий это - но это не делает). Некоторое содержание от файловой системы уже находится в памяти, например, ядро и dd сама программа, и некоторые будут в кэше. Существует возможность, что, если система находится в многопользовательском режиме, некоторые файлы могут быть записаны обратно, в то время как эти dd происходит, предполагая, что они на самом деле изменились, и если Вы испытываете давление памяти, некоторые страницы оттуда могут также быть выгружены (они должны быть зашифрованы и таким образом неприменимые после перезагрузки).

Большинство команд Вы вышли бы после этого - включая reboot - не будет в кэше и не, работают - также. Таким образом, если Вы будете в однопользовательском режиме, то он чрезвычайно успеет, если Вы будете в многопользовательском режиме, то он вытрет подавляющее большинство данных. Идеально необходимо сделать загруженный из некоторого другого носителя (даже останавливающийся на initrd, возможно) так, чтобы можно было быть уверены, куда все записи прибывают из.

, Если Вы хотите безопасную очистку, это не сделает задания, потому что все еще будут некоторые трассировки исходных данных, остающихся, если Вы просто обнулите его. Обычно Вы хотели бы до трех случайных записей, которые будут означать копировать от /dev/urandom вместо /dev/zero - намного медленнее, но более безопасный. Некоторые могут предложить, чтобы Вы использовали /dev/random, который является устройством для "чистых" случайных данных - нет псевдослучайный - но с этой целью шанс кого-то умеющего взломать семя PRNG и успешно кашировать данные чрезвычайно незначителен.

, Если Вы действительно параноик, необходимо бросить устройство хранения в печь так, чтобы оно размагнитило/разрядило.

6
ответ дан 16 November 2019 в 06:00

Это будет, как это сделало в Вашем VM, вытирают диск и представляют Вашу неприменимую систему.

Однако, если у Вас есть своего рода 'паническое удаление' в памяти dd, не могло бы быть достаточно быстрым для этого, и я не уверен, существуют ли более быстрые команды или программы если оно в этом случае.

4
ответ дан 16 November 2019 в 06:00

Это должно работать, рабочий процесс сохранен в Ram и не нуждается в диске. Я использовал бы живую систему, работающую от CD или usb так или иначе. Существует даже dban, специализированный живой Linux для дискового стирания.

Перезапись Вашего диска с нулями является сохранением, но если Вы достаточно параноики или имеете правовые нормы, можно перезаписать со случайными данными многократно.

Быть осторожным при использовании ssd перезаписи не гарантирует удаление всех данных из-за выравнивания износа.

при использовании полного шифрования диска (удачи), Вы не должны удалять полный диск, удаление заголовка удач достаточно.

1
ответ дан 16 November 2019 в 06:00

Другие вопросы по тегам:

Похожие вопросы: