Восстановить файл .txt из 0 bytes

Все, что не подходит под определение "старого софта и железа", обсуждается здесь
qa
Full Member
Сообщения: 245
Зарегистрирован: 02.09.2005,02:53
Откуда: СПб, Россия
Контактная информация:

Вклад в сообщество

Сообщение qa » 05.07.2017,16:15

aleksvolgin писал(а):Файл был открыт или создан с нуля?
- Открыт. Файл существовал задолго до событий, имел содержание, которое и редактировалось. Точнее, дописывалось.

geg
Advanced Member
Сообщения: 12303
Зарегистрирован: 21.11.2010,12:04

Сообщение geg » 05.07.2017,16:36

Файл существовал задолго до событий, имел содержание, которое и редактировалось
Порекомендую тогда DMDE.

qa
Full Member
Сообщения: 245
Зарегистрирован: 02.09.2005,02:53
Откуда: СПб, Россия
Контактная информация:

Вклад в сообщество

Сообщение qa » 05.07.2017,16:43

Sergio писал(а):В принципе, это финиш. К сожалению.
ATauenis писал(а):99%, что остатки txt-шника переписались тем, что помешало ему сохраниться.
Sergio писал(а):Что там искать-то, если диск был после того как забит в ноль?
Ситуация: был файл, имел содержание, занимал какое-то место на диске. В процессе редактирования я увеличивал его размер - пока, до "Сохранить", конечно, как бы. К моменту, когда я начал сохранять, свободного места на диске уже не осталось и то, что было сверх прежнего размера файла, сохраниться не смогло.

Вопросы в связи с приведенными выше цитатами и вообще:

- Почему остатки txt-шника должны были переписаться тем, что помешало ему сохраниться? Ведь его размер до "Сохранить" имел, так сказать, законное место на диске. Соответственно, это прежнее содержание не должно было быть затронуто тем, что нечто съело свободное место на диске.

- Если файл до начала событий имел свое место на диске, то как на него могло повлиять то, что свободное место на диске было заполнено?

- Какова может быть причина, что файл превратился в 0 bytes? Ведь, по идее, он просто должен остаться тем, чем он был до моей попытки редактирования? Что такого в подобной ситуации делает NTFS, что файл мог превратиться в 0 bytes?

qa
Full Member
Сообщения: 245
Зарегистрирован: 02.09.2005,02:53
Откуда: СПб, Россия
Контактная информация:

Вклад в сообщество

Сообщение qa » 05.07.2017,16:43

Сейчас буду пробовать предложенные варианты (софт) восстановления.

Mihail-1
Advanced Member
Сообщения: 5209
Зарегистрирован: 17.08.2009,19:21
Откуда: Подмосковье

Вклад в сообщество

Сообщение Mihail-1 » 05.07.2017,17:32

типа дискэдита что-то надо юзать.Но прежде ответить надо на вопрос на сколько дорог файл (в рублях)
1.старая менялка с моими интересами http://www.phantom.sannata.ru/forum/index.php?t=5186&&st=0 2.свежий пополняемый обменник http://www.phantom.sannata.ru/forum/index.php?t=16788&a=stdforum_view&o=&st=0

qa
Full Member
Сообщения: 245
Зарегистрирован: 02.09.2005,02:53
Откуда: СПб, Россия
Контактная информация:

Вклад в сообщество

Сообщение qa » 05.07.2017,18:04

Mihail-1 писал(а):Но прежде ответить надо на вопрос на сколько дорог файл (в рублях)
- Вроде не слишком дорог (более точно выясню позже). Просто сам принцип - файл внезапно превращается в 0, нельзя же это просто так оставить? Так же любопытство: как решить проблему в связи с plain text файлом, ибо с более специфичными (изображения, pdf и т.п.) вроде вопрос как-то решается.

Аватара пользователя
ATauenis
Advanced Member
Сообщения: 5527
Зарегистрирован: 30.04.2015,21:30
Откуда: Москва
Контактная информация:

Вклад в сообщество

Сообщение ATauenis » 05.07.2017,19:13

qa писал(а):Какова может быть причина, что файл превратился в 0 bytes?
qa писал(а):Ведь его размер до "Сохранить" имел, так сказать, законное место на диске.
При записи произошла ошибка файловой системы, и вместо выдачи ошибки "нет места", файл записался с нулевой длиной, и бывшие его кластеры превратились в свободное место, которое сожрали новые файлы.

