[AI CC-CC2022] Сохранила файл под названием существующего, соответственно он перезаписался, есть возможность вернуть все обратно?

Посрамим, пожалуй, диванных теоретиков.
Итак, создаю раздел fat32, заполняю его нулями.
Снимаю дамп. Раздел пуст, кроме заголовка и карты.
Посмотреть вложение 123035
Создаю на разделе файл 1.txt с небольшим содержимым.
Снимаю дамп, вижу файл.
Посмотреть вложение 123036
Открываю файл в редакторе, правлю текст, сохраняю под тем же именем.
Снимаю дамп, смотрю. Файл сохранился на других кластерах.
Посмотреть вложение 123038
А где же первый файл? А он на своём месте лежит целёхонький!
Посмотреть вложение 123039
ЧТД.
Дампы раздела со всех трёх итераций тут: Файлы не перезаписывается при сохранении.
И что в этом хорошего?
 
…при заявленном FAT32?
Форматировал не руками, а кнопочкой, как секретутка. Софтинка оказалась умней меня и смекнула, что разделу размером 1 мб. 32 бит для хранения номера кластера ни к чему и создала 12.
Потому что непонятно.
Потому что хамство.
И ясности ты сейчас не вносишь. Из простой задачи, ты сделал чрезмерно усложнённую, добавив неизвестных.
Покажите Ваши доказательства, ясные и неусложнённые, без добавления неизвестных. Прочту внимательно, постараюсь понять, дерзить Вам не буду.
 
@~RA~, хамство!?. Теперь я не понял.

Вопросы к твоему методу я задал выше, ответов не получил. Усмотреть в этом оскорбление — твоё право. Ничего подобного не подразумевалось. Если ответов нет, мои вопросы кончились.
 
я про дропбокс не упоминал еще?
 
При том, это стандартная фунция записи в файл (поток) ISO C, POSIX.1, которой нет дела в какой кластер запишутся данные.
Работает она со стандартными fopen/fseek.
Если софт не создает копии файла, то данные пишутся туда же, где и были.

Твой пример слишком зависим от оси и неизвестного редактора
 
  • Спасибо
Реакции: langry
…Даже если попытаться перезаписать файл другими данными, контроллер SSD скорее всего будет искать свободные для записи ячейки и перезаписываемая информация будет лежать "параллельно".
Для чистого удаления файлов в SSD-дисках на уровне протоколов реализованы команды TRIM и Secure erase.
Но и они не всегда могут помочь (да и, к примеру, Secure erase не на всех дисках есть). Т.к. это команды аппаратные, то встречаются особенности, которые зависят от контроллера, который управляет SSD…
Нашёл на просторах на нашу тему. Вообще между магнитным носителем и прочими есть разница в нашем случае.
Собственно, на это и намекал — влияние на адресацию кучи факторов, от контроллера, до ОСи и/или виртуальных драйверов.

Для чистоты эксперимента нужен махонький раздел именно винчестера. Спасибо, ~RA~, интересную тему подкинул
 
  • Спасибо
Реакции: ~RA~
Упростим задачу, исключив редактор вовсе.
Возьмём чистый раздел флешки (например) и начнём в него проводником бросать один и тот же файл и всякий раз соглашаться с предложением "перезаписать". Сколько его копий будет на флешке после 10 таких бросаний? (места достаточно и даже с излишком)
 
Драйвер фс. Если выгоднее кинуть данные на старое место - будет на старом, выгоднее на новое - на новом. Цели хранить старье нет. Шанс сохранения старых данных - только шанс.
Упростим задачу, исключив редактор вовсе.
Возьмём чистый раздел флешки (например) и начнём в него проводником бросать один и тот же файл и всякий раз соглашаться с предложением "перезаписать". Сколько его копий будет на флешке после 10 таких бросаний? (места достаточно и даже с излишком)
На нормальной с trim? одна.
 
Последнее редактирование:
Правильно

и

устройства.
Так вот, в большинстве случаев, пишется на новое место, если не во всех. Сличать и искать данные — излишне, да и чрезмерно дорого.
Поэтому запись ведется кластерами. С позиции, на которую указывает fseek. Слишком дорого гадать - перепишется весь файл или его кусок.
 
  • Спасибо
Реакции: langry
Поддержу. Файл открыт для записи — нет резона искать свободные кластеры, кроме особых политик (восстановления например).

При прочих равных, приоритет будет у скорости записи, а не безопасности, я думаю.
 
Хорошо, что это не под иксовыми осями файлы удалять. Там если удалил - то уже удалил...
 
Хорошо, что это не под иксовыми осями файлы удалять. Там если удалил - то уже удалил...
не-а. если не ssd c trim, то шанс восстановить есть всегда. APFS, EXTx, JSF и прочие, включая FAT, NTFS "удаляют" файл из самой таблицы ФС, а данные без необходимости не трогают. Причина всё та же - скорость. А инструменты для "secure delete" есть, наверное, для всех современных осей и файловых систем.
Всё время, что он открыт в редакторе? Ну уж нет.
С чего это нет? Монопольный доступ на запись ни кто не отменял.
А другим на чтение - пожалуйста