Meny
Är gratis
registrering
den huvudsakliga  /  Internet/ Unix grunderna. Grunderna i Linux

Grunderna i Unix. Grunderna i Linux

Innan du kan behärska måste du behärska de grundläggande begreppen i Linux -systemet. Att lära sig att arbeta med Linux kommer att vara en mycket användbar färdighet eftersom det finns ett stort antal webbplatser, e -post och andra internettjänster som körs på Linux -servrar.

I det här avsnittet kommer vi att förklara de grundläggande begreppen relaterade till Linux. När vi utför vår uppgift antar vi att du redan har en uppfattning om datorsystem i allmänhet, inklusive komponenter som den centrala processorenheten (CPU), slumpmässigt åtkomstminne (RAM), moderkort, hårddisk, samt andra kontroller och enheter relaterade till dem.

3.1

Termen "Linux" används ofta för att referera till hela operativsystemet, men Linux är faktiskt kärnan i operativsystemet som startas av en startladdare som drivs av BIOS / UEFI. Kärnan tar en roll som liknar en dirigent i en orkester, den säkerställer att hårdvara och mjukvara fungerar tillsammans. Denna roll innebär hantering av utrustning, användare och filsystem. Kärnan är en vanlig bas för andra program som körs på ett visst system och startar oftast ring noll, också känd som kärnutrymme

Användarutrymme

Vi använder termen "användarutrymme" för att kombinera allt som händer utanför kärnan.

Användarutrymme-program inkluderar många av kärnverktygen från GNU-projektet, varav de flesta är utformade för att köras från kommandoraden. Du kan använda dem i skript för att automatisera olika uppgifter. För mer information om de viktigaste kommandona, se avsnitt 3.4 "".

Låt oss ta en snabb titt på de olika uppgifterna som utförs av Linux -kärnan.

3.1.1 Utrustningslansering

Syftet med kärnan är först och främst att hantera och kontrollera datorns huvudkomponenter. Den upptäcker och konfigurerar dem när datorn slås på och när en enhet monteras eller tas bort (till exempel en USB -enhet). Det gör dem också tillgängliga för högre programvara via ett förenklat programmeringsgränssnitt, så att applikationer kan dra nytta av enheterna utan att behöva gå in på detaljer som expansionsplatsen där kortet är isatt. API: et ger också en viss abstraktionsnivå; detta låter dig använda utrustning för videokonferenser, till exempel använda en webbkamera oavsett modell och tillverkare. Programvaran kan använda gränssnittet Video för Linux(V4L) och kärnan översätter gränssnittsanropen till riktiga hårdvarukommandon som krävs för att en viss webbkamera ska fungera.

Kärnan exporterar data om upptäckt hårdvara genom / proc / och / sys / virtuella system. Program använder ofta enheter med filer som skapats i / dev /. Specialfiler som representerar diskar (t.ex. / dev / sda), partitioner ( / dev / sdal), möss ( / dev / input / mouse0), tangentbord ( / dev / input / event0), ljudkort ( / dev / snd / *) , seriella portar ( / dev / ttyS *) och andra komponenter.

Det finns två typer av enhetsfiler: block och tecken. De förstnämnda har egenskaperna hos ett datablock: de har en begränsad storlek, och du kan komma åt byte på vilken position som helst i blocket. De senare beter sig som en ström av symboler. Du kan läsa och skriva tecken, men du kan inte söka efter en given position och ändra godtyckliga byte. För att ta reda på enhetens filtyp, kontrollera den första bokstaven i kommandot Is -1. Det kan antingen vara b för blockenheter eller c för teckenenheter:

Som du kanske har gissat använder diskar och partitioner enhetsblockfiler, medan mus, tangentbord och seriella portar använder enhetssymbolfiler. I båda fallen innehåller programmeringsgränssnittet speciella kommandon som kan aktiveras via ett systemanrop ioctl.

3.1.2 Kombinera filsystem

Filsystem är en viktig aspekt av kärnan. Unix-baserade system kombinerar alla fillager till en hierarki, vilket gör att användare och applikationer kan komma åt data genom att veta var de finns inom den hierarkin.

Utgångspunkten för detta hierarkiska träd kallas root, representerat av "/" -tecknet. Den här katalogen kan innehålla namngivna underkataloger. Exempelvis kallas hemkatalogen " /" /home /. Denna underkatalog kan i sin tur innehålla andra underkataloger etc. Varje katalog kan också innehålla filer som lagrar filerna. Så home / buxy / Desktop / hello.txt hänvisar till en fil som heter hello.txt, som lagras i skrivbordsunderkatalogen, som finns i underkatalogen buxy i hemkatalogen, som finns i rot... Kärnan kompilerar mellan ett givet namngivningssystem och en lagringsplats på disken.

Till skillnad från andra system har Linux bara en sådan hierarki och kan integrera data från flera diskar. En av dessa enheter blir rot, medan de andra monterad till kataloger i hierarkin (detta kommando kallas montering i Linux). Dessa andra enheter görs sedan tillgängliga under monteringspunkter ( fästpunkter ) Detta gör att användarens hemkataloger (som vanligtvis lagras i / home /) kan lagras på en separat hårddisk som innehåller buxykatalogen (tillsammans med andra användares hemkataloger). När du har monterat enheten till /home /är dessa kataloger tillgängliga på sin normala plats och olika sökvägar som /home/buxy/Desktop/hello.txt fortsätter att fungera.

Det finns många filsystemformat, vilket motsvarar de många sätt på vilka data fysiskt lagras på diskar. De mest kända är ext2, ext3 och ext4, men andra finns. Till exempel, VFAT är filsystemet som historiskt användes av DOS och Windows operativsystem. Linux -stöd för VFAT gör att hårddiskar är tillgängliga under både Kali och Windows. I vilket fall som helst måste du förbereda filsystemet på disken innan du kan montera den, och den här operationen kallas formatering.

Kommandon som mkfs.ext3 (var mkfs står för MaKe FileSystem) hanterar formatering. Som parameter kräver dessa kommandon att en enhetsfil som representerar partitionen formateras (till exempel / dev / sdal, den första partitionen på den första disken). Denna operation förstör all data och bör bara köras en gång, såvida du inte vill radera filsystemet och starta ett nytt jobb.

Det finns också nätverksfilsystem som t.ex. NFS som inte lagrar data på den lokala disken. Istället skickas data över nätverket till en server som lagrar den och levererar den på begäran. Med abstraktionen av filsystemet behöver du inte oroa dig för hur den enheten är monterad, eftersom filerna förblir tillgängliga i sin normala hierarkiska sökväg.

3.1.3 Processhantering

En process är en körbar instans av ett program som behöver lagra minne, både själva programmet och dess driftdata. Kärnan är ansvarig för att skapa och spåra processer. När ett program startar allokerar kärnan först lite minne, laddar körbar kod från filsystemet till det minnet och kör sedan koden. Den innehåller information om denna process, varav den mest anmärkningsvärda är ett identifieringsnummer som kallas process -id (processidentifierare(PID)).

De flesta moderna operativsystem, nämligen de som är baserade på Unix -kärnor, inklusive Linux, kan utföra en mängd olika uppgifter. Med andra ord tillåter de systemet att köra många processer samtidigt.

Faktum är att det bara finns en process som körs vid varje given tidpunkt, men kärnan delar processortiden i små bitar och startar varje process i tur och ordning. Eftersom dessa tidsskivor är mycket korta (i millisekunder) ger de utseende av processer som körs parallellt, även om de bara är aktiva under sitt tidsintervall och vilande resten av tiden. Kärnans huvuduppgift är att justera schemaläggningsmekanismerna på ett sådant sätt att det bevarar detta utseende samtidigt som systemprestanda ökar. Om tiden är för lång kan den sluta svara som förväntat. Tja, om de är för korta kommer systemet att slösa för mycket tid på att byta mellan dem.

Sådana beslut kan justeras genom processprioriteringar, där processer med högre prioritet kommer att köras under längre perioder och vid mer frekventa tidskivor än processer med lägre prioritet.

Multiprocessorsystem (och andra alternativ)

De begränsningar som beskrivs ovan att endast en process kan köras i taget gäller inte i alla situationer. Det vore mer korrekt att säga det en kärna kan bara fungera med en process. Multiprocessor-, multicore- eller hypertrådsystem gör att flera processer kan köras parallellt. Samma tidsreduceringssystem används dock för att hantera situationer där det finns fler aktiva processer än de tillgängliga processorkärnorna. Detta är inte ovanligt: ​​bassystemet, till och med helt vilande, har nästan alltid dussintals processer.

Kärnan tillåter att flera oberoende instanser av samma program körs, men var och en får bara åtkomst till sina egna tidskivor och minne. Således förblir deras data oberoende.

3.1.4 Rättighetshantering

Unix -system stöder många användare och grupper och tillåter kontroll över åtkomsträttigheter. I de flesta fall definieras processen av användaren som startar den. Denna process kan bara utföra de åtgärder som är tillåtna för dess ägare. Till exempel, för att öppna en fil krävs att kärnan kontrollerar processen för de nödvändiga rättigheterna (för mer information specifikt om detta exempel, se avsnitt 3.4.4, ”Rättighetshantering”)

3.2 Linux -kommandorad

Med "kommandorad" menar vi ett textbaserat gränssnitt som låter dig ange kommandon, utföra dem och se resultaten. Du kan starta en terminal (en textskärm inuti ett grafiskt skrivbord eller en textkonsol utanför grafiskt gränssnitt) och en kommandotolk i den ( skal).

3.2.1

När ditt system fungerar korrekt är det enklaste sättet att komma åt kommandoraden att starta en terminal i en grafisk skrivbordssession.


Figur 3.1 Starta GNOME -terminalen

Till exempel på ett Kali Linux -system som standard kan GNOME -terminalen startas från en lista med favoriter. Alternativt kan du ange "terminal" i fönstret Aktiviteter (fönstret som aktiveras när du flyttar musen till det övre vänstra hörnet) och klicka på önskad programikon som visas (Figur 3.1, "").

I händelse av oegentligheter eller felaktig användning av ditt GUI kan du fortfarande starta kommandoraden på virtuella konsoler (upp till sex av dem kan nås via sex tangentkombinationer, som börjar med CTRL + ALT + F1 och slutar med CTRL + ALT + F6 - CTRL -tangenten kanske inte trycks in om du redan är i textläge utanför GUI Xorg eller Wayland).

Du får en vanlig inloggningsskärm där du anger ditt användarnamn och lösenord innan du öppnar kommandoraden med dess skal:

Programmet som behandlar data du anger och körningen av dina kommandon kallas skal(skal eller kommandoradstolk). Standardskal som tillhandahålls i Kali Linux är Våldsamt slag(det betyder Bourne Again SHell). Den efterföljande $ eller # indikerar att skalet väntar din input. Dessa symboler anger också hur Bash uppfattar dig som en vanlig användare (det första fallet med ett dollarstecken) eller som en superanvändare (det sista fallet med en hash).

3.2.2

Det här avsnittet ger bara en kort översikt över några av kommandona, som alla har många olika alternativ och funktioner som inte behandlas här, så se den omfattande dokumentationen som finns tillgänglig på respektive manualsidor. Vid penetrationstest kommer du oftare än inte att komma åt systemet via skalet, efter framgångsrik exploatering, snarare än via användarens grafiska gränssnitt. Att veta hur man använder kommandoraden klokt är viktigt om du vill bli framgångsrik som säkerhetsproffs.

