web-dev-qa-db-fra.com

Le fichier .xsession-errors est énorme. Comment puis-je désactiver?

J'ai consulté plus de 30 questions de forum différentes sur ce même problème, mais aucune d'entre elles n'a été en mesure de m'orienter dans la bonne direction.

Je me fiche de ce qui cause le problème. Je me fiche de ce que disent les messages d'erreur.

Je veux complètement désactiver cela.

Je ne veux pas désactiver toute la journalisation sur mon système, juste ce fichier .xsession-errors.

J'ai essayé la chose/dev/null ça ne marche pas. Je l'ai fait en lecture seule, je crée simplement un nouveau fichier .xsession-errors.jkhbjhjh. J'ai même commenté la génération de fichier dans/etc/X11/xsession.

J'utilise un serveur Web de commerce électronique qui sera mis hors service dans moins de 90 jours. Je dois juste garder les sites assez longtemps pour pouvoir tous les transférer sur mon nouveau système. Ce fichier journal remplit mon disque dur 2 à 3 fois par semaine, rendant mes magasins en ligne inutilisables.

Pour être clair, j'aimerais savoir comment désactiver la journalisation des erreurs .xsession. J'utilise Ubuntu 9.10 avec gnome. Je sais qu'il n'est plus pris en charge, mais encore une fois, ce serveur est mis hors service dans moins de 90 jours.

13
israelj

Il existe un fichier appelé/etc/X11/Xsession. Ce qui créera le lien symbolique vers un fichier tmp. C'EST À DIRE. Commence au numéro de ligne 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

Vous pouvez copier ce fichier Xsession dans Xsession.bak. Puis dirigez votre tête et dirigez votre ERRFILE vers/dev/null IE. Ligne 83

exec >> /dev/null 2>&1
13
earlonrails

La solution de contournement pour cela dépend plutôt du gestionnaire de bureau que vous utilisez. Changer le fichier / etc/X11/Xsession fonctionne bien dans certains cas, mais si vous utilisez gnome, par exemple, vous devez ajouter les lignes suivantes à ~/.gnomerc :

rm -r ${HOME}/.xsession-errors
ln -s /dev/null ${HOME}/.xsession-errors

Espérons que cette subtilité aidera quelqu'un.

3
Sean A

J'ai rencontré la même situation que vous et essayé ces solutions suggérées sur le net et semble avoir échoué.

Enfin, j'ai commenté la ligne "ERRFILE = $ HOME/.xsession-errors" dans le fichier /etc/X11/Xsession de mon Ubuntu.

Ensuite, le fichier .xsession-errors n'apparaît plus.

D'après mes tests, ce fichier d'erreurs concerne le service vino-server que vous pouvez trouver dans votre liste de processus (ps -ef|grep vino). C'est un processus serveur VNC. Je me demande s'il existe des programmes dans le réseau qui essaient de se connecter à notre serveur par un client VNC afin de produire beaucoup de messages d'erreur dans ce fichier journal.

Puissance

1
Power Wong

fais juste

rm /wherever/you/have/.xsession-errors
ln -s /dev/null /wherever/you/have/.xsession-errors

et redémarrez l'ordinateur (ceci, vous fermez tous les programmes qui utilisaient des erreurs .xsession)

Tous les accès à .xsession-errors seront redirigés vers/dev/null, un "fichier" destiné à recevoir du texte et à le jeter.

1
josinalvo

Si vous avez essayé cette solution mais que vous l'avez trouvé insatisfaisant, j'écrirais simplement une entrée cron qui supprime le fichier toutes les heures.

crontab -e

Ajoutez l'entrée suivante:

@hourly rm -rf /path/to/xsession/files/.xsession-errors*

Rapide et sale, mais fonctionnel!

Si vous voulez que cela soit encore plus rapide, changez simplement @hourly en */2 * * * *.
Ceci supprimera les fichiers toutes les deux minutes.

1
SirCharlo

Il semble que la question est toujours d'actualité malgré son âge. Je viens d'avoir le même problème sur mon ordinateur portable avec SSD. J'ai besoin de le déplacer vers TMPFS, je suis/tmp monté dans. Tous les conseils sur le déplacement de fichiers, la tronquer, les chowns/le chattring ne fonctionnent pas pour mon xubuntu 13.04. il semble que le chemin du fichier est codé en dur dans les fichiers binaires xfce. J'ai salué tout le système de fichiers. Il n’ya pas d’occurrences de ce fichier, à l’exception de/etc/X11/Xsession, et le fait de modifier ERRFILE ne mène à rien.

En passant, aucune action avec ces fichiers dans /etc/rc.local n’a pas de conséquences, car les déclencheurs rc.local déclenchent le démarrage de Xsession.

J'ai donc créé un fichier dans mon répertoire appelé .xfce-customizations et ajouté les lignes suivantes:

ln -sf $(mktemp) /home/remort/.xsession-errors
ln -sf $(mktemp) /home/remort/.xsession-errors.old

Après cela, j'ai ajouté ce fichier pour démarrer automatiquement avec mon xsession dans "Gestionnaire de paramètres" -> "Session et démarrage - Démarrage automatique de l'application". Après le redémarrage et la connexion à mon xfce, les deux fichiers étaient liés de manière symétrique aux fichiers temporaires. Vous avez donc toujours vos journaux en mesure d'analyser pendant le temps de disponibilité, ce qui en fait une solution relativement propre.

0
remort