Как восстановить удаленные файлы midnight commander

Обновлено: 07.07.2024

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

Midnight Commander , он же mc , относится к тому ПО, которое ставится на сервер в первую очередь. Если вы подключились к уже настроенному серверу, то он там с очень большой вероятностью уже будет. Установить его также несложно:

Для запуска выполните простую команду:

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

Основы навигации должны быть известны всем, но тем не менее повторимся: для перемещения внутри панелей следует использовать клавиши со стрелками, PageUp и PageDown прокручивают содержимое на размер экрана вверх или вниз, а Home и End перемещают в начало или конец списка, для переключения панелей используется Tab, сочетание клавиш Ctrl + o сворачивает панели и дает доступ к консоли, повторное нажатие этих же клавиш восстанавливает панели. Основы навигации должны быть известны всем, но тем не менее повторимся: для перемещения внутри панелей следует использовать клавиши со стрелками, PageUp и PageDown прокручивают содержимое на размер экрана вверх или вниз, а Home и End перемещают в начало или конец списка, для переключения панелей используется Tab, сочетание клавиш Ctrl + o сворачивает панели и дает доступ к консоли, повторное нажатие этих же клавиш восстанавливает панели.

Нижнее меню предлагает ряд часто используемых действий, привязанных к функциональным клавишам Fn, цифра, написанная около пункта меню, обозначает номер функциональной клавиши, например, F5 - копирование, F8 - удаление. Клавиша F9 перемешает нас в верхнее меню менеджера, навигация по которому осуществляется с помощью клавиш со стрелками.

Разделы Левая панель и Правая панель верхнего меню идентичны и содержат настройки отображения панелей, также отсюда можно инициализировать внешнее FTP или SSH соединение, после чего панель будет отображать содержимое удаленного узла.

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

Раздел Команда предоставляет доступ к возможностям самого файлового менеджера, управлению панелями и доступ к некоторым системным функциям: Раздел Команда предоставляет доступ к возможностям самого файлового менеджера, управлению панелями и доступ к некоторым системным функциям: В Настройках находятся собственно настройки, на которых мы остановимся подробнее, потому как ряд опций следует включить практически сразу же, так как они сильно влияют на удобство работы. В Настройках находятся собственно настройки, на которых мы остановимся подробнее, потому как ряд опций следует включить практически сразу же, так как они сильно влияют на удобство работы. Большинство пользователей mc используют встроенный редактор mcedit, если вы входите в их число, то сразу включите его использование в разделе Конфигурация. Большинство пользователей mc используют встроенный редактор mcedit, если вы входите в их число, то сразу включите его использование в разделе Конфигурация. А в разделе Подтверждение включите запрос подтверждения на выход из менеджера, что избавит вас от случайного закрытие приложения при нажатии на клавишу F10. А в разделе Подтверждение включите запрос подтверждения на выход из менеджера, что избавит вас от случайного закрытие приложения при нажатии на клавишу F10. После чего не забудьте сохранить настройки, через одноименный пункт в меню, настройки менеджера индивидуальны для каждого пользователя и хранятся в После чего не забудьте сохранить настройки, через одноименный пункт в меню, настройки менеджера индивидуальны для каждого пользователя и хранятся в

Закончив с настройками, перейдем к приемам работы. В каждый отдельный момент времени в активной панели у нас выбран какой-либо файл или директория над которыми будут выполняться заданные нами действия. Если нам требуется обработать сразу несколько файлов или директорий, то их следует выделить при помощи клавиши Insert, выделенные файлы подсвечиваются желтым цветом, повторное нажатие снимает выделение.

Но это простая задача, гораздо чаще требуется отобрать файлы по какой-то маске, скажем по части имени или расширению. Midnight Commander умеет и это, нажмите в списке файлов клавишу +, после чего укажите маску отбора, допустимо использовать регулярные выражения. Но это простая задача, гораздо чаще требуется отобрать файлы по какой-то маске, скажем по части имени или расширению. Midnight Commander умеет и это, нажмите в списке файлов клавишу +, после чего укажите маску отбора, допустимо использовать регулярные выражения. Например, указанная выше маска в нашем случае выделит файлы conf1 и file1. Существует также и обратная возможность - снять выделение по маске с части файлов, для этого используйте клавишу -, принцип действия точно такой же, как и в предыдущем примере. Использование этих возможностей достаточно удобно, скажем, быстро выделить группу файлов по широкой маске, затем снять выделение с некоторых по более узкой. Для того, чтобы инвертировать выделение можно использовать клавишу *, но учтите, что это работает только для файлов. Например, указанная выше маска в нашем случае выделит файлы conf1 и file1. Существует также и обратная возможность - снять выделение по маске с части файлов, для этого используйте клавишу -, принцип действия точно такой же, как и в предыдущем примере. Использование этих возможностей достаточно удобно, скажем, быстро выделить группу файлов по широкой маске, затем снять выделение с некоторых по более узкой. Для того, чтобы инвертировать выделение можно использовать клавишу *, но учтите, что это работает только для файлов.

