En kommandorad som innehåller --errors-to-stderr ser ut som ett klagomål och är inte det. Ordet hör till ett alternativnamn, ungefär som namnet på en loggfil inte säger något om vad filen innehåller. Innan du ändrar någon konfiguration måste du fastställa vad du faktiskt läser.

Beslutet har tre grenar: raden är själva starten, raden är utdata som programmet skrev ut, eller raden är text som ett omslag upprepade innan VPN startade. Varje gren pekar på en annan plats att titta på, och bara en av dem är VPN:ets eget meddelande.

Ett alternativnamn är inte ett statusmeddelande

För Community OpenVPN, --errors-to-stderr dirigerar felutdata till standardfel i stället för standardutdata. Det är ett val av ström, inte ett allvarlighetsfilter, och det skapar inget fel. En senare --log eller --log-append kan omdirigera samma meddelanden till en fil, därför beror flaggans effekt på resten av kommandot. Loggreferensen från källan fastställer den ordningen.

Så flaggans närvaro säger vart felen skulle ta vägen. Den säger inte att ett har inträffat.

Startrad eller processutdata

Börja med att fråga vem som skrev ut texten. En tjänsteenhet, ett programpaket eller ett skalomslag upprepar ofta hela argv innan VPN-processen skriver något. Den upprepningen går inte att skilja från en statusrad om du bara ser ett fragment.

Om raden kom från omslaget har VPN inte kört ännu och har inget att rapportera. Titta längre ner i utdata efter det första meddelandet med tidsstämpel eller undersystemnamn.

Om raden kom från VPN-processen är den fortfarande bara anropet. OpenVPN skriver inte ut sin egen kommandorad som ett fel, och meddelandena som spelar roll följer efter.

Hitta processen och dess resultat

Fastställ om processen fortfarande körs. En klient som är uppe och försöker igen ser mycket annorlunda ut än en som avslutades direkt, och samma kommandorad står framför båda.

Läs sedan resultatet genom komponenten som äger processen. Under systemd är det enhetens journal; i ett skrivbordsprogram är det programmets egen logg eller konsol. Exitstatusen plus de senaste meddelandena svarar på frågan som alternativnamnet bara antyder.

Ett konfigurationsparsfel, en saknad fil, en avvisad autentiseringsuppgift och en peer-timeout är fyra olika händelser. De kommer på samma ström. De behöver fyra olika åtgärder. Bestäm vilken du har innan du rör profilen, och citera det exakta meddelandet när du ber om hjälp.

När flaggan förtjänar sin plats

Flaggan förtjänar sin plats när stdout bär data och fel inte får förorena det, eller när ett omslag fångar de två strömmarna separat. I en förgrundssession i en terminal hamnar båda strömmarna framför dig. I så fall ändrar distinktionen sällan vad du gör.

Behåll den om skriptet runt omkring beror på uppdelningen. Att ta bort den för att namnet verkar alarmerande ändrar var meddelanden visas och rättar inget annat.

Vad du inte ska ändra

Behandla inte alternativet som ett reparationssteg. Att ta bort det kan inte rätta ett certifikat, en rutt eller ett autentiseringsfel.

Om anropet innehåller --config stdin, matas konfigurationen in via standardinmatning. Det är ett separat beslut om hur filen tillhandahålls. Ändra en sak i taget, och läs om det faktiska meddelandet innan du ändrar den andra.

Relaterade artiklar