ఒకే డెస్క్టాప్లో మాత్రమే నడిచే VPN ఆటోస్టార్ట్ ఎంట్రీని సరిచేయడం
ఒక డెస్క్టాప్లో ప్రారంభమై మరొకదానిలో ప్రారంభం కాని VPN లాంచర్ టన్నెల్ లోపం కాదు, డెస్క్టాప్ ఎంట్రీలోని ఫిల్టర్. మొదట OnlyShowIn, TryExec మరియు ఓవర్రైడ్ చదవండి.
VPN క్లయింట్ అప్లికేషన్ మెనూ నుండి ప్రారంభమవుతుంది, టన్నెల్ కనెక్ట్ అవుతుంది, మరియు ఒక మెషీన్లో సైన్-ఇన్ తర్వాత ఐకాన్ ఎప్పటికీ కనిపించదు, అదే ప్యాకేజీ మరొకదానిలో సరిగ్గా ప్రవర్తిస్తుంది. మూడు పరిశీలనలు ఒకే ఫిర్యాదుగా నలిగిపోతాయి: ప్రోగ్రామ్ ప్రారంభమైందా, దాని ఇంటర్ఫేస్ కనిపిస్తుందా, మరియు టన్నెల్ పైకి ఉందా. లాంచర్ను ఫిల్టరింగ్ కీలతో కూడిన డెస్క్టాప్ ఎంట్రీ నియంత్రిస్తుంది, ఆ ఎంట్రీకి VPN ప్రోటోకాల్తో ఎలాంటి సంబంధం లేదు. గైడ్ను క్రమంగా అనుసరించి మూడింటిలో ఒకటి స్పష్టంగా విడిపోయినప్పుడు ఆపండి.
మూడు వేర్వేరు వాస్తవాలు: ప్రారంభం, ఐకాన్, టన్నెల్
డెస్క్టాప్ ఎంట్రీ ప్రోగ్రామ్ను ప్రారంభిస్తుంది. అది ట్రే అమలును ఇన్స్టాల్ చేయలేదు, మరియు అప్లికేషన్ ఉపయోగించే ప్రోటోకాల్కు మద్దతు ఇవ్వని ప్యానెల్లో సూచికను చూపలేదు. ప్రక్రియ ఇప్పటికే నడుస్తుంటే, ప్రారంభం ప్రశ్నకు సమాధానం దొరికింది మరియు మీరు బదులుగా ఇంటిగ్రేషన్ సమస్యను చూస్తున్నారు.
టన్నెల్ మళ్లీ మూడవ వాస్తవం. కనిపించని ఐకాన్ కనెక్షన్ తెగిపోయినట్లు రుజువు కాదు, ఐకాన్ను «సరిచేయడానికి» క్లయింట్ను చంపి మళ్లీ ప్రారంభించడం పని చేస్తున్న టన్నెల్ కారణం లేకుండా అంతరాయం కలిగించే మార్గం. వినియోగదారులు కనిపించని ఐకాన్ మరియు విరిగిన టన్నెల్ను ఒకే వాక్యంలో నివేదిస్తారు, అందుకే రెండింటినీ కాగితంపై వేరు చేయాలి.
ఏదైనా మార్చే ముందు వాటిని వేరు చేయండి. ప్రక్రియ ఉందా, తర్వాత ప్యానెల్ సూచికకు మద్దతు ఇస్తుందా, చివరగా ఇంటర్ఫేస్ కనెక్షన్ నివేదిస్తుందా అని తనిఖీ చేయండి. ప్రతి సమాధానం వేరే పొరను, వేరే బాధ్యుడిని సూచిస్తుంది.
సెషన్ నిజంగా చదివే ఎంట్రీని కనుగొనండి
ఆటోస్టార్ట్ ఎంట్రీలు వినియోగదారు డైరెక్టరీలో మరియు సిస్టమ్ డైరెక్టరీలో ఉంటాయి, ఫైల్ పేర్లు సరిపోలినప్పుడు వినియోగదారు కాపీ గెలుస్తుంది. తప్పు ఎంట్రీని చదవడమే మార్పు ఫలితం లేనిదిగా కనిపించడానికి అత్యంత సాధారణ కారణం. ఏదైనా సవరించే ముందు రెండు డైరెక్టరీలను జాబితా చేసి, సెషన్ నిజంగా ఏ ఫైల్ను లోడ్ చేస్తుందో గుర్తించండి.
ls -l ~/.config/autostart/ /etc/xdg/autostart/ echo "$XDG_CURRENT_DESKTOP" grep -H -E '^(OnlyShowIn|NotShowIn|TryExec|Hidden|Exec)=' ~/.config/autostart/*.desktop /etc/xdg/autostart/*.desktop
పర్యావరణ చరం ఫిల్టరింగ్ కీలు పోల్చబడే సెషన్ పేరును ముద్రిస్తుంది, అది సాధారణంగా కోలన్లతో వేరు చేసిన జాబితా. దాన్ని ఎంట్రీలోని విలువలతో అక్షరాలా పోల్చండి, ఎందుకంటే ఆ పేర్లు సెషన్ వివరణ కాదు, పెద్ద చిన్న అక్షరాలకు సున్నితమైన కాన్ఫిగరేషన్ వివరాలు. విలువ GNOME దీనితో సరిపోలదు: gnome, మరియు దాని నుండి వచ్చే మౌనానికి ఎలాంటి లోప సందేశం జోడించబడలేదు. ఊహించడం బదులు దాన్ని ముద్రించండి.
అదే ఫైల్ పేరు రెండు డైరెక్టరీలలో ఉంటే, వినియోగదారు కాపీయే ముఖ్యం. సిస్టమ్ ఫైల్ను సవరించి ఏదీ ఎందుకు మారలేదని ఆలోచించడం చాలా సాధారణ కోల్పోయిన గంట.
ఫిల్టరింగ్ కీలను క్రమంగా చదవండి
కింది ఉదాహరణ ఎంట్రీ సెషన్ ప్రోగ్రామ్ను ప్రారంభిస్తుందా అని నిర్ణయించే కీలను చూపుతుంది. ఇది ఒక ముక్క, పూర్తి లాంచర్ కాదు, విలువలు కల్పిత మార్గానికి చెందినవి.
[Desktop Entry] Type=Application Name=Example VPN Exec=/opt/example-vpn/client --minimized TryExec=/opt/example-vpn/client OnlyShowIn=GNOME;
OnlyShowIn ఎంట్రీని జాబితా చేసిన పర్యావరణాలకు పరిమితం చేస్తుంది, NotShowIn జాబితా చేసినవాటిని మినహాయిస్తుంది. ఒకే ఎంట్రీలో రెండూ కనిపించినప్పుడు స్పెసిఫికేషన్ ఉపయోగకర ప్రవర్తనను నిర్వచించదు, కాబట్టి రెండూ ఉన్న ఫైల్ను తెలివైన కలయికగా కాక లోపంగా పరిగణించండి. రెండవది జోడించి ప్రాధాన్య నియమాన్ని ఆశించడం బదులు అవసరం లేని కీని తొలగించండి.
TryExec సెషన్ ప్రారంభించే ముందు అమలయ్యే ఫైల్ ఉందా అని అడుగుతుంది. కాబట్టి పాత ఇన్స్టాలేషన్ నుండి మిగిలిన మార్గం కొత్త ప్యాకేజీ మెనూ నుండి ప్రారంభించినప్పుడు పని చేసినా ఆటోస్టార్ట్ను అణచివేస్తుంది, ఆ వైఫల్యం సరిగ్గా డెస్క్టాప్ ఫిల్టర్లా కనిపిస్తుంది.
వినియోగదారు స్థాయిలో ఓవర్రైడ్ చేయండి, సిస్టమ్ స్థాయిలో కాదు
ఈ మెషీన్కు ఫిల్టర్ నిజంగా తప్పు అయితే, సిస్టమ్ ఎంట్రీని వినియోగదారు డైరెక్టరీకి కాపీ చేసి కాపీని మార్చండి. XDG ఆటోస్టార్ట్ నియమాల ప్రకారం, అదే పేరు గల వినియోగదారు ఎంట్రీకి ప్రాధాన్యం ఉంటుంది, మరియు Hidden=true సిస్టమ్ ఫైల్ను తొలగించకుండా ఎంట్రీని నిష్క్రియం చేస్తుంది.
mkdir -p ~/.config/autostart cp /etc/xdg/autostart/example-vpn.desktop ~/.config/autostart/ sed -i '/^OnlyShowIn=/d' ~/.config/autostart/example-vpn.desktop desktop-file-validate ~/.config/autostart/example-vpn.desktop
లాగ్ అవుట్ చేసే ముందు ఫలితాన్ని ధృవీకరించండి, ఎందుకంటే లోపభూయిష్ట ఎంట్రీ నిశ్శబ్దంగా నిర్లక్ష్యం చేయబడుతుంది మరియు తదుపరి పరీక్ష మీకు ఏమీ చెప్పదు. ప్యాకేజీని మళ్లీ ఇన్స్టాల్ చేయడం మీ ఓవర్రైడ్ను తొలగించదు, అదే లక్ష్యం మరియు అది ఉందని నమోదు చేయడానికి కారణం కూడా. టికెట్లో ఫైల్ మార్గాన్ని నమోదు చేయండి, తదుపరి వ్యక్తి ఓవర్రైడ్ను మళ్లీ పొందకుండా కనుగొంటారు.
షేర్ చేసిన సిస్టమ్ లాంచర్లను సవరించడం కంటే దీన్ని ఇష్టపడండి, ఎందుకంటే అది మెషీన్లోని ప్రతి వినియోగదారు ప్రవర్తనను మారుస్తుంది మరియు అదే విధంగా సమీక్షించలేము. వినియోగదారు స్థాయి ఓవర్రైడ్ ఒకే చోట కనిపిస్తుంది, ఒక ఫైల్ను తొలగించి తిరిగి మార్చవచ్చు, టికెట్లో వివరించడం సులభం. సిస్టమ్ ఫైల్ విక్రేత పంపినట్లే ఉంటుంది, కాబట్టి ప్యాకేజీ నవీకరణ మీ తార్కికతను నిశ్శబ్దంగా రద్దు చేయదు.
టన్నెల్ను తాకకుండా ప్రారంభాన్ని నిర్ధారించండి
లాగ్ అవుట్ చేసి మళ్లీ లాగిన్ అవ్వండి, తర్వాత ప్యానెల్ చూసే ముందు ప్రక్రియ ఉందని నిర్ధారించండి. విజయవంతమైన ప్రారంభం మరియు కనిపించే ఐకాన్ రెండు వేర్వేరు ఫలితాలు, మరియు రెండవదానికి మాత్రమే డెస్క్టాప్ ఇంటిగ్రేషన్ పని అవసరం. రెండింటినీ కలిపేస్తే ఎప్పుడూ పని చేస్తున్న ప్యాకేజీని మళ్లీ ఇన్స్టాల్ చేయడానికి వెళ్తారు.
pgrep -af example-vpn systemctl --user status example-vpn.service journalctl --user -b --no-pager | grep -i example-vpn | tail -20
ప్రక్రియ లేకపోతే, మిగిలిన ఫిల్టర్ లేదా పాత TryExec మార్గం కోసం ఎంట్రీని మళ్లీ చదవండి. అది ఉంటే లాంచర్ పని చేసింది, కనిపించని ఐకాన్ ప్యానెల్ సూచిక మద్దతు యొక్క ప్రత్యేక సమస్య, మీరు ఇప్పుడు సవరించిన ఎంట్రీది కాదు.
టికెట్లో మూడు పరిశీలనలను నమోదు చేయండి: ప్రారంభమైంది, కనిపిస్తుంది, కనెక్ట్ అయింది. ఆ నమోదు తదుపరి వ్యక్తి అదే త్రిముఖ గందరగోళాన్ని పునరావృతం చేయకుండా ఆపుతుంది మరియు ఏ పొరకు ఇంకా పని కావాలో స్పష్టం చేస్తుంది.