openvpn --errors-to-stderr yra paleidimo parinktis, o ne klaida
Tai, kad komandinėje eilutėje matote --errors-to-stderr, nereiškia, kad kažkas nepavyko. Nuspręskite, ar skaitote paleidimo eilutę, ar proceso išvestį, ir tada patikrinkite.
Komandinė eilutė, kurioje yra --errors-to-stderr atrodo kaip skundas, bet juo nėra, atrodo kaip skundas, bet juo nėra. Žodis priklauso parinkties pavadinimui, kaip žurnalo failo pavadinimas nieko nesako apie tai, kas yra faile. Prieš keisdami bet kokią konfigūraciją, nustatykite, ką iš tikrųjų skaitote.
Sprendimas turi tris šakas: eilutė yra pats paleidimas, eilutė yra programos išspausdinta išvestis, arba eilutė yra tekstas, kurį apvalkalas pakartojo prieš VPN paleidimą. Kiekviena šaka rodo į skirtingą vietą, kurią reikia patikrinti, ir tik viena iš jų yra paties VPN žinutė.
Parinkties pavadinimas nėra būsenos žinutė
Community OpenVPN atveju --errors-to-stderr nukreipia klaidų išvestį į standartinę klaidą, o ne į standartinę išvestį. Tai srauto pasirinkimas, o ne sunkumo filtras, ir jis nesukuria klaidos. Vėlesnis --log arba --log-append gali nukreipti tas pačias žinutes į failą, todėl vėliavėlės poveikis priklauso nuo likusios komandos dalies. Šaltinio žurnalų nuoroda nustato tą tvarką.
Taigi vėliavėlės buvimas nurodo, kur eitų klaidos. Jis nenurodo, kad klaida įvyko.
Paleidimo eilutė ar proceso išvestis
Pradėkite nuo klausimo, kas išspausdino tekstą. Paslaugos vienetas, programos paketas ar apvalkalo įvyniojimas dažnai pakartoja visą argv prieš VPN procesui ką nors rašant. To karto neįmanoma atskirti nuo būsenos eilutės, jei matote tik fragmentą.
Jei eilutė atėjo iš įvyniojimo, VPN dar neveikė ir neturi ko pranešti. Ieškokite toliau išvestyje pirmos žinutės su laiko žyma ar posistemio pavadinimu.
Jei eilutė atėjo iš VPN proceso, ji vis dar tėra iškvietimas. OpenVPN nespausdina savo komandinės eilutės kaip klaidos, o svarbios žinutės eina po jos.
Raskite procesą ir jo rezultatą
Nustatykite, ar procesas tebeveikia. Veikiantis ir bandantis iš naujo klientas atrodo visai kitaip nei tas, kuris iš karto baigė darbą, ir prieš abu yra ta pati komandinė eilutė.
Tada skaitykite rezultatą per komponentą, kuriam priklauso procesas. Sistemoje systemd tai yra vieneto žurnalas; darbalaukio programoje – pačios programos žurnalas arba konsolė. Išėjimo būsena ir paskutinės žinutės atsako į klausimą, į kurį parinkties pavadinimas tik užsimena.
Konfigūracijos analizės klaida, trūkstamas failas, atmesti prisijungimo duomenys ir partnerio laiko limitas yra keturi skirtingi įvykiai. Jie ateina tuo pačiu srautu. Jiems reikia keturių skirtingų pataisų. Nuspręskite, kurią turite, prieš liesdami profilį, ir cituokite tikslią žinutę, kai prašote pagalbos.
Kada vėliavėlė nusipelno savo vietos
Vėliavėlė nusipelno savo vietos, kai stdout neša duomenis ir klaidos neturi jų užteršti, arba kai įvyniojimas pagauna du srautus atskirai. Terminado priekinės sesijos metu abu srautai atsiduria prieš jus. Tokiu atveju skirtumas retai keičia tai, ką darote.
Palikite ją, jei aplinkinis scenarijus priklauso nuo atskyrimo. Pašalinti ją todėl, kad pavadinimas atrodo nerimą keliantis, pakeičia tai, kur atsiranda žinutės, ir nieko daugiau nepataiso.
Ko nekeisti
Nelaikykite parinkties taisymo žingsniu. Jos ištrynimas negali pataisyti sertifikato, maršruto ar autentifikavimo gedimo.
Jei iškvietime yra --config stdin, konfigūracija tiekiama per standartinę įvestį. Tai atskiras sprendimas apie tai, kaip pateikiamas failas. Keiskite po vieną dalyką ir prieš keisdami antrąjį dar kartą perskaitykite tikrąją žinutę.