- 当前配置文件内容如下【因为我是在测试机上做的,所以配置信息就没有策略】
[root@controll Packages]# tail -n 5 /etc/sysconfig/iptables
test iptables1
test iptables2
test iptables3
test iptables4
test iptables5
[root@controll Packages]#
========================================================================
-
其实
/etc/sysconfig/iptables
安装iptables后自动生成,但我们手动直接拷贝也无所谓的。 -
拷贝这个还是建议单独放在一台连接过所有服务器的IP上执行【否则每次连接会出现第一次连接的提示,让输入yes,这样不仅达不到自动化的意义,还容易导致夯住(屏幕一直打印
y
)】
[root@controll ccx]# cat iptable.sh
#!/bin/bash
if [ $# -eq 0 ] ;then
echo “Usage: /ccx/iplist.txt”
elif [ -f $1 ] ; then
for ip in cat $1
; do
#下面rpm包的路径自定义的啊
scp /home/centos/Packages/iptables-services-1.4.21-28.el7.x86_64.rpm $ip:/root
文件拷贝这个是固定格式
scp /etc/sysconfig/iptables $ip:/etc/sysconfig/iptables
done
else
echo “Input file not found”
fi
[root@controll ccx]# # 下面这个文件用来放IP,一行一个
[root@controll ccx]# cat iplist1.txt
192.168.59.128
192.168.59.129
192.168.59.130
[root@controll ccx]#
-
执行方式:
sh iptable.sh iplist1.txt
-
如果没有设置免密,需要每次都输入密码,一台服务器2次
[root@controll ccx]# sh iptable.sh iplist1.txt
root@192.168.59.128’s password:
iptables-services-1.4.21-28.el7.x86_64.rpm 100% 52KB 15.9MB/s 00:00
root@192.168.59.128’s password:
iptables 100% 636 505.7KB/s 00:00
root@192.168.59.129’s password:
iptables-services-1.4.21-28.el7.x86_64.rpm 100% 52KB 15.7MB/s 00:00
root@192.168.59.129’s password:
iptables 100% 636 561.4KB/s 00:00
root@192.168.59.130’s password:
iptables-services-1.4.21-28.el7.x86_64.rpm 100% 52KB 3.8MB/s 00:00
root@192.168.59.130’s password:
iptables 100% 636 484.7KB/s 00:00
[root@controll ccx]#
======================================================================
-注:expect调用的脚本,IP文件中不能有空白行【不影响结果,但有类似报错的内容产生】
[root@controll ccx]# cat expect.sh
#!/bin/bash
这定义ip文件 格式为: IP 密码
file=/ccx/iplist.txt
cat $file|while read line
do
a=($line)
/usr/bin/expect<<EOF
spawn ssh root@${a[0]}
expect {
“*yes/no” { send “yes\r”; exp_continue}
“*password:” { send “${a[1]}\r” }
}
expect “#”
#send “scp 192.168.59.133:/home/centos/Packages/iptables-services-1.4.21-28.el7.x86_64.rpm /root\r”
send “rpm -ivh /root/iptables-services-1.4.21-34.el7.x86_64.rpm\r”
#send “scp 192.168.59.133:/etc/sysconfig/iptables /etc/sysconfig/iptables\r”
send “tail -n 5 /etc/sysconfig/iptables\r”
send “rpm -qa | grep iptable\r”
send “systemctl restart iptables.service\r”
send “exit\r”
expect eof
EOF
done
[root@controll ccx]# cat iplist.txt
192.168.59.128 root
192.168.59.129 root
192.168.59.130 root
[root@controll ccx]#
- 如果把rpm包和文件拷贝放这里面执行,就会产生下面这种死循环,所以单独拷贝最为稳妥。
-
执行方式:
sh expect.sh
-
因为ip文件中定义了密码,所以不需要输入密码了
注:rpm安装过程要有并且重启iptables过程没有报错才行。
小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数初中级Java工程师,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新Java开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频
如果你觉得这些内容对你有帮助,可以添加下面V无偿领取!(备注Java)
那么如何才能正确的掌握Redis呢?
为了让大家能够在Redis上能够加深,所以这次给大家准备了一些Redis的学习资料,还有一些大厂的面试题,包括以下这些面试题
-
并发编程面试题汇总
-
JVM面试题汇总
-
Netty常被问到的那些面试题汇总
-
Tomcat面试题整理汇总
-
Mysql面试题汇总
-
Spring源码深度解析
-
Mybatis常见面试题汇总
-
Nginx那些面试题汇总
-
Zookeeper面试题汇总
-
RabbitMQ常见面试题汇总
JVM常频面试:
Mysql面试题汇总(一)
Mysql面试题汇总(二)
Redis常见面试题汇总(300+题)
-
Nginx那些面试题汇总
-
Zookeeper面试题汇总
-
RabbitMQ常见面试题汇总
JVM常频面试:
[外链图片转存中…(img-ty7O7p7u-1710698687353)]
Mysql面试题汇总(一)
[外链图片转存中…(img-bAJJLdtr-1710698687353)]
Mysql面试题汇总(二)
[外链图片转存中…(img-VBoxqDyn-1710698687353)]
Redis常见面试题汇总(300+题)
[外链图片转存中…(img-hVEiP4Uz-1710698687354)]