Вопросы с тегом «debugging»

это процесс поиска и уменьшения количества ошибок или дефектов в компьютерной программе, благодаря чему она ведет себя так, как ожидается

135
Как отладить скрипт bash?

У меня проблемы с некоторыми скриптами в bash, по поводу ошибок и неожиданного поведения. Я хотел бы исследовать причины проблем, чтобы я мог применить исправления. Есть ли способ, которым я могу включить некий «режим отладки» для bash, чтобы получить больше...

135
Как я могу заставить Cron запустить работу прямо сейчас, для тестирования / отладки? без изменения графика!

У меня есть задание cron, которое планируется запускать каждый день, кроме изменения расписания. Есть ли другой способ выполнить тестовый прогон команды прямо сейчас, чтобы проверить, работает ли она как задумано?...

80
Устранение неполадок и устранение неполадок в сети Linux

Время от времени пользователи Linux и Unix сталкивались с различными сетевыми проблемами. Многие из этих проблем представлены здесь и на некоторых других форумах по поиску и устранению неисправностей, но они очень конкретны и содержат много дополнительной технической информации, а иногда довольно...

53
Как `git pull` съел мою домашнюю работу?

Я чувствую себя ребенком в кабинете директора, объясняя, что собака съела мою домашнюю работу накануне ее появления, но я смотрю на сумасшедшую ошибку потери данных на лице и не могу понять, как это произошло. Я хотел бы знать, как мерзавец мог съесть мое хранилище целиком! Я много раз вставлял...

50
Можем ли мы получить информацию о компиляторе из двоичного файла elf?

Есть ли шанс узнать, как был построен бинарный файл под Linux? (и / или другой Unix) Компилятор, версия, время, флаги и т.д ... Я посмотрел readelfи не смог найти много, но могут быть другие способы анализа двоичного кода / раздела и т. Д. Что-нибудь, что вы знаете, как...

44
Как узнать, где программа застряла в Linux?

Я выполняю следующую команду на моем сервере Ubuntu root@slot13:~# lxc-stop --name pavan --logfile=test1.txt --logpriority=trace Кажется, висит бесконечно. Всякий раз, когда это происходило в AIX, я просто получал PID процесса-нарушителя и говорил: $ procstack <pid_of_stuck_process> и раньше...

42
Как войти, перейти и выйти с GDB?

Я печатал, helpпока был в GDB, но ничего не нашел о переходе, переходе и выходе. Я поставил точку останова в программе сборки в _start( break _start). После этого я набрал текст, nextи он закончил отладку. Я предполагаю, что это было, потому что это закончилось _startи не вступило в действие, как я...

29
Как я могу увидеть точную командную строку, выполняемую внутри некоторого экземпляра bash?

У меня есть долго работающий bashэкземпляр (внутри screenсеанса), который выполняет сложный набор команд внутри цикла (каждый цикл выполняет конвейеры, перенаправления и т. Д.). Длинная командная строка была написана внутри терминала - она ​​не внутри скрипта. Теперь я знаю идентификатор процесса...

22
Среда взлома ядра

Я работал во встроенных ОС, таких как uCOS, ThreadX. Пока я кодировал приложения в Linux, сейчас я планирую начать изучать ядро ​​Linux. У меня есть несколько вопросов относительно окружающей среды. Какой дистрибутив является лучшим, в котором есть удобные инструменты для разработки ядра? (до сих...

20
Как я могу увидеть, какая команда была на самом деле запущена в оболочке, через псевдоним или функцию

Например, у меня есть функция bash (или псевдоним) function install() {sudo apt-get install $@}. При запуске команды install dicelab, я ожидаю, что на самом деле будет выполняться sudo apt-get install dicelab. Где я могу увидеть, что на самом деле было запущено оболочкой? Я хотел бы убедиться, что...

19
Как узнать, какой процесс пишет в STDOUT?

У меня есть два экземпляра запущенного процесса. Одним из них является "ОТКРЫТИЕ!" и ошибки печати без остановки на STDOUT. Я хочу убить прерванный процесс, но я должен убедиться, что не прервал неправильный. Они оба были запущены в одно и то же время, и topя вижу, что они используют примерно...

18
Инструменты для отладки таблиц маршрутизации на компьютере с Linux?

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

17
Отладочные сценарии, в чем разница между -x и set -euxo pipefail?

Основной способ отладки скриптов, который я знаю, - добавление -xв shabang ( #!/bin/bash -x). Недавно я наткнулся на новый способ, добавив set -euxo pipefailпрямо под шабан, как в: #!/bin/bash set -euxo pipefail В чем основное различие между двумя способами отладки? Есть ли моменты, когда вы бы...

17
Как скомпилировать без оптимизации -O0 с помощью CMake

Я использую Scientific Linux (SL). Я пытаюсь скомпилировать проект, который использует кучу файлов C ++ (.cpp). В каталоге user/project/Buildя ввожу, makeчтобы скомпилировать и связать все файлы .cpp. Затем я должен пойти user/run/и затем набрать./run.sh values.txt Для отладки с помощью GDB мне...

16
Может ли gdb отлаживать программы suid root?

Я написал программу, которая вызывает setuid(0)и execve("/bin/bash",NULL,NULL). Тогда я сделал chown root:root a.out && chmod +s a.out Когда я выполняю, ./a.outя получаю корневую оболочку. Однако, когда я это делаю, gdb a.outон запускает процесс как обычный пользователь и запускает...

15
Как я могу отладить проблему Suspend-to-RAM в Linux?

Я надеюсь получить основанные на опыте предложения о том, как отладить проблему приостановки в оперативную память. Советы, специфичные для моей ситуации (подробно описаны ниже), были бы хорошими, но я также заинтересован в общих советах о том, как отлаживать такие проблемы. Проблема: Часто, когда я...

14
strace для библиотечных звонков

Я знаю о strace, который очень удобен для просмотра системных вызовов. Есть ли аналог, который может отслеживать вызовы во внешние библиотеки? Например, я пытаюсь отладить некоторые ошибки SSLeay с помощью стороннего двоичного файла, к которому у меня нет доступа к коду (и кто не отвечает на...

14
Как заставить gdb не спрашивать меня «y или n»?

Когда я использую команду GDB add-symbol-fileдля загрузки символа, GDB всегда спрашивает меня 'y или n', например так: gdb> add-symbol-file mydrv.ko 0xa0070000 add symbol table from file "mydrv.ko" at .text_addr = 0xa0070000 (y or n) Как заставить его не спрашивать, а выполнять...