В некоторых случаях в текущей директории могут появиться файлы, генерируемые сторонними программами, скажем, файлы логов или закачек. Но панели Midnight Commander не отображают текущих изменений, чтобы принудительно обновить содержимое нажмите Ctrl + r, в других ситуациях на экране может нарушиться отображение или остаться артефакты от других программ, которые вы запускали из среды менеджера, для перерисовки экрана следует использовать сочетание Ctrl + l.

Перейдем к операциям копирования и перемещения/переименования. Последние две операции с точки зрения файловой системы представляют одно и тоже действие, поэтому нажатием на F6 мы может либо переместить, либо переименовать, либо совместить оба этих действия. А в остальном вроде бы все просто, но не будем делать поспешных выводов. При копировании или перемещении открывается дополнительное окно, которое содержит поля шаблонов исходного и конечного мест назначения. Что это и для чего нужно?

В этих полях мы можем использовать подстановочные символы: * - для группы символов и ? - для одиночного в шаблонах источника, а в шаблоне приемника указать \n - где n - номер символа или группы символов. Самый простой пример: мы хотим переместить файлы conf1 - conf3 и переименовать их в config1 - config3 . Нет ничего проще, выделяем все три файла, шаблон источника заполняем маской по числу символов в исходном имени - . , а шаблон приемника указываем как config\5 - т.е. добавить к указанному имени пятый символ из источника.

Возьмем задачу посложнее, допустим у нас есть файл myservice.conf и мы хотим при копировании поменять местами имя и расширение. В шаблоне источника разделим исходное имя на группы символов: *.* , а в шаблоне приемника укажем \2.\1 . Первое выражение указывает, что у нас до точки одна группа символов, а после нее другая. Второе предписывает сначала поставить вторую группу символов, затем точку (она не входит ни в одну группу), а после нее вывести первую.

Еще сложнее, допустим мы хотим вместо myservice.conf получить servicemy.conf , в этом случае исходный шаблон будет выглядеть так: *s*.* , мы поделили имя на три части, разделители s и точка . Шаблон приемника укажем как: s\2\1.\3 - т.е. выводим сначала первый символ разделитель, потом вторую группу символов, за ней первую, точку и третью группу.

Как видим - возможности весьма богатые и освоив их вам не составит особого труда скопировать, скажем, фотографии с карты памяти, попутно переименовав их из какого-нибудь DSCN0439.JPG в Poezdka_more_2019_039.jpg .

Следующая, часто встречающаяся задача - это изменение прав или владельца объекта. Используйте сочетание клавиш Ctrl + x c (набирается как одновременное нажатие Ctrl и х , затем с ) для изменения прав. Можно выделить и изменить права сразу нескольким объектам, но при этом вам будут показаны текущие права только первого выбранного файла.

Иногда случается, что мы случайно удаляем еще нужные нам файлы. Особенно это опасно в терминале Linux, поскольку здесь файлы удаляются не в корзину, а стираются с диска сразу и навсегда.

Понятно, что нужно аккуратно обращаться с командами удаления файлов, но что делать если уже все удалено, а файлы были важные и их нужно срочно восстановить? В некоторых случаях это возможно. В нашей сегодняшней статье мы рассмотрим восстановление удаленных файлов linux.

Немного теории

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

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

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

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

1. Safecopy

Safecopy - это довольно простой инструмент для восстановления данных, который просто копирует данные из одного места в другое. Утилита, как таковая, не восстанавливает отдельные файлы. Она просто позволяет скопировать данные из поврежденного устройства на нормальное.

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

Утилиту можно установить из официальных репозиториев вашего дистрибутива. Пользователи Ubuntu могут воспользоваться такой командой:

sudo apt install safecopy

