web-dev-qa-db-ja.com

エラー:XDG_RUNTIME_DIRが環境に設定されていません

次のコマンドを使用して、wiresharkを起動します。

pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY wireshark 
No protocol specified

** (wireshark:9323): WARNING **: Could not open X display
No protocol specified
error: XDG_RUNTIME_DIR not set in the environment.

(wireshark:9323): Gtk-WARNING **: cannot open display: :0
1
user453850

/usr/share/polkit-1/actions/に新しいポリシールールを作成します

Sudo nano /usr/share/polkit-1/actions/wireshark.policy

以下の行を追加します。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE policyconfig PUBLIC
 "-//freedesktop//DTD PolicyKit Policy Configuration 1.0//EN"
 "http://www.freedesktop.org/standards/PolicyKit/1/policyconfig.dtd">

<policyconfig>

  <action id="org.freedesktop.policykit.pkexec.run-wireshark">
    <description>Run FlashTool</description>
    <message>Authentication is required to run Wireshark</message>
    <defaults>
      <allow_any>no</allow_any>
      <allow_inactive>no</allow_inactive>
      <allow_active>auth_admin_keep</allow_active>
    </defaults>
    <annotate key="org.freedesktop.policykit.exec.path">/usr/bin/wireshark</annotate>
    <annotate key="org.freedesktop.policykit.exec.allow_gui">TRUE</annotate>
  </action>

</policyconfig>

次に、新しいスクリプトwireshark-pkexecを作成します

Sudo nano /usr/bin/wireshark-pkexec

以下の行を追加します。

#!/bin/sh
pkexec "wireshark" "$@"

実行可能フラグを追加します

Sudo chmod +x /usr/bin/wireshark-pkexec   

最後に、新しいデスクトップファイルを作成します

nano /usr/share/applications/wireshark-pkexec.desktop

以下の行を追加します。

[Desktop Entry]
Name=Wireshark as root
GenericName=Network Analyzer
Comment=Network traffic analyzer
Exec=wireshark-pkexec %f
Icon=wireshark
Terminal=false
Type=Application
Categories=GNOME;Network;
StartupNotify=true
MimeType=application/vnd.tcpdump.pcap;application/x-pcapng;application/x-snoop;application/x-iptrace;application/x-lanalyzer;application/x-nettl;application/x-radcom;application/x-etherpeek;application/x-visualnetworks;application/x-netinstobserver;application/x-5view;

Unity/GNOME Shellを再起動して起動します Wireshark as root

1
A.B.