web-dev-qa-db-fra.com

Le vin a cessé de fonctionner. Comment puis-je réinstaller sans perdre de données

Le vin a mystérieusement cessé de fonctionner. J'ai décidé de supprimer et de réinstaller entièrement Wine, mais avant cela, je veux m'assurer de ne perdre aucune des multitudes de fichiers et de programmes que j'ai enregistrés et installés sur Wine par le passé.

Puis-je simplement sauvegarder "drive_c" et "dosdevices" dans le .wine foider, puis supprimer complètement le répertoire .wine (rm -rf ~/.wine), réinstaller Wine, puis replier les dossiers sauvegardés dans le répertoire annuaire? Serais-je capable d'exécuter les programmes normalement?

De plus, puisque j'écris déjà ceci, je pourrais aussi bien ajouter ce que je sais de ce qui n'allait pas avec Wine.

Je suis sur Ubuntu 12.04. Le vin a bien fonctionné il y a environ une semaine et a mystérieusement cessé de fonctionner.

Si j'exécute winecfg.exe, le processus s'exécute (selon la commande supérieure), mais rien ne s'affiche à l'écran. Cela prend juste 100% d'un de mes processeurs. La même chose se produit si je lance Winetricks ou si je lance un programme .exe dans Wine. Un processus apparaît en haut, prend de la CPU, mais rien ne se passe.

Si je passe du vin en terminal, les résultats sont les suivants:

user@computer:~/Downloads/SpaceEngine 0.97/system$ wine SpaceEngine.exe 
modify_ldt: Invalid argument
modify_ldt: Invalid argument
modify_ldt: Invalid argument
modify_ldt: Invalid argument
modify_ldt: Invalid argument
err:seh:raise_exception Exception frame is not in stack limits => unable to dispatch exception.

J'ai essayé de mettre à jour le vin, mais cela n'a rien fait. Alors, essayez d’effacer l’installation et de recommencer. Alors, comment puis-je être sûr de ne pas perdre de données?

2
Brian C

Je l'ai corrigé. Je ne sais pas ce qui ne va pas - mais j'ai copié-collé tout le répertoire .wine comme sauvegarde. Ensuite, j'ai supprimé tout le répertoire .wine, réinstallé wine et réinséré UNIQUEMENT les dossiers drive_c et dosdevices.

Fonctionne très bien maintenant!

Je ne sais pas si l'une ou l'autre de ces réponses revient à mon problème, ou l'aurait aidé si je l'avais essayée - mais ce que j'ai fait a bien fonctionné.

Il suffit de sauvegarder et de réinstaller.

1
Brian C

Je suis sur Ubuntu 12.04.4 LTS x86_64 avec le noyau 3.11.0-24-generic, wine-1.7.18. J'ai résolu ce problème en ajoutant echo 1 > /proc/sys/abi/ldt16 à la ligne /etc/rc.local avant exit 0. Après le redémarrage, je peux installer les programmes Win16.

2
N0rbert

Vous essayez probablement d'exécuter un exécutable Windows 16 bits sur un noyau Linux 64 bits récemment mis à jour.

La prise en charge des segments 16 bits a été suspendue sur les systèmes Linux 64 bits en raison d'un problème de sécurité.

Cette question a récemment fait l’objet de discussions approfondies sur le forum WineHQ et a été signalée comme un bogue .

Pour le moment, il n’existe pas de solution de contournement. Vous devrez attendre une mise à jour de Wine ou du noyau.

Néanmoins, les systèmes Linux 32 bits ne sont pas affectés.

1
Serge Stroobandt

Il suffit de courir

$ echo 1 > /proc/sys/abi/ldt16

et commencez ensuite votre application via wine. Ceci active temporairement le support 16 bits dans le noyau.

0
cweiske