Восстановите удаленный файл, который в настоящее время пишется в

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

Затем существует случай графической среды, который является, вероятно, что Вы главным образом после. Они зависят очень от среды. Gnome имеет менеджер сеансов, который обрабатывает запускающиеся вещи на входе в систему. Я предполагаю, что KDE имеет что-то подобное.

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

В основном нет никакого пути. Необходимо знать что-то о целевой среде.

6
27.02.2012, 01:42
2 ответа

Используя tail в следуют, режим должен позволить Вам делать то, что Вы хотите.

tail -n +0 -f /proc/<pid>/fd/<fd> > abc.deleted

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

Команда хвоста не может завершиться в конце загрузки, таким образом, необходимо будет завершить ее сами.

9
27.01.2020, 20:23
  • 1
    Собирался отправить то же самое. Кажется, хорошо работает для двоичных файлов (+1 работы также). –  Mat 26.02.2012, 18:48
  • 2
    Иногда, мы - счастливый делающий действительно странный материал –  Coren 26.02.2012, 20:38

На самом деле у меня была другая мысль. Если Вы используете другую команду для чтения /proc/<pid>/fd/<fd> и поддерживайте ту программу в рабочем состоянии затем, когда Вы загружаете, завершается, можно скопировать ее с соответствующего /proc/<pid2>/fd/<fd2> файл второй команды.

Просто попробуйте

less /proc/<pid>/fd/<fd>

в отдельной оболочке. Рассмотрение/proc записи для меньшего количества команды должно показать Вам Ваш удаленный файл.

3
27.01.2020, 20:23

Теги

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