2009-08-27 4 views
0

Я работал над алгоритмом в Python, и я использовал Vim для редактирования этого файла. Я открыл его, сделал сэкономить, и он придумал ошибку, что-то вроде этого время от времени:Как я могу восстановить файл .nfs?

«ПРЕДУПРЕЖДЕНИЕ: ВАШ ФАЙЛ НЕ МОЖЕТ БЫТЬ СОХРАНЕН! ВСЕ ИЗМЕНЕНИЯ БУДУТ ПОТЕРЯНЫ! НЕ МОЖЕТ ПЕЧАТЬ ФАЙЛА!»

Как это иногда случается, я делал то, что я обычно делаю, и я ударил: q! выйти без каких-либо изменений. Нет вреда, не фол. Когда я посмотрел на свой файл, все было стерто! Все!

Я разговаривал по офису, и кажется, что гора nfs была заполнена, и именно поэтому я ничего не мог спасти. Был огромный сценарий, генерирующий тонну данных, из-за чего монтирование было полным. Я считаю, что монтирование NFS происходит из NetApp. Я нашел 2 файла в моем текущем каталоге.

Один последний раз был спасен два дня назад, а другой был сегодня. Они находятся в формате:

.nfs.xxxxxxxxxxx

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

Есть ли способ восстановить этот файл с этого монстра NFS? Если есть ярлык для восстановления этого файла в Emacs, я переключусь на Emacs из vim!

ответ

2

Итак, я нашел способ восстановить файл. На самом деле я нашел два пути. Поскольку это было на жестком диске NetApp NFS, я смог использовать функцию моментальных снимков. Когда вы находитесь в каталоге вобще

Ls .snapshot

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

Другим способом было переименовать файл в файл подкачки vim, подобный этому.

мв .nfs.xxx my_vim_file.cpp.swp ВИМ my_vim_file.cpp.swp

Затем попытаться открыть его в Vim, и он должен просить вас, если вы хотите восстановить файл подкачки, скажем, да , и он должен вернуться!

0

Очевидно, ваш Netapp использует NFS для монтирования своих томов (в отличие от iSCSI, например). Как правило, каждая виртуальная машина хранится на уникальном томе (aka datastore) в файле Netapp. Для того, чтобы выяснить объемы и снимки, а затем восстановить снимок, вот команды для выполнения в командной строке:

# list all volumes, snapshots are taken of volumes 
vol status 
# list the snapshots available for a particular volume 
snap list <vol_name> 
# restore a snapshot, nightly.1 for example 
snap restore <vol_name> nightly.1 

Вот так. Осталось только включить VM и посмотреть, восстановлен ли вы достаточно далеко назад. Если нет, выполните другое «восстановление snap», но с более старым снимком.

Обратите внимание, что эта процедура предполагает, что ваш администратор не отключил моментальные снимки (по умолчанию у Netapp есть расписание моментальных снимков) и что Netapp лицензирован для snaprestore (используйте команду «лицензия» для проверки). Эта процедура может быть упрощена, если у вас есть Netapp OnCommand System Manager, который является графическим интерфейсом для управления Netapp.Отмена моментального снимка в графическом интерфейсе проста:

Go to Storage > Volumes > click on a volume > click on Snapshot Copies (at the bottom) 
Choose a snapshot and restore 
Смежные вопросы