Arix
Advanced Member
Сообщения: 2384
Зарегистрирован: 18.07.2015,08:56
Откуда: Саратов

Сообщение Arix » 05.07.2017,19:20

qa писал(а):Но ничего не писалось в ту папку, где находится the файл.
Разницы никакой, раздел-то один.
qa писал(а):- Какова может быть причина, что файл превратился в 0 bytes? Ведь, по идее, он просто должен остаться тем, чем он был до моей попытки редактирования? Что такого в подобной ситуации делает NTFS, что файл мог превратиться в 0 bytes?
NTFS - не родная файловая система для Линукса, может, он не совсем корректно с ней работает. Хотя у меня из-под Убунты никаких проблем с NTFS-ом не было. Я все файлы из-под линуха сохраняю на диски NTFS, чтобы они были доступны в обеих системах.

Merchant*RU
Advanced Member
Сообщения: 408
Зарегистрирован: 16.10.2015,18:49
Откуда: Москва

Сообщение Merchant*RU » 05.07.2017,21:02

1) При открытии файла оригинал лочится, читается, но остаётся на своём месте, и никакая прога перезаписать его не может.
2) При редактировании создаётся либо резервная, либо временная копия файла, с неудобоваримым расширением, а то и именем, куда записываются все изменения, походу дела. Этот файл открыт на запись и для других прог он залочен. Файл может быть создан как во временной папке, так и во файле подкачки, второй вариант == треш, из первого ещё можно что-то достать, поискав недавно удалённые временные файлы.
3) Теперь главное западло: в файловой системе НЕ МОЖЕТ БЫТЬ файлов с одинаковыми именами, одновременно, в одной папке. ОС, получает запрос на запись во временный файл, но АМБА, места на диске нема, ноль по модулю, и все изменения во временный файл НЕ попадают - некуда их втиснуть.
Файл записан, с ошибкой, но записан! Его размер == 0 байт. Это важно! особенно, если запись из-под неродной ОС.
4) Теперь система удаляет файл-оригинал и переименовывает файл временный в постоянный. Таков алгоритм её работы.
Получается: освобождаем место оригинального файла, коее тут-же захватывается "торрент-качалкой", а переименовываем уже файл 0-го размера...

Вот те и "оба файла долой"!
Искать что-либо на дисках - бесполезно, инфа затёрта. В обоих версиях файла, точнее, в обеих цепочках секторов, ранее занимаемых обоими файлами.

Никакие проги вида "р-студия" уже не помогут. Единственная лазейка - если линух писал временный файл сперва на свой раздел, причём, отдельным файлом. Ибо писать сразу несколько ntfs-потоков (явный+теневые) линух не захочет или не сумеет, и в недрах ntfs-ной MFT никаких упоминаний об изменении файла-оригинала не останется.

Перефразируя циничную поговорку:
"проблемы форточки линух не волнуют".

qa
Full Member
Сообщения: 245
Зарегистрирован: 02.09.2005,02:53
Откуда: СПб, Россия
Контактная информация:

Вклад в сообщество

Сообщение qa » 06.07.2017,01:25

Merchant*RU писал(а):Единственная лазейка - если линух писал временный файл сперва на свой раздел, причём, отдельным файлом
- Тогда что-то прояснить может помочь выяснение как ведет себя редактор Geany по отношению к открытому файлу и что делает при попытке сохранить.

qa
Full Member
Сообщения: 245
Зарегистрирован: 02.09.2005,02:53
Откуда: СПб, Россия
Контактная информация:

Вклад в сообщество

Сообщение qa » 06.07.2017,01:37

В принципе, от прочтения этого http://www.phantom.sannata.ru/forum/ind ... 9#pp381779 и этого http://www.phantom.sannata.ru/forum/ind ... 1#pp381801 ), создается впечатление, что буквально восстановить едва ли получится.

Говоря про вообще, то если смотреть на ситуацию в том духе, что возможно что-то искать и найти, то видится проблема: поиск файлов в той же DMDE так или иначе требует наличия сигнатуры, а какая сигнатура у plain text файла? Если искать по началу файла - я помню его начало - то как понять, где его конец, поскольку его конец я не помню?

Ответить