为什么 Teamviewer 一直在后台运行?

为什么 Teamviewer 一直在后台运行?

在 Ubuntu 12.10 上安装 TeamViewer 8 后,我注意到一个名为“teamviewerd”的正在运行的进程,更具体地说:

/opt/teamviewer8/tv_bin/teamviewerd -f
/opt/teamviewer8/tv_bin/wine/bin/wineserver

每当我尝试杀死它时它都会自动重新打开,我想知道为什么会发生这种情况。

提前致谢。

答案1

因为这是 teamviewer 的本质:它是为了重生而构建的。

/opt/teamviewer8/tv_bin/script/teamviewerd.sysv 可能要对此负责。

要停止 teamviewer 使用:

sudo teamviewer --daemon stop 

它会显示...

initctl stop teamviewerd
teamviewerd stop/waiting

它消失了......

rinzwind@discworld:/opt/teamviewer8/tv_bin/script$ ps -ef|grep teamviewer
rinzwind 12712 12428  0 18:11 pts/0    00:00:00 grep --color=auto teamviewer

操作守护进程的命令:

teamviewer --daemon status        show current status of the TeamViewer daemon
teamviewer --daemon start         start TeamViewer daemon
teamviewer --daemon stop          stop  TeamViewer daemon
teamviewer --daemon restart       stop/start TeamViewer daemon
teamviewer --daemon disable       disable TeamViewer daemon - don't start daemon on system startup
teamviewer --daemon enable        enable TeamViewer daemon - start daemon on system startup (default)

关于评论:

来自 teamviewer 9 帮助:

$teamviewer --help

 TeamViewer                      9.0.32150 

 teamviewer                      start TeamViewer user interface (if not running) 

 teamviewer --help               print this help screen 
 teamviewer --version            print version information 
 teamviewer --info               print version, status, id 
 teamviewer --ziplog             create a zip containing all teamviewer logs (useful when contacting support) 

 teamviewer --passwd [PASSWD]    set a password (useful when installing remote (ssh) 

 teamviewer --daemon status      show current status of the TeamViewer daemon 
 teamviewer --daemon start       start      TeamViewer daemon 
 teamviewer --daemon stop        stop       TeamViewer daemon 
 teamviewer --daemon restart     stop/start TeamViewer daemon 
 teamviewer --daemon disable     disable    TeamViewer daemon - don't start daemon on system startup 
 teamviewer --daemon enable      enable     TeamViewer daemon - start daemon on system startup (default) 

TV9 中仍有选项。

答案2

systemctl stop teamviewerd.service
systemctl disable teamviewerd.service

答案3

如果您从 .deb 文件安装 Teamviewer 10,--daemon stop则如上文所述,它将无法在 Ubuntu 14.04 LTS(以及其他版本?)中使用。不知道为什么。

守护进程是一个“新贵”的工作,因此它/etc/init/teamviewerd.conf不受控制/etc/init.d

不幸的是,对我来说,initctl stop teamviewerdservice teamviewerd stop都会导致:

initctl: Unknown instance: 

teamviewerd.sysv安装在 /opt 中。因此,要停止它,您需要执行以下操作:

$ sudo /opt/teamviewer/tv_bin/script/teamviewerd.sysv stop

答案4

teamviewer 使用 upstart 在启动时启动守护进程。upstart 确实设置了 respawn 以保持进程运行。正如 12.04 用户提到的,upstart 脚本中的 respawn 节可能是您想要注释掉的。

如果启动 upstart,teamviewer 进程将以 root 身份运行。由于 respawn 位于 upstart 脚本中,因此无论您执行隐式终止还是“sudo stop teamviwer”(upstart 方式)或“sudo teamviewer --daemon status”,都可能遇到永久终止它的问题。最好的办法可能是注释掉 upstart 脚本中的 respawn 行,然后根据需要启动和停止服务。

相关内容