배포 업그레이드 중 tmux 클라이언트/서버 버전 불일치

배포 업그레이드 중 tmux 클라이언트/서버 버전 불일치

tmux원격 연결 문제 또는 X 서버 문제(예 :오픈 사용 문서).

그러나 이는 업그레이드된 클라이언트와 배포 업그레이드를 실행하는 끝점을 관리하는 서버 tmux간의 버전 불일치 위험을 고려하지 않습니다.

이러한 위험을 인식하려면 업그레이드 중에 tmux 콘솔을 종료하고 일반 터미널을 사용해야 합니다. tmux 클라이언트가 동시에 업그레이드되면 tmux 세션에 다시 연결할 수 없습니다. 반대로 달리기는 얻을 tmux attach수 있습니다tmux ls

# tmux ls
protocol version mismatch (client 7, server 6)

OpenSUSE 12.2에서 12.3으로 업그레이드할 때 클라이언트 7과 서버 6 버전 불일치 문제가 발생했습니다. 제가 생각할 수 있는 빠른 해결책은 업그레이드 중에 머신이 네트워크에 연결되어 있으므로 tmux이전 배포 저장소에서 rpm을 다운로드하고 압축을 푸는 것 입니다.cpio

wget http://download.opensuse.org/distribution/12.2/repo/oss/suse/i586/tmux-1.6-2.1.2.i586.rpm
rpm2cpio ../tmux-1.6-2.1.2.i586.rpm > tmux-1.6.cpio
cpio -i -d < tmux-1.6.cpio
./usr/bin/tmux

tmux 세션에서 배포 업그레이드를 실행할 때 가능한 버전 불일치에 대한 경고가 있어야 합니까? tmux 클라이언트가 이전 서버와 호환되는 모드에서 실행되도록 하는 쉬운 방법이 있습니까?

답변1

이전 버전을 다운로드하지 않고도 기존 tmux에 추가할 수 있습니다.

모든 세션을 닫고 가능한 한 빨리 복원하세요. 이는 명백히 보기 흉한 해킹이지만 긴급 상황에서는 매우 유용합니다.

"/proc/$(pgrep -o tmux)/exe" attach

답변2

먼저 tmux만 업그레이드한 다음 전체 업그레이드를 수행할 수 있습니다. 다행히 현재 설치된 시스템 라이브러리 버전은 새로운 tmux 버전의 종속성을 충족합니다.

관련 정보