Во-первых, удостоверьтесь, что Ваш ТЕРМИН является правильным в каждом местоположении:
xterm
- что-то (например. xterm-256color
) в Вашей локальной оболочке, работающей в Вашем iTerm2 окнеxterm
- что-то в Вашей оболочке после SSHing к системе Linuxscreen
- что-то (например. screen-256color
) в Вашей оболочке, работающей под tmux в системе Linuxscreen
- основанный ТЕРМИН внутри tmux.Наличие xterm
НАЗОВИТЕ сразу снаружи tmux, позволит tmux распознавать измененные клавиши со стрелками, но он не передаст их через, если у Вас также не будет xterm-keys
опция окна включена. Вставьте это Ваш ~/.tmux.conf
в системе Linux:
set-window-option -g xterm-keys on
Последовательности для клавиш одновременно с "SHIFT" должны теперь сделать его до Emacs, работая внутри tmux, через соединение SSH, в iTerm2 окне.
Ссылка, которую кто-то предоставил в комментариях, вероятна Ваша лучшая возможность.
Linux debugfs Взлом: Восстановите Файлы после удаления
Та рецензия, хотя выглядя немного пугающей является на самом деле довольно прямой для следования. В целом шаги следующие:
Используйте debugfs для просмотра журнала файловых систем
$ debugfs -w /dev/mapper/wks01-root
При подсказке debugfs
debugfs: lsdel
Демонстрационный вывод
Inode Owner Mode Size Blocks Time deleted
23601299 0 120777 3 1/ 1 Tue Mar 13 16:17:30 2012
7536655 0 120777 3 1/ 1 Tue May 1 06:21:22 2012
2 deleted inodes found.
Выполните команду в debugfs
debugfs: logdump -i <7536655>
Определите файлы inode
...
...
....
output truncated
Fast_link_dest: bin
Blocks: (0+1): 7235938
FS block 7536642 logged at sequence 38402086, journal block 26711
(inode block for inode 7536655):
Inode: 7536655 Type: symlink Mode: 0777 Flags: 0x0 Generation: 3532221116
User: 0 Group: 0 Size: 3
File ACL: 0 Directory ACL: 0
Links: 0 Blockcount: 0
Fragment: Address: 0 Number: 0 Size: 0
ctime: 0x4f9fc732 -- Tue May 1 06:21:22 2012
atime: 0x4f9fc730 -- Tue May 1 06:21:20 2012
mtime: 0x4f9fc72f -- Tue May 1 06:21:19 2012
dtime: 0x4f9fc732 -- Tue May 1 06:21:22 2012
Fast_link_dest: bin
Blocks: (0+1): 7235938
No magic number at block 28053: end of journal.
С вышеупомянутым inode информация выполняет следующие команды
# dd if=/dev/mapper/wks01-root of=recovered.file.001 bs=4096 count=1 skip=7235938
# file recovered.file.001
file: ASCII text, with very long lines
Файлы, восстановленный к recovered.file.001
.
Если вышеупомянутое не для Вас, я использовал инструменты такой как photorec
для восстановления файлов в прошлом, но это приспособлено для файлов изображений только. Я записал об этом методе экстенсивно на моем блоге в этой названной статье:
Я не соглашаюсь, что это невозможно, просто очень очень трудно, и, и при этом я никогда не делал этого от Linux:
Когда файлы удалены, они на самом деле не удалены. То, что происходит, - то, что пространство, что они были на жестком диске, является видом сброса, так, чтобы, если компьютер пытается записать данные там, ничто не жаловалось. Обычно данные по Вашему жесткому диску, Вы думали, что удалили, могут быть там почти год спустя. Или по крайней мере, это - мой опыт в машине Windows. Работает ли это тот же путь от командной строки на Linux, я не уверен, но Вам, вероятно, был бы нужен отдельный Живой CD для открытия раздела как этот, и нет также никакой гарантии, которая файлы все еще там. Я сделал это на Windows XP несколько раз с помощью Нулевого Восстановления Предположения. Я уверен, что существует подобный инструмент вокруг, если Вы выглядите достаточно твердыми.
При удалении файла число каналов в inode таблице для того файла уменьшено одним. В Unix, когда число каналов раскрывается к 0, блоки данных для того файла отмечены как свободные и обычно, ссылки на те блоки данных потеряны. Я просто обнаружил из комментария @fedorqui, что может быть некоторый способ получить доступ к тем блокам, но это только применимо к ext3 файловой системе.
Один способ сохранить файлы будет состоять в том, чтобы записать функцию, которая позволит Вам перемещаться, файлы к области мусора (давайте скажем $HOME/.trash
) и восстановите необходимые файлы оттуда. Эта функция может быть искажена к rm
. Можно запланировать задание крона для удаления файлов, которые были в области мусора для определенного количества дней.
С немного возможности иногда я могу восстановить удаленные файлы с этим сценарием или следующим решением в ответе:
#!/bin/bash
if [[ ! $1 ]]; then
echo -e "Usage:\n\n\t$0 'file name'"
exit 1
fi
f=$(ls 2>/dev/null -l /proc/*/fd/* | fgrep "$1 (deleted" | awk '{print $9}')
if [[ $f ]]; then
echo "fd $f found..."
cp -v "$f" "$1"
else
echo >&2 "No fd found..."
exit 2
fi
Существует другой полезный прием: если Вы знаете шаблон в своих удаленных файлах, введите alt+sys+resuo к reboot+remount в только для чтения, то с живым CD, использовать grep
искать в жестком диске:
grep -a -C 500 'known pattern' /dev/sda | tee /tmp/recover
затем редактирование /tmp/recover
сохранять только, что было Вашим файлом (файлами) прежде.
Эй, если с философией Unix все - файлы, пора использовать в своих интересах это, нет?
grep
основанное решение очень умно и обработано для меня, даже с файловой системой, все еще смонтированной.Спасибо!
– wchargin
27.11.2014, 22:16
grep -av "[^[:print:]]"
– CJStuart
28.03.2017, 22:12
grep
решение работало на меня с модификацией: Я сделал sudo grep --line-buffered -ab "$PATTERN" /dev/sda1 | tee lines
и получил байтовые смещения (как 123123123:line\n456456456:another\n...
), затем сделал n=1000; sudo dd of=before if=/dev/sda1 ibs=1 skip=$[123123123-$n] count=$n
и n=1000; sudo dd of=after if=/dev/sda1 ibs=1 skip=123123123 count=$n
с различным n
значения.
– Kirill Bulygin
05.10.2017, 14:38
Это может сохранить неприятности для некоторых из вас.
Если вы когда-либо использовали Gedit, чтобы редактировать этот файл, по умолчанию будет создан копия этого файла.
Например, давайте предположим, что мы имеем случайность удаленного 'myfile.txt'.
В папке, которая используется для содержения файла, вы только что удалили, используйте эти команды, и вы восстановите копию оттуда:
LS | grep 'myfile.txt ~'
с небольшим количеством удачи вы найдете его, а затем:
CP 'MyFile.txt ~' 'myfile.txt'
Я восстановил файл, только сейчас, используя это метод.
Удачи!
подключение диска через внешний интерфейс
umount /dev/{sd*}
extundelete --restore-all /dev/{sd*}
Смотрите эту ссылку для получения более подробной информации: недоустановите только что удаленный файл на ext4 с помощью extundelete.
На прошлой неделе у меня была такая же проблема, и я перепробовал множество программ, таких как debugfs, photorec, ext3grep и extundelete. ext3grep была лучшей программой для восстановления файлов. Синтаксис очень прост:
ext3grep image.img --restore-all
или:
ext3grep /dev/sda3 --restore-all --after `date -d '2015-01-01 00:00:00' '+%s'` --before `date -d '2015-01-02 00:00:00' '+%s'`
Это видео представляет собой мини-учебник, который может вам помочь.
В качестве альтернативы можно использовать del
вместо rm
для удаления:
http: // fex .belwue.de / fstools / del.html
del
имеет функцию восстановления и работает с любой файловой системой.
Конечно, это не решение, если вы уже удалили свои файлы с помощью rm: -}
Herramientas de recuperación -Línea de comando:
Herramientas de recuperación -GUI:
Información:
En mi experiencia personal, recupero mis datos usando ufs -explorer y photorec
(1 )= No es de código abierto, no es gratuito
(2 )= No de código abierto, gratis
(3 )= Código abierto y gratuito
(4 )= Tiene soporte NTFS
(5 )= Tiene función de estructura de directorio
Fuentes:Linuxhacks.org
Divulgación :Soy el propietario de Linuxhacks.org
То, что сработало для меня, было дано arch(применимо только к текстовым файлам):
grep -a -C 200 -F 'Unique string in text file' /dev/sdXN
где /dev/sdXN
— это раздел, содержащий потерянный файл (проверьте с помощью mount
, если вы не уверены ).
Занимает некоторое время, но сработало, когда я случайно удалил исходный код, который еще не зафиксировал!
Хотя этот Вопрос решен и ему уже несколько лет, Хочу отметить утилиту testdisk .
Как восстанавливать файлы с помощью testdisk, подробно описано в этом руководстве . Чтобы восстановить файлы, запустите testdisk /dev/sdX
и выберите тип таблицы разделов. После этого выберите [ Advanced ] Filesystem Utils
, затем выберите свой раздел и выберите [Undelete]
. Теперь вы можете просматривать и выбирать удаленные файлы и копировать их в другое место в вашей файловой системе.
debugfs -w /dev/sdb2
ноlsdel
Саис:0 deleted inodes found.
– rubo77 11.09.2013, 10:54extundelete
легче для ext3/4 и вероятно привел бы к тем же результатам. – eadmaster 16.06.2015, 22:54/dev/mapper/wks01-root: No such file or directory while opening filesystem
Где Вы получали это/dev/mapper/wks01-root
от? – Marko Avlijaš 02.05.2017, 15:04