एउटै डेस्कटपमा मात्र चल्ने 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 मार्गका लागि प्रविष्टि फेरि पढ्नुहोस्। छ भने लन्चरले काम गर्यो र हराएको आइकन प्यानलको सूचक समर्थनको छुट्टै समस्या हो, तपाईंले भर्खरै सम्पादन गरेको प्रविष्टिको होइन।
टिकटमा तीन अवलोकन लेख्नुहोस्: सुरु भयो, देखिन्छ, जोडियो। त्यो रेकर्डले अर्को व्यक्तिलाई त्यही त्रिमुखी भ्रम दोहोर्याउनबाट रोक्छ र कुन तहलाई अझै काम चाहिन्छ स्पष्ट पार्छ।