개요
리눅스 시스템 운영 중 프로세스가 비정상 종료되면 임시 디렉터리에 잔여 D-Bus 소켓 파일이 남아 시스템 자원을 낭비할 수 있습니다. 본 글에서는 dbus-cleanup-sockets 명령어를 활용하여 연결이 끊어진 소켓을 안전하게 식별하고 정리하는 실무 방법을 살펴봅니다.
1. D-Bus 패키지 설치 확인 및 명령어 점검
D-Bus 소켓 정리 실습 진행을 위해 dbus 및 python3 패키지를 설치하고 최신 상태로 업데이트합니다.

which 명령어를 사용하여 dbus-cleanup-sockets 실행 파일이 시스템 표준 경로(/usr/bin)에 정상적으로 배치되어 있는지 확인합니다.
⚙️ [주요 옵션]
--version : 프로그램의 버전 및 저작권 정보를 출력합니다.--help : 사용 가능한 옵션 및 도움말 메시지를 출력합니다.<directory> : 정리할 소켓 파일이 위치한 특정 디렉터리 경로를 지정합니다.

dbus-cleanup-sockets --version 명령어를 실행하여 유틸리티의 설치 버전과 빌드 정보를 확인합니다.
만약 해당 명령어가 버전을 직접 지원하지 않을 경우를 대비해 dbus-daemon --version을 백업으로 연계하여 D-Bus 시스템의 전반적인 버전을 점검합니다.

2. 현재 시스템 내 활성 D-Bus 소켓 파일 상태 확인
ls -la /tmp | grep -E "dbus|systemd" || true 명령어를 실행하여 /tmp 디렉터리에 남아 있는 D-Bus 또는 systemd 관련 임시 소켓 및 디렉터리를 확인합니다.
조회 결과 systemd 프라이빗 서비스 디렉터리만 존재하며, /tmp 경로에 방치된 고아 D-Bus 소켓 파일은 없는 상태임을 확인할 수 있습니다.

ss -xl | grep -i dbus | head -n 5 명령어를 실행하여 시스템 내에서 대기(Listening) 상태로 동작 중인 D-Bus 관련 UNIX 도메인 소켓을 점검합니다.
조회 결과 아무런 소켓도 출력되지 않아, 현재 환경에서는 /tmp 등 표준 임시 경로에 활성화된 D-Bus 리스닝 소켓이 존재하지 않음을 나타냅니다.

3. 테스트 소켓 환경 구성 및 소켓 정리 동작 테스트
소켓 정리 테스트를 진행할 전용 공간을 마련하기 위해 mkdir -p /tmp/test_dbus_sockets 명령어를 실행합니다.

프로세스가 종료되어 연결이 끊어진 잔여 소켓 환경을 재현하기 위해 python3 -c 'import socket; s = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM); s.bind("/tmp/test_dbus_sockets/s_test_socket")' 명령어를 실행하여 UNIX 도메인 소켓을 생성합니다.

생성된 더미 소켓 파일이 정상적으로 존재하는지 확인하기 위해 ls -l /tmp/test_dbus_sockets 명령어를 실행합니다.
출력 결과 맨 앞의 파일 속성이 s로 표시되어 UNIX 도메인 소켓 파일이 올바르게 생성되었음을 알 수 있습니다.

dbus-cleanup-sockets /tmp/test_dbus_sockets 명령어를 실행하여 지정된 테스트 디렉터리 내의 미사용 소켓 파일들을 점검하고 정리를 시도합니다.
검사 결과 0개의 소켓이 정리되었으며, 사용 중이거나 알 수 없는 상태의 소켓도 발견되지 않아 정리 작업이 수행되지 않았음을 보여줍니다.

정리 명령 수행 후 테스트 디렉터리 내 소켓 파일의 잔류 여부를 확인하기 위해 ls -la /tmp/test_dbus_sockets 명령어를 실행합니다.
확인 결과 s_test_socket 파일이 삭제되지 않고 디렉터리에 그대로 유지되어 있음을 확인할 수 있습니다.

4. 시스템 임시 디렉터리 잔여 소켓 안전 정리 및 정리 작업
dbus-cleanup-sockets /tmp 명령어를 실행하여 실제 시스템 기본 임시 디렉터리인 /tmp 내에 방치된 D-Bus 소켓이 있는지 확인하고 정리를 진행합니다.
점검 결과 0개의 소켓이 정리되었으며 현재 사용 중이거나 알 수 없는 상태의 소켓도 없어, /tmp 경로가 깔끔하게 관리되고 있음을 보여줍니다.

실습을 위해 생성했던 테스트용 임시 디렉터리와 잔여 소켓 파일을 깨끗하게 삭제하기 위해 rm -rf /tmp/test_dbus_sockets 명령어를 실행합니다.

D-Bus 소켓 점검 및 정리 실습 절차가 오류 없이 모두 마무리되었음을 알리기 위해 echo "D-Bus socket cleanup verification finished successfully" 명령어를 실행합니다.

지금까지 우분투 환경에서 잔여 D-Bus 소켓을 안전하게 정리하는 dbus-cleanup-sockets 명령어의 실전 활용법을 간단하게 살펴보았습니다.
주기적인 소켓 점검과 청소를 통해 시스템 자원 낭비를 방지하고 더욱 쾌적하고 안정적인 리눅스 환경을 유지해 보시기 바랍니다.