એક જ ડેસ્કટોપ પર ચાલતી 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 માર્ગ માટે એન્ટ્રી ફરી વાંચો. જો હોય, તો લોન્ચરે કામ કર્યું અને ખોવાયેલું આઇકોન પેનલના સૂચક સમર્થનની અલગ સમસ્યા છે, તમે હમણાં સંપાદિત કરેલી એન્ટ્રીની નહીં.
ટિકિટમાં ત્રણ અવલોકનો નોંધો: શરૂ થયું, દેખાય છે, જોડાયેલું છે. તે રેકોર્ડ આગલી વ્યક્તિને એ જ ત્રિપક્ષી મૂંઝવણ ફરી કરતું અટકાવે છે અને સ્પષ્ટ કરે છે કે કયા સ્તરને હજી કામની જરૂર છે.