8

If we have a collection of Windows and Linux computers on a LAN, is it possible to shutdown a computer having a specific IP address, using the Linux shell?

Assume that I do not have ssh or telnet running on the PCs. I have the root password for all the computers.

Arjan
  • 31,511
Rohit Banga
  • 2,494

10 Answers10

6

Just to give you an answer based on your question: "Shutting down a pc based on just the ip address is impossible"

You can make it possible by making their desktops or shells available over the network. RDP(windows) / SSH or VNC (linux) will do.

Pit
  • 892
4

Use out-of-band cards (if the computers don't already have them).

They're not cheap cards, but you assign an IP address to each card and you can remotely power cycle/connect/kvm anything really.

2

Windows has the shutdown /m \\computername command built in, but for Linux you probably would have to install ssh and use ssh root@computername /sbin/shutdown. Why wouldn't a Linux box have SSH installed, anyway?

Hirvox
  • 471
2

A little more context to your problem would be helpful. In general, the answer is 'no'.

Remotely shutting down any random computer is not usually a good thing to be able to do, so most are set up to protect from that happening. If sshd access is blocked, either by being disabled or firewalled, then that computer is even more protected, as it should be, and having root won't do you any good unless you're standing in front of that computer.

On the other hand, there are some compute centers that use management systems to do just what you're thinking. These are often supported either by a special daemon running on the computer, listening on a different network port than sshd, or by using low-level firmware utilities built into the network card. These scenarios require a little planning and won't help you if you've suddenly got a problem now.

Depending upon the age of the computer and the OS, there may be known attack vectors that might get you root access using cracking software. I don't recommend this route, but it exists.

One last idea - there are remotely operated power strips that could be used. If you know which computer it is and which power strip and which plug it is plugged into, you could simply turn off power to that plug. Again, this requires some preplanning, and you want to make sure someone hasn't plug their ventilator into that outlet.

1

You will have to find out what the router is. Once you find it out type the following in a Command Prompt:

shutdown -s -f -m \\"IP of remote machine" -t xx
Gareth
  • 19,080
mubarak
  • 11
1
  1. Type shutdown -i in the run window.
  2. Click the "Add" button and type the name of the computer you want to shutdown or its IP address.
  3. You can select what you want the computer to do.
  4. In this mode, it's necessary to add a comment. Do so.
  5. Press OK.
Indrek
  • 24,874
Anto279
  • 11
  • 1
1

If you install the SSH service, as mentioned before, you can use the ssh command such as:

ssh root@myhost.domain.com shutdown -hy 0

In order to have this all automated, the key exchange should be done, so your private key is in your default ~/.ssh/identity file, and the public part in the ~/.ssh/authorized_keys file on the remote host.

If you look at SSH, you will see all the options and much more.

Gareth
  • 19,080
jfmessier
  • 2,810
0

Enter the following in a Command Prompt:

shutdown -ip 

Then add the IP address and you have different options to shutdown, restart and so on.

Gareth
  • 19,080
0

There Is a program for linux called winexe that can remotely send a command to remote windows machines, and I think if samba is installed on linux, it could work with that too, best thing is, it doesn't need any changes to the windows pcs

matt
  • 1
0

It is possible through the command as

shutdown -s -f -m \\"ip of remote machine" -t xx

but for this the system must be in lan... -t xx is seconds which you have to specify.

Arjan
  • 31,511