debugging

gdb를 사용하여 바이너리 파일을 디버깅하는 방법
debugging

gdb를 사용하여 바이너리 파일을 디버깅하는 방법

현재 일정 기간 사용 후 일반적으로 잠기는 바이너리 프로그램이 있습니다. 화면 오른쪽에 있는 바를 클릭하고 마우스 왼쪽 버튼으로 빠르게 움직일 때 발생할 수 있습니다. 예를 들어, 다음 명령을 사용하여 이러한 프로그램을 실행하고 있습니다. LD_LIBRARY_PATH=/arquivos/Gtk+-3.4.0/lib/:/xorg/X11-1.4.4/lib/:/xorg/Xcb-1.4/lib/:/arquivos/Dbus-1.10.2/lib gdb ./firefox 그런 다음 gdb에 "run"을 입력하고 Fi...

Admin

pam_systemd_home.so에 대한 디버그 메시지를 활성화하는 방법은 무엇입니까?
debugging

pam_systemd_home.so에 대한 디버그 메시지를 활성화하는 방법은 무엇입니까?

매뉴얼에는 다음 pam_systemd_home을 사용하여 디버그 메시지를 활성화할 수 있다고 debug=yes명시 되어 있습니다.어디말해보세요. 관련 줄에 옵션을 추가하려고 시도했지만 pam.d/system-auth구문 오류가 발생하여 비활성화되었습니다 . 파일을 편집하고 변경 사항을 되돌릴 수 있도록 허용 sudo해야 합니다 .su ...

Admin

루프백 인터페이스에 대한 XDP 일반 전송 패킷이 삭제되었습니다.
debugging

루프백 인터페이스에 대한 XDP 일반 전송 패킷이 삭제되었습니다.

xdp를 통해 UDP 패킷을 전송하려고 하는데(수신은 제대로 작동함) UDP가 패킷을 처리하기 전에 패킷이 삭제됩니다. 커널: Linux fedora 6.5.12-300.fc39.x86_64 #1 SMP PREEMPT_DYNAMIC Mon Nov 20 22:44:24 UTC 2023 x86_64 GNU/Linux PRETTY_NAME="Fedora Linux 39(워크스테이션 에디션)" 내 xdp 프로그램과 소켓이 사용됩니다 xdpgeneric. 패킷이 전송되는 것을 보고 tcpdumpip_rcv ...

Admin

bzImage 압축 해제를 디버깅하는 방법은 무엇입니까?
debugging

bzImage 압축 해제를 디버깅하는 방법은 무엇입니까?

gdb를 통해 커널을 디버깅할 때 vmlinux가 필요하다는 것을 이미 알고 있습니다. 하지만 bzImage의 압축 해제 및 EFI 진입점을 디버깅해야 합니다. 이 경우 gdb를 사용하여 bzImage를 디버깅하는 방법은 무엇입니까? 현재는 bzImage를 로드하더라도 심볼이 없어 디버깅이 어렵습니다. ...

Admin

"sendto" 시스템 호출에 대한 응답으로 패킷이 손실되는 이유를 어떻게 알 수 있습니까?
debugging

"sendto" 시스템 호출에 대한 응답으로 패킷이 손실되는 이유를 어떻게 알 수 있습니까?

strace ... -e sendto어딘가에 UDP 데이터그램을 보내려는 성공적인(즉, 양수 반환 값) 시도의 결과를 표시하지만 tcpdump -i any해당 네트워크 네임스페이스에 연관된 응답은 표시하지 않습니다. sendto나가는 패킷이 발생하지 않는 이유를 어떻게 디버깅할 수 있습니까 ? 모든 계층(라우팅, 흐름 제어, nftables 등)에서 요청을 추적하고 데이터그램 내의 정보가 커널에서 사라질 때 출력할 수 있는 도구가 있습니까? 아니면 체크리스트가 포함된 가이드/문서가 있나요?상세한이런 ...

Admin

메모리 누수 디버깅: 분할 오류 후 코어 덤프에 트레이스백이 저장되지 않음
debugging

메모리 누수 디버깅: 분할 오류 후 코어 덤프에 트레이스백이 저장되지 않음