Здесь вы не восстановите удаленные файлы, но вы можете скопировать поврежденные данные. Например, для видео несколько повреждений не играют большой роли. Для запуска восстановления файлов в linux с раздела /dev/sda1 выполните:

sudo safecopy /dev/sda1 /home/files/

Все файлы, которые удастся скопировать будут в /home/files/.

2. TestDisk

Утилита может восстанавливать потерянные разделы, исправлять таблицу разделов GPT и MBR, делать резервные копии дисков, восстанавливать загрузочные записи, а главное восстанавливать удаленные файлы с файловых систем NTFS, FAT, exFAT и файловых систем семейства Ext. Также вы можете копировать файлы даже с удаленных разделов для тех же файловых систем.

Способ работы утилиты очень сильно отличается в зависимости от нужного действия. Здесь вас ждет псевдографический мастер, который проведет вас через все шаги. Установить testdisk можно так же само из официальных репозиториев. В Ubuntu используйте для этого команду:

sudo apt install testdisk

Поскольку тема нашей статьи - восстановление файлов linux, рассмотрим как это делается с помощью этой утилиты. Запустите программу:

На первом шаге мастера выберите Create New Log:

testdisk4

Дальше выберите диск, с которым будем работать:

testdisk3

Выберите таблицу разделов на диске:

testdisk5

Для работы с файловой системой выберите пункт Advanced:

testdisk1

Далее выберите раздел, затем команду list:

testdisk

Тут вы увидите все файлы, которые есть на этом разделе. Удаленные, но подлежащие восстановлению файлы будут помечены красным.

testdisk2

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

3. PhotoRec

Наша последняя программа ориентирована в первую очередь на поиск и восстановление удаленных видео, фото, документов и архивов. Можно сказать, что это программа восстановления удаленных файлов linux. Преимущество PhotoRec заключается в том, что она полностью игнорирует файловую систему и смотрит на сырые данные, а это значит, что она все равно будет работать, даже если файловая система повреждена или переформатирована, но только в быстром режиме, там где стираются лишь заголовки.

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

В утилиты есть несколько настроек. Вы можете указать расширения файлов, которые нужно найти, размер, дату изменения и так далее. Установить программу можно так же как и TestDisk - из официальных репозиториев.

Например, в Ubuntu выполните:

sudo apt install photorec

Что касается использования, то тут похожий на testdisk интерактивный интерфейс. Запустите утилиту командой:

Выберите диск, с которым нужно работать:

photorec

photorec1

Выберите файловую систему:

photorec2

Выберите способ сканирования (неразмеченное пространство/весь раздел) Затем выберите папку для сохранения результата:

photorec3

Дождитесь завершения процесса:

photorec4

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

Выводы

А какие ваши любимые утилиты для восстановления данных? Какими вы пользуетесь? Напишите в комментариях!

На десерт видео от Discovery о том, как работает жесткий диск:


Как вы помните, Veeam Agent for Linux успешно сохранил бэкап на сервер NFS. Запустим уже знакомый нам UI, введя команду
veeam
Сверим часы, то есть данные о последней сессии задания резервного копирования:


Внизу, в списке команд теперь появилась команда R (Recover Files) – восстановить файлы. По ней будет выведена информация о имеющихся в наличии резервных копиях: какой хост был в работе, какое задание создало бэкап, сколько получилось точек восстановления (в нашем случае – одна) и в какое время.


Дважды нажимаем Enter, и выбранный бэкап монтируется на файловую систему нашего хоста в папку /mnt/backup:


Почему мы решили ограничиться этой операцией? Просто подумали, что у пользователей обычно есть свои предпочтения в работе с файлами, и ни к чему изобретать велосипед. Так что после того, как прошло монтирование, вы можете задействовать привычный для вас способ – например, командную строку или популярный Midnight Commander (mc):


Теперь рассмотрим, как выполняется восстановление тома целиком. Для начала выполняем загрузку машины с использованием Veeam Recovery Media (скачивается вместе с установочным пакетом решения Veeam Agent for Linux). Он запускается, используя файл ISO.

Veeam Recovery Media открывает нам графический интерфейс с вот таким набором команд:


Здесь есть возможность восстановления томов (Restore volumes), восстановления файлов (Restore files), настроек сети (Configure network), перехода к командной строке (Switch to command line), а также перезагрузки (Reboot) и выключения (Shutdown).
Если, как в нашем примере (и как рекомендовано!), бэкап хранится вовсе не на локальной машине, а на сетевой СХД, то нужно до начала процедуры восстановления убедиться в наличии доступа к месту хранения бэкапа, а в ходе самой процедуры — выполнить настройку параметров сети. Можно задать настройки вручную. Для этого:

    В данном меню выбираем пункт Configure network, затем выбираем в списке нужный сетевой адаптер, который будет использоваться для соединения с СХД, и жмем Enter.


