如何在不登录的情况下启动 wine 应用程序?

如何在不登录的情况下启动 wine 应用程序?

我想在系统启动时启动一个 wine 应用程序。

然而这个应用程序需要 Xwindow 环境。我现在只能手动启动它,所以我必须先登录然后启动应用程序。

我搜索了一些有关 Xsession 启动设置的信息。我认为应用该方法需要登录。如何在不登录的情况下启动应用程序?

答案1

如果没有登录,您无法启动 X11 应用程序。我认为您的意思是您不想每次都输入用户名和密码。

如果是这种情况,首先,您应该在显示管理器上设置自动登录。由于您没有提供有关您使用什么 DM 的任何信息,因此我无法提供确切的说明(无论如何,快速搜索即可)。

其次,您必须将wine命令行添加到 WM/DE 自动启动文件中。每个 WM/DE 的自动启动文件各不相同。搜索一下。

这应该可以。

答案2

UBUNTU 14.04 X64 - XFCE with VNC - 自动登录,自动启动 WINE 应用程序

adduser rapid_vn
sudo add-apt-repository ppa:ubuntu-wine/ppa
sudo apt-get update
sudo apt-get install software-properties-common
sudo apt-get install xfce4
sudo apt-get install firefox
sudo apt-get install gnome-schedule
sudo apt-get install wine
sudo apt-get upgrade
sudo apt-get clean

安装紧密的 VNC 服务器

apt-get install tightvncserver

更改用户

su - rapid_vn

使用用户rapid_vn为VNC服务器设置密码

vncpasswd

注销用户rapid_vn

exit

配置VNC服务器

nano /etc/init.d/vncserver

#!/bin/bash
PATH="$PATH:/usr/bin/"
export USER="rapid_vn"
DISPLAY="1"
DEPTH="16"
DPI="96"
GEOMETRY="800x600"
OPTIONS="-depth ${DEPTH} -geometry ${GEOMETRY} -alwaysshared -dpi ${DPI} :${DISPLAY}"
. /lib/lsb/init-functions

case "$1" in
start)
log_action_begin_msg "STARTING VNCSERVER FOR USER '${USER}' ON LOCALHOST:${DISPLAY}"
su ${USER} -c "/usr/bin/vncserver ${OPTIONS}"
;;

stop)
log_action_begin_msg "STOPING VNCSERVER FOR USER '${USER}' ON LOCALHOST:${DISPLAY}"
su ${USER} -c "/usr/bin/vncserver -kill :${DISPLAY}"
;;

restart)
$0 stop
$0 start
;;
esac
exit 0

nano /home/rapid_vn/.vnc/xstartup

#!/bin/sh
xrdb $HOME/.Xresources
xsetroot -solid grey
startxfce4 &

chown -R rapid_vn. /home/rapid_vn/.vnc && chmod +x /home/rapid_vn/.vnc/xstartup
sed -i 's/allowed_users.*/allowed_users=anybody/g' /etc/X11/Xwrapper.config

chmod +x /etc/init.d/vncserver
service vncserver start

update-rc.d vncserver defaults

reboot

使 Firefox 重新启动时自动启动

mkdir /home/rapid_vn/.config
mkdir /home/rapid_vn/.config/autostart

chmod u=rwx,g=rwx,o=rwx /home/rapid_vn/.config
chmod u=rwx,g=rwx,o=rwx /home/rapid_vn/.config/autostart

nano /home/rapid_vn/.config/autostart/firefox.desktop

[Desktop Entry]
Encoding=UTF-8
Version=0.9.4
Type=Application
Name=Firefox Browser
Comment=Firefox Browser
Exec=/usr/bin/firefox
OnlyShowIn=XFCE;
StartupNotify=false
Terminal=false
Hidden=false

重新启动时自动启动 MT4

nano /home/rapid_vn/.config/autostart/metatrader4.desktop

[Desktop Entry]
Encoding=UTF-8
Version=0.9.4
Type=Application
Name=MetaTrader 4
Comment=MetaTrader 4
Exec=wine "C:\\Program Files (x86)\\MetaTrader 4\\Terminal.exe"
OnlyShowIn=XFCE;
StartupNotify=false
Terminal=false
Hidden=false

使脚本重新启动 MetaTrader 4

nano /home/rapid_vn/restart_mt4.sh

#!/bin/sh
pkill Terminal.exe &
pkill terminal.exe &
env DISPLAY=:1 wine "C:\\Program Files (x86)\\MetaTrader 4\\Terminal.exe" &

制作任务计划运行脚本

mkdir /home/rapid_vn/.gnome
mkdir /home/rapid_vn/.gnome/gnome-schedule
mkdir /home/rapid_vn/.gnome/gnome-schedule/crontab

chmod u=rwx,g=rwx,o=rwx /home/rapid_vn/.gnome
chmod u=rwx,g=rwx,o=rwx /home/rapid_vn/.gnome/gnome-schedule
chmod u=rwx,g=rwx,o=rwx /home/rapid_vn/.gnome/gnome-schedule/crontab

nano /home/rapid_vn/.gnome/gnome-schedule/crontab/1

ver=5
title=Restart MetaTrader 4
desc=
output=0
display=0
command_d=sh /home/rapid_vn/restart_mt4.sh

echo 1 > /home/rapid_vn/.gnome/gnome-schedule/crontab/last_id

编辑时间运行任务计划

su - rapid_vn
crontab -e

    58 23 * * * sh /home/rapid_vn/restart_mt4.sh # JOB_ID_1

exit

reboot

相关内容