కొత్త VPN షార్ట్కట్ పోయిన సెట్టింగ్లను ఎందుకు తిరిగి తేదు
లాంచర్ ప్రోగ్రామ్ ఎలా ప్రారంభమవుతుందో నిర్ణయిస్తుంది, అది తన ప్రాధాన్యతలను ఎక్కడ ఉంచుతుందో కాదు. ఐకాన్ను నిందించే ముందు ఎక్జిక్యూటబుల్, వినియోగదారు మరియు కాన్ఫిగరేషన్ సందర్భాన్ని పోల్చండి.
తప్పిపోయిన మెనూ ఎంట్రీలు మరియు మాయమయ్యే ప్రాధాన్యతలు ఒకే ప్రతిస్పందనతో సరిచేయబడతాయి, కానీ ఇవి సంబంధం లేని సమస్యలు. ఒకటి డెస్క్టాప్ ఇంటిగ్రేషన్, మరొకటి అప్లికేషన్ స్థితి, కొత్త ఐకాన్ తనంతట తానే రెండింటినీ మార్చదు. రెండింటినీ వేరు చేయడానికి ఒక ప్రయోగం సరిపోతుంది మరియు ఈ అంశంపై ప్రజలు తెచ్చే గందరగోళంలో ఎక్కువ భాగాన్ని ఇది వివరిస్తుంది. లాంచర్ ప్రోగ్రామ్ను ప్రారంభిస్తుంది; ఏమి గుర్తుంచుకోవాలో ప్రోగ్రామే నిర్ణయిస్తుంది.
ఒకటిగానే కనిపించే రెండు పనులు
డెస్క్టాప్ ఇంటిగ్రేషన్ అంటే పర్యావరణం ఎక్జిక్యూటబుల్ను కనుగొనగలదు, పేరు మరియు ఐకాన్ చూపగలదు మరియు సరైన ఆర్గ్యుమెంట్లను అందించగలదు. అప్లికేషన్ స్థితి అంటే ప్రోగ్రామ్ ఒక ప్రొఫైల్ను శాశ్వత స్థానంలో రాసి తదుపరి ప్రారంభంలో దాన్ని మళ్లీ చదువుతుంది. ఏదీ మరొకదాన్ని సూచించదు, అందుకే పనిచేసే షార్ట్కట్ అన్నీ మరచిన క్లయింట్ను ప్రారంభించగలదు.
అప్లికేషన్ యొక్క స్వంత నియంత్రణల ద్వారా ఒక హానికరం కాని ప్రదర్శన ప్రాధాన్యతను మార్చండి, తర్వాత అదే విధంగా మూసి మళ్లీ తెరవండి. ప్రాధాన్యత తిరిగి వస్తే నిల్వ పనిచేస్తుంది మరియు మిగిలిన ఫిర్యాదు డేటా సేవ్ చేయడం గురించి కాదు, విండోను కనుగొనడం గురించి. అది మాయమైతే షార్ట్కట్ శ్రద్ధను మళ్లించేది మరియు నిజమైన ప్రశ్న ఆ ప్రక్రియ తన ఫైళ్లను ఎక్కడ ఉంచుతుంది అనేది. ఒకసారి ఒక ప్రాధాన్యతను పరీక్షించండి, ఎందుకంటే మళ్లీ పాస్వర్డ్ అడిగే క్లయింట్ కాన్ఫిగరేషన్ కోల్పోవడం కాకుండా రహస్యాన్ని కాపాడుతూ ఉండవచ్చు.
పునఃస్థాపనకు ముందు ప్రారంభ ఇన్పుట్లను పోల్చండి
డెస్క్టాప్ ఎంట్రీ నుండి ప్రారంభించి అది నిజంగా ఏమి చేస్తుందో చదవండి, ఎందుకంటే మెనూ నుండి ప్రారంభించడం స్వయంచాలకంగా టెర్మినల్ నుండి ప్రారంభించడంతో సమానమైన ప్రక్రియా పర్యావరణం కాదు. ముఖ్యమైన కీలు Exec, Path మరియు పరోక్షంగా సెషన్ అందించే పర్యావరణం. Exec లోని రాపర్ స్క్రిప్ట్ వేరియబుల్ను సెట్ చేయగలదు, డైరెక్టరీని మార్చగలదు లేదా మెనూ ఎప్పుడూ చూపని ప్రత్యేక హక్కుల సహాయకుడిని పిలవగలదు. పునఃస్థాపన అప్లికేషన్ ఇప్పటికే ఉన్న ఫైళ్లను భర్తీ చేస్తుంది, అది మారిన వేరియబుల్ కావడం అరుదు.
grep -h '^Exec=' ~/.local/share/applications/*.desktop
desktop-file-validate ~/.local/share/applications/client.desktop
~/.local/share/applications కింద ఉన్న ఫైల్ను /usr/share/applications లో ఉన్న దానికి ముందు చూడండి, ఎందుకంటే వినియోగదారు కాపీ సిస్టమ్ కాపీని కప్పి ఉంచుతుంది. ఎంట్రీ తప్పుగా ప్రవర్తించినప్పుడు desktop-file-validate ను అమలు చేయండి, మరియు తొలగించిన మార్గానికి ఇంకా సూచించే పాత కాపీని వెతకండి. చెల్లని వినియోగదారు కాపీని చాలా డెస్క్టాప్లు ఇంకా ఇష్టపడతాయి, కాబట్టి పాడైన ఫైల్ మెనూ నుండి ఎంట్రీని తీసివేయగలదు, అయితే ప్యాకేజీ ఫైల్ చెల్లుబాటులో ఉంటుంది. తర్వాత అదే ఆదేశాన్ని చేతితో అమలు చేసి రెండు ప్రారంభాలు ఏమి ఉత్పత్తి చేస్తాయో పోల్చండి.
ప్రాధాన్యత నిజంగా ఎక్కడ నివసిస్తుంది
XDG ఆధార డైరెక్టరీ నియమాలను అనుసరించే అప్లికేషన్లు కాన్ఫిగరేషన్ను $XDG_CONFIG_HOME కింద, శాశ్వత స్థితిని $XDG_STATE_HOME కింద మరియు పారేయదగిన డేటాను $XDG_CACHE_HOME కింద ఉంచుతాయి, ఆ వేరియబుల్స్ సెట్ కాకపోతే డిఫాల్ట్గా ~/.config, ~/.local/state మరియు ~/.cache ఉపయోగిస్తాయి. ఈ మూడూ పాత్రలు, వాగ్దానాలు కావు, కాబట్టి ఒక నిర్దిష్ట VPN ఉత్పత్తి పూర్తిగా వేరేది డాక్యుమెంట్ చేయవచ్చు. డైరెక్టరీ పేరు నుండి మార్గాన్ని ఊహించడం కంటే విక్రేత స్వంత డాక్యుమెంటేషన్ చదవడం మంచిది. డాక్యుమెంటేషన్ తక్కువగా ఉన్నప్పుడు ఫైల్ సిస్టమ్ కాకుండా ప్రక్రియను గమనించండి.
ఫైల్ తెరవడాలపై ఫిల్టర్ చేసిన ట్రేస్ క్లయింట్ ప్రయత్నించే ప్రతి కాన్ఫిగరేషన్ మార్గాన్ని, బయటకు వెళ్లేటప్పుడు అది రాసే మార్గంతో సహా చూపుతుంది. దాన్ని అదే వినియోగదారు మరియు అదే పర్యావరణంతో అమలు చేయండి, తర్వాత ఆ మార్గాలను మీరు ఆశించిన డైరెక్టరీలతో పోల్చండి.
strace -f -e trace=openat,stat -o /tmp/vpn.log vpn-client
రహస్యాలు మరియు ప్రొఫైల్స్ వేర్వేరు యజమానులను కలిగి ఉంటాయి
సేవ్ చేసిన ప్రొఫైల్ మరియు సేవ్ చేసిన ఆధారాలు వేర్వేరు వస్తువులు, తరచుగా వేర్వేరు నిల్వతో. ఒకటి కాన్ఫిగరేషన్ ఫైల్లో జీవించగలదు, మరొకటి ప్రతి సెషన్కు తెరిచే కీరింగ్లో కూర్చుంటుంది, కాబట్టి మళ్లీ పాస్వర్డ్ అడిగే క్లయింట్ తాను రూపొందించబడిన పనినే చేస్తూ ఉండవచ్చు. అభ్యర్థనను ఆపడానికి ప్రొఫైల్ను తొలగించడం అనేది ప్రజలు పనిచేసే కాన్ఫిగరేషన్ను కోల్పోయే మార్గం.
ప్రత్యేక హక్కుల ప్రారంభాలు దీన్ని మరింత క్లిష్టతరం చేస్తాయి, ఎందుకంటే sudo లేదా PolicyKit సహాయకుడి ద్వారా ప్రారంభించడం వేరే హోమ్ డైరెక్టరీని మరియు అందువల్ల వేరే కాన్ఫిగరేషన్ సమితిని అందించవచ్చు. మొత్తం హోమ్ డైరెక్టరీపై పునరావృతంగా కాకుండా, అప్లికేషన్ డాక్యుమెంట్ చేసే నిర్దిష్ట ఫైల్పై యాజమాన్యాన్ని సరిచేయండి, తర్వాత ఇకపై ప్రొఫైల్ ఏ గుర్తింపు కలిగి ఉండాలో నిర్ణయించి భవిష్యత్ ప్రారంభాలను దానితో సమన్వయంగా ఉంచండి.
ఐకాన్ మీకు ఏమి చెప్పగలదు మరియు ఏమి చెప్పలేదు
ఐకాన్ లాంచర్ ఫైల్ పరిష్కరించబడుతుందని మాత్రమే రుజువు చేస్తుంది, అంతకంటే ఎక్కువ కాదు. కనెక్షన్ స్థితి క్లయింట్కు చెందుతుంది, కాబట్టి ఏకైక నమ్మదగిన తనిఖీ ఇంటర్ఫేస్, మార్గం లేదా క్లయింట్ యొక్క స్వంత స్థితి అవుట్పుట్. ప్రారంభం కాని ట్రే అప్లెట్ పనిచేస్తున్న టన్నెల్ను పాడైనట్టు చూపగలదు, పాత అప్లెట్ పాడైన దాన్ని బాగానే చూపగలదు. కనెక్షన్ మరియు లాంచర్ను విడివిడిగా పరీక్షించి, తర్వాత మీరు నిజంగా ఏది సరిచేశారో రాయండి.
రెండూ పాడైతే, మరమ్మతును ఒకే మార్పుగా పరిగణించే ప్రవృత్తిని ఎదిరించండి. ఎంట్రీని సరిచేసి, ప్రారంభాన్ని నిర్ధారించి, తర్వాత టన్నెల్ను నిర్ధారించి, ప్రతి దశ ఫలితాన్ని నమోదు చేయండి. ఆ నమోదే తదుపరి పోయిన సెట్టింగ్ల నివేదికను దీని పునరావృతం కాకుండా నిర్ధారణ చేయగలిగేలా చేస్తుంది, మరియు సమస్యలో ఏ సగం నిజమైనదో తదుపరి వ్యక్తికి చెబుతుంది.