Эти модули предназначены для реального -доступа к файлам антивирусного программного обеспечения. Судя по названию "Trend Deep Security Agent" Антивирус Trend Micro, но мог и другой.
The only way to gain the information I might need from screen (by calling screen) is through the use of it's command line flags.
Нееет. Вы смотрите на screen
неправильно. screen
является виртуальным псевдо-терминалом -(, поэтому он подключается к/dev/pts/*
)и может взаимодействовать с ним сотнями различных способов. В тот момент, когда вы запускаете screen
, вы получаете сокет, видимый в netstat
, с которым вы можете взаимодействовать, и то, как вы управляете этим взаимодействием с сокетом, будет определять, сколько времени займет данный обмен. Лучший способ сделать это общение как можно быстрее — воспользоваться тем, о чем уже сообщают, вместо того, чтобы отправлять запрос и ждать ответа.
В вашем случае проблему можно решить, запустив w
следующим образом:
shark@tank:~$ sudo w
20:39:11 up 2 days, 1:24, 2 users, load average: 0.64, 0.41, 0.44
USER TTY FROM LOGIN@ IDLE WHAT
shark tty7 :0 Sun19 2days /usr/lib/xorg/Xorg :0 *
fish pts/1 :pts/6:S.0 20:31 7:42 htop
, как вы можете видеть, второй пользователь fish
, работающий на сокете screen
, подключен к tty
на /dev/pts/1
, который принадлежит пользователю shark
, как можно увидеть, запустив ls -la /dev/pts/
, и этот сокет прослушивает в /dev/pts/6 и там работает htop
.
Как мы можем дважды -проверить, действительно ли это сокетное соединение? Запустив:
sudo file /run/screen/*/*
/run/screen/S-fish/98633.pts-6.tank: socket
и число, которое мы видим, соответствует
ps aux | grep 98633 -B 1 -A 1
fish 98632 0.0 0.0 6732 2964 pts/6 S+ 20:31 0:00 screen
fish 98633 0.0 0.0 7032 2576 ? Ss 20:31 0:00 SCREEN
fish 98634 0.0 0.0 8660 5400 pts/1 Ss+ 20:31 0:00 /bin/bash
Команда запрашивает эту информацию из /proc
и /var/run/utmp
, и попадание минимально, как можно увидеть, запустив:
$ sudo usr/bin/time -f "\t%E real\n\t%U user\n\t%S sys\n" w > /dev/null
0:00.01 real
0.00 user
0.01 sys