Segfault beim Versuch, in den Einstellungen auf Benutzer zuzugreifen

Segfault beim Versuch, in den Einstellungen auf Benutzer zuzugreifen

Ich habe ein Problem, das ich nicht lösen kann. Ich kann die Einstellungen problemlos als Root-Benutzer öffnen. Wenn ich auf Benutzer klicke, passiert nichts. Ich verwende Linux kali 4.7.0-kali1-amd64 #1 SMP Debian 4.7.6-1kali1 (2016-10-17) x86_64 GNU/Linux. Das ist, was ich in /var/log/syslog bekomme

Oct 27 21:00:09 kali kernel: [ 695.533180] gnome-control-c[1944]: segfault at 0 ip 00000000004c9a5d sp 00007fffae418480 error 4 in gnome-control-center[400000+394000]

Ich habe versucht, den Befehl auszuführen: addr2line -e /usr/bin/gnome-control-center -fCi 0xC9A5Dwobei 0xC9A5d der Offset im Objekt ist, das das Problem verursacht hat, und ich bekomme nichts.

Dann habe ich Folgendes ausgeführt: addr2line -e /usr/bin/gnome-control-center -fCi 0x00000000004c9a5dund erhalte:

cc_universal_access_get_resource ??:?

Interessant...

Ich verstehe, dass die Ursache dafür darin lag, dass eine Anweisung im Benutzermodus zu einem Seitenfehler führte. Ich habe hier ein paar interessante Gnome-Control-Center-Dateien aufgelistet:

/usr/share/bash-completion/completions/gnome-control-center

/usr/bin/gnome-control-center

Ich bezweifle, dass das Problem in der ersten aufgelisteten Datei lag, da es sich um ein Shell-Skript für die Tab-Vervollständigung handelt. Also versuche ich, gdb auf der Binärdatei auszuführen, aber es scheint, als wäre es nicht mit Debugging kompiliert worden, da keine Debugging-Symbole zu finden sind. Der ganze Sinn dahinter war, einen neuen Benutzer zu erstellen, damit ich Steam auf Kali installieren kann, um in meiner Freizeit ein paar Spiele zu spielen, abgesehen davon, an diesem verdammten System herumzubasteln, lol.

Wenn ich mir anschaueGithubfür Gnome-Control-Center. Ich finde die Datei cc_ua_panel.c. Darin befindet sich eine Methode, in der ich den Aufruf von cc_universal_access_get_resource wie folgt gefunden habe.

static void
cc_ua_panel_init (CcUaPanel *self)
{
  CcUaPanelPrivate *priv;
  GtkWidget *panel;
  GtkWidget *content;

  priv = self->priv = G_TYPE_INSTANCE_GET_PRIVATE (self,
                                                   CC_TYPE_UA_PANEL,
                                                   CcUaPanelPrivate);

  g_resources_register (cc_universal_access_get_resource ());

  priv->interface_settings = g_settings_new (INTERFACE_SETTINGS);
  priv->a11y_settings = g_settings_new (A11Y_SETTINGS);
  priv->wm_settings = g_settings_new (WM_SETTINGS);
  priv->kb_settings = g_settings_new (KEYBOARD_SETTINGS);
  priv->kb_desktop_settings = g_settings_new (KEYBOARD_DESKTOP_SETTINGS);
  priv->mouse_settings = g_settings_new (MOUSE_SETTINGS);
  priv->gsd_mouse_settings = g_settings_new (GSD_MOUSE_SETTINGS);
  priv->application_settings = g_settings_new (APPLICATION_SETTINGS);

  priv->builder = gtk_builder_new ();
  gtk_builder_add_from_resource (priv->builder,

                                 "/org/gnome/control-center/universal-access/uap.ui",
                                 NULL);

  cc_ua_panel_init_status (self);
  cc_ua_panel_init_seeing (self);
  cc_ua_panel_init_hearing (self);
  cc_ua_panel_init_keyboard (self);
  cc_ua_panel_init_mouse (self);

  panel = WID ("universal_access_panel");
  content = WID ("universal_access_content");

  gtk_scrolled_window_set_min_content_height (GTK_SCROLLED_WINDOW (panel), SCROLL_HEIGHT);

  priv->focus_adjustment = gtk_scrolled_window_get_vadjustment (GTK_SCROLLED_WINDOW (panel));
  gtk_container_set_focus_vadjustment (GTK_CONTAINER (content), priv->focus_adjustment);

  gtk_container_add (GTK_CONTAINER (self), panel);
}

Ich habe keine Ahnung, was das Problem hier sein könnte, wenn dies tatsächlich das Problem ist, und weiß nicht, wie ich weiter vorgehen soll. Ich frage mich, nach welcher Ressource gesucht wird und warum sie nicht da ist. Wo könnte ich diese finden und wie kann ich dieses Problem beheben?

Ich habe tatsächlich einen Backtrace erhalten

    Thread 1 "gnome-control-c" received signal SIGSEGV, Segmentation fault.
0x00000000004c9a5d in ?? ()
(gdb) bt full
#0  0x00000000004c9a5d in ?? ()
No symbol table info available.
#1  0x00007ffff0b74f75 in g_closure_invoke ()
   from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
No symbol table info available.
#2  0x00007ffff0b86f82 in ?? ()
   from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
No symbol table info available.
#3  0x00007ffff0b8fbcc in g_signal_emit_valist ()
   from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
No symbol table info available.
#4  0x00007ffff0b8ffaf in g_signal_emit ()
   from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
No symbol table info available.
#5  0x00007ffff0b793a4 in ?? ()
   from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
No symbol table info available.
#6  0x00007ffff0b7b861 in g_object_notify ()
   from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0
No symbol table info available.
#7  0x00007ffff58587e2 in ?? () from /usr/lib/libaccountsservice.so.0
No symbol table info available.
#8  0x00007ffff0e424e3 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
---Type <return> to continue, or q <return> to quit---return
No symbol table info available.
#9  0x00007ffff0e42b96 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
No symbol table info available.
#10 0x00007ffff0e80a5b in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
No symbol table info available.
#11 0x00007ffff0e424e3 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
No symbol table info available.
#12 0x00007ffff0e42b96 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
No symbol table info available.
#13 0x00007ffff0e7568a in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
No symbol table info available.
#14 0x00007ffff0e424e3 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
No symbol table info available.
#15 0x00007ffff0e42519 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
No symbol table info available.
#16 0x00007ffff089b68a in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
No symbol table info available.
#17 0x00007ffff089ba40 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
No symbol table info available.
#18 0x00007ffff089baec in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
No symbol table info available.
#19 0x00007ffff0e5770d in g_application_run () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
No symbol table info available.
#20 0x000000000044cff7 in main ()
No symbol table info available.

Antwort1

Ich konnte die Benutzereinstellungen nicht als Root öffnen. (Wirklich, bei einer Neuinstallation.) Ich musste nur Folgendes eingeben useradd tempuser1und dann die Benutzereinstellungen erneut öffnen! Ich vermute, dass mein Segmentierungsfehler auftrat, weil „keine Benutzer“ vorhanden waren (weil Root nicht zählt).

Ich verwende die neueste Version von Kali.

verwandte Informationen