När sessionen har startats kommer pwd -kommandot (som står för skriv ut arbetskatalog) visar din nuvarande plats i filsystemet. Din nuvarande plats kan ändras med cd -kommandot katalognamn(där cd betyder (ändra katalog)). Om du inte angav katalogen dit du vill gå, återgår du automatiskt till din hemkatalog. Om du anger cd -kommer du tillbaka till din tidigare arbetskatalog (den du var i innan du angav det senaste cd -kommandot). Den överordnade katalogen heter alltid .. (punkter), medan den aktuella katalogen indikeras med. (en punkt). Kommandot ls låter dig överföra kataloginnehåll. Om du inte anger ytterligare parametrar visar kommandot ls innehållet i den aktuella katalogen.

Du kan skapa en ny katalog med kommandot mkdir katalognamn, och ta också bort den befintliga (tomma) katalogen med kommandot rmdir katalognamn. Kommandot mv låter dig flytta och byta namn på filer och kataloger; radera filen kan göras med rm filnamn, och kopieringen av filen görs med cp källfil målfil.

Skalet utför varje kommando genom att köra det första programmet med det angivna namnet, som det hittar i katalogen som anges i miljövariabeln VÄG... Oftast finns dessa program i / bin, / sbin, / usr / bin eller / usr / sbin... Till exempel befinner sig ls -kommandot i / bin / ls; Ibland bearbetas ett kommando direkt av skalet, i så fall kallas det ett inbyggt skalkommando (bland dem finns cd och pwd); Med kommandot typ kan du fråga efter typ av varje kommando.

Observera användningen av kommandot echo, som helt enkelt visar strängen i terminalen. I det här fallet används den för att visa innehållet i miljövariabeln. skalet ersätter variablerna automatiskt med sina värden innan kommandoraden körs.

Miljövariabler

Miljövariabler gör att du kan lagra globala inställningar för skalet eller andra program. De är kontextuella men ärftliga. Till exempel har varje process sin egen uppsättning miljövariabler (de är kontextuella). Skal, som inloggningsskal, kan deklarera variabler som kommer att skickas vidare till andra körbara program (de ärvs).

Dessa variabler kan definieras både för systemet i / etc / profil och för användaren i ~ / .profil, men variabler som inte är specifika för kommandoradstolkar är bättre placerade i / etc / miljö, eftersom dessa variabler kommer att injiceras i alla användarsessioner tack vare Pluggable Authentication Module (PAM) - även om ingen omslag körs.

3.3 Linux filsystem

3.3.1 Filsystem Hierarki Standard

Liksom andra Linux -distributioner är Kali Linux organiserat enligt standarden FilsystemHierarkistandard(FHS), som tillåter användare av andra Linux -distributioner att enkelt navigera i Kali. FHS definierar syftet med varje katalog. Kataloger på högsta nivå beskrivs enligt följande.

  • / bin /: huvudprogram
  • / boot /: Kali Linux -kärna och andra filer som behövs för dess tidiga startprocess
  • / dev /: enhetsfiler
  • / etc /: config -filer
  • / home /: personliga filer för användare
  • / lib /: kärnbibliotek
  • / media / *: fästpunkter för flyttbara enheter (CD-ROM, USB-enheter, etc.)
  • / mnt /: tillfälliga monteringspunkter
  • / opt /: ytterligare ansökningar från tredje part
  • / root /: administratörens personliga filer (rotfiler)
  • / run /: icke-beständiga arbetsflödesfiler som inte kvarstår vid omstart (ännu inte inkluderade i FHS)
  • / sbin /: systemprogram
  • / srv /: data som används av servrar som finns på detta system
  • / tmp /: tillfälliga filer (den här katalogen töms ofta efter omstart)
  • / usr /: applikationer (denna katalog är vidare indelad i bin, sbin, lib enligt samma logik som i rotkatalogen). Dessutom innehåller / usr / share / arkitekturoberoende data. Katalogen / usr / local / är avsedd att användas av en administratör för att manuellt installera applikationer utan att skriva över filerna som hanteras av förpackningssystemet (dpkg).
  • / var /: variabel data som behandlas av demonen. Detta inkluderar loggfiler, köer, buffertar och cacheminne.
  • / proc / och / sys / är specifika för Linux -kärnan (och inte en del av FHS). De används av kärnan för att exportera data till användarutrymme.

3.3.2 Användarens hemkatalog

Innehållet i användarkatalogen är inte standardiserat, men det finns ändå några anmärkningsvärda konventioner. En är att användarens hemkatalog ofta betecknas med en tilde (“~”). Detta är mycket användbart att veta eftersom kommandotolkarna automatiskt ersätter tilden med rätt katalog (som finns i miljövariabeln HEM och vars vanliga betydelse är / home / user /).

Traditionellt lagras applikationskonfigurationsfiler ofta direkt i din hemkatalog, men deras filnamn börjar vanligtvis med en punkt (t.ex. e -postklient mutt lagrar konfiguration i ~ / .muttrc). Observera att filnamn som börjar med en punkt döljs som standard; Kommandot ls kommer bara att lista dem om –a -alternativet har angetts och grafiska filhanterare måste uttryckligen konfigureras för att visa dolda filer.

Vissa program använder också flera konfigurationsfiler organiserade i samma katalog (t.ex. ~ / .ssh /). Vissa applikationer (som Firefox -webbläsaren) använder också sin katalog för att lagra en cache med nedladdad data. Det betyder att dessa kataloger kan sluta konsumera mycket diskutrymme.

Dessa konfigurationsfiler, som lagras direkt i din hemkatalog, kallas ofta kollektivt punktfiler, expanderar under en så lång tid att dessa kataloger kan vara röriga med dem. Lyckligtvis har samarbetet i regi av FreeDesktop.org resulterat i XDG Base Directory Specification av en konvention som syftar till att städa upp dessa filer och kataloger. Denna specifikation säger att konfigurationsfiler ska lagras i ~ /.config, cachefiler i /. Cache och applikationsdatafiler i /. Local (eller deras underkataloger). Denna konvention tar gradvis fart.

Det grafiska skrivbordet använder oftast genvägar för att visa innehållet i / Desktop / katalogen (eller något annat ord som är en exakt översättning av detta, på system som inte använder engelska). Slutligen lagrar e -postsystemet ibland inkommande e -postmeddelanden i / Mail / katalogen.

Det är intressant:

Transkript

1 Introduktion UNIX Basics -kursen är avsedd för elementära studenter som är intresserade av att utbilda mjukvaruutvecklare på en eller annan nivå. En förutsättning för UNIX OS är en introduktionskurs om programmering på C -språket, som en grundläggande, samt en kurs om grunderna i datorarkitektur. Kursstrukturen erbjuder 13 föreläsningar och relaterade labb för att hjälpa dig att förstå de allmänna principerna för operativsystem som UNIX. Föreläsningsmaterialet presenteras i en tesform, vilket ger en stor grad av frihet för djupet av presentation av ämnen i föreläsningsmaterialet. Dessutom kan varaktigheten för vissa föreläsningar variera från 2 till 6 timmar, om det behövs. Lab -klasser innebär inte användning av ett specialiserat laboratorium eller en specifik UNIX / Linux -klon och kan utföras på elevernas persondatorer med hjälp av alla tillgängliga UNIX-, Solaris-, Linux-, FreeBSD-, Mac OS X -programvaror etc., förutsatt att lämplig programvara paket installeras från arkiv för utvecklare. I praktiken använde vi vanligtvis fjärråtkomst till Linux -servern via SSH -protokollet, för Windows -arbetsstationer och PuTTY 1 - som en SSH -klient. Observera slutligen att alla uppgifter utförs i skalet (bash) och de olika befintliga X Window (X11) -gränssnitten (CDE, GNOME, KDE, Xfwm, Xfce eller wmii, etc.) diskuteras inte här, vilket möjliggör användning av minimal kärna konfigurationer och koncentrera dig på att lära dig OS -kärnan från början av kursen. Varför, trots allt, är Linux valt att representera grunderna i operativsystem, och till exempel inte Microsoft Windows? Det finns flera anledningar: Linux med öppen källkod, UNIX -ideologin inbäddad i den, de grundläggande OS -idéerna som implementeras i UNIX / Linux används också i Microsoft Windows: multitasking, hierarkiskt filsystem, fleranvändarsystem, virtuellt minne, inbäddad nätverksstack, multithreading, och, viktigast av allt, Linux -kärnan väljs alltmer för att bygga datorsystem på olika nivåer från distribuerade och molnservrar i ett företagssystem till mobila och system inbäddade i kontrollchips. 1 Vlasov S.V FKN Voronezh State University, Voronezh 1

2 Föreläsning 1. Grundläggande begrepp. OS -operativsystemet är en mjukvaruprodukt som är utformad för att hantera datorresurser: hårdvara, data, program och processer. Den väsentliga komponenten i operativsystemet är kärnan, alla andra komponenter är applikationer som läggs till operativsystemet om det behövs. Till exempel, när de säger: "Linux -versioner ..." menar de kärnan, men med GNU / Linux menar de en klon med en viss kärna och en uppsättning applikationer (Debian, Red Hat, Susse, etc.) OS -kärna krävs en operativsystemskomponent som tillhandahåller datastrukturer, program och processer och hårdvaruberoende kod som behövs för att hantera datorns resurser. Det finns olika principer för att bygga en kärna: en monolitisk kärna (Linux) eller en mikrokernel (t.ex. Minix). Kärnan kan anpassas genom att lägga till eller ta bort vissa komponenter (moduler, drivrutiner). En fil är en specifik bytesekvens. På UNIX representeras nästan allt som en fil. Samtidigt urskiljs endast 7 filtyper (motsvarande symbol anges inom parentes: i utmatningen av ls -l -kommandot) vanliga filer ( -) specialfiler: kataloger, (d) symbolisk länk, (l) namngiven rör, (p) teckenanordning, (c) blockanordning, (b) UNIX -uttag. (s) Applikationen för vilken filen var avsedd eller skapad är ansvarig för att känna igen och bearbeta den interna strukturen i en fil. Ett hierarkiskt filsystem är en abstraktion för att representera ordning av filer i form av ett katalogträd. Trädets rot är en katalog som heter " /", som kallas root (root) filsystem (ska inte förväxlas med / root). Det särartiga med det hierarkiska Linux -filsystemet är att det är virtuellt, i den meningen att alla noder i en enda hierarki kan associeras med sitt eget filsystem av en viss typ (ext2fs, ext3fs, riserfs, vfat, etc.) som ligger på en separat enhet, partition eller direkt i minnet. Katalogen i hierarkin som för närvarande används som standard kallas den aktuella arbetskatalogen. Du kan använda absoluta filnamn från roten /eller relativa namn från den aktuella arbetskatalogen (symbol "." - prick) när den överordnade katalogen är markerad med symbolerna ".." (två punkter horisontellt utan mellanslag). Ett program är en fil som innehåller körbara instruktioner. En fil som innehåller utskriven text från ett program på ett programmeringsspråk kallas en programkällmodul. En källa skriven på ett skriptspråk (skal, perl, python, rubin, etc.) ) utförs direkt av språktolk. Källor på andra språk (C, Fortran, etc.) måste sammanställas för att konvertera källkoden till en körbar programmodul som innehåller processorinstruktioner i binärt format (utvecklas från a.out och COFF till ELF). En process är ett program vid körning. Processer är också organiserade i en hierarki med föräldrar-barnrelationer. Alla UNIX -processer har en unik heltalsidentifierare (PID). Rotprocessen i hierarkin är processnummer 1, vilket är init -processen som uppstår när operativsystemets kärna startar upp och ger andra efterkommande processer. När operativsystemet körs kan alla andra processer än init stoppas. Det finns också en dold process 0 - swap, som är ansvarig för sökning av virtuellt minne. Inloggningsprocessen är överordnad process för alla processer som genereras av användaren Vlasov S. I FKN Voronezh State University, Voronezh 2