Если вы работаете с сервером DHCP, то нужные настройки Veeam Agent for Linux сделает автоматически – если в диалоге Configure adapter выбрать Auto.



Полезно: Если ваши бэкапы хранятся на одном из локальных устройств, то на шаге Select Backup Location вы, естественно, выберете опцию Mount local disk. При этом можно будет выполнять монтирование многократно — для нескольких устройств, на которых живут файлы резервных копий. Для этого нужно вернуться на шаг выбора местонахождения бэкапа Select Backup Location и опять выбрать опцию Mount local disk.

    Restore volume from (восстановить том) – восстановить данный том из бэкапа.

Любимый многими файловый менеджер mc имеет в своем составе средство восстановления файлов, которое иногда может помочь. Запустите mc от имени суперпользователя. Выполните команду меню Команда?Восстановление файлов. Затем введите имя файла устройства, на котором находится нужный раздел, без /dev: например, hda4. Через некоторое время Midnight Commander представит вам список удаленных индексных дескрипторов. Если вы не знаете номер i-узла удаленного файла, вам придется просмотреть их все, чтобы найти нужный вам файл. Но гарантии того, что вы его найдете, нет никакой.

Данный текст является ознакомительным фрагментом.

Продолжение на ЛитРес

Глава 6. Программа Midnight Commander

Глава 6. Программа Midnight Commander 6.1. Установка программы Midnight Commander Хотя для управления файловой системой и вообще для работы с файлами можно использовать такие команды операционной системы, как pwd, ls, cd, mv, mkdir, rmdir, cp, rm, cat, more и т. д., гораздо удобнее делать большую часть работы по

6.1. Установка программы Midnight Commander

6.1. Установка программы Midnight Commander Хотя для управления файловой системой и вообще для работы с файлами можно использовать такие команды операционной системы, как pwd, ls, cd, mv, mkdir, rmdir, cp, rm, cat, more и т. д., гораздо удобнее делать большую часть работы по обслуживанию файловой

6.2. Внешний вид экрана Midnight Commander

6.2. Внешний вид экрана Midnight Commander Для того, чтобы запустить Midnight Commander, надо набрать в командной строке оболочки mc и нажать ‹Enter›. Если программа не запустилась, надо найти, где расположен исполняемый файл с именем mc, воспользовавшись командой find / name mc, после чего указать в

12.5.3 CoolEdit - встроенный редактор программы Midnight Commander

12.5.3 CoolEdit - встроенный редактор программы Midnight Commander CoolEdit - это простая в использовании программа с привычными для большинства пользователей (особенно для тех, кто работал с Norton Commander под DOS или с FAR под WINDOWS) комбинациями управляющих клавиш. Кроме того, надо учитывать, что

П8. К главе 6 "Программа Midnight Commander"

FTP-клиент в Total Commander

Symbol Commander

Symbol Commander Symbol Commander – это еще одна программа для выполнения различных команд с помощью жестов. Окно настройки (вызываемое щелчком кнопки мыши на значке программы в области уведомлений) содержит перечень предустановленных жестов (рис. 4.33). Рис. 4.33. Окно программы Symbol

Total Commander

EF Commander

Pablo Commander

Offline Commander

P2k Commander

P2k Commander Эта небольшая по размеру программа позволяет «увидеть» файловую систему телефона. Как будет показано дальше, большая часть пользовательской информации и настроек хранится в памяти телефона в виде файлов. Они могут быть вложены в папки подобно тому, как

Total Commander

Total Commander История Total Commander началась в середине 1990-х годов. Раньше эта программа называлась Windows Commander, однако под давлением Microsoft была переименована. Она относится к первому поколению файловых менеджеров, написанных под Windows. До сих пор Total Commander предоставляет своим

Интерфейс Total Commander

Интерфейс Total Commander Запустить Total Commander можно с помощью ярлыка на Рабочем столе или в меню Всепрограммы. Если вы собираетесь постоянно использовать эту программу, то можете поместить ее ярлык в закрепленную область меню Пуск. Экран программы после запуска показан на рис.

Читайте также: