Linux一次在多个服务器运行命令

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux一次在多个服务器运行命令相关的知识,希望对你有一定的参考价值。

参考技术A 如果您维护多个Linux服务器,则有时您希望在所有服务器上运行相同的命令。例如,您可能希望安装/升级软件包,修补内核以及更新配置等。如果您必须登录到每个服务器并手动运行相同的命令,那将是一项繁琐的工作。

这篇文章是关于一个管理工具,它允许您一次在许多不同的机器上运行相同的命令。

通过ClusterSSH,您可以同时在多个主机上进行相同的更改。它提供了一个特殊的控制台界面,您在控制台中输入的任何内容都会自动发送到任意数量的主机。

在Linux上安装ClusterSSH

在Ubuntu,Debian或Linux Mint上安装ClusterSSH:

$ sudo apt-get install clusterssh

要在CentOS或RHEL上安装ClusterSSH,首先需要设置EPEL存储库,然后运行以下命令。

$ sudo yum install clusterssh

要在Fedora上安装ClusterSSH,只需运行:

$ sudo yum install clusterssh

配置ClusterSSH

安装后,第一步是定义要在其上运行命令的主机群集。为此,请按如下方式创建系统范围的ClusterSSH配置文件。

$ sudo vi / etc / clusters

clusters = my_cluster my_cluster2

my_cluster = host1 host2 host3 host4

my_cluster2 = host5 host6

如果您需要特定于用户的ClusterSSH配置,只需使用〜/ .csshrc而不是/ etc / clusters。在上面的示例配置中,我定义了两个集群:“my_cluster”由四个主机组成,“my_cluster2”包含两个主机。群集是您要登录并运行命令的一组主机。

当您使用任何用户定义的群集启动ClusterSSH时,它将使用ssh登录到群集中的各个主机,并在主机上运行任何用户类型的命令。

启动ClusterSSH

要启动ClusterSSH,请按如下方式运行cssh命令。

$ cssh -l dev my_cluster

在上文中,“dev”是群集中所有主机的登录ID,“my_cluster”是群集名称。

如果需要,可以指定单个主机名而不是群集名。

$ cssh -l dev host1 host2 host3

一旦CSSH执行命令时,它会弹出用于单个主机的XTerm窗口,以及标记的一个小窗口“CSSH [2]”,其是ClusterSSH控制台窗口。无论您在控制台窗口中输入什么,都将同时出现在各个主机的XTerm窗口中。基本上,您可以通过单一控制台窗口控制所有XTerm窗口。

如果要将某些命令运行到特定的XTerm窗口,只需将焦点切换到Xterm窗口,然后像往常一样键入命令。

以下屏幕截图显示了ClusterSSH的运行情况,其中群集中有五个主机,左上角的控制台窗口是您应该键入要在所有五个主机上运行的命令的位置。

转自 嘉为教育-rhce认证_rhce培训_linux培训_linux认证_linux考证

一次在Firefox中运行两个快捷命令

我想在Firefox中启动两个快捷方式,紧接着另一个。第一个是来自Web Developer插件的自定义操作之一。第二个是简单的F5来刷新页面。有没有办法只使用一个命令或按钮或其他东西运行这两个。也许JavaScript书签可以。我真的不知道任何事情所以所有的帮助表示赞赏!

提前致谢!

答案

您可以使用AutoHotKey使用单个键盘快捷键设置多个命令。

请查看此示例以获取帮助。 (这很容易做到。)

Multiple Commands to Single Hotkey

另一答案

如果要在Firefox中一次运行两个快捷方式命令。

您可以使用此Autohotkey脚本。

;GroupAdd, Browser, ahk_class Chrome_WidgetWin_1 ; Chrome or Iron
;GroupAdd, Browser, ahk_class IEFrame            ; Internet Explorer
GroupAdd, Browser, ahk_class MozillaWindowClass ; FireFox
;GroupAdd, Browser, ahk_class ApplicationFrameWindow ; Edge

; Click on the keyboard Ctrl+Shift+e 
; if Firefox browser is active then execute the two Shortcuts Commands.
^+e::  

; [+ = Shift]  [! = Alt]  [^ = Ctrl]  [# = Win] 
If WinActive("ahk_group Browser")
{ 
send ^+i ;The first shortcut Command = open the inspector
sleep 150
send {f5} ;The second shortcut Command = Refresh the Page in Browser
}
return

esc::exitapp

以上是关于Linux一次在多个服务器运行命令的主要内容,如果未能解决你的问题,请参考以下文章

linux怎样一次运行多个shell脚本?

如何在 Xcode 中一次在多个目的地上“构建和运行”?

linux的10个最危险的命令

我可以一次在多个 iOS 模拟器上运行我的 Expo 应用程序吗?

cron 命令每 12 小时运行一次

有没有办法一次在多个文件上使用 COPY?