systemctl கூறுகிறது systemd PID 1 அல்ல: அடுத்து என்ன?
PID 1 செய்தி OpenVPN பற்றியது அல்ல, சூழல் பற்றியது. PID 1 ஆக எது இயங்குகிறது என்பதைச் சரிபார்த்து, ஆதரவுள்ள இடத்தில் systemd இயக்கி, பின்னர் உண்மையான பிழையைப் படியுங்கள்.
நீங்கள் systemctl start openvpn-client@office இயக்கி, கணினி systemd உடன் துவக்கப்படவில்லை என்ற செய்தி வந்தால், அது சேவை தோல்வி போலத் தெரிகிறது. அது சேவை தோல்வியே அல்ல: நீங்கள் அழைத்த systemctl பேச இயங்கும் மேலாளரைக் கண்டுபிடிக்கவில்லை, எனவே OpenVPN பற்றி எதுவும் சரிபார்க்கப்படவில்லை. sudo மேலாளரை உருவாக்காது, unit கோப்பை நிறுவுவதும் அதை உருவாக்காது. கட்டளைக்கும் இயந்திரத்திற்கும் வெவ்வேறு இரண்டு உலகங்கள், இது தெரியவந்தது பிழையில் மட்டுமே.
கட்டளை இயங்கும் இடத்தில் PID 1 எந்த செயல்முறைக்குச் சொந்தம் என்பதை முதலில் கேளுங்கள், ஏனெனில் அந்தப் பதிலே unit இருக்கின்றனவா இல்லையா என்பதைத் தீர்மானிக்கிறது.
பிழை OpenVPN அல்ல, சூழலைப் பெயரிடுகிறது
systemctl ஒரு கிளையண்ட், மேலாளர் அல்ல. இது socket வழியாக கணினி மேலாளருடன் இணைகிறது, மறுமுனையில் மேலாளர் இல்லாதபோது மக்கள் மன்றங்களில் ஒட்டும் செய்தியை அச்சிடுகிறது. ps -p 1 -o pid=,comm= உண்மையில் PID 1 ஆக எது இயங்குகிறது என்பதைக் காட்டுகிறது, பதில் பெரும்பாலும் shell, init உறை அல்லது கொள்கலனின் சொந்த நுழைவுப் புள்ளியாக இருக்கும். அந்த நிலையில் unit கோப்பு முழுமையாக செல்லுபடியாக இருந்தும் ஒருபோதும் படிக்கப்படாமல் போகலாம். கட்டளையை root ஆக மீண்டும் இயக்குவது கிளையண்டின் சான்றுகளை மட்டுமே மாற்றுகிறது.
முதல் வரிக்கு முன் முழுச் செய்தியையும் படியுங்கள். மேலாளரிடமிருந்தே வரும் பிழை, உதாரணமாக காணாத unit அல்லது தோல்வியடைந்த நிபந்தனை, நீங்கள் அதை அடைந்தீர்கள் என்பதாகும்; இந்தப் பிழை அடையவில்லை என்பதாகும்.
WSL: systemd இயக்குவது ஒரு கட்டமைப்பு மாற்றம்
WSL பிந்தைய வெளியீடுகளில் systemd ஆதரவைப் பெற்றது, ஆனால் இந்த அம்சம் ஒவ்வொரு விநியோகத்திற்கும் தனித்தனியாக இயக்கப்படுகிறது, நிறுவப்பட்ட WSL பதிப்பு ஆதரிக்கும் இடத்தில் மட்டுமே செயல்படுகிறது. wsl --version Windows பக்கத்தில் உங்களிடம் என்ன இருக்கிறது என்பதைக் காட்டுகிறது, மேலும் விநியோகத்தின் /etc/wsl.conf கோப்பில் [boot] பிரிவு உள்ளது, அதில் systemd=true உள்ளது. ஏற்கனவே உள்ள பிரிவுகளை நீக்காமல் அந்தக் கோப்பைத் திருத்தி, பின்னர் மாற்றம் நடைமுறைக்கு வர WSL நிகழ்வை மீண்டும் தொடங்குங்கள். wsl --shutdown இயங்கும் ஒவ்வொரு விநியோகத்தையும் நிறுத்துகிறது, எனவே முதலில் உங்கள் வேலையைச் சேமியுங்கள்.
மீண்டும் திறந்த பிறகு, OpenVPN unit ஐத் தொடுவதற்கு முன் மேலாளரை உறுதிப்படுத்துங்கள்: ps -p 1 -o comm= காட்ட வேண்டும் systemd. systemd ஐ இயக்குவது சுயவிவரம், சான்று அல்லது நிகழ்வுப் பெயரைத் தராது, எனவே அடுத்த பிழை PID 1 பற்றி அல்ல, அவற்றில் ஒன்று பற்றியதாக இருக்கும்.
கொள்கலன்கள் தங்கள் நுழைவுப் புள்ளியை இயக்குகின்றன, unit அல்ல
சாதாரண கொள்கலன் அதன் நுழைவுப் புள்ளி அல்லது கட்டளை குறிப்பிடுவதைத் தொடங்குகிறது, நீங்கள் எந்தத் தொகுப்புகளை நிறுவினாலும் அது systemd உடன் துவக்கப்பட்ட இயந்திரம் அல்ல. படத்தில் systemctl சேர்த்தால் இணைக்க எதுவும் இல்லாத கிளையண்ட் கிடைக்கும். Community OpenVPN க்கு ஆதரவு பெறும் முறை பொதுவாக முன்புறத்தில் இயங்கும் செயல்முறை, openvpn --config /path/to/client.conf, அதை நுழைவுப் புள்ளி தொடங்கி வெளியிலிருந்து கண்காணிக்கிறது. அந்த உரிமையாளர் தொடக்கம், சமிக்ஞைகள் மற்றும் நிறுத்தத்தைக் கையாள்கிறார், சுரங்கப்பாதையை நிர்வகிக்கும் ஒரே விஷயம் அவராகவே இருக்க வேண்டும்.
அந்தச் சுரங்கப்பாதையை ஏற்கனவே நிர்வகிக்கும் நுழைவுப் புள்ளியின் அருகில் ஒருபோதும் ஊடாடும் நகலை இயக்க வேண்டாம், ஏனெனில் இரண்டு செயல்முறைகள் சாதனத்திற்காகவும் பாதைகளுக்காகவும் சண்டையிடும். கொள்கலனுக்குள் உள்ள குறைந்தபட்ச init செயல்முறை குழந்தைகளைச் சேகரித்து சமிக்ஞைகளை அனுப்புகிறது; அது படத்தை unit உள்ள ஹோஸ்ட் ஆக்காது.
ஒரு பயன்பாட்டுக்கு கொள்கலனுக்குள் systemd உண்மையில் தேவைப்பட்டால், அதற்காக வேண்டுமென்றே வடிவமைக்கப்பட்ட படம் தேவை, systemctl புகார் சொல்வதை நிறுத்தும் வரை சேர்க்கப்படும் கூடுதல் சலுகைகள் அல்ல.
மேலாளர் இருக்கும்போது அடுத்த பிழையைப் படியுங்கள்
உண்மையான மேலாளர் சேவையைத் தொடங்கியதும் பயனுள்ள பிழைகள் தொடங்குகின்றன. சாதன அனுமதி தோல்வி, கட்டமைப்பு பகுப்பாய்வுப் பிழை, காணாத சான்று மற்றும் அடைய முடியாத துணை — இவை PID 1 செய்தி ஒருபோதும் சோதிக்காத நான்கு வெவ்வேறு சிக்கல்கள். unit அவற்றை உருவாக்கிய வரிசையில் படியுங்கள், journalctl -u openvpn-client@office -n 50 பயன்படுத்தி systemd ஹோஸ்ட்டில், அல்லது மேலாளர் இல்லாத இடத்தில் கிளையண்டை முன்புறத்தில் இயக்கி. முன்புறத்தில் இயக்குவது சுயவிவரம் தானே செயல்படுகிறது என்பதை உறுதிப்படுத்தும் வேகமான வழியும் ஆகும்.
உங்கள் குறிப்புகளில் இரு சூழல்களையும் தனித்தனியாக வைத்திருங்கள்: சுரங்கப்பாதையை இயக்கும் ஹோஸ்ட், மற்றும் நீங்கள் கட்டளைகளைத் தட்டச்சு செய்யும் இடம்.