Linux: Как определить, управляется ли компьютер через последовательную консоль - PullRequest
0 голосов
/ 29 июля 2009

Как я могу программно определить, управляется ли машина Linux пользователем, который вошел в систему с помощью последовательной консоли?Я бы делал проверку через BASH.

Ответы [ 5 ]

2 голосов
/ 29 июля 2009

Команда who выдаст вам список пользователей, вошедших в систему и от которых они вошли.

Например:

~$ who
john    pts/1        2009-07-29 10:06 (ourcompanyvpnserver.org)
mary    tty7        2009-07-29 10:11 (:0)
frank    pts/2        2009-07-27 12:10 (att.net)
jim    pts/4        2009-07-28 14:51 (comcast.net)

Вывод who указывает «как» пользователи вошли в систему. Консоль пользователя mary подключена к tty7 tty указывает, что mary физически вошла через последовательную консоль. Таким образом, у Мэри есть возможность управлять компьютером через последовательную консоль.

Чтобы определить, что она делает, вам нужно взглянуть на файл her.bash_history. Обычно это в /home/mary/.bash_history.

Если вы хотите в долгосрочной перспективе регистрировать все команды, которые поступают через последовательную консоль (то есть клавиатуру, подключенную к этой машине), я бы изменил последовательный драйвер linux для регистрации всего ввода и вывода. Я не знаю, как тяжело это будет.

0 голосов
/ 29 июля 2009

Если вы хотите проверить, работает ли ваш скрипт на терминале через последовательный интерфейс, вы можете просто выполнить tty и проверить имя устройства.

0 голосов
/ 29 июля 2009

Вы можете использовать who из командной строки.

0 голосов
/ 29 июля 2009

Если вы хотите проверить это на локальном компьютере ...

$ who >> log.txt

И проверка, есть ли в этом файле лишняя строка или что-то еще.

0 голосов
/ 29 июля 2009

Попробуйте разобрать палец . Обычно вы можете подобрать IP / DNS-адреса. Я никогда не видел последовательное соединение, поэтому я не могу сказать, отображает ли оно последовательное соединение или нет.

...