2024-11-19 打造永不离线的Tmux开发环境 打造永不离线的Tmux开发环境 最近服务器经常重启,导致个人定制的Tmux开发环境总是失效,因此研究如何保存tmux环境的方法使其在机器重启后依然能够使用。经过研究发现通过tmux插件tmux-resurrect和tmux-continuum插件组合能够满足我的需求,能够(定时)自动保存tmux会话到磁盘、自动加载会话功能。其中插件resurrect负责手动保存会话(到文件)、恢复tmux会话环境,而continuum在rescurrect基础上能够进一步自动保存恢复会话。项目地址tmux-rescurrect: https://github.com/tmux-plugins/tmux-resurrecttmux-continuum: https://github.com/tmux-plugins/tmux-continuum插件安装本人使用Tmux插件管理器TPM自动安装以上两个插件,也可以根据插件说明手动安装。在~/.tmux.conf配置文件中加入以下配置信息(前提是TPM已经安装):# ~/.tmux.conf set -g @plugin 'tmux-plugins/tpm' set -g @plu... 2024年11月19日 101 阅读 0 评论
2024-11-19 Tmux终端远程协助 Tmux终端远程协助 最近发现tmux一个非常有用的功能:共享会话。这个功能利用tmux的共享socket文件,可以用于终端版的远程协助。当你帮别人调试程序或者协同开发时可以使用tmux这个功能,好处是:可以使用自己电脑/键鼠/账号避免操作中需要对方输入密码tmux 共享会话tmux 3.4版本支持该功能,如果版本低不支持该功能,可以查阅另一篇文章安装最新版本的tmux。使用场景:当A需要B帮助程序调试。A在自己的账号终端下设置:$ tmux -S /tmp/shared-session # 进入tmux会话中设置以下命令 $ chmod 777 /tmp/shared-session # 777权限最宽松不安全,可根据实际设置 $ tmux server-access -a <username> # username是B用户名B在自己的账号终端下设置:$ tmux -S /tmp/shared-session attach #B连接A会话B进入共享会话后会看到与A相同的界面,无论是A还是B操作,另一个终端会话会看到相同的操作。调试完成后,A可以删掉/tmp/shared-ses... 2024年11月19日 88 阅读 0 评论
2024-11-19 Centos安装最新版本tmux Centos安装最新版本tmux Tmux新版本提供了很多有用的功能,但Centos 8.4官方仓库提供的版本有点旧(2.7),只能自行安装最新版本。下面介绍Centos简单安装tmux最新版本方法,不需要从源代码编译开始,只要利用网友提供的RPM仓库。yum在线安装设置yum仓库信息$ sudo yum install http://galaxy4.net/repo/galaxy4-release-_<release>_-current.noarch.rpm其中<release>查询操作系统主版本号,比如本人使用的是Centos 8.4.2105,则<release>为8。$ cat /etc/redhat-release CentOS Linux release 8.4.2105下面就可以使用yum安装tmux$sudo yum install tmux离线安装对于离线服务器,可以下载RPM包进行安装,在http://galaxy4.net/repo/RHEL/8/x86_64/里面查找最新版本。$ wget http://galaxy4.net/repo/RHEL/8/... 2024年11月19日 129 阅读 0 评论
2024-09-22 Linux服务器数据备份迁移 Linux服务器数据备份迁移 需求笔者需要将一台服务器上的所有数据备份到另一台服务器上。由于数据量比较大,需要长时间传输。为了防止登录远程服务器可能中途断开连接,考虑使用tmux + rsync组合进行数据备份迁移。用法首先确保备份服务器空间足够,避免传输过程将服务器存储空间用满情况。启动tmux$ tmux new -s backup 创建一个backup的tmux会话,并进入会话中。执行rsync备份在backup会话环境中执行以下命令$ mkdir BACKUP_DIR # 创建备份目录 $ rsync -avz --exclude={'*.o','*.mod','p4/*'} remote_user@remote_ip:/path/to/need/backup/dir/ BACKUP_DIR # 输入remote服务器用户密码其中rsync命令选项意义:-a 存档模式-v 命令执行详细信息-z 在传输过程中压缩数据--exclude 排除匹配模式文件/目录传输,以上设置不传输*.o和*.mod编译临时生成文件以及p4目录,根据自己需要进行设置。使用SSH协议传输数据,remote_user@r... 2024年09月22日 179 阅读 0 评论