Eksik menü girdileri ve kaybolan tercihler aynı refleksle düzeltilir, oysa bunlar ilgisiz sorunlardır. Biri masaüstü tümleşmesi, diğeri uygulama durumudur ve yeni bir simge ikisini de kendiliğinden değiştirmez. İkisini ayırmak tek bir deney ister ve insanların bu konuya getirdiği karışıklığın çoğunu açıklar. Başlatıcı bir program başlatır; program neyi hatırlayacağına kendi karar verir.

Yalnızca tek gibi görünen iki iş

Masaüstü tümleşmesi, ortamın çalıştırılabilir bir dosya bulabildiği, bir ad ve simge gösterebildiği ve doğru argümanları geçirebildiği anlamına gelir. Uygulama durumu, programın bir profili kalıcı bir yere yazdığı ve sonraki başlatmada onu yeniden okuduğu anlamına gelir. Hiçbiri diğerini gerektirmez, bu yüzden çalışan bir kısayol her şeyi unutmuş bir istemciyi başlatabilir.

Uygulamanın kendi denetimleriyle zararsız bir görüntü tercihini değiştirin, sonra aynı şekilde kapatıp yeniden açın. Tercih geri gelirse kalıcılık çalışıyor demektir ve kalan şikâyet veriyi kaydetmekle değil pencereyi bulmakla ilgilidir. Kaybolursa kısayol bir dikkat dağıtıcıdır ve gerçek soru o sürecin dosyalarını nerede tuttuğudur. Her seferinde bir tercih deneyin, çünkü yeniden parola isteyen bir istemci yapılandırmayı kaybetmek yerine bir sırrı koruyor olabilir.

Yeniden kurulumdan önce başlatma girdilerini karşılaştırın

Masaüstü girdisinden başlayın ve gerçekte ne yaptığını okuyun, çünkü menüden başlatma otomatik olarak terminalden başlatmayla aynı süreç ortamı değildir. Önemli anahtarlar Exec, Path ve dolaylı olarak oturumun sağladığı ortamdır. Exec içindeki bir sarmalayıcı betik bir değişken atayabilir, dizini değiştirebilir veya menünün hiç göstermediği ayrıcalıklı bir yardımcıyı çağırabilir. Yeniden kurulum, uygulamanın zaten sahip olduğu dosyaları değiştirir ve bu nadiren değişen değişkendir.

grep -h '^Exec=' ~/.local/share/applications/*.desktop
desktop-file-validate ~/.local/share/applications/client.desktop

~/.local/share/applications altındaki dosyaya /usr/share/applications içindekinden önce bakın, çünkü kullanıcı kopyası sistem kopyasını gölgeler. Girdi kötü davrandığında desktop-file-validate komutunu çalıştırın ve hâlâ kaldırılmış bir yola işaret eden eski bir kopya arayın. Geçersiz kullanıcı kopyası çoğu masaüstünde hâlâ tercih edilir, bu yüzden bozuk bir dosya girdiyi menüden kaldırabilirken paketin dosyası geçerli kalır. Sonra aynı komutu elle çalıştırın ve iki başlatmanın ne ürettiğini karşılaştırın.

Bir tercih gerçekte nerede yaşar

XDG temel dizin kurallarına uyan uygulamalar yapılandırmayı $XDG_CONFIG_HOME altına, kalıcı durumu $XDG_STATE_HOME altına ve atılabilir verileri $XDG_CACHE_HOME altına koyar ve bu değişkenler ayarlanmadığında varsayılan olarak ~/.config, ~/.local/state ve ~/.cache kullanır. Bu üçü rol, vaat değildir, bu yüzden belirli bir VPN ürünü bambaşka bir şey belgeleyebilir. Satıcının kendi belgelerini okumak, yolu dizin adından tahmin etmekten iyidir. Belgeler zayıfsa dosya sistemini değil süreci gözlemleyin.

Dosya açmalarına göre süzülen bir iz, istemcinin denediği her yapılandırma yolunu, çıkarken yazdığı yol dahil gösterir. Aynı kullanıcı ve aynı ortamla çalıştırın, sonra bu yolları beklediğiniz dizinlerle karşılaştırın.

strace -f -e trace=openat,stat -o /tmp/vpn.log vpn-client

Sırların ve profillerin sahipleri farklıdır

Kaydedilmiş bir profil ile kaydedilmiş bir kimlik bilgisi ayrı nesnelerdir, genellikle ayrı depolamayla. Biri bir yapılandırma dosyasında yaşayabilirken diğeri oturum başına açılan bir anahtarlıkta oturur, bu yüzden yeniden parola isteyen istemci belki de tasarlandığı şeyi yapıyordur. İstemi durdurmak için profili silmek, insanların çalışan bir yapılandırmayı kaybetme biçimidir.

Ayrıcalıklı başlatmalar bunu daha da karmaşıklaştırır, çünkü sudo veya bir PolicyKit yardımcısı üzerinden başlatma başka bir ev dizini ve dolayısıyla başka bir yapılandırma kümesi sunabilir. Sahipliği ev dizininin tamamında yinelemeli olarak değil, uygulamanın belgelediği belirli dosyada düzeltin, sonra profilin bundan sonra hangi kimliğe ait olması gerektiğine karar verin ve gelecekteki başlatmaları buna uygun tutun.

Simgenin size söyleyebildiği ve söyleyemediği şeyler

Bir simge, başlatıcı dosyasının çözülebildiğini kanıtlar, daha fazlasını değil. Bağlantı durumu istemciye aittir, bu yüzden tek güvenilir kontrol arayüz, rota veya istemcinin kendi durum çıktısıdır. Başlayamayan bir sistem tepsisi uygulaması çalışan bir tüneli bozuk gösterebilir, eski bir uygulama ise bozuk bir tüneli yerinde gösterebilir. Bağlantıyı ve başlatıcıyı ayrı ayrı test edin, sonra ikisinden hangisini gerçekten onardığınızı yazın.

İkisi de bozuksa, onarımı tek bir değişiklik olarak ele alma dürtüsüne direnin. Girdiyi düzeltin, başlatmayı doğrulayın, ardından tüneli doğrulayın ve her adımın sonucunu not edin. O kayıt, bir sonraki kayıp ayar bildirimini bunun tekrarı olmaktan çıkarıp tanılanabilir kılan şeydir ve sorunun hangi yarısının gerçek olduğunu bir sonraki kişiye de söyler.

İlgili makaleler