Launching Teamviewer remotely through SSH
Launching Teamviewer remotely through SSH
When you need to manage your Server remotely, but you can not sure that you will always be able to see the graphical, especially when the server system failure, you may have to restart your server.And then, how to launch Teamviewer remotely through command line? Maybe you can try SSH, now follow me please.
Teamviewer is a wonderful tool to access your computer (or any other device) remotely if you need to use your a graphical screen. Probably is not as secure as other linux solutions (as VNC or a VPN) but the main advantage is that is very easy to install and configure.
Suppose that we are on holidays far from home and we need to accomplish a task on our home computer using the graphical desktop. We have in our hands another device (for example a nexus7 tablet) and we are connected to WiFi hotspot. There is Teamviewer Apps for Android and IOS. We need Teamviewer installed in both machines: Desktop at home and our tablet, So I’m going to explain how can you launch remotely Teamviewer in your remote computer at home just for the time you need it to perform a particular task. As soon as we finished our job, we will stop it again to be safer.
I assume that you’ve already installed Teamviewer in your linux box and you also have a ssh account to login into your remote linux machine at home (user@home_machine:~$).
Steps:
- Login into your home linux box through ssh. Don’t use root access unless it was necessary. Use ‘sudo’ instead.
- Locate where teamviewer is installed:
user@home_machine:~$ whereis teamviewerteamviewer: /usr/bin/teamviewer /etc/teamviewer
- Now run this command to get the list of commands:
user@home_machine:~$ /usr/bin/teamviewer –helpTeamViewer 8.0.17147 <-- Your version 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 --passwd [PASSWD] set a password (useful when installing remote (ssh)
teamviewer --ziplog create a zip containing all teamviewer logs (useful when contacting support)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)
- Now we will check ID number for calling remotely our device and the currentstatus of teamviewer daemon in our computer:
user@home_machine:~$ /usr/bin/teamviewer –infoTeamViewer 8.0.17147
teamviewerd status teamviewerd stop/waiting
TeamViewer ID: 9XXXXXXX7 <-- Your ID number
- If we don’t remember the password to connect to teamviewer in our home machine we can reset it using this command:
user@home_machine:~$ /usr/bin/teamviewer –passwd MYnewpassword - Now it’s time to enable the teamviewer daemon and launch (start) it. check that it’s up and running:
user@home_machine:~$ sudo teamviewer --daemon enable mar jul 9 13:29:00 CEST 2013
Action: Installing daemon (8.0.17147) for 'SystemV' ...
installing /etc/init.d/teamviewerd (/opt/teamviewer8/tv_bin/script/teamviewerd.sysv)
System start/stop links for /etc/init.d/teamviewerd already exist.
/etc/init.d/teamviewerd start
Starting teamviewerd...
user@home_machine:~$ sudo teamviewer –daemon start/etc/init.d/teamviewerd start
Starting teamviewerd...
- We check again the status:
user@home_machine:~$ sudo teamviewer –infoTeamViewer 8.0.17147teamviewerd status /opt/teamviewer8/tv_bin/teamviewerd
teamviewerd start/running
TeamViewer ID: 9XXXXXXX7
- … and now we check that new connections are opened to teamviewers servers:
user@home_machine:~$ sudo netstat -ntap | grep teamviewertcp 0 0 127.0.0.1:5941 0.0.0.0:* LISTEN 20351/teamviewerd
tcp 0 0 192.168.1.100:49333 176.223.198.114:5938 ESTABLISHED 20351/teamviewerd
- Now close your ssh session to your home computer otherwise you won’t be able to connect to teamviewer remotely. Once closed the ssh session try to connect to your home PC remotely using any other device you had in your hands.
- Once you finish close the teamviewer session and reconnect to your home computer again with ssh. We will stop teamviewer until the next time we needed it again. Commands to perform this final step is:
user@home_machine:~$ sudo teamviewer –daemon stop
Fantastic and very helpfull post. I’ve been trying to do something like this since many months without success. Now I can easily access the machine at my conveninence without leaving TV always on. THANKS!
ps: I confirm it worked for me (remote machine with TV8 on Debian 7)
Great write-up! On my Ubuntu 13.04 installation I am able to control the daemon via SSH (start/stop/restart/etc.), but still can’t connect to the session. I looked at the differences of what is running when I start the teamviewer daemon from SSH and what get’s initialized when I login. It seems that starting the daemon does not start the “wineserver” that is started as a user process when I login. I believe your instructions assume that that is already started. I will experiment with this and see if this can be started from the system init (instead of a user login process) and restarted remotely from SSH.
Yes, you’re right. I assumed that winserver (/opt/teamviewer8/tv_bin/wine/bin/wineserver) had already been launched when you logged in. But I can kill it and launch it again when it was needed from the console to restarting the whole service
If I’m not wrong, we need two processes to run teamviewer at our home machine, one owned by ‘user’ and the other by ‘root’:
user 608 0.1 0.0 4556 1764 ? Ss 13:10 0:00 /opt/teamviewer8/tv_bin/wine/bin/wineserver
root 1075 0.6 0.1 70380 5504 ? Sl 13:17 0:00 /opt/teamviewer8/tv_bin/teamviewerd -d
If you can try what I’m saying, kill both processes from console to start from scratch.
To launch the wineserver as user, ssh to your machine as user and type:
user@home_machine:~$ /usr/bin/teamviewer –info &
Click return to go ahead.
… then, to launch teamviewer daemon as root (sudo) type:
user@home_machine:~$ sudo teamviewer –daemon start &
Click return to go ahead.
Check that both processes were created typing:
user@home_machine:~$ ps -aux | grep view
… you should see now two processes:
user 2134 0.1 0.0 4448 1648 ? Ss 13:32 0:00 /opt/teamviewer8/tv_bin/wine/bin/wineserver
root 2175 0.4 0.0 45280 3984 ? Sl 13:32 0:00 /opt/teamviewer8/tv_bin/teamviewerd -d
Close your SSH session and try to connect to your home_machine with teamviewer.
It works for me.
I was able to run the teamviewer7 typing these two command
/usr/bin/teamviewer -info &
sudo teamviewer -daemon start &
Now,
ps -ef| grep view
xxx 15582 14511 0 Feb21 pts/4 00:00:00 /bin/bash /usr/bin/teamviewer -info
xxx 15586 15582 0 Feb21 pts/4 00:00:00 /bin/bash /opt/teamviewer/teamviewer/7/bin/wrapper wine c:\Program Files\TeamViewer\Version7\TeamViewer.exe -info
xxx 15615 1 1 Feb21 ? 00:00:00 /opt/teamviewer/teamviewer/7/wine/bin/wineserver
And now the big question is how will I find my ID and Passwd to connect to that remote machine through teamviewer from my home?
Thanks