Команда не запускается из сценария оболочки

Извините, но на данном этапе вам, вероятно, лучше восстановиться из чистой резервной копии. Когда fsckпомещает так много каталогов в /lost+found, это признак большого количества повреждений. Вполне возможно, что искажений больше, но поскольку они находятся в содержимом файла, а не в метаданных, fsck не может об этом узнать.

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

Единственный способ определить, что представляют собой файлы в lost+found, — это посмотреть на них и понять. Нет системного способа. Если бы он был, fsck сделал бы это.

Глядя на содержимое, которое вы показываете для /lost+found, похоже, что каталог /varбыл поврежден. Вы можете попытаться восстановить его, создав /varи переместив соответствующие записи в /lost+foundв /var.

# Running as root, of course
umask 022
mkdir /var
mv /lost+found/\#87867 /var/lock
mv /lost+found/\#87868 /var/run
mv /lost+found/\#89866 /var/local
mv /lost+found/\#89868 /var/mail
…

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

/var/libможет быть #89865, потому что у него много подкаталогов, но это только предположение. Это может быть вообще из другой части системы.

Не сосредотачивайтесь на восстановлении /var/lib/dpkgи игнорируйте все остальное. Отсутствие /var/lib/dpkg— это только первый симптом, который вы заметили.

На ПК я бы посоветовал провести тест оперативной памяти (с помощью Memtest86+ , который доступен в виде пакета в большинстве дистрибутивов и установлен по умолчанию, по крайней мере, в Ubuntu ). На Raspberry Pi, если ваша система находится на SD-карте, я рекомендую заменить SD-карту. :SD-карты — наименее надежная часть системы, и если вы продолжите их использовать, это, вероятно, продолжит повреждать ваши данные.

-1
15.09.2019, 03:06
2 ответа

Итак, я снова вошел в систему, и в файле не было второй строки, как будто я ее не добавлял? Хотя я открывал и закрывал vi несколько раз во время последней сессии, и линия была там.

Я не умею пользоваться vi, поэтому просто установил nano и правильно отредактировал файл. Теперь это работает.

-1
28.01.2020, 05:11

Публикую как ответ, так как не могу комментировать.

Добавьте -vк своим scpвызовам, чтобы увидеть подробные выходные данные, которые могут указывать на проблему. Вы также можете попробовать rsync -v..., если вывод scp -v...не помогает.

1
28.01.2020, 05:11

Теги

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