Gangan er uppi, þú lokar aukastjórnskjá og VPN dettur án eins lyklapress í biðlaranum. Hjá Linux-biðlara AnyConnect er tilgreind orsök sessjónubókhald en ekki leiðsögn: biðlarinn skráir hvaða innskráningarsessjónir voru til staðar þegar gangan reis og lítur á enda hverrar þeirra sem ástæðu til að rífa hana niður. Prófanirnar hér að neðan fara í röð og sú fyrsta sem bregst segir þér hvort þú ert yfirhöfuð að horfa á þessa hegðun. Ekkert í venjulegu úttaki biðlarans nefnir stjórnskjá, og þess vegna er fyrsta hvatningin, að kenna concentrator um, yfirleitt sóaði tími.

Byrjaðu ekki á að breyta kerfisskrám. Hvert skref annaðhvort skýrir dettið eða fjarlægir kandídat, og ódýru skrefin koma fyrst.

Aðgreindu sessjónudett frá detti undirliggjandi nets

Tengdu aftur strax eftir aftenginguna. Ganga sem kemur aftur innan sekúndna, á sama neti, án nýrra skilríkja, bendir á staðbundið kveikjumerki eins og lokaða sessjón frekar en dauðan uppstreymisramma, Wi-Fi-flakk eða aðgerðarleysistímann í concentrator. Ganga sem hangir á Connecting eða bregst þar til þú skiptir um net er önnur grein.

Skrifaðu niður hvað var opið þegar gangan reis: stjórnskjáinn sem þú ræstir biðlarann frá, hverja aðra skel, grafísku innskráninguna og hverja SSH-sessjón frá annarri vél. Þú þarft þennan lista eftir smástund, og að endurbyggja hann úr minni eftir næsta dett er óáreiðanlegt.

Athugaðu hvað biðlarinn skráði við tenginguna

Biðlarinn skoðar ekki foreldra ferla né eignarhald á stjórnskjá. Hann tekur skyndimynd af mengi innskráningarsessjóna sem voru til staðar við tengingu og ber það mengi saman síðar; þegar meðlimur hverfur bregst samanburðurinn og ganga fer með. Þess vegna getur það verið meinlaust að loka glugganum sem þú tengdist frá meðan að loka ótengdum aukastjórnskjá drepur tenginguna: það sem skiptir máli er hvort sú sessjón var í upphaflega menginu. Prófunin er mengjasamanburður en ekki talning, og þess vegna getur staðganga sessjónar verið jafn banvæn og að missa eina.

Teldu upp hvað biðlarinn gat séð áður en þú breytir nokkru:

who
w
last -n 10
sudo ls -l /run/utmp

Hver lína frá who er notandapróferðarfærsla í utmp. Ef sessjónin þín birtist tvisvar, einu sinni fyrir grafísku innskráninguna og einu sinni fyrir stjórnskjáinn, voru báðar færslurnar til staðar við tengingu og báðar eru kandídatar.

Fjarlægðu aðeins þína eigin færslu úr utmp

Birt leiðin gerir sessjónina sem þú ert að fara að nota ósýnilega í utmp áður en biðlarinn byrjar. Lítið C-forrit gengur í gegnum getutent(), passar færsluna þar sem ut_line hennar er jafnt TTY staðalinntaksins og endurskrifar svo þá færslu. Röðin er viljandi: setutent(), lestu færsluna, afritaðu ut_id hennar, stilltu ut_type á DEAD_PROCESS, hreinsaðu notanda- og línureitina, skrifaðu hana aftur með pututline() og svo endutent().

Þýddu það og keyrðu það svo sem root úr skelinni sem ræsir biðlarann:

sudo ./utmpremove && /opt/cisco/anyconnect/bin/vpn -s connect vpn.example.edu

Tveir bilunarhamir skýra flestar tilkynningar um að tólið geri ekkert. Það verkar á TTY sem er tengt staðalinntaki, svo að keyra það úr skriftu eða cron-verki án stjórnskjás skilur ekkert eftir til að passa við. Og /run/utmp er ekki skrifanlegt venjulegum notendum, svo keyrsla án root bregst hljóðlaust nema þú athugir útgangsstöðuna.

Staðfestu að ganga lifi lokunina af

Prófaðu fyrirkomulagið í stað þess að gera ráð fyrir því. Tengdu frá sessjón sem þú ætlar að halda, opnaðu annan stjórnskjá, lokaðu hinum og staðfestu svo með vpn state og bliki á viðmótslistann að ganga sé enn uppi. Ef ganga lifir af var kveikjumerkið ákveðin sessjónutegund en ekki hver sessjón, og þú hefur fundið sessjónina sem verður að vera opin.

Ef hún dettur samt var fylgst með sessjón annars staðar, oftast grafísku innskráningunni sem skapaði stjórnskjáinn þinn, og að fjarlægja eina TTY-færslu mun ekki hjálpa. Endurtaktu athugunina með fullum lista fyrsta skrefsins í stað þess að bæta við meiri skurðaðgerð.

Þegar endurskrifun utmp er rangt svar

utmp er sameiginlegt bókhald, ekki einkatöfla. Endurskrifun færslu sessjónar sem enn lifir veldur því að who, w og sum skoðunartól tilkynna hana of lágt, og forrit sem lokar sömu færslu síðar getur mistekist algjörlega. Haltu tólinu takmörkuðu við þína eigin sessjón, geymdu afrit af upprunalegu skránni og gerðu það ekki að ræsingarþjónustu sem fjarlægir hverja færslu.

Ef vinnustaðurinn safnar sessjónubókhaldi vegna reglufylgni stangast leiðin á við þá kröfu og studda svarið er önnur klientútgáfa eða önnur aðferð við aðgang, ekki plástrað utmp. Fyrir flesta er minnst íhlutandi lagfæringin að ræsa biðlarann úr sessjón sem verður opin allan daginn og láta þann glugga í friði.

Áður en þú lokar miðanum skaltu skrá hvaða sessjón biðlarinn fylgdist með þegar gangan reis. Einmitt þessi eina lína gerir ráðgátu aftengingu að endurgeranlegu ástandi fyrir næstu manneskju við vélina.

Tengdir greinar