3 system som fungerar i flerspelarläge. Uppgiften för denna process är att kontrollera användarens säkerhetsattribut (inloggning och lösenord) och starta processen som ger gränssnittet för interaktion mellan operativsystemet och användaren, vanligtvis ett skal. En skaltolk är ett program som ingår i ett specifikt operativsystem för att ge användarinteraktion med operativsystemet. UNIX / Linux -system använder en mängd olika tolkar: bash, csh, tcsh, ksh, zsh och många andra. Standardtolkaren på GNU / Linux -system är vanligtvis bash. Tolken tillhandahåller en kommandorad för att starta körningen av standardkommandon och användarprogram. Vlasov S.V FKN Voronezh State University, Voronezh 3

4 Praktiska exempel. Logga in via SSH-klient (PuTTY) I MS Windows väljer du Start-> Kör och anger: X: /Putty/Putty.exe I fönstret Putty Configuration som öppnas anger du i fältet Host Name (eller IP-adress): www2 Klicka på Öppet kommer att resultera i anslutning till www2 -servern och utseendet på ett inloggningsfönster, där PuTTY Security Alert -meddelandet visas vid det första försöket att ansluta till Linux -servern om frånvaron av en ny RSA -nyckel i registercachen, godkänner inkludera nyckeln i cachen för en betrodd anslutning till servern nu och i framtiden. Klicka på Ja. I DOS -fönstret visas en inbjudan Vlasov S. I FKN Voronezh State University, Voronezh 4

5 Logga in som: namnlösenord: där du anger ditt inloggningsnamn (istället för namn) och lösenord. Var försiktig när du anger lösenordet, eftersom knapparna du trycker på inte visas på något sätt, även om det inte finns några asterisker. Om allt görs korrekt kommer du att se kommandoradprompten för shell 2 -tolkaren i samma fönster: ~ $ _ Nu kan du interagera med Linux OS via kommandoradsgränssnittet. 3 I det följande kommer vi bara att använda $ -symbolen för att beteckna kommandoraden, även om du kan ha sökvägen till den aktuella arbetskatalogen framför den. Var är vi? (hemkatalog) Vid inloggning tilldelas varje användare en säker hemkatalog för att lagra personliga filer. Vid inloggning monterar inloggningsprocessen automatiskt din hemkatalog som den aktuella arbetskatalogen. De kommande tre kommandona ska visa samma resultat med hela sökvägen till din hemkatalog. $ pwd $ echo ~ $ echo $ HOME Vad har vi? (automatiskt genererade filer) Innehållet i den aktuella arbetskatalogen kan visas med kommandot: $ ls Första gången du loggar in är listan vanligtvis tom. 4 När en användare är registrerad i sin hemkatalog skapas dock några dolda servicefiler som kan ändras av användaren för att anpassa den önskade miljön. Med -a -omkopplaren för ls -kommandot kan du se i listan över innehållet i den aktuella katalogen alla dolda filer som heter prefixet "." (period) $ ls -a Förresten, denna lista innehåller också de anonyma namnen på den aktuella katalogen "." och den överordnade katalogen "..". Genom att ge din egen fil ett namn före "." (prick) du gör det dolt. Vilket system används? Funktioner och systemkonfigurationsalternativ beror på vilken OS -version du använder. För att få information om detta, använd kommandot $ uname -a Kort information om parametrarna och kommandotangenterna kan erhållas med hjälpknappen, till exempel 2 Om du har problem med att ansluta till servern eller ange ett namn och lösenord har du bara en väg ut, kontakta serversystemadministratören ... 3 $ -tecknet framför markören är en kommandoradsfunktion och är standard för en normal användare i bash -skalet. (Symbolen # används för rotanvändaren) 4 Kanske har du en public_html -katalog som kan användas för att utbyta filer mellan Linux- och MS Windows -system tack vare motsvarande tjänst. Vlasov S.V FKN Voronezh State University, Voronezh 5

6 $ uname --help En detaljerad beskrivning av UNIX -kommandon och funktioner kan erhållas från dokumentationen "manuella sidor": $ man pwd $ man ls $ man echo $ man uname Manuella sidor finns i det speciella nroff -formatet / troff / groff och formaterad på utmatning med lämpligt verktyg beroende på typ av utmatningsenhet. Avsluta vyn man -sida genom att trycka på Q $ man man Manuella filer lagras vanligtvis packade (suffix.gz eller .bz2) och organiseras i sektioner: 1. Allmänna kommandon 2. Systemanrop 3. C -biblioteksfunktioner 4. Specialfiler 5. Fil format och konverteringar 6. Spel och skärmsläckare 7. Ytterligare 8. Kommandon och demoner för systemadministration Sektionsnumret används vid hänvisning till det använda kommandot eller funktionen, till exempel printf / 3 och indikeras med den första kommandoparametern $ man 1 printf $ man 3 printf Katalogen där kommandot man -sidan finns kan fastställas med kommandot -w switch $ man -w Hierarkiskt filsystem Kommandot ls kan användas för att lista innehållet i valfri katalog i filsystemhierarkin (oavsett av den fysiska enheten och filsystemtypen på partitionen eller i minnet). Till exempel visas rotfilsystemet med kommandot $ ls / Det kommer dock att ta en del uppfinningsrikedom att visa hela trädets struktur, till exempel $ ls -R grep ": $" sed -e "s /: $ / / "-e" s / [^ -] [^ \ /] * \ // - / g "-e" s /^ / / "-e" s / - / / "där grep regex filter, sed stream editor och namnlösa rör, betecknade med symbolen (rör). I din hemkatalog kan du skapa en ny (tom) katalognod i hierarkin, till exempel lab1 Vlasov S. I FKN Voronezh State University, Voronezh 6

7 $ mkdir lab1 Alla noder i hierarkin kan väljas som den aktuella $ cd lab1 $ pwd För att återgå till din hemkatalog (definierad av HOME -miljövariabeln) använd cd -kommandot utan parametrar $ cd $ pwd Du kan radera en tom katalog med kommandot rmdir, till exempel $ rmdir lab1 Om katalogen inte är tom, kommer det sista kommandot (om lab1 innehåller några filer) att skriva ut meddelandena rmdir: lab1: Katalogen är inte tom och raderingen misslyckas. I den aktuella katalogen kan du till exempel skapa en textfil (vanlig). För att göra detta kan du använda den omdirigerade utdata från ekokommandot $ echo "echo Print directory tree"> tree Skapar en trädfil som kan skrivas ut med kommandot $ cat tree eller i ett sidformat $ pr tree Du kan till och med lägga till en ny rad till slutet av en befintlig fil, till exempel $ echo med grep och sed >> tree $ cat tree Du kan använda en radbaserad textredigerare och en standardredigerare som är utformad för att redigera text från en skrivmaskinliknande konsol. $ ed tree a ls -R grep ": $" sed -e "s /: $ //" -e "s /[^ -] [^ \ /] * \ // - /g" -e "s / ^ / / "-e" s / - / / ". wq $ cat tree Faktum är att vi har skapat en fil med kommandon här, som kan köras som ett nytt kommando, om du förklarar det "körbart": $ chmod + x tree $. / tree S. Vlasov, FKN Voronezh State University , Voronezh 7

8 Observera att ett försök att köra en fil utan att ange den aktuella katalogen, dvs. bara träd snarare än. / träd som visas ovan kommer inte att göra att filen hittas i den aktuella katalogen. Av säkerhetsskäl är den anonyma aktuella katalogen inte inkluderad i PATH -miljövariabeln, som används för att hitta ett program som ska köras med namn. $ echo $ PATH Användaren kan få en komplett lista över miljövariabler och deras värden med kommandot: $ env För att skapa textfiler kan du också använda cat -kommandot för att omdirigera utdata till en fil $ cat> fil texten Ctrl-D Här trycker du på Ctrl-D för att överföra till ingångsflödet slutet av filtecken (EOF) SLUT AV TRANSMISSION. Du kan också lägga till text i slutet av filen $ cat >> fil lägg till text Ctrl-D Kraftfulla textredigerare på skärmen som vi / vim, nano eller emacs används för att skapa stora textfiler som C-källor. Att radera en fil görs med kommandot $ rm file Bland annat kan -r eller -R -omkopplaren ta bort ett katalogunderträde rekursivt. För att radera filer på ett säkert sätt rekommenderas att använda -i -omkopplaren, som genererar en begäran om att bekräfta borttagningen. Flytta och byta namn på filen utförs med kommandot Datum och tid $ mv gammalt nytt Aktuellt systemtid och datum kan bestämmas med kommandot $ date. För att ändra tid och / eller datum används en parameter i formatet MMDDhhmmYY . Till exempel, för 24 januari 20:36 PM 2011 -jobbet, ange $ date Observera också att det tidskommando som finns på UNIX -system visar tiden som används av följande process (realtid, användarlägetid och kärnlägetid) snarare än den aktuella systemtiden. Prova S. Vlasov vid FKN Voronezh State University, Voronezh 8

9 $ tidsdatum bör du få något liknande följande utmatning riktiga användare sys 0m0.040s 0m0.000s 0m0.040s Vem är det på systemet? UNIX OS är ett fleranvändarsystem som tillåter flera användare att samtidigt utföra inloggningsprocessen och arbeta i systemet oberoende av varandra. För att avgöra vem som för närvarande finns i systemet, kommandot $ who används, som visar användarens inloggningsnamn, terminalen och tiden då inloggningsprocessen startades. På ett fleranvändarsystem kan samma användare använda flera olika terminaler samtidigt (till exempel flera samtidiga SSH -sessioner). För att avgöra vem som använder den aktuella terminalen kan du använda kommandot $ whoami. Registrerade användare Så för att kunna använda systemet måste du vara en registrerad användare. Registrering utförs av en systemadministratör med superanvändarrättigheter, som har ett gemensamt namn på UNIX / Linux -system - root. 5 Vanligtvis lagras alla användarregistreringsposter i en enda fil / etc / passwd, som kan läsas av alla $ cat / etc / passwd I tidigare versioner av systemet lagrades också användarens krypterade lösenord (hash) i samma fil (det andra fältet efter separerat med kolon). Men i nyare system är det vanligt att lagra lösenordshashar i en annan / etc / skuggfil som inte kan läsas av någon, komaot. I lösenordsfältet i filen / etc / passwd lagras endast en dold länk till posten i / etc / shadow, så bara "*" visas. För att ändra det aktuella lösenordet på UNIX -system, använd kommandot $ passwd Ändra lösenord för namn. (nuvarande) UNIX -lösenord: nuvarande lösenord för användaren nytt UNIX zfyytschkv: nytt lösenord skriv om nytt UNIX -lösenord: nytt lösenord (igen exakt som i föregående rad) passwd: lösenord uppdaterat framgångsrikt Om ett fel eller lösenord är för enkelt visas meddelanden, till exempel eller passwd: Autentiseringstoken manipulationsfel DÅLIGT LÖSENORD: det är för enkelt förenklat / systematiskt 5 Normalt används inte root för att logga in, istället skapar administratören en vanlig inloggning för sig själv, men använder su -kommandot för att utföra operationer som kräver privilegier för superanvändare. I Linux -system är en grupp privilegierade användare sudoers populära, som får rätt att utföra operationer med root -privilegier genom sudokommandot Vlasov S. I FKN VSU, Voronezh 9

10 I det här fallet måste du ange ett annat lösenord. Observera att passwd-processen körs i speciellt superanvändarläge och ignorerar SIGINT-signalen som skickas genom att trycka på Ctrl-C-knapparna och kan därför inte avbrytas. Enkelt sätt att kommunicera Användare som samtidigt arbetar i systemet kan skicka varandra korta meddelanden med kommandot $ write name Användaren med det angivna namnet / terminalen får omedelbart ett meddelande Meddelande från ditt_namn på tty0 klockan 10:30 .. och om du fortsätter när du skriver på din terminal (här på tty0) visas meddelandet omedelbart rad för rad på användarens terminal med namnet som anges i kommandot. För att slutföra meddelandet måste du ange Ctrl-D. Men om din motståndare inte vill ta emot några meddelanden använder han kommandot $ mesg n för att inaktivera möjligheten att skicka / ta emot skrivmeddelanden. För att aktivera denna funktion måste användaren utföra kommandot $ mesg y Om du vill skicka ett meddelande till alla användare i systemet samtidigt (som har aktiverat meddelandemottagning) kan du använda kommandot $ wall upp till 20 rader Ctrl -D Logga ut $ logga ut Du kan också använda Ctrl-D eller $ exit Logoutkommandot kanske inte avslutar sessionen, men visar ett av två meddelanden eller Det finns stoppade jobb som inte loggar in: använd "exit" Z) uppgifter. Du har möjlighet att fortsätta köra jobb (med jobb och fg -kommandon) tills de slutför normalt. Men om du inte gör detta avslutas de avbrutna jobben (med en SIGTERM-signal) när du kör utloggningen eller Ctrl-D-kommandot igen. Det andra meddelandet innebär att du har skapat underordnade processer från skalet som startades av inloggningsprocessen, som kör den aktuella skal -sessionen, som inte är associerad med inloggningsprocessen. Vlasov S.V FKN Voronezh State University, Voronezh 10

