LINUX.ORG.RU

[gdb] дайте ссылку на howto c картинками

 


0

0

Присоединяюсь к Linux-серверу через ssh, хочу задебужить программу так,
чтобы ее ввод-вывод шел на консоль linux-сервера, а ввод-вывод gdb - через ssh на мою машину
-tty=device
Run using device for your program's standard input and output.
Не получилось запустить gdb из ssh таким образом, чтобы вывод программы шел на /dev/vcs1
использовал строку запуска
gdb a.out -tty /dev/vcs1
При этом на /dev/vcs1 выводится сообщение:
warning: GDB: Failed to set controlling terminal: Inappropriate ioctl for device
Почему не получилось? Как сделать это правильно?

Ответ на: комментарий от ArsenShnurkov

> Если я делаю так, то выдается сообщение
>

> warning: GDB: Failed to set controlling terminal: Operation not permitted


А ты на нем залогинен?

eXire ★★
()
Ответ на: комментарий от ArsenShnurkov

$ gdb -tty /dev/tty1 /bin/ls

<skipped>

(gdb) set args /
(gdb) run

<skipped>

Program exited normally.
(gdb)

На /dev/tty1 (т.е. на первом виртуальном терминале) вывод 'ls /'

eXire ★★
()
Ответ на: комментарий от eXire

localhost ~ # w
20:05:05 up 44 min, 6 users, load average: 0.58, 0.85, 0.62
USER TTY LOGIN@ IDLE JCPU PCPU WHAT
root tty1 19:24 37.00s 0.04s 0.02s -bash
bars tty2 20:04 27.00s 0.05s 0.00s /bin/sh /usr/bin/startx
root pts/1 19:41 0.00s 0.00s 0.00s -bash
bars pts/2 20:04 24.00s 0.01s 0.01s bash
bars pts/0 20:04 24.00s 0.00s 0.00s bash
bars pts/3 20:04 24.00s 0.00s 0.00s bash

ArsenShnurkov
() автор топика
Ответ на: комментарий от ArsenShnurkov

А не запущены ли на tty1 какие-либо процессы в background'e. Если да, то это может быть причиной EPERM'a.

Для уверенности, можно еще послать bash'у, который на tty1, SIGSTOP.

eXire ★★
()
Ответ на: комментарий от eXire

Для чистоты эксперимента я попробовал на /dev/tty2, в который только что залогинился. То же самое. Т.е. stdout выводится на tty2, но перед этим выводиться warning. Может это и не страшно, а может stdin работать не будет.

ArsenShnurkov
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.