web-dev-qa-db-fra.com

Besoin d'aide pour faire en sorte que ping s'exécute sous wine sur Ubuntu 16.04

J'ai besoin d'aide pour que ping fonctionne sous wine sur Ubuntu 16.04. J'essaie de lancer un serveur Battlefield Bad Company 2 à des fins de test (il se peut que je fasse du développement sur un mod à un moment donné) et je ne parviens pas à obtenir un état jouable. Je peux exécuter mase_bc2 et Frost.Game.Main_Win32_Final.exe et même me connecter au serveur de réseau local dans le jeu. Toutefois, lors du chargement d'une carte, le chargement ne se poursuit pas et le jeu se fige.

Voici l'erreur que je dois résoudre pour que le serveur soit lisible: 0049:err:winediag:IcmpCreateFile Failed to use ICMP (network ping), this requires special permissions.

Quand je fais wine cmd puis ping j’obtiens simplement ceci: Z:\home\user> ping google.com0075:fixme:ping:main this command currently just sleeps based on -n parameter

Voici ce que j'ai essayé:

Sudo chmod 4755 /bin/ping pour permettre à Wine d'accéder à ping. Cela n'a pas aidé.

J'ai alors essayé ceci: Sudo setcap cap_net_raw+epi "$(readlink -f "/usr/bin/wine")"

ce qui entraîne cette erreur: wine: error while loading shared libraries: libwine.so.1: cannot open shared object file: No such file or directory

puis séparément après l'exécution de Sudo setcap -r "$(readlink -f "/usr/bin/wine")" pour supprimer l'erreur de bibliothèques partagées, j'ai également exécuté ceci: Sudo setcap 'cap_net_bind_service=+ep' "$(readlink -f "/usr/bin/wine-preloader")"

Les deux commandes setcap entraînent la même erreur de bibliothèques partagées.

Je suis décent sous Linux mais il semble que cela dépasse mon niveau et j'ai besoin d'aide pour cela. J'ai cherché fil après fil en ligne et je suis arrivé vide. Si quelqu'un peut résoudre ce problème pour moi, il se peut que ce soit l'une des seules sources permettant de résoudre ce problème (bug ??) sur Internet.

Je vois que quelqu'un d'autre a ce problème ici: https://forum.winehq.org/viewtopic.php?f=8&t=30704 et il obtient même la même erreur que moi après avoir utilisé setcap toutefois, ce problème n’a pas été résolu.

MISE À JOUR DU 7 sept. 2018: la création d'un lien symbolique dans /usr/lib/libwine.so.1 supprime l'erreur shared libraries, mais je ne parviens toujours pas à effectuer de commande ping via wine.

MISE À JOUR 8 septembre 2018: Cela semble être un bogue connu et est corrigé dans Wine Development 3.15: https://bugs.winehq.org/show_bug.cgi?id=43252

Merci.

2
ipkpjersi

Le problème est que Wine contient un bogue qui est corrigé dans les versions 3.14 et ultérieures de Wine, où ReplySize de moins de 56 ans empêche le fonctionnement de ping. Cependant - ping nécessite toujours des autorisations spéciales définies avec setcap dans les versions 3.14 et ultérieures de Wine. Heureusement, il existe également une solution de contournement dans les versions 3.14 et ultérieures de Wine dans laquelle Wine utilisera automatiquement le ping natif de Linux si les autorisations spéciales ne sont pas définies avec setcap, ce qui signifie essentiellement dans les versions 3.14 et ultérieures de Wine, wine ping fonctionnera désormais hors de la boîte.

Source: https://bugs.winehq.org/show_bug.cgi?id=43252

2
ipkpjersi