ലിനക്സ് കുറിപ്പുകൾ/ടെർമിനൽ

വിക്കിപാഠശാല, ഒരു സ്വതന്ത്ര ഉള്ളടക്കത്തോടുകൂടിയ പാഠശാല.

ലിനക്സ്/യൂണിക്സ് സിസ്റ്റങ്ങൾ മൾട്ടി യൂസർ ഓപ്പറേറ്റിങ്ങ് സിസ്റ്റം വിഭാഗത്തിൽ പെടുന്നവ ആണ്. ഒന്നിലധികം ഉപയോക്താക്കൾക്ക് ഒരേ സമയം ഈ കമ്പ്യൂട്ടറുകൾ ഉപയോഗിക്കാൻ സാധിക്കും. വിൻഡോസ് ഓപ്പറേറ്റിങ്ങ് സിസ്റ്റം ഒന്നിലധികം യൂസർ അക്കൗണ്ടുകളെ ഒരേ കമ്പ്യൂട്ടറിൽ അനുവദിക്കുന്നുണ്ട്. എന്നാൽ ഒരു ഉപയോക്താവ് ലോഗ് ഔട്ട് ചെയ്താൽ മാത്രമേ അടുത്ത ഉപയോക്താവിന് ലോഗിൻ ചെയ്യാൻ സാധിക്കുകയുള്ളു. റിമോട്ട് അസിസ്റ്റൻസ്, ടീം വ്യൂവർ തുടങ്ങിയവ ഉപയോഗിച്ച് ഒന്നിലധികം ആളുകൾ ഒരു ഡെസ്ക്‌‌ടോപ്പിനെ നിയന്ത്രിക്കുനത് മൾട്ടി യൂസർ എൻവയോൺമെന്റുമായി തെറ്റിദ്ധരിക്കരുത്. വിൻഡോസ് ഓപ്പറേറ്റിങ്ങ് സിസ്റ്റം ഒരു മൾട്ടി യൂസർ ഓപ്പറേറ്റിങ്ങ് സിസ്റ്റം അല്ല.

പരമ്പരാഗത യൂണിക്സ് സിസ്റ്റങ്ങളെ താഴെക്കൊടുത്തിരിക്കുന്ന രീതിയിൽ കാണാവുന്നതാണ്

ഓരോ ടെർമിനൽ ഉപകരണങ്ങളും വ്യത്യസ്തമാകാം. അക്ഷരങ്ങളും അക്കങ്ങളും ചിഹ്നങ്ങളും മാത്രം കാണാൻ സാധിക്കുന്ന ടെക്റ്റ് ഓൺളി ടെർമിനലുകളും ഗ്രാഫിക്കൽ ടെർമിനലുകളും ഉണ്ട്. സീരിയൽ പോർട്ട് വഴിയോ നെറ്റ്‌‌വർക്ക് വഴിയോ കമ്പ്യൂട്ടറുമായി ഘടിപ്പിക്കാവുന്ന ടെലി ടൈപ്പ് ടെർമിനലുകൾ ഒരുകാലത്ത് നിലവിലുണ്ടായിരുന്നു. യൂണിക്സ് വികസിപ്പിക്കപ്പെട്ട സമയത്തെ കമ്പ്യൂട്ടർ സിസ്റ്റങ്ങൾ ഇന്നത്തേത് പോലെ മൈക്രോ പ്രോസസ്സർ അതിഷ്ഠിതമായ പേഴ്സണൽ കമ്പ്യൂട്ടറുകൾ ആയിരുന്നില്ല. വർക്ക് സ്റ്റേഷനുകൾക്കും മിനി കമ്പ്യൂട്ടറുകൾക്കും ഒക്കെയായി എഴുതപ്പെട്ട ഒരു ഓപ്പറേറ്റിങ്ങ് സിസ്റ്റമായിരുന്നു യൂണിക്സ്. ഒന്നിലധികം ഉപയോക്താക്കളെ പിൻതുണക്കുക എന്നത് അതിന്റെ അടിസ്ഥാന ആവശ്യമായിരുന്നു. പേഴ്സണൽ കമ്പ്യൂട്ടറിൽ നിന്ന് വ്യത്യസ്തമായി ഓരോ ഉപയോക്താക്കൾക്കും ലഭ്യമാകുക ഒരു ഡിസ്പ്ലേയും കീബോർഡും മാത്രമാണ്. സി പി യു, ഡിസ്കുകൾ ഒക്കെ പൊതുവായി എല്ലാവർക്കും കൂടി ആയിരിക്കും.

