Python paramiko.shh invoke_shell () Установите время ожидания для пользователя в Linux и проверьте, закрыт ли сеансLinux

Anonymous
Python paramiko.shh invoke_shell () Установите время ожидания для пользователя в Linux и проверьте, закрыт ли сеанс

Сообщение Anonymous »

Просто небольшой вопрос о Paramiko:, как я понимаю, обычный exec_command () является просто отправителем для отправки команд на устройство, но не хранит состояние «терминала». С другой стороны, есть Invoke_shell (), в котором хранится состояние «терминала». И, например, у меня есть тайм -аут для всех пользователей на моем устройстве для активных сеансов, например, 9999, и это читается. Но я не хочу ждать 9999, поэтому я хочу изменить его на 10 секунд, просто чтобы проверить, работает ли все нормально, мои правила применяются и т. Д., Поэтому я делаю Noprofile Bash и устанавливаю эту переменную как 10 сек: Exec Bash -noprofile -norc -c "Export tmout = 10". Если я сделаю это, используя метод invoke_shell () и send (), я не уволил свою сеанс, так как через 10 секунд я делаю Recv (1024) и вижу результат, но я должен был получить Paramiko.sshexception. А вот код: < /p>
command = f'exec bash --noprofile --norc -c "export TMOUT=10;"'
noprofile_shell = connection.invoke_shell()
noprofile_shell.send(command)

time.sleep(10)

with pytest.raise(paramiko.SSHException):
noprofile_shell.send("pwd")
noprofile_shell.recv(1024)
< /code>
Я сделал что -то не так? Или есть еще какие -нибудь способы проверить это?

Подробнее здесь: https://stackoverflow.com/questions/795 ... heck-if-se

Вернуться в «Linux»