LINUX.ORG.RU

С диска пропадают файлы

 , ,


0

5

Второй раз обнаруживаю, что пропала сохранённая месяц-два назад музыка. В чём может быть проблема? Как установить?

smartctl /dev/sdb -l error пишет «No Errors Logged».

e2fsck при плановом тестировании при перезагрузке ошибок не нашёл и ничего не восстановил.

$ mount | grep sdb1
/dev/sdb1 on / type ext4 (rw,noatime)

P.S. Ранее на этой же машине 2 раза пропадали файлы из ~/.local/share/kwalletd/

P.P.S. Сверил даты — оба аудиофайла пропали после неудачной установки клиента Zscaler, которая заодно убила утилиту ping. Но это не объясняет проблемы с KWallet.

P.P.P.S. Восстанавливать данные файлы не требуется — пароли вбил повторно, музыку скачал. Вопрос на будущее — как поймать удаление.

★★★★★

Последнее исправление: question4 (всего исправлений: 4)
Ответ на: комментарий от question4

Остуди винт, а то он 46-50 температуру по графикам сейчас имеет. Это раз.

Два, сколько ОЗУ и что с настройками файлового кэша? Какой таймаут коммита ФС? Барьеры включены или нет? Журналирование в качестве «оптимизации» не отключал? Питание точно не пропадало?

timdorohin ★★★★
()
Последнее исправление: timdorohin (всего исправлений: 1)
Ответ на: комментарий от timdorohin

Остуди винт, а то он 46-50 температуру по графикам сейчас имеет. Это раз.

Как? Переставить подальше от стенок, дна и других дисков?

сколько ОЗУ и что с настройками файлового кэша?

32 Гб, с кешом ничего никогда не делал. Своп включаю-выключаю по мере надобности, в файл.

Какой таймаут коммита ФС? Барьеры включены или нет?

Как это узнать?

Журналирование в качестве «оптимизации» не отключал?

Нет.

Питание точно не пропадало?

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

Вывод tune2fs -l /dev/sdb1: https://pastebin.com/Nm2kMG4g

question4 ★★★★★
() автор топика
Ответ на: комментарий от timdorohin

Два, сколько ОЗУ и что с настройками файлового кэша? Какой таймаут коммита ФС? Барьеры включены или нет? Журналирование в качестве «оптимизации» не отключал? Питание точно не пропадало?

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

question4 ★★★★★
() автор топика
Ответ на: комментарий от question4
# 1  Extended offline    Self-test routine in progress 90%

Тобой запущен тест?

20,0 TB, ух ты!

Short self-test routine 
recommended polling time:        (   1) minutes.
Extended self-test routine
recommended polling time:        (1695) minutes.

short-test для начала бы запустил

greenman ★★★★★
()
Последнее исправление: greenman (всего исправлений: 2)
Ответ на: комментарий от greenman

Случайно нажал клавишу del и всё…

Я тоже ставлю на «ошибку оператора».

Кота нет, кстати?

Крайне сомнительно что пушистик при делах. Но такие случайные удаления (только не рассказывайте что никогда «не совсем трезвым» к компу не подходите) - это одна из причин почему у меня основной «архив» смонтирован «ro» и перемонтируется «rw» только во время «запланированных» апдейтов. Ну, и бекапы (само собой).

bugfixer ★★★★★
()

Тут варианта три: либо кто-то её случайно удалил, либо тебе только показалось то сохранил а на самом деле не сохранял, либо cохранил, но в другое место.

Смарт тут вообще ни при чём, из-за него файлы молча пропасть не могут.

firkax ★★★★★
()
Последнее исправление: firkax (всего исправлений: 1)

Давным-давно, когда ext4 стала использоваться по умолчанию везде, у меня было что-то похожее. Загадочно пропал целый каталог. Не исключаю, что удалил сам и забыл, потому что там было какое-то барахло, но решил не рисковать и вернулся на XFS. Тем более, что были и другие сообщения о пропадающих на ext4 файлах, что довольно подозрительно. Через несколько лет перешёл на Btrfs, и на этих двух ФС у меня никогда ничего не пропадало. Кажется более вероятным, что это не в ext4 проблема, а просто случайные ошибки пользователей на фоне большой распространённости этой ФС, но что есть, то есть.

anonymous
()
Ответ на: комментарий от greenman

В используемом файл-менеджере удаление файлов без подтверждения?

MC после F8 всегда переспрашивает.

Кота нет, кстати?

Нет.


Но если бы было так, как можно сделать лог удаления файлов?

question4 ★★★★★
() автор топика
Ответ на: комментарий от firkax

Тут варианта три:

либо тебе только показалось то сохранил а на самом деле не сохранял,

Неоднократно проигрывал сохранённые файлы в mpv.

либо cохранил, но в другое место.

find ~ их нигде не находит.

либо кто-то её случайно удалил,

Как отследить все удаления в системе?

Смарт тут вообще ни при чём, из-за него файлы молча пропасть не могут.

Если диск сыпется, SMART об этом скажет.

question4 ★★★★★
() автор топика
Ответ на: комментарий от greenman

Мог запустить по ошибке.

Вот это точно должно быть в history

grep smartctl ~/.bash_history

Я его последний раз запускал очень давно и на другом диске. После этого — только сегодня, в текущем сеансе. Кроме того, история баша без меток времени.

