Grunderna i Linux - kommandorad och filsystem. Linux Basics Sammanfoga filsystem

Innan du kan bemästra måste du vara flytande i de grundläggande begreppen i Linux-systemet. Att lära sig 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 sådana komponenter som den centrala processorenheten (CPU), random access memory (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 gör att du kan 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 skivor 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 enda hierarki, så att användare och applikationer får åtkomst till 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. Till exempel, hemunderkatalogen "/" heter / 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 namnsystem 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 mount 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, motsvarande 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 (där 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 utfärdar den på begäran. Med abstraktionen av filsystemet behöver du inte oroa dig för hur den enheten mappas, 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 driftsdata. 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 låter de systemet 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 upp 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 ställa in schemaläggningsmekanismerna på ett sådant sätt att detta utseende bevaras 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 pågå under längre tidsperioder och vid mer frekventa tidssegment än lägre prioriterade processer.

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. Men samma tidsreduktionssystem används 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 igång.

Kärnan tillåter flera oberoende instanser av samma program att köras, men var och en tillåts bara åtkomst till sina egna tidssegment 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 om detta exempel, se avsnitt 3.4.4, "Hanteringsrättigheter")

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 vilket grafiskt gränssnitt som helst) och en kommandotolk inuti 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 vart och ett har många olika alternativ och funktioner som inte täcks här, så vänligen hänvisa till 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 skriva ut arbetskatalogen) visar din nuvarande plats i filsystemet. Din nuvarande plats kan ändras med kommandot cd 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 skriver in cd - kommer du tillbaka till din tidigare arbetskatalog (den du var i innan du skrev in 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 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 kopiering 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 ligger ls -kommandot i / bin / ls; Ibland bearbetas ett kommando direkt av skalet, i så fall kallas det ett inbyggt skalkommando (bland dem är 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 det 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 / *: monteringspunkter för flyttbara enheter (CD-ROM, USB-enheter, etc.)
  • / mnt /: tillfälliga monteringspunkter
  • / opt /: ytterligare applikationer 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 uppdelad 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 paketeringssystemet (dpkg).
  • / var /: variabel data som bearbetas av demonen. Detta inkluderar loggfiler, köer, buffertar och cachar.
  • / 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ändarutrymmet.

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 / hem / användare /).

Traditionellt lagras applikationskonfigurationsfiler ofta direkt i din hemkatalog, men deras filnamn börjar vanligtvis med en punkt (t.ex. e -postklient mutt lagrar konfigurationen i ~ / .muttrc). Observera att filnamn som börjar med en punkt är dolda som standard; kommandot ls listar dem bara om alternativet –a är specificerat, 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 program (som webbläsaren Firefox) använder också sin katalog för att lagra en cache med nedladdade data. Detta innebär att dessa kataloger kan sluta konsumera mycket diskutrymme.

Dessa konfigurationsfiler, som lagras direkt i din hemkatalog, kallas ofta kollektivt dotfiler, expanderar under en så lång tid att dessa kataloger kan vara röriga med dem. Lyckligtvis har samarbetet i FreeDesktop.orgs regi resulterat i XDG Base Directory Specification av en konvention som syftar till att städa upp dessa filer och kataloger. Denna specifikation anger att konfigurationsfiler ska lagras i ~ / .config, cachefiler i /. Cache och programdatafiler 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:

Till att börja med skulle det vara en bra idé att ha en grundläggande förståelse för vad Linux är och hur det fungerar.

Och du kan börja med Introduktion till Linux(sxw). Det finns dock andra introduktioner. Till exempel detta. Här är doc av R.S.Klochkov och N.A. Korshenin UNIX och Linux Basics (SXW), (PDF).

UNIX -grunder. Träningskurs... (SXW) (PDF)
Copyleft (ingen c) - Fan copyright! 1999-2003 V. Kravchuk, OpenXS Initiative
Denna korta (förmodligen 16 timmar, varav 6 praktiska sessioner) introduktionskurs är utformad för att introducera dig till arkitekturen, funktionerna och grundfunktionerna i UNIX. Om du lyckas bemästra, kommer kursen att tillåta dig att fritt och produktivt arbeta i UNIX OS som användare och fortsätta studiet av administration eller programmering av detta operativsystem.
Presentationen utförs huvudsakligen utan hänvisning till särdragen hos någon UNIX -version, men om det är nödvändigt att specificera det görs det för SVR4 -system, i synnerhet Solaris 8 OS.
Jag tipsar också om en bok Andrey Robachevsky"UNIX -operativsystem"
Så här skriver författaren: ”Denna bok är inte en ersättning för referensböcker och olika manualer för UNIX-operativsystemet. Dessutom är informationen i boken ibland svår att hitta i dokumentationen som medföljer operativsystemet. Dessa publikationer är fulla av praktiska rekommendationer, en noggrann beskrivning av inställningarna för vissa delsystem, kommandokallformat, etc. I det här fallet lämnas ofta frågor som den interna arkitekturen för enskilda systemkomponenter, deras interaktion och driftsprinciper ofta bakom scener. Utan att känna till denna "anatomi" övergår arbetet i operativsystemet till att använda inlärda kommandon, och oundvikliga misstag leder till oförklarliga konsekvenser. Å andra sidan ägnas mycket mindre uppmärksamhet åt UNIX-administration, specifik subsystemkonfiguration och de kommandon som används i den här boken. Syftet med den här boken är att beskriva den grundläggande organisationen av UNIX-operativsystemet. Man bör komma ihåg att namnet UNIX betecknar en betydande familj av operativsystem, som vart och ett har sitt eget namn och unika egenskaper. Denna bok försöker isolera vad som är vanligt i UNIX "genotypen", nämligen de grundläggande användar- och programmeringsgränssnitten, syftet med huvudkomponenterna, deras arkitektur och interaktion, och på grundval av detta representerar systemet som helhet. Där så hänvisas dock till en specifik version av UNIX. "

Personligen hjälper mig mycket att läsa den utmärkta boken av Viktor Alekseevich Kostromin. Linux för användaren”Som jag kan erbjuda dig (kos1, kos2, kos3, kos4, kos5, kos6, kos7, kos8, kos9, kos10, kos11, kos12, kos13, kos14, kos15, kos16, kos17, kos18).
Och här är samma bok, men i PDF (kos1, kos2, kos3, kos4, kos5, kos6, kos7, kos8, kos9, kos10, kos11, kos12, kos13, kos14, kos15, kos16, kos17, kos18).
Och nu också i SXW (kos1, kos2, kos3, kos4, kos5, kos6, kos7, kos8, kos9, kos10, kos11, kos12, kos13, kos14, kos15, kos16, kos17, kos18).
Om du föredrar dokument i HTML -format kan du med länkarna ovan komma till sidan varifrån det föreslås att ladda ner arkiven för bokkapitlen i detta format.

Från grundläggande böcker kan jag också ge råd om Karl Schroeders utmärkta vägledning Linux. Samling av recept "... Jag varnar dig direkt att den här länken är till boken i .pdf-format, och den väger 50 MB... Men ett alternativt alternativ är också möjligt - samma bok, bara i

FORMATERA.TXT Sammanfattningen till boken är följande: »Den föreslagna upplagan innehåller en unik samling tips, verktyg och manus; du hittar ett antal färdiga, felsökta lösningar på komplexa problem som alla administratörer som ställer in en Linux-server står inför; dessa lösningar kommer att vara användbara både när du skapar små nätverk och när du skapar kraftfulla distribuerade datalager. Boken är skriven i den redan populära formen av O'Reilly receptböcker i formatet "Problem-Solution-Discussion". För erfarna användare, programmerare, systemadministratörer, universitetsstudenter, doktorander och lärare. " Om länken plötsligt upphör att existera, vänligen informera - jag kommer förmodligen att lägga upp .pdf -filen på min webbplats.

Jag gillar verkligen artikelserien och anteckningarna av Alexey Fedorchuk, Vladimir Popov och ett antal andra författare, som jag tar härifrån: http://unix.ginras.ru/. Här är de mest intressanta materialen om Linux i allmänhet och dess enskilda komponenter i synnerhet(Linux-all.zip, Linux-all2.zip, Linux-all3.zip, Linux-all4.zip).
SXW - (Linux-all.zip, Linux-all2.zip, Linux-all3.zip, Linux-all4.zip),
Och också en bok av Alexey Fedorchuk " POSIX -sagan eller en introduktion till POSIX'ivism»Som täcker allmänna frågor om ett antal system, främst om UNIX-liknande. Namnet talar för sig självt. Enligt författarna är boken avsedd för användare (inklusive nybörjare). Här är filerna - Del 1, Del 2, Del 3, Del 4.
OCH SXW- Del1, Del2, Del3, Del4.

Och om du är intresserad av GRATIS SYSTEMS historia, kan du läsa urvalet av artiklar under den allmänna titeln En väg öppen för alla"(Sxw) och, enligt författaren, täcker allmänna frågor om öppna källor, POSIX-system, UNIX, BSD, Linux historia

Dessutom, för att förstå operativsystemets driftsprinciper, är konceptet med en process, tillsammans med konceptet med en fil, naturligtvis ett av de viktigaste koncepten. Detta är föremål för en artikel av V.A. Kostromina " Linux -processer och demoner"(SXW.

Text-Terminal-HOWTO(SXW) v 0.05, juni 1998
Detta dokument förklarar vad textterminaler är, hur de fungerar, hur man installerar och konfigurerar dem, och ger lite information om hur man reparerar dem. Den kan användas något även om du inte har en terminalmanual. Även om detta arbete skrevs för riktiga terminaler på ett Linux-system, gäller en del av det också för terminalemulatorer och / eller andra Unix-liknande system.

Det är också mycket användbart att läsa den vackert illustrerade guiden för snabbare och enklare mastering av konsolen - Arbetar med teamhistoria(SXW).

Här är materialet på kommandoskal, eller kommandotolkar, även kallade skal. Först och främst ett urval av artiklar som kombineras under titeln Skal och verktyg(SXW), (PDF).

Det mest populära skalet idag är Bash, som är en förkortning för Bourne Again SHELL. Jag råder dig att läsa BASH -sammanfattning, (SXW), (PDF)
Skapandedatum: 16.12.97.

Och Funktioner hos bashskalet(SXW), (PDF).
Dokumentet sammanfattar kort vad Bash ärver från Born -skalet: skalkontrollstrukturer, inbyggda kommandon, variabler och andra funktioner. Den listar också de viktigaste skillnaderna mellan Bash och Born-skalet.

Skalskalstolk(SXW), (PDF) - ett kommandospråk som kan utföra både kommandon som matas in från terminalen och kommandon lagrade i en fil.

Skalprogrammering(UNIX) (SXW), (PDF)

Om Windows fryser gör användaren några gester, och sedan, övertygad om "fåfänga och fåfänga i denna värld", trycker han på RESET med ett lugnt hjärta. Detta är inte fallet på Linux. Om den här artikeln - Hängande? Låt oss ta av det!(SXW)

Vanliga frågor om Kppp(SXW)

Artikel av V.A. Kostromin ” Hierarki av kataloger och filsystem i Linux»(SXW), som berättar om standarden som utvecklats inom ramen för Open Source-projektet för katalogstrukturen för UNIX-liknande operativsystem (vilket betyder Linux- och BSD-system).

Om filer (som i Linux faktiskt är kataloger och till och med enheter), men från en lite annan vinkel berättar manualen Filer och åtkomsträttigheter till dem(SXW).
Rekommenderas starkt. Tuggade jättebra.

Linuxkommandon och förkortningar(SXW).
Detta är en praktisk samling av program som vi använder oftast, som är användbara och som finns i våra Linux -distributioner (RedHat eller Mandrake).

UNIX -konsoler(SXW) - Anteckningar om olika konsoler.

Och här är en sjuklig guide Mandrake Linux 9.0 Kommandoradsguide(SXW).

Montering av filsystem från enheter och filer(SXW) (PDF)
Datum för skapande av dokument: 26.07.2004
Datum för senaste ändring: 20.08.2004
Författare: Knyazev Alexey.

Grunderna i Linux

Linux är inspirerat av Unix -operativsystemet, som visades 1969 och fortfarande används och utvecklas idag. Mycket av det inre 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 rotkatalogen ... 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 tillgång till alla filer på systemet.

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

    ägare

    hänvisar till 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 ägaren till filen.

För mer information 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 hjälp av kommandoraden, även om det finns grafiska verktyg för de flesta program. Ibland räcker de bara inte. Det är här kommandoraden kommer till nytta.

De Terminal finns i Program → Terminal. Terminalen kallas ofta för 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

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

Skapa kataloger: mkdir (katalognamn)

Kommando mkdir skapar en ny katalog.

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

Kommando CD låter dig gå till vilken katalog du anger.

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

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

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

Kommando rm raderar valda filer. Kommando rm -rf raderar valda kataloger med allt innehåll.

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

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

Hitta kataloger och filer: lokalisera (katalog eller filnamn)

Kommando 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... Den startar automatiskt varje dag om datorn är påslagen. 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örsrättigheter, 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å wikin.

Det finns också en hel del andra terminalbaserade redaktörer tillgängliga i Ubuntu. Populära 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å mer kraftfulla.

Root användare och sudo kommando

Rotanvändaren i GNU / Linux är användaren 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"-applikationen 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 till 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 skadliga program inte 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 sviten av grafiska standardkonfigurationsverktyg 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 gör att du kan fråga 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 programmet och frånvaron av en rotanvändare i Ubuntu, läs sudo -sidan på Ubuntu -wikin.

Transkript

1 Inledning UNIX Basics-kursen är utformad för grundskolestudenter 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 avhandlingsform, vilket ger stor 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, inbyggt 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 styrchips. 1 Vlasov SV 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 någon 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 sekvens av byte. 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) Den applikation som 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 speciella med det hierarkiska Linux-filsystemet är att det är virtuellt, i den meningen att vilken nod som helst i en enda hierarki kan associeras med sitt eget filsystem av en viss typ (ext2fs, ext3fs, riserfs, vfat, etc.) som finns 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åktolken. Källor på andra språk (C, Fortran, etc.) måste kompileras för att konvertera källkoden till en körbar programmodul som innehåller processorinstruktioner i binärt format (som 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 process nummer 1, vilket är den initprocess som skapas när operativsystemets kärna startar upp och skapar 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 arbetar i flerspelarläge. Uppgiften för denna process är att kontrollera användarens säkerhetsattribut (inloggning och lösenord) och starta processen som ger ett gränssnitt för operativsystemet för att interagera med användaren, vanligtvis skalet. 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. Standardtolken 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å Öppna kommer att resultera i anslutning till www2-servern och uppkomsten av ett inloggningsfönster, där PuTTY Security Alert-meddelandet visas vid första försöket att ansluta till Linux-servern om frånvaron av en ny RSA-nyckel i registercachen, godkänn 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 är gjort korrekt, kommer du att se kommandoradsuppmaningen från shell 2-tolken i samma fönster: ~ $ _ Nu kan du interagera med Linux OS genom 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 nästa 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 alla dolda filer med namnet "." Prefix i listan över innehållet i den aktuella katalogen. (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 den dold. 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 kommandonycklarna kan erhållas med hjälp av hjälptangenten, 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 systemadministratören för servern ... 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 manvyn 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 när det hänvisar till kommandot eller funktionen som används, till exempel printf / 3 och indikeras av den första parametern för kommandot $ 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 fysisk enhet och filsystemtyp 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 icke namngivna 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: Directory not tom och raderingen kommer att 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 echo -kommandot $ 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 Vlasov S. I 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 istället för. / träd som visas ovan kommer inte att göra att filen hittas i den aktuella katalogen. Detta beror på att den anonyma aktuella katalogen av säkerhetsskäl inte ingår i miljövariabeln PATH, 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 kommandot cat för att omdirigera utdata till filen $ cat> file the text 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 bifogad 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 ta bort en fil görs med kommandot $ rm fil Bland annat låter -r eller -R-omkopplaren dig rekursivt ta bort ett katalogunderträd. 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 jobbet 24 januari kl. 20:36 2011, ange $ date. Observera också att tidskommandot som finns på UNIX-system visar tiden som används av följande process (realtid, användarlägestid och kärnlägestid) 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 utgång real user 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. Registreringen 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 moderna 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 bara den dolda länken 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 ett 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 korta meddelanden till varandra med kommandot $ skriv namn Användaren med angivet namn/terminal kommer omedelbart att få ett meddelande från ditt_namn på tty0 kl. 10:30 .. och om du fortsätter genom att skriva på din terminal (här på tty0), kommer meddelandet omedelbart att visas rad för rad på terminalen för användaren 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 den här funktionen 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 message upp till 20 rader Ctrl -D Logga ut $ logga ut Du kan också använda Ctrl-D eller $ exit. Logga ut kommandot kanske inte avslutar sessionen, men visar ett av två meddelanden eller Det finns stoppade jobb inte login shell: använd "exit" Z) uppgifter. Du har möjlighet att fortsätta utfö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 exit- eller Ctrl-D-kommandot i det aktuella skalet för att återgå till skalprocessen som skapades av inloggning. Slutsatser OS är ett komplext mjukvarusystem som består av delsystem för hantering av olika resurser.Syftet med kursen är att studera huvuddragen i hur kärndelsystemen i UNIX/Linux OS fungerar genom systemanropsgränssnittet. 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 för var1 i värde1 värde2 värde3 gör echo $ 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å organisationen av arbetet 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 pågående process, implementera en processkontextväxlare

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 leds av: Nikolai Pavlovich Khrapov Institutet för informationsöverföringsproblem vid Ryska vetenskapsakademin Praktisk lektion Grunderna i att arbeta med Linux OS Installation av en BOINC-server Praktisk lektion Grunderna 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

Laborationer 4 INTRODUKTION TILL PROCESSER Syfte med arbetet Att sätta sig in i 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 -adress Klicka på Öppna Studentx Användarnamn Studentx Lösenord 2 Skapa katalog

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

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

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

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 ett operativsystem Det faktum att du läser den här boken tyder på att du vill lära dig Linux. Innan du ger dig ut på 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 OGODKÄND INFORMATIONSKYDDSYSTEM Dallas Lock Linux Operator (User) Manual 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. 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örsguide 2018 Aktiv Företag I detta dokument Detta dokument innehåller svar på följande frågor: Vad används programvaran Rutoken Logon till? (se sid.

Lektionens innehåll Terminologi Verktyg för fjärråtkomst 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 ner en FTP-fil med WS_FTP LE-klienten Del 3. Kör FTP i en webbläsare Initial data / skript 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 sätta upp ett nätverksoperativsystem FreeBSD FreeBSD FreeBSD är ett modernt operativsystem för servrar, stationära datorer och inbyggda 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 FÖR STUDENTER VID STUDIERING AV DISCIPLINEN "DRIFTSSYSTEM" 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 att alla hårdvaru- och mjukvarudelar på datorn interagerar 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 skaffa 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 kommandoradstolken för Windows OS Teoretisk del. En katalog är en speciell typ av fil som innehåller namnen på underkataloger

Operativsystem Programvara Operativsystemet är det viktigaste programmet Operativsystemet är en uppsättning program som säkerställer samverkan mellan alla hårdvaru- och mjukvarudelar

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 mellan användaren och det stationära operativsystemet det grafiska användargränssnittet (grafiskt

PRAKTISKT ARBETE 2 Kommandorad 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 de grundläggande grunderna för 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 "PROGRAMMERINGSSPRÅ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 samtidigt

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 behöver du ett installerat och fungerande grafiskt gränssnitt, inklusive de grundläggande X-Window-paketen,

1.1 OS-historia De första (1945-1955) datorerna fungerade utan operativsystem, som regel körde de ett program. 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 hur du arbetar med filer och kataloger, kör program, visar 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ändarhandbok 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 "REDIRECTING DATA STREAMS" Strömmar och filer Logiskt är alla filer i ett Linux -system organiserade i en kontinuerlig ström av byte. Vilken fil som helst kan fritt kopieras och läggas till i en annan

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 Intel Corporations anpassning av Unix till 32-bitars mikroprocessorer, 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å grundval 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 - ett OS baserat på Mach-kärnan som används 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.

Operativsystemet Unix dök upp under utvecklingen av minidatorer. 1969 började undersökningsföretaget Bell Labs utveckla ett kompakt operativsystem för Digital Equipment Corporations 18-bitars DEC PDP-7 minidator. Ursprungligen skrevs systemet i assembler och Unix födelsedatum anses vara den 1 januari 1970. 1973 skrevs den om till 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 deras idé för "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 systemanrop (gaffel, vänta, exec, exit) dök upp. 1972 gav införandet av rör datapipelining.

I slutet av 1970-talet hade Unix blivit ett populärt operativsystem, med hjälp av förmånliga villkor för universitetsdistribution. Unix överfördes till många hårdvaruplattformar och smaker började dyka upp. Genom åren har Unix blivit standarden, inte bara för professionella arbetsstationer, utan också för stora företagssystem. Tillförlitligheten och flexibiliteten i 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ällkodspolicyn 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 köra 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 operativmiljö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 ansvariga för processdispatch, minnesallokering, arbete med filsystemet, stöd för externa enhetsdrivrutiner, nätverksverktyg och säkerhetsverktyg.

Senare, genom att separera den minsta nödvändiga uppsättningen verktyg från den traditionella kärnan, bildades en mikrokärna. 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 driftmiljö 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 Institutet för tillämpad cybernetik vid ministeriet för luftfartsindustri. 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 hög grad av skalbarhet och feltolerans.

Dela detta