web-dev-qa-db-fra.com

Unetbootin n'a pas d'interface graphique sur Ubuntu GNOME

Je veux passer à Antergos. Lors de l'ouverture de Unetbootin, je n'arrive pas à l'ouvrir avec succès.

Voici ce qui se passe lorsque j'ouvre UNetbootin depuis Terminal

namehidden@lolllll:~$ Sudo unetbootin
[Sudo] password for namehidden: 
X Error: BadAccess (attempt to access private resource denied) 10
  Extension:    130 (MIT-SHM)
  Minor opcode: 1 (X_ShmAttach)
  Resource id:  0x164
X Error: BadShmSeg (invalid shared segment parameter) 128
  Extension:    130 (MIT-SHM)
  Minor opcode: 5 (X_ShmCreatePixmap)
  Resource id:  0xc0
X Error: BadDrawable (invalid Pixmap or Window parameter) 9
  Major opcode: 62 (X_CopyArea)
  Resource id:  0x2800010
X Error: BadDrawable (invalid Pixmap or Window parameter) 9
  Major opcode: 62 (X_CopyArea)
  Resource id:  0x2800010
X Error: BadDrawable (invalid Pixmap or Window parameter) 9
  Major opcode: 62 (X_CopyArea)
  Resource id:  0x2800010

enter image description here

Est-ce un problème connu? Puis-je résoudre ce problème? Y at-il un travail autour?

21
lolreppeatlol

Tout d'abord, désinstallez votre version actuelle de unetbootin, puis utilisez l'unetbootin officiel page pour l'installer à l'aide de ppa au lieu de fichiers deb. En cas d'échec, essayez de l'ouvrir depuis le lanceur au lieu du terminal.

9
Cruelplatypus67

C'est un problème connu.

En guise de solution de contournement ne nécessitant pas de réinstallation de unetbootin, vous pouvez exécuter cette commande:

Sudo QT_X11_NO_MITSHM=1 unetbootin

La commande ci-dessus désactive l'accès à la mémoire partagée pour l'exécution de cette application basée sur Qt, ce qui lui permet de fonctionner correctement sous GNOME.

La source PPA pour unetbootin dans la réponse acceptée inclut le préfixe pour désactiver l'accès à la mémoire partagée dans la commande d'exécution par défaut afin que son lancement à partir du raccourci d'interface graphique fonctionne sans problème: https://launchpad.net/~gezakovacs)/+ archive/ubuntu/ppa

Source de la réponse: https://github.com/unetbootin/unetbootin/issues/67

37
Paul M Edwards

J'ai changé la propriété Exec dans unetbootin.desktop:

Exec =/usr/bin/xdg-su -c/usr/bin/unetbootin

et créé le fichier /usr/bin/unetbootin avec le script bash:

#!/bin/bash
QT_X11_NO_MITSHM = 1/usr/sbin/unetbootin

alors fait le exetutable:

Sudo chmod + x/usr/sbin/unetbootin

et maintenant, lorsque je lance Unetbootin à partir de la vue d'ensemble de mon application, il se lance normalement avec l'interface graphique.

2
Paola Captanovska

Étant donné que Ubuntu 17.10 wayland est le serveur x par défaut, le programme qui gère l’accès aux pilotes de périphériques graphiques, xhosts, permet aux utilisateurs de se connecter à ces pilotes.

Comme Sudo n'a pas de session active et qu'il n'est pas autorisé à accéder au serveur, unetbootin ne peut pas créer une instance de son interface graphique.

Une fois que vous l'avez exécuté, vous accordez un accès à Sudo aux pilotes de périphérique, ce qui permet donc à unetbootin (puisqu'il est exécuté en tant que Sudo) de créer une fenêtre avec les étapes suivantes:

  1. Sous utilisateur

    xhost local:root
    

    connexions locales hors réseau ajoutées à la liste de contrôle d'accès

  2. Puis avec Sudo

    Sudo QT_X11_NO_MITSHM=1 /usr/bin/unetbootin 
    

Source: https://github.com/unetbootin/unetbootin/issues/94

Vous pouvez donc ajouter un alias à votre fichier ~/.bashrc:

 alias unetbootin="xhost local:root && Sudo QT_X11_NO_MITSHM=1 unetbootin"
2
rubo77