P.S. Самые первые запуски в текущей консоли:

Self-test execution status:      (   0) The previous self-test routine completed
                                        without error or no self-test has ever 
                                        been run.
question4 ★★★★★
() автор топика
Последнее исправление: question4 (всего исправлений: 1)
Ответ на: комментарий от question4

Как отследить эти ошибки?

Удалять в корзину :) Ну, и нельзя исключать, что это баг. В любом случае, попробуй завести какой-нибудь список файлов и регулярно по нему делать сверку.

anonymous
()
Ответ на: комментарий от question4

Как отследить все удаления в системе?

Теоретически можно (strace на всё и ловить вызовы unlink() и unlinkat()), но на практике бесполезно.

Если диск сыпется, SMART об этом скажет.

Но сыпящийся диск не приводит к молчаливому исчезновению файлов на ext4. Там i/o error было бы при просмотре их списка.

firkax ★★★★★
()
Ответ на: комментарий от anonymous

Как отследить эти ошибки?

Удалять в корзину :)

Как сделать корзину для файлов, удаляемых из ~ любыми средствами, включая программы помимо менеджера файлов? Слышал какую-то древнюю шутку про хардлинки. Может, можно как в MS-DOS перехватывать системный вызов?

Потому что в числе пропавших — не только 2 файла из ~/Загрузки, но и файлы из ~/.local/share/kwalletd/, тоже дважды.

question4 ★★★★★
() автор топика
Ответ на: комментарий от question4

Повторный тест не запустится (выдаст ошибку) если прошлый не ещё закончился. А вообще я не понял, откуда вообще взялся повторный тест. Ты не писал что запускал какие-то тесты. А если запускал - то это он и есть наверно, почему «повторно» то?

firkax ★★★★★
()
Ответ на: комментарий от greenman

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

firkax ★★★★★
()
Ответ на: комментарий от question4

~/.local/share/kwalletd/

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

Кстати у тех аудио тоже можно дату директории посмотреть.

firkax ★★★★★
()
Последнее исправление: firkax (всего исправлений: 1)
Ответ на: комментарий от firkax

~/.local/share/kwalletd/

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

Оба раза я обнаруживал ошибку уже когда был создан новый пустой файл — при запуске KRDC внезапно запрашивало пароль.

Кстати у тех аудио тоже можно дату директории посмотреть.

В эти директории я слишком часто что-то пишу.

question4 ★★★★★
() автор топика
Ответ на: комментарий от firkax

я не понял, откуда вообще взялся повторный тест. Ты не писал что запускал какие-то тесты. А если запускал - то это он и есть наверно, почему «повторно» то?

Я искал информацию SMART для стартового поста. Затем, увидев, что информации о тестах нет (в самом первом сообщении, не в том, что скопировал в PasteBin), я запустил тест.

Повторный тест не запустится (выдаст ошибку) если прошлый не ещё закончился.

Я запустил short тест, а затем каким-то образом запустил long тест, когда short уже работал.

question4 ★★★★★
() автор топика
Последнее исправление: question4 (всего исправлений: 1)
Ответ на: комментарий от question4

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

antech
()

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

anonymous
()
Ответ на: комментарий от antech

анделитом каким нибудь

extundelete падает с ошибкой malloc, вероятно, из-за несовместимых свойств ФС.

mc требует установить UFS (undelete file system) — где её взять?

question4 ★★★★★
() автор топика
Ответ на: комментарий от question4

мимокрокодил

R-Studio (есть пакеты для debian и live ISO с ним – на свой вкус выбери) и ещё пару утилит (можно даже поиском по ЛОРу «вспомнить» как называются). Но скорее всего ничего и не найдут: если ты ищешь сразу после исчезновения возможен положительный результат. А если прошло хотя бы несколько часов активной работы с диском – всё уже может быть перезаписано неоднократно. Такие дела…

Поэтому очевидный бекап «хомяка и прилегающих территорий» очевидно необходим.

anonymous
()
Ответ на: комментарий от alysnix

Ну, вот, сейчас практически, зима. Я запустил Victoria на случайное чтение (F7 SEEK) - и она легко и непринуждённо с холодного старта разогрела винт до 45℃

tiinn ★★★★★
()
Ответ на: комментарий от question4

Tripwire может установить, какая программа удалила файл?

Нет, только факт удаления, появления или изменения на момент последней проверки. Но возможно у вас ещё что-то пропадает, менее заметное.

sinaps
()
Последнее исправление: sinaps (всего исправлений: 1)
Ответ на: комментарий от anonymous

были и другие сообщения о пропадающих на ext4 файлах

Дважды пропадала директория с файлами на ntfs, первый раз подумал, что случайно удалил. Восстановил с инета. Второй раз пропала точно без моего участия. Возможно что дело и не в ext4.

Chord ★★★★
()
Ответ на: комментарий от ValdikSS

# auditctl -a always,exit -S unlink -S unlinkat -S rename -S renameat -k delete

Спасибо, как раз читаю его документацию. Он работает без systemd? И как узнать, который процесс совершил действие?

P.S. И зачем там нужны GSSAPI и io_uri?

question4 ★★★★★
() автор топика
Последнее исправление: question4 (всего исправлений: 1)