మీ VPN సూచిక ఆకుపచ్చగా మారుతుంది, మార్గం తిరిగి వస్తుంది, మరియు మీరు తెరిచి ఉంచిన SSH విండో ఎప్పటికీ ప్రాంప్ట్‌ను తిరిగి ఇవ్వదు. మార్గాన్ని పునరుద్ధరించడం దాన్ని ఉపయోగించిన TCP సంభాషణను పునరుద్ధరించదు, కాబట్టి ఆ విండోలో టైప్ చేసినదంతా పోయింది. నిజమైన ఆందోళన ఎడిటర్ బఫర్ లేదా పొడవైన మైగ్రేషన్ అయితే, ఆ పనిని ఒకే కనెక్షన్‌కు కట్టడం ఆపడమే పరిష్కారం. tmux మరియు పని నిర్వాహకం ఆ సమస్యలో వేర్వేరు సగాలను పరిష్కరిస్తాయి.

మళ్లీ కనెక్ట్ అయిన VPN సాకెట్ను కొనసాగించదు

చిరునామా మారిన తర్వాత కొనసాగించడం అనే భావన TCPకి లేదు. SSH కనెక్షన్ రెండు చివరలతో గుర్తించబడుతుంది, మరియు టన్నెల్ మళ్లీ నిర్మించబడినప్పుడు స్థానిక చిరునామా మారవచ్చు మరియు పాత సాకెట్ చనిపోయి ఉంటుంది. సర్వర్ దాన్ని చివర్లో గమనిస్తుంది, కానీ మీ టెర్మినల్ వెంటనే గమనిస్తుంది.

క్లయింట్ కీప్‌అలైవ్ చనిపోయిన భాగస్వామిని ముందుగానే గుర్తిస్తుంది. అది సెషన్‌ను తిరిగి తీసుకురాదు, ఇప్పటికే నడుస్తున్న ఆదేశాన్ని పునరుద్ధరించలేదు. కీప్‌అలైవ్ ఒక గుర్తింపుదారు, పునరుద్ధరణ సాధనం కాదు. దూరపు ఆదేశం బతికిందా అనే దానిపై ఏమీ చెప్పదు.

పనిని దూరపు హోస్ట్‌పై పెట్టండి

సెషన్‌ను ల్యాప్‌టాప్‌లో కాదు, దూరపు హోస్ట్‌లో సృష్టించండి. మామూలుగా కనెక్ట్ అయి, అక్కడ tmux ప్రారంభించి, దాని లోపల ఎడిటర్ లేదా మైగ్రేషన్ నడపండి. డిఫాల్ట్ ప్రిఫిక్స్‌తో డిటాచ్ అవ్వండి మరియు SSH కనెక్షన్ పోయినా సెషన్ నడుస్తూనే ఉంటుంది. tmuxను స్థానికంగా ప్రారంభించడం మీ షెల్‌ను మూసిన విండో నుండి కాపాడుతుంది, దూరపు ఆదేశాన్ని చనిపోయిన టన్నెల్ నుండి కాదు.

ssh [email protected]
tmux new-session -s office-work

VPN తిరిగి వచ్చాక అదే హోస్ట్‌కు కొత్త SSH కనెక్షన్ తెరిచి పేరుతో మళ్లీ కలవండి. శాశ్వత వస్తువు సెషన్, కనెక్షన్ కాదు. వారం తర్వాత కూడా గుర్తించగల పేరు పెట్టండి.

tmux మరియు పని నిర్వాహకం

హోస్ట్ ఆన్‌లో ఉన్నంతసేపు tmux ఇంటరాక్టివ్ ప్రాసెస్‌ను సజీవంగా ఉంచుతుంది. ఒక పని నిర్వాహకం లేదా సేవా మేనేజర్ ఇంటరాక్టివ్ కాని పనిని సజీవంగా ఉంచి, దాని నిష్క్రమణ స్థితిని నమోదు చేసి, SSH సెషన్ పూర్తిగా ముగిసినా తట్టుకుంటుంది. మొదటిది మీరు చూసే పని కోసం; రెండవది మీరు షెడ్యూల్ చేసి తర్వాత తనిఖీ చేసే పని కోసం.

హోస్ట్ దాన్ని పునరుద్ధరించడానికి కాన్ఫిగర్ చేయకపోతే రెండూ రీబూట్‌ను తట్టుకోవు. tmux సెషన్ మెషీన్‌తో పాటు చనిపోతుంది, మరియు తాత్కాలిక పని యూనిట్‌గా నమోదు కాకపోతే బూట్‌తో పాటు చనిపోతుంది. పని ఏది దాటాలో దాని ఆధారంగా ఎంచుకోండి.

రెండు విధానాలకూ మళ్లీ కనెక్ట్ అయిన తర్వాత చదవగల లాగ్ కూడా కావాలి. అది లేకపోతే ప్రాసెస్ ఉందని తెలుస్తుంది, కానీ అది ఏమి చేసిందో తెలియదు. లాగ్ మార్గాన్ని సెషన్ పేరు పక్కన రాయండి.

ఏది బతకాలో దానితో నిర్ణయించండి

పని సగంలో ఆగిపోతే జరగబోయే అత్యంత దారుణమైన దానితో నిర్ణయించండి. ఎడిటర్ సెషన్ సేవ్ చేయని బఫర్లను కోల్పోతుంది, అది చిరాకు కలిగించినా పునరుద్ధరించగలిగేది. తన మార్పులలో సగాన్ని నమోదు చేసే మైగ్రేషన్ అలా కాదు, అది నమోదైన ఫలితంతో కూడిన నిర్వాహకానికి అనుకూలం. పని ఇంటరాక్టివ్ మరియు పొడవైనదైతే tmuxతో పాటు రాసిన లాగ్ సాధారణంగా సరిపోతుంది.

systemd-run --user --unit=migrate-customers --collect ./migrate.sh

ఏది ఎంచుకున్నా, ఏదైనా మళ్లీ నడపడానికి ముందు నమోదైన ఫలితాన్ని పరిశీలించండి. చివరి పంక్తి లేకపోవడం ల్యాప్‌టాప్ ఏమి చూసిందో చెబుతుంది, సర్వర్ ఏమి నమోదు చేసిందో కాదు. ఆ భేదమే పనిని మొదటి నుంచి కనెక్షన్‌కు వెలుపల ఉంచడానికి కారణం, మరియు వేరుపడటం మరియు మళ్లీ కలవడం నమూనా దాని అతిచిన్న రూపం.

సంబంధిత వ్యాసాలు