На Linux-сервере недостаточно места, и он не может выполнять команды и выполнять команды

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

# dd bs=1M iflag=fullblock if=/dev/sdb skip=X count=Y | grep...

Промыть и повторить для всех кусков. Если вы не уверены, будут ли данные правильно выровнены, сделайте так, чтобы фрагменты перекрывались (next X=X+Y -1 ).

В качестве альтернативы, stringsвероятно, позволит избежать нехватки памяти (маловероятно появление очень длинных строк печатаемого ASCII ). Затем у вас есть список смещений для проверки. Это могут быть ложные совпадения, поскольку stringsисключает часть \xba\xbe.

# strings -t d -n 4 /dev/sdb | grep 'LUKS$'
11534336 LUKS
23068672 LUKS
34603008 LUKS
# losetup --find --show --offset=23068672 /dev/sdb
/dev/loop9
# cryptsetup luksDump /dev/loop9

Такие инструменты, как testdiskилиbinwalkпользовательской магической подписью ), могут более эффективно находить заголовки LUKS. Но для быстрого взлома stringsобычно работает достаточно хорошо.

-1
09.01.2020, 08:53
1 ответ

Если вы действительно не можете выполнять какие-либо команды на терминале. Вы можете попробовать:

  1. Загрузитесь с liveCD (usb ), чтобы освободить место на локальном компьютере.
  2. Загрузитесь в режиме восстановления из grub.
0
28.01.2020, 05:11

Теги

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