ഒരു ഉപയോക്താവ് കമ്പ്യൂട്ടറുമായി ടെർമിനൽ ഉപകരണം ഘടിപ്പിക്കുമ്പോൾ കമ്പ്യൂട്ടറിൽ getty (get teletype) പ്രോഗ്രാം അത് കണ്ടെത്തുകയും ഉഅയോക്താവിനോട് യൂസർ നെയിം, പാസ്‌‌വേർഡ് ഇവ എന്റർ ചെയ്യാൻ ആവശ്യപ്പെടുകയും ചെയ്യുന്നു. അതിനു ശേഷം ഉപയോക്താവിന് ഒരു കമാന്റ് ലൈൻ ഇന്റർഫേസ് (ഷെൽ) ലഭിക്കുന്നു. അതുവഴി ഉപയോക്താവിന് പ്രോഗ്രാമുകൾ പ്രവർത്തിപ്പിക്കാൻ സാധിക്കുന്നു. ഓരോ യൂണിക്സ് പ്രോഗ്രാമും ഓരോ‌ കണ്ട്രോളിങ്ങ് ടെർമിനലുമായി ബന്ധിപ്പിക്കപ്പെട്ടിരിക്കും. പ്രോഗ്രാമിന്റെ ഇൻപുട്ട്, ഔട്ട്പുട്ട് തുടങ്ങിയവ ഈ ടെർമിനലിൽ നിന്നും ടെർമിനലിലേക്കും ആയിരിക്കും. എന്നാൽ ഡെമോൺ പ്രോസസ്സുകൾ (സർവ്വീസുകൾ) ടെർമിനലുകളുമായി ബന്ധിക്കപ്പെട്ടിരിക്കില്ല. ഈ പ്രോസസ്സുകൾ തുടങ്ങുമ്പോൾ അവ ടെർമിനലുമായി ബന്ധിപ്പിക്കപ്പെട്ടിരിക്കുമെങ്കിലും അവ അവയുടെ ഇൻപുട്ട് ഔട്ട്പുട്ട് സ്ട്രീമുകളുടെ ഫയൽ ഡിസ്ക്രിപ്റ്റർ ക്ലോസ് ചെയ്ത് ടെർമിനലുകളിൽ നിന്ന് സ്വയം വിച്ഛേദിക്കുന്നു.

ഇന്നത്തെ ഡെസ്ക്ടോപ്പ് കമ്പ്യൂട്ടറുകളിൽ ടെർമിനൽ ഉപകരണങ്ങൾ ഉപയോഗിക്കാറില്ലെങ്കിലും ഇതേ രീതി തന്നെയാണ് പിൻതുടരുന്നത്. ടെർമിനൽ ഉപകരണങ്ങൾക്ക് പകരമായി ടെർമിനൽ ഇമുലേറ്റർ പ്രോഗ്രാമുകൾ ഇന്ന് ഉപയോഗിക്കപ്പെടുന്നു. PuTTY, Konsole, Gnome Terminal, Xterm തുടങ്ങി അനവധി ടെർമിനൽ ഇമുലേറ്റർ പ്രോഗ്രാമുകൾ ലഭ്യമാണ്. Telnet, SSH, rlogin തുടങ്ങിയ വിവിധ പ്രോട്ടോക്കോളുകൾ അടിസ്ഥാനമാക്കി ആണ് ഇവ പ്രവർത്തിക്കുന്നത്. ഗ്രാഫിക്കൽ ടെർമിനലുകൾക്കായി X Window System (X11) ഉപയോഗിക്കുന്നു. ഗ്രാഫിക്കൽ യൂസർ ഇന്റർഫേസുകൾ ലഭ്യമാക്കാനുള്ള പ്രോട്ടോക്കോൾ ആണിത്. ഇതിനെ അടിസ്ഥാനമാക്കി ആണ് വിവിധ ഡെസ്ക്ടോപ്പ് എൻവയോൺമെന്റുകൾ (Gnome, KDE, Xfce, LXDE) തുടങ്ങിയവ പ്രവർത്തിക്കുന്നത്. ഒരു ക്ലയന്റ് - സെർവർ സംവിധാനമാണിത്. ഒരു ടെർമിനൽ ഇമുലേറ്റർ ഉപയോഗിക്കുമ്പോൾ ലഭിക്കുന്ന ടെർമിനലിനെ വിർച്ച്വൽ ടെർമിനൽ എന്ന് വിളിക്കുന്നു.

