首页 > 系统相关 >Linux系统下通过ssh免密实现一键批量关机

Linux系统下通过ssh免密实现一键批量关机

时间:2024-08-06 16:32:31浏览次数:7  
标签:关机 免密 192.168 ssh shutdown Linux 执行 root

 

一、实验环境介绍

本文通过一台控制端机器对其他多台机器进行远程关机操作,实验IP如下:

控制端:192.168.80.177

被控制关机端:192.168.80.130,192.168.80.206

二、ssh免密登录配置

以下操作均在控制端(80.177)上用root用户权限进行操作

1、生成私钥密钥对,执行ssh-keygen  -t  rsa然后一路回车即可。如下图:

2、分发ssh公钥给需要被控制的机器,执行ssh-copy-id  root@ip即可。

如本测试环境下执行ssh-copy-id  [email protected]和ssh-copy-id  [email protected]

第一步输入yes并回车,

第二步输入被控ip的root用户密码。

多台其他ip的机器同理进行分发。如下图

三、批量关机脚本书写

1、在控制端(80.177)上创建一个shutdown.sh脚本文件,内容如下:

 

#!/bin/bash

# 服务器IP地址列表

servers=("192.168.80.206" "192.168.80.130")

# 遍历服务器列表

for server in "${servers[@]}"

do

  # 使用ssh登录到服务器并执行关机命令

  ssh root@$server 'shutdown -h now'

done

 

其中服务器IP地址列表可根据实际进行添加,空格隔开即可。

2、执行chmod  +x  shutdown.sh赋予脚本执行权限。

3、执行./shutdown.sh进行批量关机操作。

注:请执行该脚本前确认被控机器是否允许关机,防止软件运行异常或丢失重要未做备份的文件!

标签:关机,免密,192.168,ssh,shutdown,Linux,执行,root
From: https://www.cnblogs.com/lz-200/p/18345407

相关文章

  • linux: 在crontab中指定执行用户
    一,使用-u参数指定用户:1,添加编辑命令时指定用户#-e:编辑#-u:指定用户名root@lhdpc:/data/api#crontab-e-uwww-datacrontab:installingnewcrontab2,查看cron中命令时指定用户:#-l:列出命令#-u:指定用户名root@lhdpc:/data/api#crontab-l-uwww-dat......
  • Linux系统打包Qt
    因为使用了QWebEngineView,所以遇到了打包问题,记录一下我的失败过程。等以后有机会再接着弄吧目前知道的打包方式有三种:1.linuxdeplot+linuxdeploy-plugin-qt2.linuxdeplotqt+appimagetool3.使用脚本,收集ldd显示的依赖库 第一种(linuxdeplot+linuxdeploy-plugin-qt),......
  • linux基础命令
    一、文件和命令1、cd命令   cd/home进入‘/home’目录   cd…返回上一级目录   cd…/…返回上两级目录   cd/返回跟目录   cd-返回上次所在的目录   mkdir<目录名>创建目录   mkdirdir1dir2同时创建两个目录   mk......
  • Linux的netns使用总结
     转载请注明出处:Linux的netns(NetworkNamespace)是Linux内核提供的一项强大的网络隔离功能,它能够创建多个独立的网络空间,每个空间都拥有自己独立的网络协议栈,包括网络接口(网卡)、路由表、iptables规则等。这种隔离机制使得不同的应用程序或服务可以在互不干扰的网络环境中运行......
  • Ubuntu 24.04 LTS Linux上安装Azure Data Studio
    AzureDataStudio是由Microsoft开发的开源数据库管理和开发工具。它是一种跨平台数据库管理工具,可在所有流行的操作系统(Windows、macOS和Linux)上运行。该软件提供了一个现代编辑器和丰富的界面,用于管理各种数据库系统,例如MicrosoftSQLServer、PostgreSQL等。它还为......
  • 在Linux命令行中检查固件版本的7种方法
    当前有几种方法可以检查Linux上的固件或BIOS版本,这有助于解决硬件问题,对于保持系统安全和最新至关重要。在本文中,我们将了解获取系统固件版本的工具和命令,这些固件版本与BIOS、UEFI或设备特定的固件有关。每种方法都提供了一种简单的方法,可帮助您快速确定当前固件版本并......
  • Ubuntu 24.04 LTS Noble安装OpenSSH服务器
    OpenSSH服务器在 UbuntuLinux上提供安全外壳(SSH)协议,以便远程管理系统,同时提供高级别的加密,确保安全。虽然许多Linux系统默认配备OpenSSH服务器,但在Ubuntu24.04上,我们必须手动安装它。因此,在本教程中,我们将介绍在Ubuntu24.04系统上安装和配置OpenSSH服务......
  • 【Linux】常用命令——vim
    菜鸟教程学习笔记Linuxvi/vim|菜鸟教程(runoob.com)Vim是从vi发展出来的一个文本编辑器。代码补全、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。是一个程序开发工具而不是文字处理软件。1.vi/vim的使用基本上vi/vim共分为三种模式,命令模式(Co......
  • linux 扩容
    工具fdisk只支持MBR分区模式parted同时支持MBR和GPT分区扩容在线扩容partedroot@kzf:~#lsblkNAMEMAJ:MINRMSIZEROTYPEMOUNTPOINTSsda8:00446.6G0disk├─sda18:101G0part/boot/efi└─sda28:2092.1G0part/parted/dev/sdaresizep......
  • 简单的mysqldump备份(linux)
    备份小数据库用mysql自带的mysqldump就可以完成备份,写一个简单的适用于linux下跑的脚本。策略每天凌晨1点全备,保留7天备份脚本dbbak.sh#!/bin/bashexportPATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/mysql/bin:/root/bin:/usr/local/......