저는 Linux(해당하는 경우 Debian Sid)를 실행하는 데스크톱 워크스테이션을 가지고 있습니다. 자체 지리적 위치를 파악하기 위한 GPS나 기타 특정 수단이 없습니다(Gnome 지도에서는 약 11.5Mi의 오류로 이탈리아 로마에 정확하게 위치합니다!).
어디에 배치되었는지 알 수 있는 방법이 있나요?
나는 본 적이이 질문, 그러나 브라우저 기반 애플리케이션만 다룹니다. 기본 위치 지정을 재정의하고 싶습니다(예: 대략적인 데이터를 얻는 데 사용되는 Gnome 지도와 동일한 것).
답변1
Linux에는 '표준' 지리적 위치 API가 없습니다. 일부 프로그램은 다음에서 요약된 데이터를 가져옵니다.지리 단서(GNOME의 일부), 다른 사람들은 스스로 GPS/GNSS/Wi-Fi 장치와 통신합니다(geoclue의 기능을 복제함).
그놈 지도는 항상 Geoclue 데몬으로부터 위치를 가져옵니다. GPS가 부족한 Geoclue는 1) IP 주소, 2) 근처 Wi-Fi 네트워크(Mozilla의 위치 서비스에 제출하지만 API 키가 제공되면 Google의 서비스를 사용할 수 있음)를 기반으로 대략적인 위치를 얻습니다. Wi-Fi도 없기 때문에 IP 지리 위치 데이터베이스가 귀하가 있다고 생각하는 곳이면 어디든지 가능합니다.
현재 지오클루하지 않습니다고정된 위치를 설정하는 매개변수가 있습니다. 남은 옵션은 다음과 같습니다.
- 항상 고정된 답을 반환하도록 Geoclue 소스 코드를 해킹하세요.
- Geoclue 데몬 자체를 사용자 정의 데몬(Python 또는 적절한 D-Bus API 바인딩이 있는 다른 언어로 작성됨)으로 바꾸고 항상 고정된 응답을 반환하도록 만듭니다.
- Geoclue를 설치하여 GPS 장치가 연결되어 있다고 생각하게 만듭니다.GPSD데몬 및 포함 된 사용GPS 가짜도구(아래 참조).
항상 고정된 답변을 반환하는 사용자 정의 웹 서비스를 가리키도록 Geoclue의 Mozilla 위치 서비스 URL을 변경하세요.(이것은 Bugzilla 스레드에서 언급되었지만 Wi-Fi 하드웨어가 없기 때문에 Geoclue가 애초에 MLS에 물어볼 생각조차 하지 않을 것 같습니다...)- Geoclue가 근처 네트워크를 검색하고 Mozilla 위치 서비스(NetworkManager도 필요함)를 통해 위치에 매핑할 수 있도록 Wi-Fi 어댑터를 추가하세요.
Geoclue를 사용하지 않지만 GPS를 지원하는 프로그램의 경우 직접 대화하여GPSD(예: Firefox)를 사용할 수 있습니다.GPS 가짜GPS 센서가 항상 연결되어 있는 것처럼 보이게 하려고요. 그러나 좌표를 지정하는 간단한 옵션은 없습니다. 실제 GPS 장치에서 캡처한 출력을 제공해야 하며, 올바른 좌표를 갖도록 수동으로 편집할 수도 있습니다.