gdb

여러 애플리케이션의 버스 오류(코어 덤프)
gdb

여러 애플리케이션의 버스 오류(코어 덤프)

내 endeavourOS 시스템에서 이상한 동작이 발생합니다. 맥락에 따르면 잘못된 svg 파일이 inkscape와 내 시스템에 충돌을 일으킨 후 발생하기 시작한 것 같습니다. 그 후 하드 재부팅해야 했습니다. 몇 가지 앱(최근 테스트한 앱 목록: , , , flameshot)의 경우 터미널에 메시지가 표시되고 그게 전부입니다. 인터넷 검색을 통해 사용해야 한다는 것을 이해하지만 출력을 이해할 수 없습니다.keepassxcquiterssBus error (core dumped)gdb $ gdb fla...

Admin

원격 시스템의 GUI 터미널 내에서 실행되는 dist-upgrade 프롬프트에 Enter 키를 전달합니다. 이후에는 SSH를 통해서만 액세스할 수 있습니다.
gdb

원격 시스템의 GUI 터미널 내에서 실행되는 dist-upgrade 프롬프트에 Enter 키를 전달합니다. 이후에는 SSH를 통해서만 액세스할 수 있습니다.

이전에는 remoteRDP를 통해 컴퓨터(일반적인 물리적 데스크톱 컴퓨터)에 액세스하고 이를 사용하여 sudo apt dist-upgradeGUI 내부를 시작했습니다 gnome-terminal. 그 이후로 RDP 연결이 끊어지고 SSH[1]만 있습니다. apt 명령에 "assum yes"가 없기 때문에 cat /var/log/dist-upgrade/screenlog.0SSH를 통한 검사를 통해 계속 실행 중인 업그레이드가 프롬프트 [2]에서 멈춰 사용자가 Enter를 누르거나 yes를 선택한 다음 E...

Admin

NetBSD - GDB에서 커널 메모리에 대한 정보를 표시하는 방법은 무엇입니까?
gdb

NetBSD - GDB에서 커널 메모리에 대한 정보를 표시하는 방법은 무엇입니까?

디버깅을 위해 NetBSD 커널을 사용하고 있는데 gdb, 주소가 위치한 메모리 영역에 대한 정보를 표시할 수 있으면 좋겠습니다. 나는 주로 메모리 페이지의 권한과 여기에 포함된 메모리 페이지의 크기를 알아내는 데 관심이 있습니다(질문의 후반부가 의미가 있는 경우). 커널에는 커널 공간 메모리 영역이라는 개념이 있나요? 즉, 특정 목적을 위해 예약된(어딘가에서 추적되는) 연속 페이지 블록(가상 주소)입니까? 아니면 어떤 메모리 블록이 논리 그룹에 속하는지 추적하는 것은 각 특정 모듈에 달려 있습니까?...

Admin

gdb에서 파일을 열 때 권한이 거부되었습니다.
gdb

gdb에서 파일을 열 때 권한이 거부되었습니다.

몇 가지 CTF 과제를 구현 중입니다. 이러한 플래그는 프로그램에서 읽는 일부 텍스트 파일에 있습니다. 플래그를 보호하기 위해 파일 소유자를 변경했지만 setuid파일을 읽을 수 있도록 실행 가능하게 만들었습니다. gdb 외부에서 프로그램을 실행하면 작동하는 플래그를 읽을 수 있지만 gdb 내부에서는 Permission deniedVirtualBox의 Linux 가상 머신에서 연습을 실행하고 있습니다. sudoers 파일에 없는 일반 사용자를 만들었고 플래그 파일은 루트에 속합니다. -rwsr-xr-...

Admin

module_init()에서 중단하는 방법은 무엇입니까? 이 로드 가능한 커널 모듈은 SSH 로그인을 차단하고 있습니다.
gdb

module_init()에서 중단하는 방법은 무엇입니까? 이 로드 가능한 커널 모듈은 SSH 로그인을 차단하고 있습니다.

Rocky Linux 9.3에 USB 장치 드라이버를 포팅하려고 합니다. 모듈을 삽입한 후 SSH를 통한 새 로그인이 응답하지 않게 됩니다. 모듈을 블랙리스트에 추가하고 다시 시작하면 정상적인 기능이 복원됩니다. https://github.com/izot/lon-driver 모듈이 삽입되면 lsmod|grep u50 "Used By"는 약 7초마다 0에서 1로 변경됩니다. 그런 다음 SSH를 시도할 때 "주제"는 3과 2 사이가 됩니다. SSH 로그인을 중지하고 modprobe -r u50을 입력하...

Admin

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

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

httpd가 /usr/lib64/httpd/modules/mod_ssl.so의 ssl_io_filter_cleanup()과 충돌합니다.
gdb

httpd가 /usr/lib64/httpd/modules/mod_ssl.so의 ssl_io_filter_cleanup()과 충돌합니다.