11 Du måste utföra kommandot exit eller Ctrl-D i det aktuella skalet för att återgå till skalprocessen som skapades genom inloggning. Slutsatser OS är ett komplext mjukvarusystem bestående av delsystem för hantering av olika resurser Syftet med kursen är att studera huvuddragen i funktionen hos delsystem i UNIX / Linux OS -kärnan via systemsamtalets gränssnitt. Vlasov S.V FKN Voronezh State University, Voronezh 11


UTBILDNINGSMINISTERIET OCH SCIENCE OF RF FEDERAL STATE BUDGETARY EDUCATIONAL INSTITUTION OF HIGHER PROFESSIONAL EDUCATION "Kama State Engineering and Economic Academy" ADMINISTRATION

6.31. Cykler. Parameterskift. för variabel i värden gör uttalanden gjorda för var1 i värde1 värde2 värde3 gör eko $ var1 gjort för File1 i $ (ls * .sh); gör eko $ File1 >> All.txt gjort under skick

Informationsteknik Föreläsning 3 1 Bash -skalet 2 Grundläggande information Skalet eller skalet fungerar i textläge (kommandoradsgränssnitt) Grafiskt användargränssnitt (GUI) fungerar i grafisk

SHELL Definition: Shell är en tolk för operativsystemkommandon. Skal är indelade i två typer, beroende på hur arbetet organiseras med användaren: - kommandoradstolk; - grafisk

2 Navigering Det första vi kommer att försöka lära oss (efter provtryckningar) är navigering i Linux -filsystemet. I det här kapitlet introducerar vi följande kommandon: pwd visar namnet på den aktuella arbetaren

SibSUTI Institutionen för VS High Level Language Programming (PYAVU), termin 1 2009 2010 läsåret Polyakov A.Yu. Laboratoriearbete 1. Linux -programmeringsmiljö. Syfte med arbetet: Att bekanta sig med programvaran

Föreläsning 2. Delsystem för processkontroll. Processhantering i ett multitaskingssystem består i att allokera kärnresurser för varje process som körs, implementera kontextbyte av processer

MOSKVA STATENS TEKNISKA UNIVERSITET dem. N.E. BAUMAN -fakulteten "Informatik och styrsystem" Avdelningen "Automatiserad informationsbehandling och kontrollsystem" PS Syomkin, Syomkin

Arbeta med GNU / Linux OS i terminalklasser i VS -avdelningen Syfte med arbetet: att bekanta sig med GNU / Linux OS -programvaran och skriva ett enkelt program i C. Operativsystem (OS) GNU / Linux

BOINC -system. Lektionen genomförs av: Nikolai Pavlovich Khrapov Institute for Information Transmission Problems by the Russian Academy of Sciences Praktisk lektion Grunderna i att arbeta med Linux OS Installera en BOINC -server Praktisk lektion Grunder i arbetet

OS -komponenter Huvud -OS -komponenter 1. Processhantering 2. Huvudminnehantering 3. Filhantering 4. I / O -hantering 5. Extern minneshantering 6. Nätverk

Introduktion till Linux -kommandoraden Hur man slutar oroa sig och älskar skalet Aleksey Sergushichev Praktisk skola om bioinformatik MNL "Datorteknik" 19/02/2014 Kommandorad Kommandorad

Linux-operativsystem Föreläsning 6 Kommandoskal (shell, bash) är ett kommandoradsgränssnitt i Unix-liknande OS, det vill säga det kör kommandon som användaren ger eller som läses

Laboratoriearbete 4 INLEDNING TILL PROCESSER Syfte med arbetet Att bekanta sig med begreppet process. Lär dig att få en lista över processer som är tillgängliga i systemet och hantera deras tillstånd. 1. Teoretisk information

Filnamnsmallar, filsökning och andra UNIX -funktioner Logga in på Linux Kör putty.exe Ange ip -adressen Klicka på Öppna Studentx Användarnamn Studentx Lösenord 2 Skapa katalog

Innehållsförteckning Förord ​​6 Föreläsning 1. Session i Linux 8 1.1 Systemanvändare ........................ 8 1.2 Registrering i systemet ..... .. ................. 13 1.3 Samtidig åtkomst till systemet ..................

Tillgänglig för lekman, beskriver grunderna i UNIX stora värld. Användaren lär sig gradvis hur man loggar in, använder olika kommandon, ber om hjälp, hittar

Arbeta med mallar för standarddokument Användarhandbok Cognitive Technologies Moscow, 2015 2 SAMMANFATTNING Detta dokument ger information om användningen i E1 Euphrates -programpaketet

Datavetenskap Informationsteknik Föreläsning 1. Introduktion till Linux OS Huvudegenskaper för Linux Real multitasking Fleranvändaråtkomst Byte av RAM till hårddisk

Andra språk: engelska ryska iridium Server för Raspberry Pi Installera och konfigurera en server i i3 lite -projekt iridium Sever för Raspberry Pi är en mjukvaruimplementering av iridium Server som lanseras

FEDERALBYRÅN FÖR UTBILDNING Tomsk Polytechnic University GODKÄND: Dekan för AVTF SA Gaivoronskiy 2009 ENKLASTE VERKTYG SHELL Metodiska instruktioner för laboratoriearbete

Lektion 3. Ämne: Konton i Linux. Typ av sysselsättning: föreläsning, praktisk lektion. Utbildningsfrågor: 1. Begreppet konto och autentisering. Filerna / etc / passwd och / etc / group, / etc / shadow och / etc / gshadow.

Annotering av programmet för disciplinen "Operativsystem" 1. Mål att behärska disciplinen Målen för att behärska disciplinen "Operativsystem" är: bildandet av elevernas grundläggande kunskaper, färdigheter och förmågor

Laboratoriearbete 2. Navigering genom filstrukturen och dess underhåll med hjälp av terminalen OS Xubuntu Praktisk del II. Navigera i filstrukturen och underhålla den med OS -terminalen

Sida 1 av 7 Nyheter Teknisk utrustning Linux-kluster Resursanvändningsstatistik Registrering på Linux-kluster Registrering på SPP-2000 AFS-filsystem Nätverkssäkerhetsproblem Bibliotek

Grundläggande begrepp och definitioner Operativsystem (nedan kallat OS) är ett mjukvarukomplex som styr datorns funktion och säkerställer interaktionen mellan enheter som ingår i den

Kapitel 1 Välja operativsystem Det faktum att du läser den här boken tyder på att du vill lära dig Linux. Innan du påbörjar denna resa måste du förstå vad ett operativsystem är.

Praktiskt arbete 10 Arbeta med filer i LINUX Syftet med arbetet: studera funktionerna i att arbeta med filer i Linux -operativsystemet. Arbetsplan: 1. Bekanta dig med den korta teoretiska informationen.

GODKÄND OUTGODKÄND INFORMATIONSSKYDDSYSTEM Dallas Lock Linux Operator (User) Manual Sheets 11 2016 2

Informationsteknik Föreläsning 2 Linux -kommandon 2 Linux -kommandon Linux -konsolkommandon - interaktion mellan användaren och operativsystemet Körs via kommandoraden med manuell inmatning Bakom varje kommando

Blokhost-MDZ-programvara och hårdvarukomplex för pålitlig laddning. Installationsmanual för Blockhost-MDZ-komplex. Installationsguide. P. 2 Kommentar Dokumentet innehåller en beskrivning av installationen

Multifunktionell hård- och mjukvarukomplex för tillhandahållande av kommunikationstjänster "IS RINO" Grundläggande programvaruhanteringsserver INNEHÅLL 1 INLEDNING ... 3 2 PROGRAMVARAKOMPOSITION ... 3 3 SERVERINSTALLATION ...

