Table of Contents
Textterminaler och LAT hos Update
I T-salen finns en eller flera textterminaler av gammal sort. De är anslutna till Updates datorer via LAT, nätverksprotokollet som introducerades av DEC en gång i tiden för att ansluta terminaler till datorer via Ethernet.
Det funkar som så att man kopplar terminalerna rent fysiskt via seriekabel till en terminalväxel, som är en liten låda med ett antal serieportar och en Ethernet-port, som man kopplar till sitt Ethernet-nätverk. Till detta nätverk kopplar man även sina datorer, och så kommunicerar datorerna och terminalväxlarna med varandra via LAT-protokollet. Datorerna announcar sig med namn ut på LAT-nätet och servar sedan login för terminalerna. Flera datorer och terminalväxlar kan vara kopplade till nätet, och användaren kan välja vilken dator han vill ansluta sin terminal till när han loggar in. Sedan är det som en virtuell seriekabel mellan datorn och terminalen, som ringlar sig fram genom Ethern. Man kan även ansluta t.ex. skrivare till terminalväxlarna, så blir de åtkomliga över nätet också.
Jag är 12 och vad är det här?
Om du har skrivit in ett kommando i ett terminalfönster i Linux eller OSX, eller i Kommandotolken i Windows, så har du använt en terminalemulator. Detta är i själva verket en emulering av en fysisk textterminal, ett väsen som sällan syns till idag men som tidigare var det normala sättet användaren interagerade med datorn.
Terminalen är i princip bara en skärm och ett tangentbord, som sitter i ena änden av en seriekabel. I andra änden av kabeln sitter en dator. Text som kommer över kabeln från datorn visas på terminalens skärm, och text som användaren skriver på tangentbordet skickas till datorn. Skärmen fungerar på samma sätt som ett terminalfönster, och visar alltså enbart text (eller text och begränsad grafik, beroende på terminaltyp), men kan till skillnad från ett terminalfönster alltså inte ändra storlek utan visar ett bestämt antal rader och kolumner, ofta 80×24. Kommunikationen över seriekabeln är långsam också – typiskt omkring en till två kilobyte per sekund, ungefär en skärmfull med text.
Hur man loggar in i T-salen
Sitter du vid en textterminal i T-salen är du kopplad till en terminalväxel vi har som heter MUNK. Den står också i T-salen nånstans. När du slår på terminalen och trycker på return så kommer det upp ett välkomstmeddelande från terminalväxeln, och så kommer det också en prompt om att du ska skriva in ditt användarnamn. Det är inte någon Unix-loginprompt, utan det är bara MUNK som vill veta vad du heter. Det spelar ingen vidare roll vad du skriver, och du frågas inte om något lösenord.
När du har skrivit in ditt namn kommer det upp en prompt som ser ut som så:
Local>
Du pratar fortfarande med terminalväxeln, och det finns lite olika kommandon som den förstår. För att logga in kan man skriva t.ex:
Local> connect tricholoma
När du trycker på return efter det kommandot så säger terminalväxeln att den har anslutit din terminal till tjänsten TRICHOLOMA
, och därefter pratar du inte längre med MUNK utan med Tricholoma, våran huvudloginserver:
Local> connect tricholoma Local -010- Session 1 to TRICHOLOMA established Debian GNU/Linux 8 Tricholoma login:
Sedan är det bara att logga in med ditt vanliga användarnamn och lösenord, och så är allt i princip som vanligt, som om du satt och skrev i ett terminalfönster. Vissa saker skiljer sig dock:
- Tangentbordet ser sannolikt lite annorlunda ut, eftersom det inte är ett PC-tangentbord. En del tangenter finns inte, och istället finns andra. Sådan är tillvaron. Alt/Meta finns kanske inte t.ex, men istället kan man trycka på Escape, sedan på tangenten man ville metabolisera.
- En del tangenter finns men genererar andra teckenkoder än i ett terminalfönster. Vanliga exempel är Backspace/Delete och piltangenterna. Ett typiskt symptom på att man lider av backspace-sjukan är att man kör hjälp-kommandot i Emacs när man försöker sudda. Har man tur kan man ställa in på terminalen så att backspace-knappen skickar ett delete-tecken, vilket är så man normalt vill ha det i Unix.
- Ctrl-S är ett speciellt tecken som äts upp på vägen och gör att all vidare output till terminalen stoppas. Det är nämligen så man implementerar flödeskontroll på serielinor utan flödeskontrollsignaler – när den mottagande sidan inte hinner med så skickar den ett Ctrl-S för att be den sändande sidan att vänta. För att få den sändande sidan att fortsätta sända skickar man sedan ett Ctrl-Q. XON och XOFF kallas de två tecknen när de används på det viset. Ctrl-S kan utnyttjas för att pausa en lång utskrift som skrollar förbi på skärmen.
- När du loggar in via LAT så vet inte din session vad för modell terminalen är, och antar att du sitter vid nån antik terminal som skriver på papper och är dum som en sten, vilket gör att skärmorienterade program som texteditorer och epostklienter inte funkar eller funkar dåligt. Lösningen är att manuellt sätta värdet på miljövariabeln
TERM
till modellnamnet på terminalen.export TERM=vt320
funkar t.ex. bra om du har loggat in på en VT320.
Två saker till är värda att notera gällande login via textterminal:
- Man kan låsa terminalen genom att starta
screen
och trycka Ctrl-A x. - Om man stänger av terminalen medans man är inloggad så fortsätter man att vara inloggad. Terminalen är bara som en skärm på det viset. Kommer någon sen och slår på den igen så är de inloggade på ditt konto och byxar dig.
Kommandon på terminalväxeln
Förutom connect
finns lite andra kommandon, t.ex:
logout
Om man är duktig ska man “logga ut” från terminalväxeln när man är färdig. Man loggar alltså först ut från datorn man var ansluten till, och sen loggar man ut från terminalväxeln medlogout
.show services
listar tillgängliga tjänster. Många av de tillgängliga datorerna kör inte Unix och delar inte kontodatabas med Unix-servrarna, så man behöver särskilt konto på dem. De flesta av datorerna i listan tillhör inte ens Update; se nedan under HECnet.help
kan man skriva om man vill veta allt som finns att veta, men det är inte så spännande om man inte ska konfigurera portar på terminalväxeln eller nåt.
För övrigt kan man förkorta alla kommandon genom att helt enkelt utelämna tecken på slutet av orden. T.ex. kan connect
skrivas som c
, och show services
kan skrivas som s ser
.
Hur man datar med en terminal
Terminalen har en lång och riklig historia, och Unix är ett ganska terminal-orienterat operativsystem. Ska man förstå hur saker egentligen funkar och bli riktigt bekväm och kunna arbeta riktigt effektivt så behöver man lära sig lite om terminalens roll och funktion i Unix, och hur man utnyttjar de faciliteter som tillhandahålls. Detta gäller vare sig man tänker använda en antik fysisk terminal eller en modern terminalemulator.
En detaljerad teknisk genomgång av terminalmodellen i Unix finns hos Linus Åkesson. Om bjarni ids så skriver han kanske ett avsnitt om terminalen i handboken.
Man kan också läsa mer allmänt om terminaler på Wikipedia.
HECnet
LAT går direkt ovanpå Ethernet; det är alltså inget TCP/IP inblandat eller så. Tyvärr är LAT i sig inte routbart heller, så allting måste sitta på samma fysiska Ethernet. Dock kan man såklart ta sig runt den begränsningen genom att tunnla Ethernet över TCP/IP, och på så vis brygga ihop olika Ethernet-nät på olika platser så att de ser ut som ett enda lokalt nät för LAT. Så har vi det också ordnat hos oss i Update, och på detta LAT-nät finns både datorer som står hos Update på Polacksbacken, och andra som står på skilda håll i världen, från USA till Sibirien.
Det här världsomspännande LAT-nätet är en del av ett nätverk som heter HECnet, och som också omfattar andra protokoll än just LAT och fler datorer än de man kommer åt på LAT-nätverket. Det driftas som hobbyprojekt av BQT alias Johnny Billquist, Updates DEC-guru nummer ett.