Kali Linux elimina el molesto aviso "Advertencia: está utilizando una supercuenta, lo que puede dañar su sistema"

escribe primero

La versión de Kali Linux en este artículo es 2022.3
 Creo que muchas personas se encontrarán con estas situaciones en el proceso de usar Kali Linux:

inserte la descripción de la imagen aquí
pag

 Con respecto a la barra de advertencia en el medio de la interfaz de Thunar y Mousepad, déjame decirte la verdad, después de todo, se usa Kali Linux y los usuarios aún no saben cómo usar root (

 Así que cambié entre Google y Bing, y finalmente encontré algunas discusiones sobre esta barra, pero los pocos tutoriales que encontré en realidad no proponían ninguna solución práctica, y mi proceso de solución también tiene muchas trampas. Escribí este blog.

 Así que de todos modos, vamos a empezar ahora.

Comienza el tutorial

 Coloque primero el software modificado:
mousepad_0.5.10-1_amd64.deb
thunar_4.16.10-1_amd64.deb

Idea general.

 En primer lugar, Kali Linux usa "Advertencia: está usando la cuenta raíz", que es la "Advertencia: está usando la cuenta súper, lo que puede dañar su sistema".

 El indicador rojo proviene de un editor de texto de código abierto de Linux menos conocido: Mousepad: enlace de Github .

 La advertencia naranja-roja proviene del enlace Thunar-Github .

window.cMirando los almacenes de código fuente de Github de los dos softwares, puede encontrar las partes de código correspondientes en los archivos  correspondientes .

 Entonces es muy simple lidiar con este asunto, solo necesitamos recompilar e instalar estos dos softwares nuevamente.

Descarga el código fuente de los dos programas

 En primer lugar, debemos prestar atención a un lugar, estos dos softwares se ejecutan en Xfce, es decir, están estrechamente relacionados con la versión de xfce. Por lo tanto, no podemos compilar e instalar la última versión directamente.

 Primero verifique las versiones de estos dos programas en Terminal.

inserte la descripción de la imagen aquí

 Luego busque el código fuente de la versión correspondiente en el repositorio de código y descárguelo.

hacer cambios

 Hay muy pocos lugares que deben cambiarse, y puede ser muy fácil si no conoce el lenguaje C.

 El primero es Thunar, use directamente el cuadro de búsqueda para buscar la raíz de la palabra clave , y luego, en la línea 731, podemos encontrar el siguiente bloque de código:

inserte la descripción de la imagen aquí

Parte thunar-window.c:

/* check if we need to add the root warning */
  if (G_UNLIKELY (geteuid () == 0)){
    
          
  /* add the bar for the root warning */      
  infobar = gtk_info_bar_new ();
  gtk_info_bar_set_message_type (GTK_INFO_BAR (infobar), GTK_MESSAGE_WARNING);      
  gtk_widget_set_hexpand (infobar, TRUE);      
  gtk_grid_attach (GTK_GRID (window->grid), infobar, 0, 2, 1, 1);      
  gtk_widget_show (infobar);      
  /* add the label with the root warning */      
  label = gtk_label_new (_("Warning: you are using the root account. You may harm your system."));      
  gtk_container_add (GTK_CONTAINER (gtk_info_bar_get_content_area (GTK_INFO_BAR (infobar))), label);      
  gtk_widget_show (label);    
  }

 Probablemente en la línea 731. Luego elimine todas las partes colocadas en el bloque de código anterior.Después de la eliminación, se verá así:

inserte la descripción de la imagen aquí

 De la misma manera tratamos con el código fuente de mousepad.

 El código fuente se ve así:

inserte la descripción de la imagen aquí

sección mousepad-window.c

static void
mousepad_window_create_root_warning (MousepadWindow *window){
    
      
/* check if we need to add the root warning */  
if (G_UNLIKELY (geteuid () == 0)){
    
          
GtkWidget       *ebox, *label, *separator;      
GtkCssProvider  *provider;      
GtkStyleContext *context;      
const gchar     *css_string;      
/* add the box for the root warning */      
ebox = gtk_event_box_new ();      
gtk_box_pack_start (GTK_BOX (window->box), ebox, FALSE, FALSE, 0);      
gtk_widget_show (ebox);      
/* add the label with the root warning */      
label = gtk_label_new (_("Warning: you are using the root account. You may harm your system."));      
gtk_widget_set_margin_start (label, 6);      
gtk_widget_set_margin_end (label, 6);      
gtk_widget_set_margin_top (label, 3);      
gtk_widget_set_margin_bottom (label, 3);      
gtk_container_add (GTK_CONTAINER (ebox), label);      
gtk_widget_show (label);      
separator = gtk_separator_new (GTK_ORIENTATION_HORIZONTAL);      
gtk_box_pack_start (GTK_BOX (window->box), separator, FALSE, FALSE, 0);      
gtk_widget_show (separator);      
/* apply a CSS style to capture the user's attention */      
provider = gtk_css_provider_new ();      
css_string = "label { background-color: #b4254b; color: #fefefe; }";      
context = gtk_widget_get_style_context (label);
gtk_css_provider_load_from_data (provider, css_string, -1, NULL);      
gtk_style_context_add_provider (context, GTK_STYLE_PROVIDER (provider),                                      
GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);      
g_object_unref (provider);    
	}
}

 Probablemente en la línea 1059. Este método de procesamiento es ligeramente diferente del Thunar anterior. Eliminamos la parte del método en el interior, y la eliminación es la siguiente:
inserte la descripción de la imagen aquí

 Esta parte del trabajo está hecha.

compilar

 Esta parte es un poco tortuosa. Se recomienda compilar en una máquina basada en Debian (puede usar el servidor si es posible, y el paquete de software de tiempo de ejecución instalado es demasiado perezoso para eliminarlo), de lo contrario, habrá una gran cantidad de tiempo de ejecución requerido. bibliotecas que no se pueden encontrar.

 Primero, abra la Terminal en la carpeta del código fuente de los dos programas, tome la compilación del mousepad como ejemplo y utilícelo directamente ./autogen.sh.

 El resultado final debe ser una falla, el compilador le indicará que falta un determinado paquete y luego debemos instalar este paquete. En realidad, esto es muy simple, porque se requieren muchos paquetes, por lo que no los enumeraré uno por uno.

 Aquí hay algunas cosas a las que debe prestar atención: el paquete que falta no es el nombre mencionado en el indicador, generalmente necesitamos un -devpaquete con un sufijo, puede apt search 包名buscar primero para encontrar el paquete con dev después del nombre. Como se muestra abajo:

inserte la descripción de la imagen aquí

 Después de la dolorosa instalación de la biblioteca de tiempo de ejecución, ./autogen.shestá bien ejecutarla repetidamente y obtener las siguientes indicaciones:

inserte la descripción de la imagen aquí

 Luego utilícelo makepara compilar, después de que la compilación sea exitosa, se ve así:

inserte la descripción de la imagen aquí

instalación del paquete

 Primero use apt removepara desinstalar ambos paquetes y luego reinicie.

 Es un poco diferente aquí, no usamos make installpara instalar, pero usamos checkinstall.

checkinstallHay muchas ventajas Después de la instalación, agregará el paquete al directorio de administración de dpkg de forma predeterminada, y se puede dpkg -r ***usar para .

 primer usoapt install checkinstall

 Después de eso, debe nombrar la carpeta del código fuente en el formato de nombre del paquete-versión , por ejemplo, debe tener el formato de mousepad-0.5.10 , de lo contrario, será muy inconveniente administrarlo con el comando dpkg.

 Úselo directamente en Temrinal checkinstallpara la instalación, durante la cual le preguntará si necesita agregar una descripción y confirmar la información del paquete, etc. siga la información del aviso para realizar algunas operaciones simples, como eliminar una carpeta, un archivo o algo así.

 Después del éxito, se ve así:

inserte la descripción de la imagen aquí

 Al mismo tiempo, .debse generará el paquete correspondiente en el directorio.
inserte la descripción de la imagen aquí

 Después de compilar uno de ellos, reinícielo inmediatamente y luego compile el segundo. Es posible que no se instale durante la segunda compilación, pero aparecerá el paquete deb, puede usar la instalación y agregar parámetros para forzar la sobrescritura de la dpkg -iinstalación --force-all. y luego reiniciar de nuevo.
 Veamos el efecto

inserte la descripción de la imagen aquíinserte la descripción de la imagen aquí

Supongo que te gusta

Origin blog.csdn.net/m0_74075298/article/details/128175444
Recomendado
Clasificación