Что "type nul> somefile" делает с "somefile" в Windows?

10464
wes

В частности, type nul > somefileперезаписывает ли весь файл на диске? Я видел, как веб-сайт пакетного сценария рекомендовал создавать сценарий FTP на лету, а затем «безопасно» стирать его с помощью команды в заголовке. Есть ли в этом заслуга?

9

3 ответа на вопрос

8
grawity

Что «type nul> somefile» делает с «somefile» в Windows?

  1. Во-первых, somefileоткрывается для записи - это автоматически приводит к усечению файла до 0 байт. Данные все еще остаются на диске, просто помечены как «свободные» в растровом изображении

  2. Затем содержимое nulзаписывается в somefile- в данном случае ровно в ноль байтов, поскольку вы ничего не можете прочитать из nul. Старые данные не перезаписываются.

  3. Файл закрыт.

Я видел, как веб-сайт пакетного сценария рекомендовал создавать сценарий FTP на лету, а затем «безопасно» стирать его с помощью команды в заголовке. Есть ли в этом заслуга?

Это не более "безопасно", чем del somefile. Он даже не удаляет данные с диска.

Для безопасного удаления файла используйте утилиту очистки, такую ​​как sdelete или Eraser . Хотя стоит ли использовать FTP-скрипт для безопасного удаления?

«Является ли FTP-скрипт действительно безопасным удалением» - ну, он предоставляет пароль в виде открытого текста на удаленной машине. wes 13 лет назад 1
@wes: Если вы не можете обеспечить физическую и операционную безопасность компьютера, чтобы предотвратить восстановление указанного скрипта, то вы также не можете гарантировать, что трафик FTP не будет перехвачен ... Но несколько советов. Переключитесь на более безопасный протокол - SFTP или хотя бы FTP / TLS. Кроме того, создайте отдельный каталог для файла, содержащего пароль (либо сценарий, либо файл конфигурации клиента), и включите для него шифрование EFS. Все новые файлы внутри будут автоматически зашифрованы на уровне ОС. Оба протокола поддерживают аутентификацию с открытым ключом в качестве альтернативы. grawity 13 лет назад 1
И обратите внимание, что на SSD все ставки отключены; в настоящее время вы просто не можете стереть их, поскольку фактические биты на устройстве отделены как минимум одним уровнем абстракции от ОС. Joey 13 лет назад 0
Поэтому единственное решение - не сохранять учетные данные в незашифрованном виде на диске. grawity 13 лет назад 0
Есть ли способ восстановить этот файл / исходные данные, которые были обновлены с типом nul> имя файла? Isaiah4110 7 лет назад 0
2
Christi

Он может «перезаписать» файл нулями, но даже если это так, это вряд ли безопасное удаление. Вам будет лучше использовать SDelete для этого, если вы можете.

0
Moab

Удаление файла не помешает сторонним утилитам удалить его снова, однако вы можете превратить любой файл в файл с нулевым байтом, чтобы уничтожить цепочку размещения файлов, например:

TYPE nul> C: \ examples \ MyFile.txt

DEL C: \ examples \ MyFile.txt

Источник на полпути вниз по странице

Чем это отличается от `DEL`ing файла? В любом случае ОС собирается перезаписать это место на диске, да? wes 13 лет назад 0
В конце концов, да, но когда, в следующем году? Нет способа узнать когда. Moab 13 лет назад 1
Моя точка зрения состоит в том, чтобы определить, какие непосредственные / полезные эффекты "разрушение цепочки размещения файлов" имеет по сравнению с простым удалением файла. wes 13 лет назад 0
Немедленное уничтожение данных (файла), поэтому вы не можете использовать программное обеспечение для его восстановления, как если бы вы просто удаляли его, по крайней мере, это мой выбор. Moab 13 лет назад 0