Działaj całkowicie bez wina


17

Chcę uruchomić wino bez głowy i uniknąć komunikatu o błędzie:

Upewnij się, że twój serwer X działa i że $ DISPLAY jest ustawiony poprawnie.

Czy jest jakiś sposób, czy muszę kierować / przekazywać do jakiegoś wyjścia? Czy może po prostu działać z linii poleceń?


Co dokładnie próbujesz uruchomić w winie? Większość programów Windows wymaga obecności GUI.
— Michael Hampton

To długa historia, ale w zasadzie nie mam bardzo starego exe, którego muszę używać ze względów starszych i nie będzie generować żadnego wyjścia GUI. Przykładem polecenia, które powoduje ten sam błąd, są winetricks vb6run
— FabioCosta

1
Cóż, tak, to uruchamia instalator oparty na GUI, więc będzie chciał wyświetlić.
— Michael Hampton

Nie zdawałem sobie sprawy, że tak naprawdę będzie wymagało GUI na tym przykładzie, to jest inny problem, ale pokazałeś mi mój błąd. W każdym razie chyba skończę przy użyciu Xvfb i naprawieniu błędów czcionek
— FabioCosta

Odpowiedzi:


13

Nie znam żadnego sposobu, aby uruchomić wino całkowicie bezgłowo, ale mogę cię wskazać xvfb. Może stworzyć wirtualny wyświetlacz, do którego X serwer może przekierować swoje wyjście. Nie trzeba podłączać fizycznego wyświetlacza. Używamy go do przeprowadzania testów selenu w przeglądarkach w bezgłowym klastrze Jenkins.

Czy to spełnia wymagania, czy masz ochotę na wino bez głowy?


Próbuję z Xvfb, ale to trochę dziwne, używając „Xvfb: 1 &” ”, a następnie„ eksport DISPLAY =: 1 ”, a następnie uruchomienie mojego wina powoduje błąd czcionki i blokowanie wykonania. Próbuję naprawić błąd czcionki, postępując zgodnie z tym blog.martin-lyness.com/archives/… , szukając innych alternatyw
— FabioCosta

15

Możesz skonfigurować swoje wino do pracy bez głowy, instalując X wirtualnego bufora ramki . Na przykład:

sudo apt-get install Xvfb
Xvfb :0 -screen 0 1024x768x16 &

Zainstaluj wino:

# On 64-bit also run: sudo dpkg --add-architecture i386
sudo add-apt-repository -y ppa:ubuntu-wine
sudo apt-get update
sudo apt-get install wine

Uwaga: Aby uzyskać szczegółowy przykład instalacji, sprawdź provision.shskrypt.

W razie potrzeby zainstaluj czcionki:

winetricks allfonts

Następnie uruchom aplikacje jako:

DISPLAY=:0.0 wine my_app.exe

lub możesz go wyeksportować (więc nie potrzebujesz powyższego prefiksu podczas uruchamiania):

export DISPLAY=:0.0 # Select screen 0.

Gdzie DISPLAYjest Twoje zapytanie do lokalnej usługi wyświetlania / wprowadzania danych (lub export DISPLAY=[user's machine]:0:).


Alternatywnie skonfiguruj Przekazywanie X11. Więc nie musisz używać DISPLAY.

Zasadniczo ustawiona X11Forwarding yesw /etc/ssh/sshd_configna serwerze bez głowy i ForwardX11 yesna /etc/sshd/ssh_configna maszynie łączysz z.

Następnie możesz uruchomić aplikacje GUI na swoim bezgłowym serwerze, a jednocześnie wine będzie mogło połączyć się z lokalnym serwerem X11, dzięki czemu będziesz mógł uruchamiać pliki wykonywalne DOS oparte na konsoli.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.