Ich richte wireshark so ein , dass es als Nicht-Root-Benutzer ausgeführt wird, a la here , das heißt:
sudo apt-get install wireshark
sudo dpkg-reconfigure wireshark-common
sudo usermod -a -G wireshark $USER
(restart)
Das ist alles großartig. Aber wenn ich versuche, wireshark als wireshark-Benutzer zu starten, benutze ich:
sudo -s -u $USER wireshark
Ich erhalte folgenden Fehler:
no protocol specified
gtk-warning ** cannot open display
Der Teil "kein Protokoll angegeben" scheint ziemlich einfach zu sein. Und die gtk-Warnung kann das Display nicht öffnen scheint sich genau auf dieses Problem zu beziehen .
"Sie haben zwei Möglichkeiten, um dies zum Laufen zu bringen: Gewähren Sie es oder lassen Sie es von root übernehmen. Sie (greg) können es mit 'xhost local: root' gewähren. Oder root kann es übernehmen, weil es auf Ihre Dateien zugreifen kann: 'exportieren AUTHORITY = / home / greg / .Xauthority '. "
Das ergibt für mich keinen Sinn. Was war der Grund, dem anderen Benutzer Zugriff zu gewähren, wenn er das Programm trotzdem nicht öffnen kann? Diese Trennung erfolgt aus Sicherheitsgründen, sodass die oben genannte Änderung nicht den vorherigen Kommentar zurücksetzt
"Dies hat mit der Zugriffskontrolle auf Ihren X-Server zu tun. Sie möchten nicht, dass irgendjemand Fenster auf Ihrem Bildschirm öffnet, oder? Wenn Sie also den X-Server unter Ihrem eigenen Konto (greg) gestartet haben, dann jeden anderen Benutzer (wie root) ) hat keinen Zugriff darauf. "
TLDR; Ist dies die Standardpraxis und die Art und Weise, wie dies getan werden sollte, um eine Trennung zwischen dem Root-Konto und einem anderen Benutzerkonto zu erreichen? Es scheint mir ein "Hack" zu sein.