Rutoken -inloggning. Administratörshandbok 2018 Aktivföretaget I detta dokument Detta dokument innehåller svar på följande frågor: Vad används Rutoken Logon -mjukvaruprodukten till? (se sid.

Lektionens innehåll Terminologi Fjärråtkomstverktyg Logga in 1 Användaranvändare, konto. Objekt för registrering av systemåtgärder. Logga in 1. Användarnamn / konto

Mål Del 1. Kör FTP från kommandoraden Del 2. Ladda upp en FTP -fil med WS_FTP LE -klient Del 3. Kör FTP i en webbläsare Initial data / script FTP (File Transfer Protocol) ingår

De allmänna principerna för organisation, sammansättning, struktur för operativsystem och deras skal, samt ett antal specifika system beaktas. Betydande uppmärksamhet ägnas åt problemen med informationshantering, processer

Och inrätta ett nätverksoperativsystem FreeBSD FreeBSD FreeBSD är ett modernt operativsystem för servrar, stationära datorer och inbäddade datorplattformar. FreeBSD tillhandahåller moderna nätverk

LLC "Företag" ALS och TEK "Programvara från ALS-24000-switchfamiljen, ver. 6.01 Installationsguide Sheets 13 2017 2 1. ALLMÄN INFORMATION 3 1.1 Syfte och omfattning 3 2. DATORKRAV

IV. METODOLOGISKA INSTRUKTIONER FÖR ORGANISATION AV OBEROENDE ARBETE AV STUDENTER VID STUDIERING AV DISCIPLINEN "DRIFTSYSTEM" n / a Namn på disciplinavsnittet 1. Utveckling av operativsystem. Utnämning

Operativsystem Operativsystemet är det viktigaste programmet Operativsystemet är en uppsättning program som säkerställer samspelet mellan alla maskinvaru- och programvarudelar i datorn med varandra och

4 Lab 1. Installera och konfigurera operativsystemet på en virtuell dator 1.1. Syfte med arbetet Syftet med detta arbete är att förvärva praktiska färdigheter för att installera operativsystemet

Federal State Budgetary Educational Institution of Higher Professional Education "National Research Tomsk Polytechnic University" GODKÄND: Utbildningschef

Laboratoriearbete 1. Navigering genom filstrukturen och dess underhåll med hjälp av kommandoradstolk i Windows OS Teoretisk del. En katalog är en speciell typ av fil som innehåller namnen på underkataloger

Operativsystemsprogramvara Operativsystemet är det viktigaste programmet Operativsystemet är en uppsättning program som säkerställer samspel mellan alla hårdvaru- och programvarudelar

Licens- och skyddssystem för plattformskonfigurationer 1C: Enterprise 8, version 3.0 Administratörshandbok Operativsystem som stöds ... 1 Systemkomposition ... 1 SLK -server ... 1 Extern komponent ...

Inledning Arbeta med operativsystemet GNU / Linux För närvarande är det huvudsakliga gränssnittet för interaktion mellan användaren och skrivbordet operativsystemet det grafiska användargränssnittet (grafiskt

PRAKTISKT ARBETE 2 Kommandorads OS Windows Syfte med arbetet: att studera kommandoradsgränssnittet för Windows OS, förvärva färdigheter i att lösa typiska uppgifter för administration av operativsystemet Windows med

Laboratoriearbete 2 Hantera filer i operativsystemet Mål och mål för laboratoriearbetet förvärva färdigheter i att arbeta med ett operativsystem som Linux; lära sig grunderna i operationsrumshantering

VIRTUAL WORKPLACE CONNECTION MANAGER TERMIDESK ADMINISTRATOR'S MANUAL (förberedelse av den grundläggande arbetsstationen) 23811505.6200.001. Och 5.01-2 Sheets 17 MOSCOW 2018 1 INNEHÅLL 1 INLEDNING ... 4 1.1

FGOBU HPE "SibSUTI" Institutionen för datorsystem Disciplin "PROGRAMMERINGSPRÅK" "PROGRAMMERING" Praktisk lektion 55 OS GNU / Linux Föreläsare: Docent vid Institutionen för väpnade styrkor, Ph.D. Polyakov Artem Yurievich

Bilaga ARBETSPROGRAM FÖR DISCIPLINEN DRIFTSSYSTEM OCH MILJÖER Arbetsprogrammet för den akademiska disciplinen Operativsystem och miljöer är utvecklade på grundval av Federal State Educational

2.1. Filer. Krav för lagring av information: möjligheten att lagra stora mängder datainformation måste bevaras efter avslutad process, flera processer måste ha en samtidig

Programmeringsspråk och översättningsmetoder Presentation för laboratoriearbete 2 Windows operativsystem Innehåll 2 Innehåll 3 Operativsystemkoncept Operativsystem (OS) grundläggande programvara

Installera en IBM DB2 v11.1-server på Linux För att installera IBM DB2 med installationsguiden måste du ha ett grafiskt gränssnitt installerat och kört, inklusive de grundläggande X-Window-paketen,

1.1 OS-historia De första (1945-1955) datorerna fungerade utan operativsystem, som regel kördes ett program på dem. När hastigheten på genomförandet av program och deras antal började öka, avbrott

Hantera Rutoken -drivrutiner med grupppolicyer 2017 Aktivföretaget Detta dokument Detta dokument beskriver hur man använder grupppolicyer för att automatiskt distribuera en uppsättning

Ämne: Syfte: Praktiskt arbete 23. Grunderna för arbete i Ubuntu. Bekanta dig med gränssnittet för Ubuntu OS, lär dig att arbeta med filer och kataloger, köra program, visa text och grafik

Hemligt informationssäkerhetsverktyg för hemliga instruktioner för lokal uppdatering av lokala klienter Detta dokument innehåller en detaljerad beskrivning av sekvensen av åtgärder för lokal klientuppdatering

Om författarna 15 Inledning 17 Bokstruktur 18 från utgivaren 20 Kapitel 1. En kort översikt över grunderna 21 Några grundläggande kommandon 21 Visar datum och tid: Datumkommandot 21 Identifiera registrerade användare

HV Manager Användarmanual 2017 AprelTech, llc. Alla rättigheter förbehållna 1 INNEHÅLL Inledning ... 3 Installation och konfiguration ... 4 Systemkrav ... 4 Installation ... 5 Konfiguration ... 6 Konfiguration

1 Lab 3 "REDIRECTION OF DATA STREAMS" Strömmar och filer Logiskt är alla filer i ett Linux -system organiserade i en kontinuerlig ström av byte. Varje fil kan kopieras fritt och läggas till i en annan

Grunderna i Linux

Linux är inspirerat av Unix -operativsystemet, som visades 1969 och fortfarande används och utvecklas idag. Mycket av det interna i UNIX finns också i Linux, vilket är nyckeln till att förstå systemets grunder.

Unix fokuserade främst på kommandoradsgränssnittet, och det är vad Linux ärvde. Således är det grafiska användargränssnittet med dess fönster, bilder och menyer byggt ovanpå huvudgränssnittet - kommandoraden. Det betyder också att Linux -filsystemet är byggt för att vara lätt hanterbart och tillgängligt från kommandoraden.

Kataloger och filsystem

Filsystem i Linux och Unix är organiserade i en hierarkisk, trädliknande struktur. Filsystemets översta nivå - / eller rotkatalog ... Det betyder att alla andra filer och kataloger (inklusive även andra enheter och partitioner) finns i rotkatalogen. I UNIX och Linux anses allt vara en fil - inklusive hårddiskar, deras partitioner och flyttbara media.

Till exempel visar /home/jebediah/cheeses.odt hela sökvägen till cheeses.odt -filen. Filen finns i jebediah -katalogen, som finns i hemkatalogen, som i sin tur finns i rotkatalogen (/).

Inom rotkatalogen (/) finns ett antal viktiga systemkataloger som finns i de flesta Linux -distributioner. Följande är en lista över de delade katalogerna som ligger direkt under rotkatalogen (/):

Åtkomsträttigheter

Alla filer i Linux har behörigheter som tillåter eller nekar att läsa, ändra eller köra dem. Superanvändarens "root" har åtkomst till alla filer på systemet.

Varje fil har följande tre åtkomstuppsättningar, i viktordning:

    ägare

    avser användaren som äger filen

    Grupp

    refererar till gruppen som är associerad med filen

    andra

    gäller alla andra användare av systemet

Var och en av de tre uppsättningarna definierar åtkomsträttigheter. Rättigheterna, liksom hur de tillämpas på olika filer och kataloger, visas nedan:

    läsning

    filer kan visas och öppnas för läsning

    innehållet i katalogerna är tillgängligt för visning

    inspelning

    filer kan ändras eller tas bort

    Kalogernas innehåll är tillgängligt för redigering

    prestanda

    körbara filer kan köras som program

    kataloger kan öppnas

Om du vill visa och redigera behörigheterna för filer och kataloger öppnar du Program → Tillbehör → Hemmapp och högerklicka på en fil eller katalog. Välj sedan Egenskaper. Behörigheterna finns under Behörigheter fliken och tillåt redigering av alla behörighetsnivåer om du är ägare till filen.

För att lära dig mer om filbehörigheter i Linux, läs filtillståndssidan i Ubuntu Wiki.

Terminaler

Att arbeta på kommandoraden är inte så skrämmande en uppgift som du skulle tro. Det behövs ingen särskild kunskap för att veta hur man använder kommandoraden. Det är ett program som allt annat. Det mesta i Linux kan göras med kommandoraden, även om det finns grafiska verktyg för de flesta program. Ibland räcker de bara inte. Det är här kommandoraden är till nytta.

De Terminal finns i Program → Terminal. Terminalen kallas ofta kommandotolken eller skalet. Förr i tiden var detta sättet som användaren interagerade med datorn. Linux -användare har dock funnit att användningen av skalet kan vara snabbare än en grafisk metod och fortfarande har en viss förtjänst idag. Här lär du dig hur du använder terminalen.

Terminalen användes ursprungligen för filhantering, och den används faktiskt fortfarande som en filbläddrare om den grafiska miljön inte fungerar. Du kan använda terminalen som en webbläsare för att hantera filer och ångra ändringar som har gjorts.

Grundläggande kommandon

Visa kataloginnehåll: ls

Team ls visar en lista med filer i olika färger med fulltextformatering

Skapa kataloger: mkdir (katalognamn)

Team mkdir skapar en ny katalog.

Gå till katalogen: cd ( / address / directory)

Team CD låter dig gå till valfri katalog du anger.

Kopiera en fil eller katalog: cp (vad heter filen eller katalogen) (var är katalogens eller filens namn)

Team cp kopierar valda filer. Team cp -r kopierar valda kataloger med allt innehåll.

Radera filer eller kataloger: rm (fil- eller mappnamn)

Team rm tar bort valda filer. Team rm -rf raderar valda kataloger med allt innehåll.

Byt namn på fil eller katalog: mv (fil- eller katalognamn)

Team mv byter namn på eller flyttar den valda filen eller katalogen.

Hitta kataloger och filer: lokalisera (katalog eller filnamn)

Team lokalisera låter dig hitta en given fil på din dator. För att påskynda arbetet används filindexering. För att uppdatera indexet, ange kommandot uppdateradb... Det startar automatiskt varje dag om datorn slås på. Superanvändarrättigheter krävs för att köra detta kommando (se "Rotanvändaren och sudokommandot").

Du kan också använda masker för att ange mer än en fil, till exempel "*" (matchar alla tecken) eller "?" (matcha med ett tecken).

För en mer ingående introduktion till Linux -kommandoraden, läs kommandoradsintroduktionen på Ubuntu wiki.

Redigera text

Alla konfigurationer och inställningar i Linux sparas i textfiler. Även om du oftast kan redigera konfigurationer via det grafiska gränssnittet kan du ibland behöva redigera dem för hand. Musmattaär standardtextredigeraren för Xubuntu, som du kan starta genom att klicka på Program → Tillbehör → Musmatta på skrivbordets menysystem.

Ibland, Musmatta kör från kommandoraden med programmet gksudo som startar Musmatta med administratörsbehörighet, vilket gör att du kan ändra konfigurationsfilerna.

Om du behöver en textredigerare på kommandoraden kan du använda nano- lättanvänd textredigerare. När du kör från kommandoraden, använd alltid följande kommando för att stänga av automatisk ordomslag:

Nano -w

För mer information om hur du använder nano, se guiden på wiki.

Det finns också en hel del andra terminalbaserade redaktörer tillgängliga i Ubuntu. Populära sådana inkluderar VIM och Emacs(fördelarna och nackdelarna med var och en är orsak till mycket vänlig debatt inom Linux -gemenskapen). Dessa är ofta mer komplexa att använda än nano, men är också kraftfullare.

Rotanvändare och sudo -kommando

Rotanvändaren i GNU / Linux är den användare som har administrativ åtkomst till ditt system. Normala användare har inte denna åtkomst av säkerhetsskäl. Ubuntu aktiverar dock inte rotanvändaren. Istället ges administrativ åtkomst till enskilda användare, som kan använda "sudo" -programmet för att utföra administrativa uppgifter. Det första användarkontot du skapade på ditt system under installationen har som standard tillgång till sudo. Du kan begränsa och aktivera sudo -åtkomst för användare med Användare och grupper program (se "Hantera användare och grupper" för mer information).

När du öppnar ett program som kräver superanvändarrättigheter kommer sudo att be dig om ditt lösenord. Detta säkerställer att inga skadliga program kan skada ditt system och påminner dig också om att du är på väg att utföra åtgärder som kräver extra omsorg!

För att använda sudo på kommandoraden, skriv bara "sudo" före kommandot du vill köra. Du måste då ange ditt lösenord.

Sudo kommer ihåg ditt lösenord i 15 minuter (som standard). Denna funktion var utformad för att tillåta användare att utföra flera administrativa uppgifter utan att bli ombedd att ange ett lösenord varje gång.

Var försiktig när du utför administrativa uppgifter - du kan skada ditt system!

Några andra tips för att använda sudo inkluderar:

    För att använda terminalen som en superanvändare (root), skriv "sudo -i" på kommandoraden

    Hela paketet med standard grafiska konfigurationsverktyg i Ubuntu använder redan sudo, så de kommer att be dig om ditt lösenord om det behövs.

    När du kör grafiska applikationer används "gksudo" istället för "sudo". Detta låter dig be användaren om ett lösenord i ett litet grafiskt fönster. Kommandot "gksudo" är praktiskt om du vill installera en startknapp Synaptisk till din panel eller något liknande.

    För mer information om sudo program och frånvaron av en rotanvändare i Ubuntu, läs sudo -sidan på Ubuntu -wikin.

UNIX(Unix, Unix) - en grupp bärbara operativsystem med flera uppgifter och fleranvändare. Det första Unix -operativsystemet utvecklades i slutet av 1960 -talet och början av 1970 -talet av det amerikanska forskningsföretaget Bell Laboratories. Inledningsvis var det inriktat på minidatorer och började sedan användas på datorer i alla klasser, inklusive stordatorer och mikrodatorer. Detta underlättades av anpassningen av Unix till 32-bitars mikroprocessorer av Intel Corporation, som genomfördes 1990. Funktionaliteten och flexibiliteten hos Unix har gjort det möjligt att använda den i heterogena automationssystem, samt att skapa dussintals standarder för datortillverkare. Operativsystem i Unix -familjen:

Linux är en version av Unix -operativsystemet för datorplattformar baserat på Intel -processorer;
HP-UX-version av Hewlett-Packard; ständigt utvecklas och utmärks av kompatibilitet med IE-64, som är den nya standarden för 64-bitars arkitektur;
SGI Irix är ett Silicon Graphics PC -operativsystem baserat på System V Release 3.2 med BSD -element. Denna version av Unix användes av Industrial Light & Magic för filmerna Terminator 2 och Jurassic Park.
SCO Unix - version av Santa Cruz Operation för Intel -plattformen oberoende av hårdvarutillverkare;
IBM AIX - Implementerad på basis av System V Release 2 med några BSD -tillägg;
DEC Unix - ett operativsystem med klusterstöd; fokuserat på att arbeta tillsammans med Windows NT;
NeXTStep -4.3 BSD - OS baserat på Mach -kärnan användes i NeXT -datorer; ägs av Apple Computer och fungerar som operativsystem för Macintosh -datorer;
Sun Solaris är ett operativsystem för SPARC -stationer baserat på System V Release 4 med många tillägg.

Unix-operativsystemet dök upp under utvecklingen av minidatorer. 1969 började forskningsföretaget Bell Labs utveckla ett kompakt operativsystem för Digital Equipment Corporation: s 18-bitars DEC PDP-7 minidator. Ursprungligen skrevs systemet på monteringsspråk och Unix födelsedatum anses vara den 1 januari 1970. År 1973 skrevs det om på C -språket, som utvecklades på Bell Labs. Samtidigt ägde den officiella presentationen av operativsystemet rum. Dess författare - Bell Labs -anställda Ken Tompson och Dennis M. Ritchie - kallade sitt hjärnskap "universellt operativsystem med tidsdelning."

Unix är baserat på ett hierarkiskt filsystem. Varje process betraktades som en sekventiell körning av programkod inom ett autonomt adressutrymme, och arbete med enheter behandlades som att arbeta med filer. I den första versionen implementerades nyckelkonceptet i processen, senare systemsamtal (gaffel, vänta, exec, exit) dök upp. 1972 användes rörledningar för att bearbeta data genom införande av rör.

I slutet av 1970 -talet hade Unix blivit ett populärt operativsystem, med hjälp av gynnsamma villkor för universitetsdistribution. Unix överfördes till många hårdvaruplattformar och smaker började dyka upp. Under årens lopp har Unix blivit standarden inte bara för professionella arbetsstationer, utan också för stora företagssystem. Tillförlitligheten och flexibiliteten hos UNIX -konfigurationen har gjort den populär, särskilt bland systemadministratörer. Hon spelade en aktiv roll i spridningen av globala nätverk, och framför allt Internet.

Tack vare källkodspolicy har många gratis Unix -dialekter blivit utbredda och körs på Intel x86 -plattformen (Linux, FreeBSD, NetBSD, OpenBSD). Full kontroll över texterna gjorde det möjligt att skapa system med speciella krav på prestanda och säkerhet. Unix assimilerade också element i andra operativsystem, vilket resulterade i POSIX, X / Oren programmeringsgränssnitt.

Det finns två oberoende utvecklande grenar av UNIX, System V och Berkeley, från vilka Unix-dialekter och Unix-liknande system bildas. BSD 1.0, som blev grunden för icke-kommersiella UNIX-dialekter, släpptes 1977 vid University of California, Berkeley, baserat på UNIX V6-källkoden. 1982-1983 släpptes de första kommersiella dialekterna av Unix, System III och System V. på Unix System Laboratories (USL). Unix System V-versionen utgjorde grunden för de flesta av de efterföljande kommersiella varianterna. År 1993 sålde AT&T rättigheterna till Unix med Novells USL -lab, som utvecklade Santa Cruz -operationens UNKWare -dialekt SCO UNIXWare från System V. Unix -varumärket ägs av X / Open Company.

Unix blev populär på grund av dess förmåga att arbeta på olika hårdvaruplattformar - portabilitet eller portabilitet. Problemet med rörlighet i UNIX löstes genom att förena operativsystemet och använda en enda språkmiljö. C -språket utvecklades på Bell Labs och blev länken mellan hårdvaruplattformen och driftsmiljön.

Många portabilitetsproblem på Unix har åtgärdats med en enda programvara och användargränssnitt. Två organisationer tar itu med problemet med att harmonisera flera Unix -dialekter: IEEE Portable Applications Standards Committee (PASC) och X / Open Company (The Open Group). Dessa organisationer utvecklar standarder som möjliggör integration av heterogena operativsystem, inklusive sådana som inte är relaterade till Unix (IEEE PASC - POSIX 1003, X / Open - Common API). Så POSIX-kompatibla system är Open-VMS, Windows NT, OS / 2.

Som ett system som riktar sig till ett brett utbud av hårdvaruplattformar är Unix portabilitet baserad på en modulär struktur med en central kärna. Ursprungligen innehöll UNIX -kärnan en uppsättning verktyg som ansvarar för processöverföring, minnesallokering, arbete med filsystemet, stöd för externa enhetsdrivrutiner, nätverksverktyg och säkerhetsverktyg.

Senare, genom att separera den minsta erforderliga uppsättningen verktyg från den traditionella kärnan, bildades en mikrokernel. De mest kända Unix -mikrokernelimplementeringarna är Amoeba, Chorus (Sun Microsystems), QNX (QNX Software Systems). Chorus microkernel är 60 KB, QNX - 8 KB. Baserat på QNX har en 30 KB POSIX-kompatibel mikrokernel Neutrino utvecklats. Mach -mikrokärnan utvecklades vid Carnegie Mellon University 1985, används i NeXT OS (NeXT), MachTen (Mac), OS / 2, AIX (för IBM RS / 6000), OSF / 1, Digital UNIX (för Alpha), Windows NT, BeOS.

I Ryssland används Unix -operativsystemet som nätverksteknik och driftsmiljö för olika datorplattformar. Infrastrukturen för det ryska internet har bildats på grundval av Unix. Sedan början av 1980 -talet har hushållsarbete med Unix -operativsystemet utförts vid Institutet för atomenergi. IV Kurchatov (KIAE) och Institute of Applied Cybernetics från luftfartsministeriet. Resultatet av sammanslagningen av dessa team var födelsen av DEMOS-operativsystemet (Dialogue Unified Mobile Operating System), som, förutom de inhemska analogerna till PDP-11 (SM-4, SM-1420), överfördes till ES EVM och Elbrus. Trots sin mångsidighet överlämnade Unix marknaden för persondatorer till Microsofts Windows -familj. Operativsystemet Unix behåller sin position inom området verksamhetskritiska system med en hög grad av skalbarhet och feltolerans.

UNIX -operativsystem

Operativsystemets officiella födelsedatum UNIXöverväga 1 januari 1970. Det är från detta ögonblick som alla UNIX -system räknar sin systemtid. Detta är mycket lång tid för ett operativsystem. Idag, trots uppkomsten av många andra operativsystem som bygger på olika principer, är UNIX fast i spetsen.

De viktigaste egenskaperna hos UNIX, som gör att vi kan förstå orsakerna till systemets livslängd, inkluderar följande.

Systemkoden är skriven på ett C-språk på hög nivå, vilket gjorde det enkelt att förstå, ändra och överföra till andra hårdvaruplattformar.

Trots de många UNIX -versionerna är grunden för hela familjen i huvudsak samma arkitektur och ett antal standardgränssnitt.

UNIX har en enkel men kraftfull uppsättning vanliga användargränssnitt.

UNIX Unified File System Interface ger åtkomst inte bara till data som lagras på skivor, utan även till terminaler, skrivare, band, CD -skivor, nätverket och till och med minne.

Ett stort antal olika applikationer har utvecklats för UNIX -systemet - från de enklaste textredigerarna till kraftfulla databashanteringssystem.

Generellt sett kan UNIX-operativsystemet representeras av en tvåstegsmodell, som visas i fig. 8.1
.

I mitten är systemkärnan... Kärnan interagerar direkt med datorns hårdvara och isolerar applikationsprogram från funktionerna i dess arkitektur. Kärnan innehåller program som implementerar en uppsättning tjänster som tillhandahålls applikationsprogram. Kerneltjänster inkluderar I / O -operationer, processskapande och -hantering, processynkronisering etc. Nästa nivå i modellen är de systemtjänster som tillhandahåller användargränssnittet för UNIX -operativsystemet. Systemet för interaktion med kärnan för både applikationer och systemuppgifter är detsamma.

UNIX -operativsystemets funktioner

UNIX -operativsystemet interagerar med datorns maskin- och programvaruresurser genom att utföra följande funktioner:

    utrustningshantering;

    resurshantering;

    systemövervakning;

Utrustningshantering

Program har inte möjlighet att styra datorhårdvara direkt. Endast operativsystemet utför funktionerna för att styra utrustningen, vilket ger applikationer och andra program möjlighet att komma åt kringutrustning (vilket eliminerar behovet av att känna till detaljerna i att styra en sådan enhet). Begreppet oberoende av program från en specifik hårdvaruimplementering inbäddad i operativsystemet är en av de viktiga elementen för att säkerställa bärbarheten för UNIX -operativsystemet, vilket gör att det kan användas i stor utsträckning i en mängd olika hårdvarukonfigurationer.

Resurshantering

UNIX-operativsystemet hanterar distributionen av datorresurser mellan flera användare som utför flera uppgifter samtidigt, ofta arbetar de med olika objekt, stöder multi-tasking och multi-user driftsätt. Multitasking gör att en enda användare kan köra flera program samtidigt, med CPU och RAM delat mellan flera processer.

Fleranvändarläge stöder möjligheten att köra flera användare samtidigt och dela datorresurser mellan dem, inklusive dyra kringutrustning som skrivare eller plotters. Detta driftsätt visar sig vara mer kostnadseffektivt än att kombinera flera maskiner där en användare arbetar.

Stöd för användargränssnitt

Det är ett sätt att tillhandahålla användares interaktiva (tillhandahållande av dialog) interaktion med ett datasystem.

Moderna versioner av UNIX -operativsystemet stöder flera typer av gränssnitt: kommandorad, menyer och grafiskt användargränssnitt.

Kommandorad vanligtvis bekvämt för användare som är bekanta med funktionerna och lag system. När du arbetar med denna typ av gränssnitt anger användaren vid "prompten" (standard för användaren ett dollarstecken) varje kommando från tangentbordet. Detta gränssnitt ger inte en "vy" av systemet, men det gör det möjligt att utföra alla kommandon på systemet. Program som tillhandahåller ett sådant gränssnitt kallas kommandoskal(skal). Det finns många skal: Bourne shell (sh), Bourne Again Shell (bash), Korn shell (ksh), C shell (csh), Debian Almquist shell (dash), Zsh, etc. Det vanligaste är bash.

Används vanligtvis av nybörjare eller användare som behöver göra lite inställningar på operativsystemet. Ofta fungerar ett sådant gränssnitt som en guide: det tillåter användaren att välja en funktion från en lista (meny) som ska utföras av systemet. Vanligtvis är menyer organiserade som text i skikt, vilket ger användaren flera valmöjligheter. Ett exempel på ett sådant gränssnitt är sysadm -programmet, som hjälper systemadministratören att konfigurera och konfigurera systemet.

Grafiskt användargränssnitt riktad till både nybörjare och avancerade användare. Det ger flera sätt att interagera med en dator: en översikt över systemobjekt som representeras av ikoner, körning av kommandon genom att välja en grafisk bild (ikon) på skärmen med hjälp av en mus eller spårbollsenhet. UNIX OS tillhandahåller X.desktop som ett grafiskt användargränssnitt för arbete med speciella X -terminaler eller X Window System för arbete med vanliga grafiska terminaler.

Ger fjärråtkomst i ett datornätverk

UNIX OS ger användare tillgång till resurserna för andra datorer som arbetar i datornätverket. Operativsystemet innehåller en uppsättning nätverksprogram som gör att du kan upprätta kommunikation med en fjärrdator, registrera dig med ett fjärrsystem, överföra data mellan nätverksdatorer och använda e-post. UNIX stöder nätverk NFS filsystem(Network File System), som låter dig använda operativsystemkommandon för att komma åt filsystemet på en fjärrdator.

UNIX -operativsystemkomponenter

Som nämnts ovan är ett operativsystem en uppsättning program som tillhandahåller funktioner för att hantera processer i systemet och implementerar gränssnittet mellan användare och systemets hårdvara. UNIX -systemet innehåller tre huvudkomponenter: kommandosystem, skal och kärna.

UNIX -operativsystemet innehåller flera hundra kommandon som utför uppgifter för att organisera och bearbeta data och kontrollera användarens miljö. Själva kommandona är program som utför specifika funktioner, som vanligtvis kräver minimal inmatning och är relativt snabba att utföra. De flesta av dem är tillgängliga för alla användare, men det finns kommandon som bara är tillgängliga för systemadministratören, som är en privilegierad användare. Vissa kommandon, när de utförs, är det möjligt att ange information interaktivt, kallas ibland verktyg... Exempel på verktyg inkluderar vi textredigeraren och e-postkommandot för hantering av e-post.

Skal... Skal kallas vanligtvis interaktiva program som ger ett användargränssnitt till operativsystemets kärna. Skalet blir den aktiva användarprocessen från det att han loggar in på systemet tills han loggar ut. Dessa program är kommandotolkar (ibland kallade kommandoprocessorer).

Som nämnts ovan använder ett UNIX -operativsystem vanligtvis flera skal.

Begränsade skal (rsh och ksh - delmängder av Bourne -skalet och Korn -skalet) är utformade för användare som behöver begränsa åtkomsten till systemet.

Kärna... Kärnan är kärnan i operativsystemet, som ger grundläggande funktionalitet: den skapar och hanterar processer, fördelar minne och ger åtkomst till filer och kringutrustning.

Interaktionen mellan applikationer och kärnan sker genom standardgränssnittet för systemanrop. Systemanropsgränssnittet definierar formatet på förfrågningar om grundläggande tjänster. En process begär en grundläggande kärnfunktion genom ett systemanrop till en specifik kärnprocedur. Kärnan kör begäran och returnerar nödvändig data till processen.

Kärnan består av tre huvudsakliga delsystem:

    1) ett delsystem för hantering av processer och minne;

    2) filundersystem;

    3) input / output undersystem.

