作者:乔山办公网日期:
返回目录:word文档
最近遇到在liunx服务器上,遇到一个奇葩的问题。费了一翻周折终于搞定了!
问题
使用ssh登陆,启动服务,终端连接断开后(关闭xshell窗口或CRT窗口等),服务就停止了!!!
解决方案
思路:启动服务的命令后面补 (空格 &或者使用nohup命令) 后台运行;
再次说明redis的配置没有问题,是后台启动,sentinel.conf里的配置daemonize yes;
服务启动时,增加了日志定向和输出重定向:
./bin/redis-sentinel sentinel-2.conf > ./log/redis-sentinel.log 2>&1 &
查看日志发先服务接收到SIGTERM信号,然后关闭了服务。
但是这个信号是从哪里出来的呢,很是奇怪?
按理说增加了&并且配置文件daemonize yes,应该可以正常的,除非是有什么东西杀死了该进程;
解决
异常sshd
查看ssh的守护进程(sshd),发现存在异常,从上图发现,ssh登陆的,都会临时生成一个ssh的宿主进程,退出ssh的时候,这个宿主进程也会退出,导致ssh登陆后,执行的进程一块退出。
因此需要从新启动sshd进程:
systemctl start sshd(启动sshd)
systemctl status sshd(查看状态)
systemctl restart sshd(重启)
正常sshd
如果sshd服务没有重启成功的话,可以考虑重启大法;