저는 임베디드 Linux 시스템(kernel-5.10.186)을 개발 중이며 프로그램의 메모리 누수를 디버깅하고 싶습니다. 를 통해 pmap -x PID프로세스의 힙이 계속 증가한다는 사실을 발견했습니다. 증가가 어디서 오는지 알아내기 위해 커널 mm/mmap.c에 다음 코드를 추가했습니다. --- a/kernel/kernel-5.10/mm/mmap.c +++ b/kernel/kernel-5.10/mm/mmap.c @@ -269,6 +269,12 @@ SYSCALL_DEFINE1(brk, unsig...

Admin

다른 사용자 공간 프로세스로 인한 pselect 지연
debugging

다른 사용자 공간 프로세스로 인한 pselect 지연

나는 다음을 가지고 있습니다전제리눅스의 경우: 직렬 장치에서 pselect를 사용하여 직렬 데이터를 읽는 프로세스를 사용하고 있습니다 /dev/ttySX. 데이터는 400Hz의 안정적인 주파수로 입력됩니다. 이 프로세스의 대기 시간을 최적화하기 위해 몇 가지 조치를 사용했습니다. 읽기 스레드는 선호도를 사용하여 하나의 코어에 고정되어 있으며 해당 코어에서는 어떤 작업도 실행할 수 없습니다. 이는 cgroups/cpuset을 통해 수행됩니다. 읽기 스레드의 RT prio는 SCHED_FIFO 정책을...

Admin

lldb의 dylib에서 코드를 디버그하는 방법
debugging

lldb의 dylib에서 코드를 디버그하는 방법

동적으로 연결된 ffmpeg 라이브러리를 사용하는 Rust 코드 스케치가 있습니다. ffmpeg 내부의 코드를 실제로 어떻게 볼 수 있나요 lldb? ffmpeg6이 줄을 추가하여 포트 파일을 수정했습니다 . configure.args-append \ --disable-optimizations \ --enable-debug \ --disable-stripping \ 하지만 여전히 어셈블러만 보...

Admin

작동하지 않는 SSH 터널을 디버깅하는 방법(SSH 자체는 작동함)
debugging

작동하지 않는 SSH 터널을 디버깅하는 방법(SSH 자체는 작동함)

MacOS에서 VNC 및 SMB를 사용한 SSH 터널링에 대해 Ask Different에 질문을 게시했습니다. Mac에만 해당되는 것이라고 생각했지만 그렇지 않은 것 같습니다. 즉, A가 B와 동일한 LAN에 있고 A가 LAN 외부에 있을 때 컴퓨터 A에서 컴퓨터 B(두 Mac 모두)로 SSH를 수행할 수 있습니다. 동일한 LAN에 있을 때 VNC 및 SMB를 통해 A에서 B로 연결할 수도 있습니다. 그러나 LAN에 있지 않을 때 VNC 또는 SMB 터널을 설정하기 위해 A에서 B로 SSH 터널을 열...

Admin

Debian 11 이상에서 libgcc1-dbg의 후속 제품은 무엇입니까?
debugging

Debian 11 이상에서 libgcc1-dbg의 후속 제품은 무엇입니까?

나는 읽기 가능한 스택 추적을 얻거나 오류 발생 시 코어 파일을 검사하기 위해 이전에 Debian 10 "buster"에 libgcc1-dbg(및 기타 디버그 기호 패키지)를 설치했습니다. 패키지가 더 이상 존재하지 않는 것 같습니다. 특히 인터넷에 직접 연결되지 않은 시스템에서 Debian 11 "bullseye"에서 디버깅 기호를 얻는 데 현재 선호되는 방법은 무엇입니까? 고쳐 쓰다:받은 답변에 감사드립니다.Debian Wiki의 변경 사항을 자세히 설명하는 페이지가 있습니다. ...

Admin

무작위로 발생하는 시스템 정지를 어떻게 보고합니까?
debugging

무작위로 발생하는 시스템 정지를 어떻게 보고합니까?

저는 debian sid(불안정)를 실행하고 있는데 시스템이 멈추고 응답하지 않고 강제로 시스템을 재부팅해야 하는 경우를 몇 번 경험했습니다. 이는 업무 화상 통화 중에 발생하므로(그뿐만 아니라) 오히려 짜증스럽습니다. 이것을 디버깅하는 방법을 모르겠습니다. 내 커널 로그에는 정지 시 약 60초 간격으로 다음과 같은 블록이 1개 이상 표시됩니다. [...] kernel: INFO: task Xorg:1582 blocked for more than 241 seconds. [...] kernel: ...

Admin

소프트웨어에서 "고착된" 마우스 버튼을 진단하는 방법은 무엇입니까?
debugging

소프트웨어에서 "고착된" 마우스 버튼을 진단하는 방법은 무엇입니까?

저는 Lenovo X1 Carbon에서 아치를 실행하고 있습니다. 보통 하루나 이틀 정도 아침에 사용할 수 있지만 어느 시점에서 마우스 버튼이 소프트웨어에 "고착"됩니다(물론 이것이 하드웨어 문제일 수도 있다고 생각합니다). "멈춤"이란 마우스가 여전히 터치패드 입력에 따라 움직이지만, 웹 페이지에 있는 경우 마우스를 움직이면 선택 버튼을 누른 것처럼 텍스트가 강조 표시된다는 것입니다. 키보드가 제대로 작동하는 것 같아서 Esc선택을 중단할 수 있지만 이동하면 다시 시작됩니다. 장치를 다시 시작하면 ...

Admin

tmux는 더 이상 .bashrc에 정의되지 않은 변수를 계속 사용합니다.
debugging

tmux는 더 이상 .bashrc에 정의되지 않은 변수를 계속 사용합니다.

.bashrc너무 부풀어 오르고 콘솔을 시작하는 데 시간이 오래 걸리기 때문에 재설정하려고 합니다 . 이를 위해 다음을 수행했습니다. cp /etc/skel/.bashrc ~/.bashrc 이는 일반 로그인 bash 쉘에서 작동합니다. 하지만 터미널 멀티플렉싱에도 TMUX를 사용하고 있는데 이전에 정의한 환경 변수(더 이상 존재하지 않음)를 업데이트/제거하지 않는 것 같습니다. 예를 들면 다음과 같습니다. Git 정보를 출력하기 위해 PS1을 재정의했습니다. 내 이전 정의는 .bashrc다음과 같습...

Admin

wsl2의 vscode: 실행 및 디버그 오류: 시작 디렉터리가 존재하지 않습니다.
debugging

wsl2의 vscode: 실행 및 디버그 오류: 시작 디렉터리가 존재하지 않습니다.

STM32 보드를 프로그래밍하고 싶습니다. 내 컴파일된 C++ 코드는 firmwar.elf. 개발 보드에는 stlink가 내장되어 있습니다. 이것이 제가 가장 좋아하는 디버거입니다. 저는 WSL2 시스템을 사용하여 Ubuntu를 실행하고 있습니다. vscode를 사용하여 하위 시스템을 성공적으로 시작할 수 있습니다. 나는 팔로우한다이 가이드는 Microsoft에서 제공합니다.. 또한 USB 장치를 WSL2에 연결하기 위해 사용자 지정 Linux 커널을 설치했습니다. 이 모든 것이 작동합니다. 그러나 ...

Admin