Uppträder följande funktioner:

    skapa och ta bort processer;

    fördelning av systemresurser mellan processer;

    synkronisering av processer;

    interaktion mellan processer.

En särskild kärnfunktion, som utförs av schemaläggaren, löser konflikter mellan processer i konkurrens om systemresurser.

Ger minnesfördelning mellan processer. Om det inte finns tillräckligt med minne för alla processer flyttar kärnan delar av processen eller flera processer (oftare passiva som väntar på eventuella händelser i systemet) till ett speciellt område på disken ("swap" -område), vilket frigörs upp resurser för att köra (aktiva) processer.

Filundersystem ger ett enhetligt gränssnitt för åtkomst till data som finns på hårddiskar och kringutrustning. Den utför filplacering och radering, skriver / läser fildata och styr filtillstånd.

Utför förfrågningar från filundersystemet och delsystemet för processstyrning för åtkomst till kringutrustning. Den interagerar med enhetsdrivrutiner, som är speciella kärnprogram som tjänar externa enheter.

Åtkomst till UNIX -systemet

För att kontakta ett UNIX -system, du måste ha:

    terminal;

Skaffa ett registreringsnamn

Registreringsnamnär det namn som UNIX använder för att kontrollera om du är en auktoriserad användare av systemet när du begär åtkomst till det.

