The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Как в скрипте определить, что сессия SSH или GUI не локальная?"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Открытые системы на рабочей станции (Консоль / Linux)
Изначальное сообщение [ Отслеживать ]

"Как в скрипте определить, что сессия SSH или GUI не локальная?"  +/
Сообщение от And (??), 03-Авг-21, 08:58 
Как проще в скрипте определять, что скрипт запустили в локальной сессии? Определить удалённый вход или запущено локально.

Две ситуации:
- главное - сессия в терминале через SSH,
- второстепенное - сессия с VNC или др. сервером.

Запускаю скрипт, в скрипте хочу определять локальная ли сессия или шелл запустился в окружении удалённой системы.

По каким переменным, признакам (по наличию или отсутствию) и т.п. лучше определять? Как лучше сделать?

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по времени | RSS]


1. "Как в скрипте определить, что сессия SSH или GUI не локальная?"  +/
Сообщение от Аноним (1), 03-Авг-21, 13:12 
> Как проще в скрипте определять, что скрипт запустили в локальной сессии? Определить
> удалённый вход или запущено локально.
> Две ситуации:
>  - главное - сессия в терминале через SSH,
>  - второстепенное - сессия с VNC или др. сервером.
> Запускаю скрипт, в скрипте хочу определять локальная ли сессия или шелл запустился
> в окружении удалённой системы.
> По каким переменным, признакам (по наличию или отсутствию) и т.п. лучше определять?
> Как лучше сделать?

lsof

Ответить | Правка | Наверх | Cообщить модератору

5. "Как в скрипте определить, что сессия SSH или GUI не локальная?"  +/
Сообщение от And (??), 03-Авг-21, 15:27 
В том и вопрос - какие конкретно признаки - переменные, файлы и т.п.
Ответить | Правка | Наверх | Cообщить модератору

6. "Как в скрипте определить, что сессия SSH или GUI не локальная?"  +/
Сообщение от Аноним (1), 03-Авг-21, 16:44 
> В том и вопрос - какие конкретно признаки - переменные, файлы и
> т.п.

1. grep socket
2.1  grep localhost in numeric view for IPv4 & IPv6 => detect for local mode
2.2. grep all non-local connection => detect non-local mode

Ответить | Правка | Наверх | Cообщить модератору

7. "Как в скрипте определить, что сессия SSH или GUI не локальная?"  +/
Сообщение от Аноним (1), 03-Авг-21, 16:45 
> В том и вопрос - какие конкретно признаки - переменные, файлы и
> т.п.

man lsof

Ответить | Правка | К родителю #5 | Наверх | Cообщить модератору

2. "Как в скрипте определить, что сессия SSH или GUI не локальная?"  +/
Сообщение от Ann None (?), 03-Авг-21, 14:49 
> Как проще в скрипте определять, что скрипт запустили в локальной сессии? Определить
> удалённый вход или запущено локально.
> Две ситуации:
>  - главное - сессия в терминале через SSH,
>  - второстепенное - сессия с VNC или др. сервером.
> Запускаю скрипт, в скрипте хочу определять локальная ли сессия или шелл запустился
> в окружении удалённой системы.
> По каким переменным, признакам (по наличию или отсутствию) и т.п. лучше определять?
> Как лучше сделать?

who am i

Ответить | Правка | Наверх | Cообщить модератору

3. "Как в скрипте определить, что сессия SSH или GUI не локальная?"  +/
Сообщение от Аноним (3), 03-Авг-21, 15:09 
cat /etc/hostname?
Ответить | Правка | Наверх | Cообщить модератору

4. "Как в скрипте определить, что сессия SSH или GUI не локальная?"  +/
Сообщение от And (??), 03-Авг-21, 15:26 
> cat /etc/hostname?

Это имя хоста, на котором работает.

Откуда взять в скрипте имя хоста, с которого запустили SSH, например, сессию?

По каким признакам в скрипте, программно можно понять сессия локальная или удалённая?

Ответить | Правка | Наверх | Cообщить модератору

9. "Как в скрипте определить, что сессия SSH или GUI не локальная?"  +/
Сообщение от Аноним (3), 04-Авг-21, 09:59 
> Откуда взять в скрипте имя хоста, с которого запустили SSH, например, сессию?

Через env передайте.
Тут никак иначе - только передавать с хоста, который делает подключение. Представьте, что удаленно по ссш дозвонились, а потом еще раз к локалхосту. Или из баша, который запущен после подключения ссш, запустили скрин и в нем новый баш, с очищенным окружением.

Ответить | Правка | Наверх | Cообщить модератору

8. "Как в скрипте определить, что сессия SSH или GUI не локальная?"  +/
Сообщение от sys (??), 03-Авг-21, 18:51 
> Две ситуации:
>  - главное - сессия в терминале через SSH,
>  - второстепенное - сессия с VNC или др. сервером.

если везде bash
set |grep SSH_CLIENT

Ответить | Правка | Наверх | Cообщить модератору

10. "Как в скрипте определить, что сессия SSH или GUI не локальная?"  +/
Сообщение от universite (ok), 05-Авг-21, 11:41 
>> Две ситуации:
>>  - главное - сессия в терминале через SSH,
>>  - второстепенное - сессия с VNC или др. сервером.
> если везде bash
> set |grep SSH_CLIENT

Лучше более универсальное, вне зависимости от шелла:
env |grep SSH_CLIENT

Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру