Я нашел, как это исправить в зависимости от ситуации.
Следующая команда сделала мне подсказку
$ lsof -U +c 15 | cut -f1 -d' ' | sort | uniq -c | sort -rn | head -3
382 zenity
256 dbus-daemon
212 chrome
Я взял первое имя процесса и мало читал о нем. Из Википедии
Zenity is free software and a cross-platform program that allows the execution of GTK+ dialog boxes in command-line and shell scripts.
Затем я перечислил процессы и отфильтровал их по клавише zenity
$ ps axwwu | grep -i zenity
tom 762 0.0 0.2 390752 27476 ? Sl Jun06 0:01 /usr/bin/zenity --notification --window-icon /usr/share/icons/gnome/32x32/status/mail-unread.png --text You have new mail
tom 1239 0.0 0.2 390756 27700 ? Sl Jun06 0:01 /usr/bin/zenity --notification --window-icon /usr/share/icons/gnome/32x32/status/mail-unread.png --text You have new mail
tom 1249 0.0 0.2 390760 27752 ? Sl Jun02 0:01 /usr/bin/zenity --notification --window-icon /usr/share/icons/gnome/32x32/status/mail-unread.png --text You have new mail
...
Ага! Это связано с всплывающими уведомлениями по электронной почте
.$ pidof zenity | wc -w
186
$ killall zenity
$ pidof zenity | wc -w
0
$ lsof -U +c 15 | cut -f1 -d' ' | sort | uniq -c | sort -rn | head -3
140 chrome
61 dbus-daemon
37 skypeforlinux
# lsof -p `pidof X` | tail -n 10
lsof: WARNING: can't stat() fuse.gvfsd-fuse file system /run/user/1000/gvfs
Output information may be incomplete.
Xorg 1672 root 58u unix 0xffff8801c05221c0 0t0 9714900 @/tmp/.X11-unix/X0
Xorg 1672 root 59u unix 0xffff8801c0527440 0t0 9715809 @/tmp/.X11-unix/X0
Xorg 1672 root 62u CHR 13,79 0t0 9540231 /dev/input/event15
Xorg 1672 root 69u unix 0xffff88031c155280 0t0 175280 @/tmp/.X11-unix/X0
Xorg 1672 root 79u unix 0xffff880063b103c0 0t0 9243076 @/tmp/.X11-unix/X0
Xorg 1672 root 90u unix 0xffff880111b22940 0t0 2858278 @/tmp/.X11-unix/X0
Xorg 1672 root 96u unix 0xffff88000aeb2d00 0t0 9301134 @/tmp/.X11-unix/X0
Xorg 1672 root 113u unix 0xffff880063b14b00 0t0 939782 @/tmp/.X11-unix/X0
Xorg 1672 root 153u unix 0xffff880111a47080 0t0 1819503 @/tmp/.X11-unix/X0
Xorg 1672 root 256u REG 0,16 4096 22306 /sys/devices/pci0000:00/0000:00:02.0/drm/card1/card1-LVDS-1/intel_backlight/brightness
# lsof -p `pidof X` | wc -l
lsof: WARNING: can't stat() fuse.gvfsd-fuse file system /run/user/1000/gvfs
Output information may be incomplete.
524
Вуаля! Теперь я могу запустить другие приложения (, пока zenity или другое приложение с ошибками не съест все доступные соединения ).
ПРИМЕЧАНИЕ. Мне все равно придется разбираться, как запретить zenity сохранять соединения
Что ж, коррупция кажется единственным возможным объяснением (кто-то сделал cp file /dev/loopX
или подобное ). loop aes не имеет метаданных, поэтому файл должен быть случайным повсюду (, возможно, за исключением секторов, в которые никогда не производилась запись, то есть «свободного пространства» ).
Вам не нужно нечетное смещение, вам нужно использовать исходное смещение, чтобы иметь шанс расшифровать части, которые не были перезаписаны.
К сожалению, loop aes не является очень последовательным стандартом, см. также наблюдения loop -aes из часто задаваемых вопросов по cryptsetup .
Единственный случай, когда применимо измененное смещение, — это если файл был фактически создан с помощью cat cleartextfile aesfile > newaesfile
или аналогичного, т. е. если данные были целыми, но перемещены в более позднее смещение в файле. Но тогда у вас будет нечетный размер файла, а не 4G, так что вы можете исключить это.
it complains about the file system not being specified
Что ж, это ожидаемо, если заголовки файловой системы были перезаписаны, -вам придется просмотреть расшифрованные необработанные данные, чтобы выяснить, нет ли в них чего-то -тарабарщины. Все, что является открытым текстом в файле aes, будет тарабарщиной в расшифрованном виде, независимо от того, какой пароль вы выберете...