Du måste ange inloggningsnamnet varje gång du vill logga in.

Det finns flera regler för att välja ett registreringsnamn. Normalt är namnet 3 till 8 tecken långt. Det kan vara stora eller små bokstäver, siffror, understreck, men kan inte börja med ett tal.

Ditt inloggningsnamn kan dock vara applikationsspecifikt. Exempel på giltiga namn:

Kommunikation med UNIX -systemet

Om UNIX är installerat på en persondator kan du logga in direkt på den via en textbaserad virtuell konsol. Men andra åtkomstalternativ är också möjliga.

Låt oss anta att terminalen är direkt eller via en telefonlinje ansluten till en dator. Även om det här avsnittet beskriver en typisk inloggningsprocedur kanske dessa instruktioner inte fungerar för ditt system. Det finns flera sätt att logga in på ett UNIX -system via en telefonlinje.

För att kommunicera med systemet måste du slå på terminalen.

Om den är direkt ansluten till datorn visas en uppmaning omedelbart i det övre vänstra hörnet:

Om en persondator som är konfigurerad för att fungera i ett nätverk som använder TCP / IP -protokollfamiljen används som terminal, är det nödvändigt att upprätta kommunikation med den dator som UNIX -operativsystemet är installerat på. Detta kan uppnås på flera sätt, till exempel att använda telnet -nätverksprogrammet som finns på Windows -operativsystem eller använda verktyg för Internetåtkomst. Observera att detta är ett osäkert protokoll som praktiskt taget inte används idag. Det moderna alternativet är Secure Shell (SSH).

Exempel.

En persondator med Windows NT -operativsystem konfigurerad för nätverksdrift används som terminal. Du måste registrera dig på ett UNIX -system.

Obligatoriska inmatningar och åtgärder:

    För att upprätta kommunikation med UNIX OS måste du känna till nätverksnamnet på fjärrdatorn eller dess IP -adress (till exempel 192.168.2.19);

    hitta telnet -applikationen på persondatorn och starta den för körning;

    välj menyalternativet Anslutning i programfönstret som öppnas.

    ange IP -adressen för det avlägsna UNIX -systemet (till exempel 192.168.2.19);

    ställ in terminalegenskaperna efter önskemål.

Registreringsförfarande

När inloggningsuppmaningen visas anger du ditt inloggningsnamn och trycker på knappen ... Till exempel, om ditt inloggningsnamn är all30123, kommer registreringssträngen att se ut så här:

    inloggning: all30123

Om du gör ett misstag när du anger ditt inloggningsnamn kan du korrigera det med @ -symbolen eller nyckeln .

Kom ihåg att bokstaven för de tecken du anger är viktig. Namnen all30123 och ALL30123 ägs av två olika användare.

Systemet uppmanar dig nu att ange ett lösenord. Ange ditt lösenord och tryck på knappen ... Om du gör ett misstag när du skriver kan du korrigera det med tangenten eller @ -symbolen. UNIX visar inte ditt lösenord på skärmen av säkerhetsskäl.

Om inloggningen och lösenordet är giltiga på ett UNIX -system kan systemet visa aktuell information och sedan kommandoradsfrågan.

När du loggar in ser terminalskärmen ut så här:

    inloggning: all30123

Om du gör ett fel när du loggar in visar UNIX meddelandet:

    inloggning fel

Det ger dig en andra chans att logga in genom att uppmana dig att logga in: prompt. Skärmen kommer att se ut så här:

    inloggning: all30123

Om du aldrig har loggat in på ett UNIX -system kan ditt registreringsförfarande skilja sig från det som beskrivs ovan. Detta kan hända om systemadministratören har tillhandahållit ett förfarande för att tilldela nya användare tillfälliga lösenord. Om du har ett tillfälligt lösenord tvingar systemet dig att välja ett nytt lösenord innan du kan registrera dig.