버전: httpd-2.4.54-1.el8.x86_64 작업에 대해 httpd condrestart를 수행하면 코어가 생성되고 코어 파일 pid와 관련된 일부 ssl_error_logs도 볼 수 있습니다. gdb 로그: Core was generated by `/usr/sbin/httpd -k start'. Program terminated with signal SIGSEGV, Segmentation fault. #0 0x00007f0b9ffa05e9 in ssl_io_filter_cleanup ()...

Admin

설정 프로그램이 다른 터미널에서 실행 중일 때 GDB에서 "제어 터미널을 설정할 수 없습니다" 경고를 어떻게 억제할 수 있습니까?
gdb

설정 프로그램이 다른 터미널에서 실행 중일 때 GDB에서 "제어 터미널을 설정할 수 없습니다" 경고를 어떻게 억제할 수 있습니까?

나는 프로그램을 디버깅하기 위해 GDB를 사용하고 있으며 그 출력을 GDB를 실행하는 터미널이 아닌 다른 터미널로 보내고 싶습니다. 이것이 내가 해온 일이다: 두 번째 터미널을 열고 를 사용하여 장치 이름을 확인한 tty후 비슷한 것을 얻으십시오 /dev/pts/14. 내 GDB 세션에서는 명령을 사용하여 tty /dev/pts/14출력을 터미널로 설정했습니다. 그런 다음 runGDB에서 명령을 실행하여 프로그램을 시작합니다. 이 설정은 출력을 터미널 2로 올바르게 지정하지만 문제는 터미널 2의 ...

Admin

qemu를 사용하여 Linux 커널을 디버그하기 위해 gdb의 논스톱 모드를 사용하는 방법
gdb

qemu를 사용하여 Linux 커널을 디버그하기 위해 gdb의 논스톱 모드를 사용하는 방법

저는 Linux 커널을 디버깅하기 위해 qemu와 gdb를 사용하고 있습니다. 다른 스레드가 계속 실행되는 동안 한 스레드를 중지하고 싶습니다. 목표를 달성하는 데 도움이 되는 non-stop이라는 명령이 gdb에 있다는 것을 발견했습니다. gdb의 논스톱 모드 세부 내용은 다음과 같습니다.https://sourceware.org/gdb/current/onlinedocs/gdb.html/Non_002dStop-Mode.html 다음은 커널 이미지를 사용하여 qemu를 실행하는 명령입니다. sudo q...

Admin

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

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

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

Admin

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

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

저는 임베디드 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

QEMU + (K)GDB를 사용하여 Linux 커널 디버깅 - 몇 가지 의심과 질문
gdb

QEMU + (K)GDB를 사용하여 Linux 커널 디버깅 - 몇 가지 의심과 질문

QEMU를 통해 Linux 커널(v3.13)을 디버깅하려고 합니다. 나는 사용하고있다이것,이것그리고이것참조. 내 호스트는 Linux Mint Victoria이므로 v3.13(2014년경) 커널과 rootfs를 컴파일하는 것은 너무 많은 문제입니다. 그래서 나는 다음과 같이 Ubuntu Trust Tahr를 얻기 위해 도커 컨테이너를 사용했습니다. mkdir docker FROM ubuntu:14.04" > docker/Dockerfile RUN apt-get update && ap...

Admin

Gdb가 tty에 갇혔습니다.
gdb

Gdb가 tty에 갇혔습니다.

Hyprland를 디버깅하려고 하는데 gdb를 사용하여 실행하면 모든 키보드 입력이 완전히 정지되고 컴퓨터를 다시 시작해야 합니다. Ctrl+C 또는 Ctrl+Alt+F[1-6]를 사용하여 이스케이프할 수 없습니다. 완전히 붙어 있습니다. 이 문제의 원인이 무엇인지 아는 사람이 있습니까? 아니면 이런 일이 발생하면 탈출하는 방법을 더 잘 아시나요? 아니면 적어도 gdbserver를 사용하여 Linux를 원격으로 디버깅할 때 Linux가 다른 tty로 전환하는 것을 방지하시겠습니까? ...

Admin

GNU gdb 디버거의 소스 코드를 어떻게 편집합니까?
gdb

GNU gdb 디버거의 소스 코드를 어떻게 편집합니까?

저는 gcc가 설치된 Linux(Ubuntu 22) 시스템을 사용하고 있습니다. 우리는 gcc가 디버거로 gdb와 함께 제공된다는 것을 알고 있습니다. gdb에는 많은 명령이 있는데 일부 내장 명령(disp)의 동작을 변경하고 싶습니다. gcc 라이브러리에서 gdb 소스 코드에 액세스하여 원하는 소스 코드로 변경할 수 있는 위치를 알려줄 수 있는 사람이 있나요? ...

Admin

gdb 루프 관찰 expr
gdb

gdb 루프 관찰 expr

코드 세그먼트: foreach(lc, vars) { if (IsA(lfirst(lc), Var)) { Var *var = (Var *) lfirst(lc); /* if system column, return error */ if (var->varattno < 0) ereport(ERROR, (errcode(ERRCODE_FEATURE_NOT_SUPPORTED), ...

Admin