ഡെസ്ക്ടോപ്പ് കമ്പ്യൂട്ടറുകളിലും ടെർമിനലുകൾ ലഭ്യമാണ്. CTRL+ALT+F1 - F12 കീകൾ ഉപയോഗിച്ച് ഓരോ ടെർമിനലുകളും ലഭ്യമാക്കാം. ഇതിൽ ഒന്നുമുതൽ ആറുവരെയുള്ള ടെർമിനലുകൾ ടെക്സ്റ്റ് ടെർമിനലുകളും അതിനു ശേഷമുള്ളവ ഗ്രാഫിക്കൽ ടെർമിനലുകളും ആണ്. tty1, tty2 ... എന്നിങ്ങനെ ഇവക്ക് പേരുകൾ നൽകിയിരിക്കുന്നു. CTRL+ALT+F1 അമർത്തി tty1 ലേക്ക് പോകാം. അവിടെ യൂസർ നെയിമും പാസ്‌‌വേർഡും ടൈപ്പ് ചെയ്താൽ ഷെൽ ലഭിക്കും. തിരികെ ഗ്രാഫിക്കൽ ഇന്റർഫേസിലേക്ക് മടങ്ങി വരാൻ CTRL+ALT+F7 ഉപയോഗിക്കാം. ആദ്യത്തെ ഗ്രാഫിക്കൽ ടെർമിനൽ ആയ tty7 ഇൽ ആണ് X സാധാരണയായി ആരംഭിക്കുന്നത്. നിങ്ങളുടെ മോണിറ്റർ ഈ ടെർമിനലുമായി ഘടിപ്പിക്കപ്പെട്ടിരിക്കുന്ന ഒരു ഗ്രാഫിക്കൽ ടെർമിനൽ ഉപകരണമായി കണക്കാക്കാവുന്നതാണ്. സിസ്റ്റം സ്റ്റാർട്ടപ്പിൽ X സെർവർ പ്രവർത്തനമാരംഭിക്കുകയും അത് tty7 ഉമായി ബന്ധിപ്പിക്കപ്പെടുകയും ചെയ്യുന്നു.

ടെർമിനൽ ഇമുലേറ്ററുകൾ വഴി ലഭിക്കുന്ന വിർച്ച്വൽ ടെർമിനലുകൾ ബന്ധിപ്പിക്കപ്പെട്ടിരിക്കുക സ്യൂഡോ ടെർമിനലുകളുമായി (Pseudo terminal) ആയിരിക്കും. ഇവക്ക് പേരുകൾ നൽകുന്നത് pts/0, pts/1 എന്നിങ്ങനെ ആണ്. ഉപയോഗിച്ചുകൊണ്ടിരിക്കുന്ന ഷെൽ ഏത് ടെർമിനലുമായി ബന്ധിക്കപ്പെട്ടിരിക്കുന്നു എന്നറിയാൻ tty എന്ന കമാന്റ് ഉപയോഗിക്കാം. ഇത് ഓരോ ടെർമിനലുകളിൽ പരീക്ഷിച്ച് നോക്കൂ. കമ്പ്യൂട്ടറിൽ ഒരു സമയത്ത് ലോഗിൻ ചെയ്തിരിക്കുന്ന ആളുകളുടെ വിവരങ്ങൾ കാണാനും അവർ ഉപയോഗിക്കുന്ന ടെർമിനൽ ഏതെന്നറിയാനും w കമാൻഡോ who കമാൻഡോ ഉപയോഗിക്കാം. ps -e കമാൻഡ് ഉപയോഗിച്ച് കമ്പ്യൂട്ടറിൽ പ്രവർത്തിച്ചുകൊണ്ടിരിക്കുന്ന പ്രോസസ്സുകളും അവയുടെ കണ്ട്രോളിങ്ങ് ടെർമിനലും കാണാൻ സാധിക്കും. ഇതിൽ നിരവധി പ്രോസസ്സുകളുടെ TTY എന്ന കോളത്തിൽ ? എന്ന് മാത്രമേ കാണൂ. അവ ഒരു ടെർമിനലുമായും ബന്ധിക്കപ്പെട്ടിട്ടില്ല എന്നതാണ് ഇത് സൂചിപ്പിക്കുന്നത്. അവ ഏത് തരം പ്രോസസ്സ് ആയിരിക്കും എന്ന് ഊഹിക്കാമല്ലോ..

ഒരു ലിനക്സ് കമ്പ്യൂട്ടറിൽ നെറ്റ്‌‌വർക്ക് വഴി ssh പ്രോഗ്രാം ഉപയോഗിച്ച് ലോഗിൻ ചെയ്ത് നിരവധി ആളുകൾക്ക് ഒരേ സമയത്ത് ആ കമ്പ്യൂട്ടറിനെ ഉപയോഗിക്കാൻ സാധിക്കും. ssh -Y ഓപ്ഷൻ ഉപയോഗിച്ചാൽ ഗ്രാഫിക്കൽ ഇന്റർഫേസ് ഉപയോഗിക്കുന്ന പ്രോഗ്രാമുകളെയും പ്രവർത്തിപ്പിക്കാൻ സാധിക്കും.