저는 Mint 20.3(Ubuntu 20.04 기반)을 사용하고 있는데 네트워크에서 모든 것이 잘 작동하다가 갑자기 갑자기, 갑자기 작동이 멈추고 작동이 안되는 이상한 문제를 겪고 있습니다. 어떤 웹사이트라도 접속하세요. 를 사용할 때도 동일한 일이 발생하기 때문에 이것은 내 브라우저가 아닙니다 curl
.
systemd-resolve --status
DNS의 현재 상태를 가져오는 데 사용을 언급한 스레드를 찾았습니다 . 네트워크가 작동 중일 때 명령이 제대로 실행되었으며 네트워크를 통해 실행될 때의 출력과 비교하기 위해 복사본을 저장했습니다.
그러나 이제 네트워크가 다시 실행되고 있으므로 명령을 다시 실행하면 오류가 출력됩니다 Failed to get global data: No buffer space available
. 해결책을 찾았지만 아무 것도 언급되지 않은 것 같아서 systemd-resolve
무슨 일이 일어나고 있는지 알 수 없습니다.
이 답변약간의 희망을 주었지만 버퍼 크기를 언급된 것의 두 배로 늘렸지만 아무런 효과가 없었습니다.
누구든지 어떤 아이디어가 있습니까?
답변1
이는 소스 코드의 다음 부분에서 비롯됩니다.
resolve/resolvectl.c
1843
1844 r = bus_map_all_properties(bus,
1845 "org.freedesktop.resolve1",
1846 "/org/freedesktop/resolve1",
1847 property_map,
1848 BUS_MAP_BOOLEAN_AS_BOOL,
1849 &error,
1850 &m,
1851 &global_info);
1852 if (r < 0)
1853 return log_error_errno(r, "Failed to get global data: %s", bus_error_message(&error, r));
1854
어떤 상황에서 systemd가 ENOBUFS를 보고하는지 확인했는데, DBUS의 보류 중인 보내기 또는 받기 버퍼를 채울 때만 이 오류가 발생하는 것 같습니다.
ENOBUFS
DBUS 내부 라이브러리 요청에서 기본 오류( )가 발생합니다.
이는 내부 버퍼이고 크기를 늘릴 수 없지만 이는 내부 버퍼가 가득 차서 더 많은 데이터 추가를 포기하고 ENOBUFS
반환하는 대신 DBUS(또는 기본 라이브러리)가 요청에 대한 응답을 중지했다는 확실한 신호입니다.
시스템 DBUS를 확인하는 것이 좋습니다. 어쩌면 멈추거나, 충돌하거나, 어떤 식으로든 막혔을 수도 있습니다.