Potrzebuję demonizować aplikację Windows działającą w Wine i utworzyć pid w /var/run
. Ponieważ wymaga uruchomienia sesji X11, muszę się upewnić, że zmienna $ DISPLAY jest ustawiona w środowisku uruchomionego użytkownika.
Zakładając, że mam już uruchomioną sesję X11 z danym wyświetlaczem, oto jak wygląda linia start-stop-demon w moim /etc/init.d
skrypcie:
start-stop-daemon --start --pidfile /var/run/wine-app.pid -m -c myuser -g mygroup -k 002 --exec /home/myuser/.wine/drive_c/Program\ Files/wine-app.exe
Niestety moja wersja start-stop-daemon na Ubuntu 8.04 nie ma -e
opcji ustawiania zmiennych środowiskowych. Rozumiem, że można po prostu ustawić $ DISPLAY przed poleceniem, tak:
VAR1="Value" start-stop-daemon ...
Ale to nie działa. Ponieważ używam -c {user}
opcji uruchamiania jako określony użytkownik, domyślam się, że istnieje przełącznik środowiskowy i VAR1 został utracony. Próbowałem wyeksportować DISPLAY od uruchomionego użytkownika .profile
i / lub, .bashrc
ale to też nie działa.
Czy jest na to inny sposób? Czy to w ogóle możliwe? Czy coś przeoczyłem?
Możesz użyć
env
do modyfikacji środowiska:źródło