Genom att tvinga dig att välja ett nytt lösenord enbart för din användning är systemet säkrare.

Inloggningsförfarande:

    Du tar kontakt; UNIX -systemet visar prompten för inloggning:. Ange ditt registreringsnamn och tryck på knappen .

    UNIX visar lösenordet: prompt. Ange ditt tillfälliga lösenord och tryck på knappen .

    Systemet informerar dig om att ditt tillfälliga lösenord inte längre är giltigt och uppmanar dig att välja ett nytt lösenord.

    Systemet kommer att be dig att ange ditt gamla lösenord. Ange ett tillfälligt lösenord.

    Systemet kommer att be dig att ange ditt nya lösenord. Ange ditt valda lösenord.

Lösenordet måste matcha följande krav:

    varje lösenord måste vara minst 6 tecken långt;

    varje lösenord måste innehålla minst 2 alfabetiska tecken och ett nummer eller specialtecken. Ett alfabetiskt tecken kan skrivas antingen med stora eller små tecken;

    varje lösenord måste skilja sig från ditt inloggningsnamn. De stora bokstäverna och motsvarande små bokstäver är likvärdiga;

    det nya lösenordet måste skilja sig från det gamla med minst tre tecken.

Exempel på giltiga lösenord:

För verifiering ber systemet dig att ange lösenordet igen. Ange lösenordet igen.

Om du anger ett nytt lösenord andra gången annorlunda än det första, kommer systemet att informera dig om att lösenorden inte matchar och kommer att erbjuda att upprepa registreringsproceduren igen. När lösenorden matchar kommer systemet att visa en ledtråd.

Nästa skärm visar den beskrivna proceduren:

    inloggning: dko30123

    Lösenord:

    ditt lösenord har gått ut

    Välj en ny

    Gammalt lösenord:

    Nytt lösenord:

    Ange nytt lösenord igen:

Användaridentifiering

När systemadministratören registrerar en användare på systemet är två identifikationskomponenter kopplade till inloggningsnamnet: användar ID(användar -ID - UID) och grupp -id som den tillhör (grupp -ID - GID).

Användarnamnet är associerat med ett unikt nummer. Systemet använder det som ett verktyg i olika säkerhetsmekanismer i UNIX OS, till exempel vid skydd av filer eller vid körning av privilegierade kommandon.

På alla UNIX -operativsystem finns det en speciell superanvändare med UID = 0, som vanligtvis är associerad med namnrot. Detta innebär att användaren har alla systemrättigheter.

Gruppens namn är också associerat med ett nummer, som vanligtvis refererar till en grupp användare som förenas av gemensamma uppgifter, till exempel anställda på en avdelning, studenter i samma tråd, etc. Detta nummer används också av säkerhetsmekanismerna i systemet. Om användaren behöver arbeta med data från andra grupper är denna identifierare associerad med namnen på andra grupper.

All registreringsinformation om systemanvändare lagras i filen / etc / passwd.

I moderna versioner av UNIX lagras krypterade lösenord och relaterad systeminformation i filen / etc / shadow, vars struktur och syfte med fälten visas i fig. 8.2
.

Dataposter om varje installerad grupp finns i filen / etc / group, vars struktur och syfte med fälten visas i fig. 8.3 .

Strukturen och syftet med fälten i filen / etc / passwd visas i fig. 8.4
.

Inmatningskonventioner

När du interagerar med ett UNIX -system måste du vara medveten om ingångskonventionerna. UNIX -systemet kräver att du anger kommandon med gemener (förutom vissa kommandon som innehåller stora bokstäver). Andra konventioner låter dig utföra uppgifter som att radera bokstäver eller radera en rad genom att trycka på en eller två tangenter.

Tabell 8.1.
Inmatningskonventioner

Nyckel

Fungera

Systemkommandotolken (uppmanar dig att ange ditt kommando)

eller<^h>

Radera symbol

Stoppa körningen av ett program eller kommando

Ta bort den aktuella kommandoraden

När den används med ett annat tecken, indikerar det exekveringen av en speciell funktion (kallas en kodväxlingssekvens). När det används i redigeringsläge för vi -redigerare betyder det slutet på textinmatningsläget och återgå till kommandoläge.

Markerar slutet på en inmatningsrad och placerar markören på en ny rad

Sluta skriva eller logga ut (avstängning)

Spår tillbaka ett tecken (för terminaler som inte har en nyckel )

Stoppa tillfälligt visningen

Fortsätt visa information som stoppades med<^s>

Notera. Tabell 2.1 tecken ^ står för kontrolltecken ... Det vill säga, i det här fallet måste du trycka på två tangenter samtidigt: kontrollteckenknappen och den angivna bokstaven.

Kommandotolken

Standard UNIX -användarprompt är dollarstecknet $. För rotanvändaren - #. När en uppmaning visas på terminalskärmen betyder det att UNIX -systemet väntar på instruktioner från dig. Lämpligt svar på en uppmaning från din sida är att utfärda ett kommando följt av en knapptryckning .

Korrigera inmatningsfel

Det finns flera sätt att korrigera skrivfel. Symbolen @ raderar den aktuella raden och knapparna och<^h>radera det senast inmatade tecknet. Dessa nycklar och tecken är standardvärdena. De funktioner som de utför kan tilldelas andra tangenter.

Stoppar kommandot

För att stoppa de flesta kommandon från att köra, tryck bara på kortkommandot ... UNIX -systemet stoppar körningen av programmet och visar en uppmaning på skärmen. Denna uppmaning fungerar som en signal om att det senast utförda kommandot har stoppat och att systemet är redo att ta emot nästa kommando.

När en uppmaning visas på skärmen har UNIX identifierat dig som en auktoriserad användare och väntar på att du ska ange ett kommando.

I allmänhet har kommandoraden följande struktur:

    namn [alternativ] [argument]

Kommandonamn, alternativ och argument måste separeras från varandra med ett mellanslag eller en flik. Tolken börjar bearbeta kommandoraden först efter att ha tryckt på en knapp .

I följande beskrivning av kommandonas funktioner antas det:

Alternativ (parametrar):

    är ett tecken på kommandoändring och består som regel av ett tecken; stora och små bokstäver betyder olika ändringar;

    som regel börjar de med tecknet "-" ("minus"), som inte separeras av ett mellanslag från resten av tecknen;

    kan kombineras på något sätt, medan minustecknet bara kan användas en gång.

Argumenten indikerar de objekt som ska bearbetas med kommandot, till exempel:

    Filnamn;

    processnummer;

Om du vet vad det uppringda programmet ska göra, men inte är säker på rätt syntax, kan du använda alternativet --help på kommandoraden efter kommandonamnet:

    $ cal --hjälp

För detaljerad information har UNIX en onlinehandbok som manen har åtkomst till och kommandon.

I det enklaste fallet, för att få information om ett kommando, måste du ange dess namn som ett argument till kommandot man:

    man command_name

apropos visar en lista med kommandon enligt nyckelordet (mönster) som anges som ett argument till kommandot:

    apropos mall

Exempel.

Om du kör datumkommandot och trycker på knappen , UNIX -systemet kallar ett program som heter datum, kör det och skriver ut resultatet på skärmen:

    $ datum

    Tis 18 sep 14:49:07 2000

Datumkommandot visar datum och tid.

Om du kör kommandot who och trycker på knappen då ser skärmen ut så här:

    $ vem

    dko30024

    18 oktober 8:30

    dko30001

    18 oktober 8:34

    dko30020

    18 okt 8:32

    18 oktober 8:00

som listar inloggningarna för de användare som för närvarande körs på ditt system. Tty -notationen (andra kolumnen) hänvisar till speciella filer som motsvarar varje användarterminal. Den tredje och fjärde spalten anger datum och tid för varje användares registrering. ...

Det betyder att du har lyckats arbeta med systemet och är redo att registrera en ny användare.

Om du registrerade dig från en fjärrterminal kopplas anslutningen från, vilket meddelas dig till exempel av telnet -applikationen.

Notera. Innan du kopplar ur terminalen, se till att stänga av systemet.

Huvudsakliga slutsatser

    UNIX är ett multi-tasking, multi-user system. En kraftfull server kan tillgodose önskemål från ett stort antal användare. Systemet kan utföra en mängd olika funktioner: det kan fungera som en datorserver som betjänar hundratals användare, som en databasserver, som en nätverksserver eller en nätverksrouter.

    Generellt sett kan UNIX-operativsystemet representeras av en tvåstegsmodell. I mitten är kärnan i systemet (kärnan). Kärnan interagerar direkt med datorns hårdvara och isolerar applikationsprogram från funktionerna i dess arkitektur. Kärnan innehåller program som implementerar en uppsättning tjänster som tillhandahålls applikationsprogram. Kerneltjänster inkluderar I / O -operationer, processskapande och -hantering, processynkronisering etc. Nästa nivå i modellen är de systemtjänster som tillhandahåller användargränssnittet för UNIX -operativsystemet. Systemet för interaktion med kärnan för både applikationer och systemuppgifter är detsamma.

    UNIX -operativsystemet interagerar med datorns hårdvara och programvara och utför följande funktioner:

    • utrustningshantering;

      resurshantering;

      stöd för användargränssnitt;

      exekvering av inmatning och utmatning av information;

      systemövervakning;

      tillhandahålla fjärråtkomst till ett datornätverk.

    Ett UNIX -system innehåller tre huvudkomponenter: kommandosystemet, skalen och kärnan.

    UNIX -operativsystemet innehåller flera hundra kommandon som utför uppgifter för att organisera och bearbeta data och kontrollera användarens miljö. Kommandona i sig är små program som utför specifika funktioner, som vanligtvis kräver minimal datainmatning och är relativt snabba att utföra.

    Skal kallas vanligtvis interaktiva program som ger ett användargränssnitt till operativsystemets kärna. Skalet blir den aktiva användarprocessen från det att han loggar in på systemet tills han loggar ut. Dessa program är kommandotolkar (ibland kallade kommandoprocessorer).

    Kärnan är kärnan i operativsystemet, som ger grundläggande funktionalitet: den skapar och hanterar processer, fördelar minne och ger åtkomst till filer och kringutrustning.

    Kärnan består av tre huvudsakliga delsystem:

    • delsystem för process- och minneshantering;

      filundersystem;

      input / output undersystem.

    För att upprätta kontakt med ett UNIX -system måste du ha:

    • terminal;

      ett inloggningsnamn som identifierar dig som en auktoriserad användare;

      ett lösenord som verifierar din identitet;

      instruktioner för dialog och åtkomst till ett UNIX -system om din terminal inte är direkt ansluten till en dator.

testfrågor

    För vilka uppgifter är UNIX -klassen av operativsystem avsedda?

    Vilka funktioner ska ett operativsystem i UNIX-klass tillhandahålla?

    Vilka är uppgifterna för UNIX -kärnan?

    Vilka funktioner har UNIX -kärnan?

    Vad är syftet med Command System -komponenten i operativsystemet?

    Skulle du hävda att skalet ger ett interaktivt gränssnitt för användaren att interagera med operativsystemet?

    Hur utförs användarautentisering på UNIX?