Немає іконки PIA в Linux? Керуйте VPN через piactl
Коли іконка PIA в панелі Linux відсутня, piactl усе ще повідомляє про тунель і змінює регіони. Прочитайте три стани, перш ніж додавати ще один інструмент VPN.
На робочому столі Linux, де іконка PIA в панелі ніколи не з'являється, тунель часто піднятий і працює, тоді як єдине керування, яке ви мали, зникло. Закриття вікна застосунку не зупиняє з'єднання, і те саме встановлення постачає клієнт командного рядка, piactl, який читає та змінює стан, який раніше показувало меню. Корисне питання не в тому, чому зникла іконка, а в тому, який шар відсутній: фоновий застосунок, вибраний регіон чи інтеграція з оболонкою. Назвіть цей шар першим, і ви зможете користуватися VPN, не ремонтуючи засіб запуску.
Іконка в панелі та тунель — окремі шари
Запис у лотку — це деталь презентації, яку надає ваша стільнична оболонка, а не VPN-рушій. Стільничний застосунок PIA малює меню в будь-яку область стану, яку пропонує середовище, і кілька налаштувань Linux відкривають цю область лише після встановлення розширення або плагіна панелі. Якщо застосунок працює, але оболонці нікуди подіти меню, з'єднання триває, поки керування зникає. Саме тому видалення й повторне встановлення VPN рідко відновлює іконку на столі, який ніколи не мав робочої області стану.
Поведінка панелі може відрізнятися й між сеансами, тож спробуйте той самий обліковий запис один раз під Wayland і один раз під X11. Меню, яке з'являється в одному сеансі й не з'являється в іншому, вказує на тип сеансу, а не на встановлення VPN.
Прочитайте поточний стан, перш ніж його змінювати
Почніть лише із запитів, бо читання нічого не коштують, тоді як записи переривають трафік. Запускайте їх від власного користувача, не з sudo, що не змушує клієнт говорити з іншим екземпляром застосунку.
piactl --help
piactl get connectionstate
piactl get region
piactl get regionsconnectionstate прямо відповідає на перше питання, повертаючи Connected або Disconnected і проходячи через перехідні значення, поки клієнт узгоджує з'єднання. region повідомляє ідентифікатор, вибраний зараз, і це не завжди той, на який ви останній раз натискали, якщо застосунок перейшов на автоматичний вибір. regions перелічує ідентифікатори, які знає цей клієнт, тож ви можете скопіювати точний рядок замість того, щоб угадувати назву міста. Якщо перша команда друкує текст довідки, а інші зависають, застосунок встановлено без доступного фонового процесу.
Деякі пакунки залишають piactl поза вашим PATH. Посібник командного рядка PIA вказує /opt/piavpn/bin/piactl як розташування в Linux, тож викликайте цей шлях, коли коротку назву не знайдено. Двійковий файл належить стільничному застосунку, що робить piactl , який відповідає, доказом того, що саме встановлення неушкоджене.
Зміна регіону навмисно перериває тунель
Зміна регіону — це відключення, за яким іде нове рукостискання, і клієнт не застосує її тихо під живим тунелем. Сприймайте наведені нижче команди як одну транзакцію, з ідентифікатором, скопійованим з виводу regions .
piactl disconnect
piactl set region REGION_ID
piactl connect
piactl get connectionstateПорядок тут важливий. Вибір регіону під час з'єднання залишає поточний тунель спрямованим на стару кінцеву точку, доки щось не змусить перепідключитися, і саме тому люди доходять висновку, що налаштування проігноровано. Спочатку відключитися — це робить стан однозначним, а завершальний запит показує, чи узгодження завершилося, а не лише чи було записано регіон. Якщо останній рядок повідомляє регіон, який ви не вибирали, шукайте автоматичний варіант або варіант найшвидшого сервера, який перебирає під час підключення.
На машині, якою ви керуєте через SSH, зробіть зміну локально або прийміть, що сеанс може обірватися. Для всього, що чекає на іншому кінці, навмисна зміна регіону виглядає точно як мережевий збій.
Зафіксуйте збій замість порожньої панелі
Відсутнє меню разом із клієнтом, що збоїть, — це інша проблема, і вона заслуговує на інший звіт. Зберіть точний вивід запиту стану, зробленого під час наявності збою. Цей запис відділяє збій клієнта чи служби від збою інтеграції з оболонкою, чого скріншот порожнього кута зробити не може.
ps -ef | grep -i piavpn
ls -l /opt/piavpn/bin/piactl
piactl get connectionstateЯкщо список процесів не показує жодних компонентів PIA, але двійковий файл існує, застосунок просто не працює, і виправлення — запустити його. Якщо процес присутній, а запит усе ще не вдається, клієнт не може дістатися до власної фонової служби, тож перезапустіть стільничний застосунок, перш ніж змінювати щось інше. Коли обидві перевірки проходять, ви дивитеся на проблему панелі й можете припинити налагодження тунелю. Запишіть версію клієнта з панелі про застосунок поруч із типом сеансу, бо підтримка лотка чутлива і до версії, і до столу.
Імпорт тієї самої підписки в NetworkManager як окремого з'єднання створює другого власника, який не успадковує налаштоване в PIA блокування чи поведінку розділеного тунелю, і подальша діагностика стає здогадкою. Тримайте одного власника, поки іконки немає, і дозвольте piactl бути поверхнею керування. Командний рядок не є запасним варіантом для зламаного встановлення; він звертається до того самого застосунку через інші двері.