PackageKit은 "only_trusted:0"에 대한 메시지를 기록합니다.

PackageKit은 "only_trusted:0"에 대한 메시지를 기록합니다.

나는 도망 갔다 pkcon update force. PackageKit이 옵션 비활성화 only_trusted:0와 관련된 작업을 기록하고 있는 것으로 나타났습니다 . 나는 그것을 얻지 only_trusted못했지만 .--allow-untrustedpkcon

PackageKit[19819]: uid 1000 is trying to obtain org.freedesktop.packagekit.system-sources-refresh auth (only_trusted:0)

따라서 PackageKit은 신뢰할 수 없는 패키지 허용에 대한 로그 메시지를 작성하고 있습니다. 나는 그렇게 하고 싶지 않습니다. 나는 그것을 해달라고 요청하지 않았습니다. 이 메시지가 기록되는 이유는 무엇입니까? PackageKit에 문제가 있나요?

$ sudo systemctl status packagekit.service
● packagekit.service - PackageKit Daemon
   Loaded: loaded (/usr/lib/systemd/system/packagekit.service; static; vendor preset: disabled)
   Active: active (running) since Mon 2019-04-08 12:34:58 BST; 1min 29s ago
 Main PID: 19819 (packagekitd)
    Tasks: 3 (limit: 4915)
   Memory: 192.7M
   CGroup: /system.slice/packagekit.service
           └─19819 /usr/libexec/packagekitd

Apr 08 12:34:58 alan-laptop PackageKit[19819]: daemon start
Apr 08 12:34:58 alan-laptop systemd[1]: Starting PackageKit Daemon...
Apr 08 12:34:58 alan-laptop systemd[1]: Started PackageKit Daemon.
Apr 08 12:34:58 alan-laptop PackageKit[19819]: uid 1000 is trying to obtain org.freedesktop.packagekit.system-sources-refresh auth (only_trusted:0)
Apr 08 12:34:58 alan-laptop PackageKit[19819]: uid 1000 obtained auth for org.freedesktop.packagekit.system-sources-refresh
Apr 08 12:35:09 alan-laptop PackageKit[19819]: refresh-cache transaction /17652_eabaebee from uid 1000 finished with success after 11018ms

$ rpm -q PackageKit
PackageKit-1.1.12-2.fc29.x86_64

답변1

--allow-untrusted옵션과 only_trusted플래그는 새로 고침 시 관련이 없습니다.

패키지 설치 또는 업그레이드(또는 제거, 어쩌면?)를 요청하는 경우에만 관련이 있습니다.

클라이언트 측에서:

  • pk-console.c항상 pkcon명령이 실행되었는지 확인하고 --allow_untrusted이에 따라 only_trusted속성을 설정하십시오 pk_task. 하지만:
  • pk_task_refresh_cache_async()pk_task속성은 무시되며 무조건 PK_TRANSACTION_FLAG_ENUM_ONLY_TRUSTED설정됩니다 PkTaskState::transaction_flags.
  • 그런 다음 을 호출합니다 . 그러나 해당 함수는 실제로 어떤 목적으로도 사용 되지 pk_task_do_async_action()않습니다 .PkTaskState::transaction_flagsPkTaskState::rolePK_ROLE_ENUM_REFRESH_CACHE

dnf 백엔드에서:

  • PK_TRANSACTION_FLAG_ENUM_ONLY_TRUSTED체크인할 수 있는 유일한 장소 PkBackendDnfJobData::transaction_flags는 입니다 pk_backend_transaction_run().
  • pk_backend_transaction_run()에서 호출되지 않았습니다 pk_backend_refresh_cache_thread(). 패키지를 설치하거나 제거하는 작업에만 관련됩니다. 예를 들어 에서 호출됩니다 pk_backend_install_packages_thread().

관련 정보