¿Cómo evito que los errores de sesión .xsession consumn espacio en el disco?

¿Hay alguna forma de deshabilitar completamente el archivo .xsession-errors? Lo tengo como un enlace simbólico a / tmp para que el disco duro de mi computadora portátil pueda (por suerte) irse a dormir por una vez, pero al menos el 95% de las cosas en el archivo (se llena a unos 500k por hora) es …

  (nautilus: 1618): GLib-GObject-CRITICAL **: g_value_get_object: aserción `G_VALUE_HOLDS_OBJECT (valor) 'falló 

lo que es una basura total para mí. He intentado hacer un enlace simbólico a / dev / null pero eso no funciona (el enlace resultante se sobrescribe), y tampoco quiero la actividad, por lo que espero que mi computadora portátil se pueda dormir por una vez.

Estoy usando Ubuntu 11.04, sin complementos especiales para Nautilus.

Encontré una solución provisional.

Puse un pequeño script en /etc/X11/Xsession.d llamado 91redirect-xsession-errors que hace el trabajo por ahora, pero si quiere tener su propio enlace simbólico personalizado para .xession-errors , no funciona para eso (I intentado y no dio salida a ningún dato).

 #! / bin / sh

 # Redirecciona $ HOME / .xsession-errors a / dev / null.
 # BJEM 11 de enero de 2012

 XSESSION_ERRFILE = $ HOME / .xsession-errors

 # Esto no parece funcionar para un archivo regular,
 # es decir, si desea un enlace simbólico $ HOME / .xsession-errors
 # a otro archivo.  No se por que.
 XSESSION_ERRFILE_FINAL = / dev / null

 # Crea archivo de destino si no existe.
 toque "$ XSESSION_ERRFILE_FINAL"

 # Enlace el archivo .xsession-errors al objective deseado
 # no importa qué.
 ln -sf "$ XSESSION_ERRFILE_FINAL" "$ XSESSION_ERRFILE"

 # Caso de prueba.
 #gedit &

 ##### FIN DEL DOCUMENTO #####

Es un poco “rudo y listo” pero hace el trabajo por mí. Tenga en cuenta que este es el único archivo que se ha modificado.

Hay un archivo llamado / etc / X11 / Xsession. Que creará el enlace simbólico a un archivo tmp. ES DECIR. Comienza en la línea número 61

 ERRFILE=$HOME/.xsession-errors # attempt to create an error file; abort if we cannot if (umask 077 && touch "$ERRFILE") 2> /dev/null && [ -w "$ERRFILE" ] && [ ! -L "$ERRFILE" ]; then chmod 600 "$ERRFILE" elif ERRFILE=$(tempfile 2> /dev/null); then if ! ln -sf "$ERRFILE" "${TMPDIR:=/tmp}/xsession-$USER"; then message "warning: unable to symlink \"$TMPDIR/xsession-$USER\" to" \ "\"$ERRFILE\"; look for session log/errors in" \ "\"$TMPDIR/xsession-$USER\"." fi else errormsg "unable to create X session log/error file; aborting." fi 

Puede cp este archivo Xsession a Xsession.bak. Luego ve a la cabeza y apunta tu ERRFILE a / dev / null IE. Línea 83

 exec >> /dev/null 2>&1 

Me enfrenté con el mismo problema en el servidor redhat linux 6.4 pero puedo encontrar qué carpeta o usuario ocupa más espacio con este comando “buscar / -xdev -type f -size + 100000000c -exec ls -lh {} \;” Luego borré manualmente x errores de sesión usando el comando rm -rf

Tenga en cuenta que eliminar el archivo .xsession-errors no libera espacio hasta que se reinicie el sistema si el proceso aún está escribiendo en el archivo. Use echo para sobrescribir el contenido del archivo para establecer el archivo en un carácter. Hasta que el proceso de escritura en .xsession-errors se detenga, el archivo comenzará a crecer inmediatamente de nuevo. Tengo que detener Remmina, luego truncar el archivo y estoy de vuelta en ejecución. Tenga en cuenta que también ayuda si configura el tamaño límite de su archivo en unos pocos conciertos, de modo que el archivo .xsession-errors no pueda archivar la unidad y bloquear el sistema. Sigo buscando LA respuesta a este problema de un virus integrado en aparentemente todos los sistemas operativos Linux. Suena como los desarrolladores de Microsoft han estado contribuyendo a Linux … 😉