要配置CentOS系统在SSH连接断开后自动重启,可以使用tmux
或screen
这样的终端复用工具。这些工具允许你在后台保持会话,即使SSH连接断开也不会丢失。以下是具体步骤:
tmux
安装 tmux
如果你还没有安装 tmux
,可以使用以下命令进行安装:
sudo yum install tmux -y
启动 tmux
会话
连接到你的CentOS服务器后,启动一个新的 tmux
会话:
tmux new -s mysession
这里的 mysession
是你给会话起的名字,你可以根据需要更改。
在 tmux
会话中运行命令
现在你可以在 tmux
会话中运行任何你需要的命令。例如:
top
分离 tmux
会话
要分离 tmux
会话并返回到普通的SSH终端,可以按下 Ctrl+b
然后按 d
。
重新连接到 tmux
会话
如果你需要重新连接到之前的 tmux
会话,可以使用以下命令:
tmux attach -t mysession
screen
安装 screen
如果你还没有安装 screen
,可以使用以下命令进行安装:
sudo yum install screen -y
启动 screen
会话
连接到你的CentOS服务器后,启动一个新的 screen
会话:
screen -S mysession
这里的 mysession
是你给会话起的名字,你可以根据需要更改。
在 screen
会话中运行命令
现在你可以在 screen
会话中运行任何你需要的命令。例如:
top
分离 screen
会话
要分离 screen
会话并返回到普通的SSH终端,可以按下 Ctrl+a
然后按 d
。
重新连接到 screen
会话
如果你需要重新连接到之前的 screen
会话,可以使用以下命令:
screen -r mysession
如果你希望在系统断电或重启后自动启动 tmux
或 screen
会话,可以创建一个 systemd 服务来实现。
创建 systemd 服务文件
创建一个新的 systemd 服务文件,例如 /etc/systemd/system/my-session.service
:
sudo nano /etc/systemd/system/my-session.service
编辑服务文件 在文件中添加以下内容:
[Unit]
Description=My tmux/session service
After=network.target
[Service]
ExecStart=/usr/bin/tmux new -s mysession
Restart=always
User=your_username
[Install]
WantedBy=multi-user.target
将 your_username
替换为你的实际用户名。
启用并启动服务 启用并启动服务:
sudo systemctl enable my-session.service
sudo systemctl start my-session.service
通过以上步骤,你可以配置CentOS系统在SSH连接断开后自动重启,并保持你的会话不丢失。