Надежно удалите файлы в btrfs файловой системе

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

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

Что касается самой проверки, для протокола 30 и вне (сначала поддерживаемый в 3.0.0), rsync использует MD5. Для более старых протоколов используемая контрольная сумма является MD4.

В то время как долго продуманный устаревший для безопасных криптографических хешей, MD5 и MD4 остаются достаточными для проверки повреждения файла.

Источник: страница справочника и визуальный контроль rsync исходный код для проверки.

22
13.04.2017, 15:36
3 ответа

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

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

Можно избавиться от конфиденциальных данных открытого текста путем шифрования всего на диске. Настройте ecryptfs объем по той файловой системе и переместите все Ваши (конфиденциальные) файлы в нее. Затем перезапишите все неиспользуемое место файловой системы. Можно стереть большую часть из него путем заполнения файловой системы cat /dev/zero >zero. Может все еще быть некоторая информация, оставленная в неполных блоках (блоки, которые содержат последний блок файла, сопровождаемого небольшим количеством мусора — который мог быть остатками из конфиденциального файла). Чтобы гарантировать, что нет никаких неполных блоков, переместите все в файловую систему к ecryptfs (файлы ecryptfs используют целые блоки, по крайней мере, на типичных установках, где блоки составляют 4 КБ). Удостоверьтесь, что применили это ко всем объемам и стерли все снимки, содержащие конфиденциальные данные простого текста.

Может все еще быть некоторая информация, оставленная в журнале. Я не знаю, как вычистить это.

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

9
27.01.2020, 19:43
  • 1
    Обнуляет имеют недостаток, что они могут быть сжаты или полностью опущены (SSD может ОБРЕЗАТЬ вместо записи, обнуляет, как возврат секторов TRIM'd обнуляет при чтении их). Это делает, обнуляет небезопасный в наше время. Используя случайные силы данных файловая система и диск для фактического выписывания данных, как. –  frostschutz 03.02.2013, 19:37

Хм, btrfs, кажется, побеждает все обычные уничтожающие методы...

  • Существует названная опция монтирования nodatacow но это, кажется уже, не влияет на существующие файлы.
  • Поскольку у Вас уже есть разумные файлы на Вашем диске, эта btrfs запись FAQ не поможет Вам также.
  • Затем существует debugfs. Только для файловых систем расширения, но существует патч для него, мог бы работать. Вы могли использовать его, чтобы узнать затронутые адреса блока и затем перезаписать их непосредственно на/dev/sdXY. Но это очень опасно и не могло бы работать (особенно, если существует больше снимков файла),
  • Запишите патч btrfs, который позволяет тот modifiy (или клочок) определенные снимки или целый файл
  • Самая чистая попытка (для действительно действительно уязвимых данных) была бы к:

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

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

6
27.01.2020, 19:43

Существует shred(1) для Unix/Linux (должен быть в пакетах Вашего распределения). Я - то, что рекомендует EFF.

-6
27.01.2020, 19:43
  • 1
    Если Вы перепроверите вопрос, то Вы будете видеть, что я упомянул клочок, и почему это - недостаточно для задания –  goncalopp 24.01.2013, 15:54
  • 2
    Все, что я нахожу, предложения для использования шифрования чувствительных файлов, по причине, которую Вы упоминаете. –  vonbrand 24.01.2013, 16:08
  • 3
    "Во многих файловых системах, программа клочка включает такое безопасное удаление. Однако в файловой системе CoW, такой как btrfs, этот подход бесполезен".. Существует две ссылки там, также. –  goncalopp 24.01.2013, 16:17

Теги

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