1、注意防火墙
2、注意host、网关配置
Could not connect to Redis No route to host问题解决
问题描述:redis-cli 可以登录,程序用127.0.0.1或者ip都可以登录。换一台机器就会报错。
网上一查,才发现是新装系统设置的iptables问题【cenos7系统,和之前cenos6关闭防火墙没有关系】
iptables -N REDIS
iptables -A REDIS -s 192.168.10.1 -j ACCEPT
iptables -A REDIS -s 192.168.10.2 -j ACCEPT
iptables -A REDIS -j LOG --log-prefix "unauth-redis-access"
iptables -A REDIS -j REJECT --reject-with icmp-port-unreachable
iptables -I INPUT -p tcp --dport 6379 -j REDIS
或者
sudo iptables -F(不推荐)
Linux:-bash: ***: command not found,系统很多命令都用不了,均提示没有此命令。突然之间linux很多命令都用不了,均提示没有此命令。这应该是系统环境变量出现了问题导致的。
解决办法:
先用:echo $PATH
查看path是否含有:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
如果没有
先用临时环境变量(重启后消失)
#export PATH=$PATH:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
然后就可以用那些命令了,进去修改永久环境变量:
1,修改profile文件:(所有用户)
#vi /etc/profile
加入:export PATH=$PATH:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
保存退出。
2,修改.bashrc文件:(单独用户)
#vi /~/.bashrc (每个用户目录下都有,ls -all)
加入:export PATH=$PATH:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
保存退出。
重启系统,搞定。也可以不用重启,使用命令:#source .bashrc。即可使刚刚修改的环境变量生效。
先找/etc/hots,再看dns: /etc/resolv.conf ,再看防火墙。
shell远程执行:
经常需要远程到其他节点上执行一些shell命令,如果分别ssh到每台主机上再去执行很麻烦,因此能有个集中管理的方式就好了。一下介绍两种shell命令远程执行的方法。
前提条件:
配置ssh免密码登陆
执行简单命令
ssh user@ip aa.sh
ssh user@ip "cd /home/user; ls"
双引号,必须有。如果不加双引号,第二个ls命令在本地执行
分号,两个命令之间用分号隔开
执行复杂命令:
ssh user@ip << eeooff
cd /home
touch abcdefg.txt
exit
eeooff
echo done!
eeooff 是自定义,在结束前,加exit退出远程节点
如果不想输出本地日志
ssh user@ip> /dev/null 2>&1 << eeooff
如果出现 :Pseudo-terminal will not be allocated because stdin is not a terminal.
加上-tt ssh user@ip -tt
加IP白名单:
cat /etc/sysconfig/iptables
vi 修改
service iptables restart 或者systemctl restart iptables.service