openvpn --errors-to-stderr ഒരു ലോഞ്ച് ഓപ്ഷനാണ്, പിശകല്ല
കമാൻഡ് ലൈനിൽ --errors-to-stderr കാണുന്നത് എന്തോ പരാജയപ്പെട്ടു എന്ന് അർത്ഥമാക്കുന്നില്ല. നിങ്ങൾ ലോഞ്ച് ലൈൻ വായിക്കുകയാണോ പ്രോസസ്സിന്റെ ഔട്ട്പുട്ട് വായിക്കുകയാണോ എന്ന് തീരുമാനിച്ച ശേഷം പരിശോധിക്കുക.
കമാൻഡ് ലൈനിൽ --errors-to-stderr കാണുമ്പോൾ അത് പരാതിപോലെ തോന്നും, പക്ഷേ പരാതിയല്ല. പദം ഒരു ഓപ്ഷന്റെ പേരിനുള്ളതാണ്, ലോഗ് ഫയലിന്റെ പേര് ഫയലിൽ എന്തുണ്ടെന്ന് ഒന്നും പറയാത്തതുപോലെ. ഏതെങ്കിലും കോൺഫിഗറേഷൻ മാറ്റുന്നതിന് മുമ്പ് നിങ്ങൾ യഥാർത്ഥത്തിൽ എന്താണ് വായിക്കുന്നതെന്ന് ഉറപ്പാക്കുക.
തീരുമാനത്തിന് മൂന്ന് ശാഖകളുണ്ട്: വരി തന്നെ ലോഞ്ച് ആണ്, വരി പ്രോഗ്രാം അച്ചടിച്ച ഔട്ട്പുട്ട് ആണ്, അല്ലെങ്കിൽ വരി VPN തുടങ്ങുന്നതിന് മുമ്പ് റാപ്പർ ആവർത്തിച്ച ടെക്സ്റ്റ് ആണ്. ഓരോ ശാഖയും നോക്കാൻ വ്യത്യസ്ത സ്ഥലം സൂചിപ്പിക്കുന്നു, അവയിൽ ഒന്ന് മാത്രമാണ് VPN-ന്റെ സ്വന്തം സന്ദേശം.
ഓപ്ഷന്റെ പേര് ഒരു സ്റ്റാറ്റസ് സന്ദേശമല്ല
Community OpenVPN എന്നതിന് --errors-to-stderr പിശകുകളുടെ ഔട്ട്പുട്ട് സ്റ്റാൻഡേർഡ് ഔട്ട്പുട്ടിന് പകരം സ്റ്റാൻഡേർഡ് എറർ ലേക്ക് അയയ്ക്കുന്നു. ഇത് ഒരു സ്ട്രീം തിരഞ്ഞെടുപ്പാണ്, തീവ്രതയുടെ ഫിൽട്ടറല്ല, ഇത് പിശക് സൃഷ്ടിക്കുന്നുമില്ല. പിന്നീടുള്ള --log അല്ലെങ്കിൽ --log-append അതേ സന്ദേശങ്ങൾ ഒരു ഫയലിലേക്ക് തിരിച്ചുവിടാം, അതിനാൽ ഫ്ലാഗിന്റെ ഫലം കമാൻഡിന്റെ ബാക്കി ഭാഗത്തെ ആശ്രയിച്ചിരിക്കുന്നു. സ്രോതസ്സിലെ ലോഗിംഗ് റഫറൻസ് ആ ക്രമം നിർണ്ണയിക്കുന്നു.
അതിനാൽ ഫ്ലാഗിന്റെ സാന്നിധ്യം പിശകുകൾ എവിടെ പോകുമെന്ന് പറയുന്നു. ഒരു പിശക് സംഭവിച്ചു എന്ന് അത് പറയുന്നില്ല.
ലോഞ്ച് ലൈൻ അല്ലെങ്കിൽ പ്രോസസ്സ് ഔട്ട്പുട്ട്
ടെക്സ്റ്റ് ആരാണ് അച്ചടിച്ചതെന്ന് ചോദിച്ചുകൊണ്ട് തുടങ്ങുക. സേവന യൂണിറ്റ്, ആപ്ലിക്കേഷൻ ബണ്ടിൽ അല്ലെങ്കിൽ ഷെൽ റാപ്പർ എന്നിവ പലപ്പോഴും VPN പ്രോസസ്സ് എന്തെങ്കിലും എഴുതുന്നതിന് മുമ്പ് മുഴുവൻ argv-യും ആവർത്തിക്കുന്നു. ഒരു ഭാഗം മാത്രം കണ്ടാൽ ആ ആവർത്തനം ഒരു സ്റ്റാറ്റസ് ലൈനിൽ നിന്ന് വേർതിരിച്ചറിയാൻ കഴിയില്ല.
വരി റാപ്പറിൽ നിന്നാണെങ്കിൽ, VPN ഇതുവരെ പ്രവർത്തിച്ചിട്ടില്ല, റിപ്പോർട്ട് ചെയ്യാൻ ഒന്നുമില്ല. ഔട്ട്പുട്ടിൽ കൂടുതൽ താഴേക്ക് പോയി ടൈംസ്റ്റാമ്പോ സബ്സിസ്റ്റം പേരോ ഉള്ള ആദ്യ സന്ദേശം നോക്കുക.
വരി VPN പ്രോസസ്സിൽ നിന്നാണെങ്കിൽ, അത് ഇപ്പോഴും വിളി മാത്രമാണ്. OpenVPN അതിന്റെ സ്വന്തം കമാൻഡ് ലൈൻ പിശകായി അച്ചടിക്കുന്നില്ല, പ്രധാന സന്ദേശങ്ങൾ അതിന് ശേഷം വരുന്നു.
പ്രോസസ്സും അതിന്റെ ഫലവും കണ്ടെത്തുക
പ്രോസസ്സ് ഇപ്പോഴും പ്രവർത്തിക്കുന്നുണ്ടോ എന്ന് ഉറപ്പാക്കുക. പ്രവർത്തിച്ച് വീണ്ടും ശ്രമിക്കുന്ന ക്ലയന്റ് ഉടൻ പുറത്തുപോയ ക്ലയന്റിൽ നിന്ന് വളരെ വ്യത്യസ്തമായി കാണപ്പെടുന്നു, രണ്ടിന്റെയും മുന്നിൽ ഒരേ കമാൻഡ് ലൈൻ ഉണ്ട്.
തുടർന്ന് പ്രോസസ്സിന്റെ ഉടമസ്ഥതയിലുള്ള ഘടകത്തിലൂടെ ഫലം വായിക്കുക. systemd-യിൽ അത് യൂണിറ്റിന്റെ ജേണലാണ്; ഡെസ്ക്ടോപ്പ് ആപ്പിൽ അത് ആപ്പിന്റെ സ്വന്തം ലോഗ് അല്ലെങ്കിൽ കൺസോളാണ്. എക്സിറ്റ് സ്റ്റാറ്റസും അവസാന സന്ദേശങ്ങളും ഓപ്ഷന്റെ പേര് സൂചിപ്പിക്കുന്ന ചോദ്യത്തിന് ഉത്തരം നൽകുന്നു.
കോൺഫിഗറേഷൻ പാഴ്സ് പിശക്, കാണാത്ത ഫയൽ, നിരസിക്കപ്പെട്ട ക്രെഡൻഷ്യൽ, പിയർ ടൈംഔട്ട് എന്നിവ നാല് വ്യത്യസ്ത സംഭവങ്ങളാണ്. അവ ഒരേ സ്ട്രീമിൽ വരുന്നു. അവയ്ക്ക് നാല് വ്യത്യസ്ത പരിഹാരങ്ങൾ വേണം. പ്രൊഫൈൽ തൊടുന്നതിന് മുമ്പ് ഏതാണ് നിങ്ങൾക്കുള്ളതെന്ന് തീരുമാനിക്കുക, സഹായം ചോദിക്കുമ്പോൾ കൃത്യമായ സന്ദേശം ഉദ്ധരിക്കുക.
ഫ്ലാഗ് എപ്പോഴാണ് അതിന്റെ സ്ഥാനം അർഹിക്കുന്നത്
stdout ഡാറ്റ വഹിക്കുകയും പിശകുകൾ അതിനെ മലിനമാക്കരുതെന്നും ഉള്ളപ്പോൾ, അല്ലെങ്കിൽ റാപ്പർ രണ്ട് സ്ട്രീമുകളും വെവ്വേറെ പിടിക്കുമ്പോൾ ഫ്ലാഗ് അതിന്റെ സ്ഥാനം അർഹിക്കുന്നു. ടെർമിനലിലെ ഫോർഗ്രൗണ്ട് സെഷനിൽ രണ്ട് സ്ട്രീമുകളും നിങ്ങളുടെ മുന്നിൽ എത്തുന്നു. ആ സന്ദർഭത്തിൽ വ്യത്യാസം നിങ്ങൾ ചെയ്യുന്നതിനെ അപൂർവ്വമായി മാറ്റുന്നു.
ചുറ്റുമുള്ള സ്ക്രിപ്റ്റ് വിഭജനത്തെ ആശ്രയിക്കുന്നുവെങ്കിൽ അത് നിലനിർത്തുക. പേര് ഭീഷണമായി തോന്നുന്നതിനാൽ അത് നീക്കം ചെയ്യുന്നത് സന്ദേശങ്ങൾ എവിടെ പ്രത്യക്ഷപ്പെടുന്നു എന്നത് മാറ്റുന്നു, മറ്റൊന്നും ശരിയാക്കുന്നില്ല.
എന്ത് മാറ്റരുത്
ഓപ്ഷനെ ഒരു അറ്റകുറ്റപ്പണി ഘട്ടമായി കാണരുത്. അത് ഇല്ലാതാക്കുന്നത് സർട്ടിഫിക്കറ്റ്, റൂട്ട് അല്ലെങ്കിൽ പ്രാമാണീകരണ പരാജയം ശരിയാക്കില്ല.
വിളിയിൽ --config stdin ഉണ്ടെങ്കിൽ, കോൺഫിഗറേഷൻ സ്റ്റാൻഡേർഡ് ഇൻപുട്ടിലൂടെ നൽകുന്നു. ഫയൽ എങ്ങനെ നൽകുന്നു എന്നതിനെക്കുറിച്ചുള്ള പ്രത്യേക തീരുമാനമാണിത്. ഒരു സമയത്ത് ഒരു കാര്യം മാറ്റുക, രണ്ടാമത്തത് മാറ്റുന്നതിന് മുമ്പ് യഥാർത്ഥ സന്ദേശം വീണ്ടും വായിക്കുക.