Osnove Linuxa. Osnove Linuxa - Komandna linija i poznate verzije UNIX-a

Godine 1965. Bell Telephone Laboratories (odjel AT&T-a), zajedno sa kaznenim operaterom i Massachusetts Institute of Technology (rIT), počeo je razvijati novi operativni sistem pod nazivom rULTIqS (rULTipleoed Information and Computing Service). Učesnici projekta su imali za cilj kreiranje multitasking timesharing operativnog sistema koji bi mogao da podrži rad nekoliko stotina korisnika. Iz Bell Labsa u projektu su učestvovala dva učesnika: Ken Thompson i Dennis Ritchie. Iako sistem rULTIqS nikada nije završen (Bell Labs se povukao iz projekta 1969.), postao je preteča operativnog sistema koji je kasnije postao poznat kao Unio.

Međutim, Thompson, Ritchie i brojni drugi zaposlenici nastavili su raditi na stvaranju prikladnog programskog sistema. Koristeći ideje i razvoje koji su proizašli iz rada na rULTIqS-u, stvorili su mali operativni sistem 1969. koji je uključivao sistem datoteka, podsistem za upravljanje procesima i mali skup uslužnih programa. Sistem je napisan na asembleru i korišćen na računaru nDn-7. Ovaj operativni sistem je nazvan UNIX, naziv sličan rULTIqS i skovao ga je drugi član razvojnog tima, Brian Kernigan.

Iako je rana verzija UNIX-a obećavala mnogo, ne bi ostvarila svoj puni potencijal bez primjene na nekom stvarnom projektu. I takav projekat je pronađen. Kada je odeljenju za patente Bell Labsa 1971. godine bio potreban sistem za obradu teksta, UNIX je izabran kao operativni sistem. Do tada je prebačen na moćniji nDn-11 i malo je narastao.16K je zauzimao sam sistem, 8K je dodijeljeno aplikativnim programima, maksimalna veličina Datoteka je postavljena na 64K sa 512K prostora na disku.

Ubrzo nakon što su stvorene prve asemblerske verzije, Thomson je počeo raditi na kompajleru za jezik FxuTuAN, i kao rezultat toga je razvio jezik B. Ovo je bio tumač sa svim ograničenjima interpretatora, a Ritchie ga je razvio u drugi jezik, tzv. q, što je omogućilo generisanje mašinskog koda. Godine 1973. jezgro operativnog sistema je prepisano u jeziku C visokog nivoa, što je ranije bio nečuven potez koji je imao ogroman uticaj na popularnost UNIX-a. To je značilo da se UNIX sistem sada može prenijeti na druge hardverske platforme za nekoliko mjeseci i unošenje promjena nije bilo posebno teško. Broj pokrenutih UNIX sistema u Bell Labs-u je premašio 25, a grupa UNIX Sgstem Proup (USp) je formirana za održavanje UNIX-a.

Istraživačke verzije (AT&T Bell Labs)

U skladu sa američkim saveznim zakonom, AT&T nije imao pravo na komercijalnu distribuciju UNIX-a i koristio ga je za svoje potrebe, ali je od 1974. godine operativni sistem počeo da se prenosi na univerzitete u obrazovne svrhe.

operativni sistem svaka je modernizovana nova verzija je isporučeno sa odgovarajućim izdanjem Programerskog vodiča, iz kojeg su same verzije dobile naziv izdanja (jdition). Ukupno 10 izdanja objavljeno je od 1971. do 1989. godine. Najvažnija izdanja su navedena u nastavku.

Revizija 1 (1971)

Prva verzija UNIX-a napisana u asemblerskom jeziku za nDn-11. Uključuje B jezik i mnoge dobro poznate komande i uslužne programe, uključujući cat, chdir, chmod, cp, ed, find, mail, mkdir, mkfs, mount, mv, rm, rmdir, wc, who. Prvenstveno se koristi kao alat za obradu teksta za patentno odjeljenje Bell Labsa.

Revizija 3 (1973)

Komanda ss se pojavila u sistemu, pokrenuvši kompajler jezika C. Broj instalirani sistemi dostigao 16.

Revizija 4 (1973)

Prvi sistem u kojem je kernel napisan na jeziku visokog nivoa C.

Revizija 6 (1975)

Prva verzija UNIX-a dostupna izvan Bell Labs-a. Sistem je potpuno prepisan u C. Od tog vremena počele su da se pojavljuju nove verzije koje nisu razvijene u Bell Labs-u i popularnost UNIX-a je počela da raste. Ova verzija sistema je instalirana na Univerzitetu Kalifornije u Berkliju, a na njenoj osnovi je ubrzo puštena i prva verzija BSD (Berheleg Softkare Distributuion) UNIX-a.

Revizija 7 (1979)

Uključuje komandni interpreter Bourne Shell i C kompajler od Kernighana i Ritchieja. Jezgro sistema je ponovo napisano radi prenosivosti na druge platforme. Licencu za ovu verziju kupio je ricrosoft, koji je na njoj razvio operativni sistem XjNIX.

UNIX je rastao u popularnosti, a do 1977. broj operativnih sistema je premašio 500. Iste godine sistem je po prvi put portiran na računar koji nije nDn.

UNIX genealogija

Ne postoji standardni UNIX sistem; svi sistemi slični UNIX-u imaju karakteristike i mogućnosti koje su jedinstvene za njih. Ali iza različitih imena i karakteristika i dalje je lako uočiti arhitekturu, korisnički interfejs i programsko okruženje UNIX-a. Objašnjenje je prilično jednostavno: svi ovi operativni sistemi su bliski ili dalji rođaci. U nastavku su opisani najistaknutiji predstavnici ove porodice.

Sistem III (1982)

Ne želeći da izgubi inicijativu za razvoj UNIX-a, AT&T je 1982. spojio nekoliko postojećih verzija OS-a i stvorio verziju pod nazivom Sgstem III.

Ova verzija je bila namijenjena za distribuciju izvan Bell Labs i AT&T, i označila je početak moćne grane UNIX-a koja je i danas živa i raste.

Sistem V (1983)

Godine 1983. izašao je System V, a kasnije još nekoliko izdanja za njega:

  • SVR2 (1984): Međuprocesna komunikacija (IPC) zajednička memorija, semafori
  • SVR3 (1987): I/O Streams sistem, Sistem podataka Prebacite, dijeljene biblioteke
  • SVR4 (1989): NFS, FFS, BSD utičnice. SVR4 kombinuje mogućnosti nekoliko dobro poznatih verzija UNIX-a - SunOS, BSD UNIX i prethodnih izdanja System V.

Mnoge komponente ovog sistema su podržane ANSI, POSIX, X/Open i SVID standardima.

UNIX BSD (1978) (Bazirano na UNIX 6. izdanju)

  • 1981, po nalogu DAunA, Tqn/In stek je ugrađen u BSD UNIX (u 4.2BSD)
  • 1983. aktivno koristio mrežne tehnologije i mogao se povezati na ARPANET mrežu
  • Objavljena verzija 4.3BSD 1986
  • 1993. Objavljeni 4.4BSD i BSD Lite (zadnje izdane verzije).

OSF/1 (1988) (Open Software Foundation)

1988. godine, IBM, DEC, HP su se udružili kako bi stvorili verziju UNIX-a nezavisnu od AT&T i SUN-a i stvorili organizaciju pod nazivom OSF. Rezultat aktivnosti ove organizacije bio je operativni sistem OSF/1.

Standardi

Što se više različitih varijanti UNIX-a pojavljivalo, to je očiglednija postajala potreba za standardizacijom sistema. Posjedovanje standarda olakšava prijenos aplikacija i štiti i korisnike i proizvođače. Kao rezultat toga, pojavilo se nekoliko organizacija povezanih sa standardima i razvijen je niz standarda koji su uticali na razvoj UNIX-a.

IEEE POSIX (Institut inženjera elektronike i elektronike Portable Operating System Interface)

  • 1003.1 (1988) API (Aplikacijski programski interfejs) OC standardizacija
  • 1003.2 (1992) definicija ljuske i korisnih programa
  • 1003.1b (1993) Real-time Application API
  • 1003.1c (1995) definicije "niti"

ANSI (Američki nacionalni institut za standarde)

X/Open

  • 1992 Xwindow standard
  • 1996. stvaranje, zajedno sa OSF-om, korisničkog interfejsa CDE (Common Desktop Environment) i njegovog interfejsa sa Motiff grafičkom ljuskom

SVID (System V Interface Definition)

Opisuje eksterna sučelja UNIX verzija System V. Pored SVID-a, objavljen je i SVVS (System V Verification Suite) - skup tekstualnih programa koji vam omogućava da utvrdite da li je sistem usklađen sa SVID standardom i da li je dostojan nosi ponosno ime System V.

Poznate verzije UNIX-a

  • IBM AIX baziran na SVR2 sa mnogim karakteristikama SVR4, BSD, OSF/1
  • HP-UX verzija HP-a
  • IRIX verzija Silicon Graphics, slična SVR4
  • Digitalna UNIX verzija DEC-a zasnovana na OSF/1
  • SCO UNIX (1988) jedan od prvih UNIX sistema za PC razvijen na bazi SVR3.2
  • Solaris verzija UNIX SVR4 kompanije Sun Microsystems

UNIX operativni sistem

Zvaničan datum rođenja operativnog sistema UNIX smatra se 1. januara 1970. godine. Od ovog trenutka svaki UNIX sistem broji svoje sistemsko vrijeme. Ovo je veoma dugo vreme za operativni sistem. Danas, uprkos pojavi mnogih drugih operativnih sistema izgrađenih na drugačijim principima, UNIX čvrsto zauzima svoje mesto među liderima.

Glavne karakteristike UNIX-a, koje nam omogućavaju da razumemo razloge dugovečnosti ovog sistema, uključuju sledeće.

Sistemski kod je napisan na visokom nivou SI, što ga čini lakim za razumijevanje, promjenu i prijenos na druge hardverske platforme.

Uprkos raznovrsnosti verzija UNIX-a, cijela porodica je bazirana na suštinski identičnoj arhitekturi i nizu standardnih interfejsa.

UNIX ima jednostavan, ali moćan skup standardnih korisničkih interfejsa.

UNIX Unified File System Interface pruža pristup ne samo podacima pohranjenim na diskovima, već i terminalima, štampačima, magnetnim trakama, CD-ovima, mrežama, pa čak i memoriji.

Za UNIX sistem razvijen je veliki broj različitih aplikacija – od najjednostavnijih uređivači teksta na moćne sisteme upravljanja bazama podataka.

IN opšti pogled UNIX operativni sistem može biti predstavljen dvoslojnim modelom, kao što je prikazano na Sl. 8.1
.

U centru je sistemsko jezgro. Kernel je u direktnoj interakciji sa računarskim hardverom, izolujući aplikativne programe od karakteristika njegove arhitekture. Kernel uključuje programe koji implementiraju skup usluga koje se pružaju aplikacijskim programima. Usluge kernela uključuju I/O operacije, kreiranje i upravljanje procesima, sinhronizaciju procesa itd. Sljedeći nivo modela su sistemske usluge koje pružaju korisnički interfejs UNIX OS-a. Šema interakcije sa jezgrom aplikacija i sistemskih zadataka je ista.

Funkcije UNIX operativnog sistema

UNIX operativni sistem radi u interakciji sa hardverskim i softverskim resursima računara sljedeće funkcije:

    upravljanje opremom;

    upravljanje resursima;

    praćenje sistema;

Upravljanje opremom

Aplikacioni programi nemaju mogućnost da direktno kontrolišu hardver računara. Samo operativni sistem obavlja funkcije upravljanja hardverom, dozvoljavajući aplikacijama i drugim programima pristup perifernih uređaja(ovo eliminira potrebu za poznavanjem specifičnosti upravljanja takvim uređajem). Koncept programske nezavisnosti od specifične hardverske implementacije, ugrađen u OS, jedan je od važnih elemenata osiguravanja prenosivosti UNIX operativnog sistema, što mu omogućava široku upotrebu u različitim hardverskim konfiguracijama.

Upravljanje resursima

UNIX OS upravlja distribucijom računarskih resursa među mnogim korisnicima koji obavljaju mnoge zadatke istovremeno, često radeći sa različitim objektima, podržavajući višezadaćnost i višekorisničke režime rada. Multitasking omogućava jednom korisniku da istovremeno pokreće više programa, dok se CPU i RAM dijele među više procesa.

Višekorisnički način rada omogućava više korisnika da rade istovremeno dijeljenjem računarskih resursa, uključujući skupe periferne uređaje kao što su štampači ili ploteri. Ovaj način rada se ispostavilo da je isplativiji od kombiniranja nekoliko strojeva sa po jednim korisnikom.

Podrška korisničkom interfejsu

Ovo je način pružanja interaktivne (omogućavanja dijaloga) interakcije između korisnika i računarskog sistema.

Moderne verzije UNIX operativnog sistema podržavaju nekoliko tipovi interfejsa: komandna linija, meni i grafičko korisničko sučelje.

Komandna linija obično pogodan za korisnike koji su upoznati sa funkcijama i timovi sistemima. Kada radi sa ovom vrstom interfejsa, korisnik na „prompt“ (podrazumevano za korisnika je znak dolara) unosi svaku komandu sa tastature. Ovaj interfejs ne pruža pregled sistema, ali vam omogućava da izvršite bilo koju komandu na sistemu. Programi koji pružaju takav interfejs se nazivaju komandne školjke(ljuska). Postoji mnogo komandnih školjki: Bourne shell (sh), Bourne Again Shell (bash), Korn shell (ksh), C shell (csh), Debian Almquist shell (dash), Zsh, itd. Najčešći je bash.

Obično ga koriste početnici ili korisnici koji trebaju izvršiti neke instalacije u operativnom sistemu. Često takav interfejs funkcioniše kao vodič: omogućava korisniku da odabere funkciju sa liste (menija) koju će izvršiti sistem. Tipično, meniji su organizirani kao slojeviti tekst, nudeći korisniku više izbora. Primjer takvog sučelja je program sysadm, koji pomaže administratoru sistema da izvrši rad na konfiguraciji i konfiguraciji sistema.

Grafičko korisničko sučelje namijenjen kako početnicima tako i naprednim korisnicima. Pruža nekoliko načina za interakciju sa računarom: pregled sistemskih objekata prikazanih ikonama, izvršavanje komandi odabirom grafičke slike (ikone) na ekranu pomoću „miša“ ili uređaja za praćenje. UNIX OS pruža X.desktop kao grafičko korisničko sučelje za rad sa posebnim X terminalima, ili X Window sistem za rad sa običnim grafičkim terminalima.

Sigurnost daljinski pristup V računarsku mrežu

UNIX OS pruža korisnicima pristup resursima drugih računara koji se koriste računarsku mrežu. Operativni sistem sadrži skup mrežnih aplikacija koje vam omogućavaju da uspostavite vezu sa udaljenim računarom, registrujete se u udaljenom sistemu, prenosite podatke između mrežnih računara i koristite e-poštu. UNIX podržava umrežavanje NFS sistem datoteka (Mrežni fajl System), koji vam omogućava da koristite komande operativnog sistema za pristup sistemu datoteka udaljenog računara.

Komponente UNIX operativnog sistema

Kao što je gore pomenuto, operativni sistem je skup programa koji obezbeđuje funkcije za upravljanje procesima u sistemu i implementira interfejs između korisnika i sistemskog hardvera. UNIX sistem sadrži tri glavne komponente: komandni sistem, shell i kernel.

UNIX operativni sistem sadrži nekoliko stotina naredbi koje obavljaju zadatke organiziranja i obrade podataka i upravljanja korisničkim okruženjem. Same naredbe su programi koji obavljaju specifične funkcije, obično zahtijevaju minimalan unos, i izvršavaju se relativno brzo. Većina njih je dostupna svim korisnicima, ali postoje komande koje su dostupne samo administratoru sistema, koji je privilegovani korisnik. Ponekad se pozivaju neke komande koje dozvoljavaju interaktivni unos informacija kada se izvrše komunalne usluge. Primjeri uslužnih programa uključuju vi uređivač teksta i komandu mail za upravljanje e-poštom.

Školjke. Školjke se obično nazivaju interaktivnim programima koji pružaju korisnički interfejs kernelu operativnog sistema. Shell postaje korisnikov aktivni proces od trenutka kada se prijavi na sistem do odjave. Ovi programi su interpretatori komandi (ponekad se nazivaju komandni procesori).

Kao što je gore navedeno, UNIX operativni sistem obično koristi nekoliko školjki.

Ograničene ljuske (rsh i ksh su podskupovi Bourne ljuske i Korn ljuske) dizajnirane su za korisnike koji trebaju ograničiti pristup sistemu.

Core. Sistemsko jezgro je jezgro operativnog sistema, koje pruža osnovne funkcije: kreiranje i upravljanje procesima, dodeljivanje memorije i omogućavanje pristupa datotekama i perifernim uređajima.

Interakcija zadataka aplikacije sa jezgrom odvija se kroz standardni interfejs sistemskog poziva. Interfejs sistemskog poziva definira format zahtjeva za osnovne usluge. Proces zahtijeva osnovnu funkciju kernela putem sistemskog poziva do određene procedure kernela. Kernel izvršava zahtjev i vraća potrebne podatke procesu.

Jezgro se sastoji od tri glavna podsistema:

    1) podsistem za upravljanje procesima i memorijom;

    2) datotečni podsistem;

    3) ulazno/izlazni podsistem.

Izvodi sljedeće funkcije:

    kreiranje i brisanje procesa;

    raspodjela sistemskih resursa između procesa;

    sinhronizacija procesa;

    interakcija procesa.

Posebna funkcija kernela koju izvodi planer procesa (planer) rješava sukobe između procesa u nadmetanju za sistemske resurse.

Omogućuje dodjelu memorije između procesa. Ako nema dovoljno memorije za sve procese, kernel premješta dijelove procesa ili nekoliko procesa (obično pasivnih, koji čekaju neke događaje u sistemu) u posebno područje ​​​disk ("swap" područje ), oslobađanje resursa za pokretanje (aktivnih) procesa.

Podsistem datoteka pruža jedinstveni interfejs za pristup podacima koji se nalaze na disk jedinicama i perifernim uređajima. Izvodi operacije postavljanja i brisanja datoteka, obavlja operacije upisivanja/čitanja podataka o fajlu, a također kontrolira prava pristupa datotekama.

Izvodi zahtjeve iz podsistema datoteka i podsistema kontrole procesa za pristup perifernim uređajima. Interagira sa drajverima uređaja - specijalni programi kernela koji služe eksternim uređajima.

Pristup UNIX sistemu

Da biste uspostavili kontakt sa UNIX sistemom, vi mora imati:

    terminal;

Dobijanje registracionog imena

Registracijsko ime je ime koje UNIX sistem koristi da provjeri da li ste ovlašteni korisnik sistema kada mu zatražite pristup.

Morate unijeti svoje ime za prijavu svaki put kada se želite prijaviti.

Postoji nekoliko pravila za odabir imena za registraciju. Obično je dužina imena između 3 i 8 znakova. Može se sastojati od velikih ili malih slova, brojeva i donjih crta, ali ne može početi brojem.

Međutim, vaše registracijsko ime može biti specifično za vašu prijavu. Primjeri valjanih imena:

Komunikacija sa UNIX sistemom

Ako je UNIX instaliran na personalnom računaru, možete se prijaviti direktno na njega koristeći virtuelnu konzolu zasnovanu na tekstu. Ali moguće su i druge opcije pristupa.

Pretpostavimo da je terminal povezan direktno ili preko telefonske linije na računar. Iako ovaj odjeljak opisuje tipičnu proceduru prijave, ova uputstva se možda neće primijeniti na vaš sistem jer... Postoji nekoliko načina da se prijavite na UNIX sistem putem telefonske linije.

Da biste komunicirali sa sistemom, morate uključiti terminal.

Ako je direktno povezan sa računarom, u gornjem levom uglu će se odmah pojaviti prompt:

Ako se kao terminal koristi lični računar konfigurisan da radi na mreži koristeći porodicu TCP/IP protokola, potrebno je uspostaviti vezu sa računarom na kojem je instaliran UNIX OS. To se može učiniti na nekoliko načina, na primjer korištenjem telnet mrežne aplikacije koja se nalazi u Windows operativnim sistemima ili korištenjem alata za pristup Internetu. Napominjemo da je ovo nesiguran protokol koji se danas praktički više ne koristi. Moderna alternativa je Secure Shell (SSH).

Primjer.

Kao terminal koristi se lični računar sa Windows NT OS konfigurisanim za mrežni rad. Morate se registrovati u UNIX sistemu.

Potrebni ulazi i radnje:

    da biste uspostavili vezu sa UNIX OS-om, morate znati naziv mreže udaljenog računara ili njegovu IP adresu (na primjer, 192.168.2.19);

    pronađite telnet aplikaciju na svom ličnom računaru i pokrenite je;

    u prozoru aplikacije koji se otvori odaberite stavku menija Veza;

    unesite IP adresu udaljenog UNIX sistema (na primjer, 192.168.2.19);

    podesite karakteristike terminala po želji.

Procedura registracije

Kada se pojavi upit za prijavu: unesite svoje ime za prijavu i pritisnite . Na primjer, ako je vaše ime za prijavu all30123, onda bi niz za prijavu izgledao ovako:

    prijava: all30123

Ako pogriješite prilikom unosa korisničkog imena, možete je ispraviti pomoću simbola @ ili tipke .

Zapamtite da su velika i mala slova znakova koje unosite važni. Imena all30123 i ALL30123 pripadaju dva različita korisnika.

Sistem sada traži da unesete svoju lozinku. Unesite svoju lozinku i pritisnite tipku . Ako pogriješite prilikom unosa, možete je ispraviti pomoću ključa ili simbol @. UNIX ne prikazuje vašu lozinku na ekranu iz sigurnosnih razloga.

Ako su korisničko ime i lozinka važeći na UNIX sistemu, sistem može prikazati trenutne informacije, a zatim i komandnu liniju.

Kada se prijavite, ekran vašeg terminala će izgledati ovako:

    prijava: all30123

Ako napravite grešku prilikom prijavljivanja, UNIX će prikazati poruku:

    prijava pogrešna

Tada će vam dati drugu priliku da se prijavite sa promptom za prijavu. Ekran će izgledati ovako:

    prijava: all30123

Ako se nikada niste prijavili na UNIX sistem, vaša procedura prijave se može razlikovati od gore opisane. Ovo se može dogoditi ako administrator sistema ima proceduru za dodjelu privremenih lozinki novim korisnicima. Ako imate privremenu lozinku, sistem će vas prisiliti da odaberete novu lozinku prije nego što vam dozvoli registraciju.

Prisiljavajući vas da odaberete novu lozinku isključivo za vašu upotrebu, sistem pruža veću sigurnost.

Procedura prijave:

    Uspostavljate kontakt; UNIX sistemi prikazuju login: prompt. Unesite svoje korisničko ime i pritisnite tipku .

    UNIX sistemi prikazuju lozinku: upit. Unesite svoju privremenu lozinku i pritisnite tipku .

    Sistem će vas obavijestiti da vaša privremena lozinka više nije važeća i zatražiti od vas da odaberete novu lozinku.

    Sistem će od vas tražiti da unesete svoj Stara šifra. Unesite privremenu lozinku.

    Sistem će od vas tražiti da unesete novu lozinku. Unesite lozinku koju ste odabrali.

Lozinka se mora podudarati slijedećih zahtjeva:

    Svaka lozinka mora sadržavati najmanje, od 6 karaktera;

    Svaka lozinka mora sadržavati najmanje 2 abecedna znaka i jedan broj ili poseban znak. Abecedni znak se može upisati velikim ili malim slovima;

    Svaka lozinka mora se razlikovati od vašeg korisničkog imena. Velika slova i njihova odgovarajuća mala slova su ekvivalentna;

    Nova lozinka mora se razlikovati od stare za najmanje tri znaka.

Primjeri važećih lozinki:

Za provjeru, sistem traži da ponovo unesete lozinku. Ponovo unesite lozinku.

Ako unesete novu lozinku drugi put drugačije nego prvi put, sistem će vas obavijestiti da se lozinke ne podudaraju i zatražit će da ponovite postupak registracije. Kada se lozinke poklope, sistem će prikazati savjet.

Sljedeći ekran prikazuje opisanu proceduru:

    prijava: dko30123

    lozinka:

    Vaša lozinka je istekla

    Odaberite novu

    Stara šifra:

    Nova šifra:

    Ponovo unesite novu lozinku:

Identifikacija korisnika

Kada administrator sistema registruje korisnika na sistemu, dve komponente identifikacije su povezane sa imenom za prijavu: Korisnički broj(korisnički ID - UID) i ID grupe kojoj pripada (ID grupe - GID).

Korisničko ime je povezano s jedinstvenim brojem. Sistem ga koristi kao alat u raznim UNIX sigurnosnim mehanizmima, kao što je zaštita datoteka ili izvršavanje privilegiranih naredbi.

Svaki UNIX OS ima jednog specijalnog superkorisnika sa UID = 0, koji je obično povezan sa imenom root. To znači da korisnik ima sve sistemske privilegije.

Ime grupe je također povezano s brojem, koji se obično odnosi na grupu korisnika ujedinjenih zajedničkim zadacima, na primjer, zaposlenici odjela, studenti istog toka, itd. Ovaj broj koriste i sigurnosni mehanizmi u sistemu. Ako korisnik mora raditi s podacima iz drugih grupa, ovaj identifikator je povezan s imenima drugih grupa.

Sve informacije o registraciji o korisnicima sistema pohranjene su u /etc/passwd datoteci.

IN moderne verzijeŠifrovane lozinke UNIX OS-a i povezane sistemske informacije pohranjene su u /etc/shadow datoteci, čija je struktura i svrha polja prikazana na Sl. 8.2
.

Zapisi podataka za svaki uspostavljena grupa nalaze se u datoteci /etc/group, čija je struktura i svrha polja prikazana na Sl. 8.3 .

Struktura i svrha polja u datoteci /etc/passwd prikazani su na Sl. 8.4
.

Konvencije unosa

Kada komunicirate sa UNIX sistemom, morate biti svjesni konvencija unosa. UNIX sistem zahtijeva od vas da unosite komande malim slovima (sa izuzetkom nekih komandi koje imaju velika slova). Druge konvencije vam omogućavaju da izvršavate zadatke, kao što je brisanje slova ili brisanje reda, pritiskom na jedan ili dva tastera.

Tabela 8.1.
Ugovori o unosu

Ključ

Funkcija

Sistemska komandna linija (traži od vas da unesete svoju komandu)

ili<^h>

Obriši karakter

Zaustavite izvršavanje programa ili naredbe

Izbrišite trenutnu komandnu liniju

Kada se koristi s drugim simbolom, to znači izvođenje posebne funkcije (koja se zove sekvenca za prebacivanje koda). Kada se koristi u režimu za uređivanje vi editora, to znači kraj režima unosa teksta i povratak na komandni režim

Označava kraj linije za unos i postavlja kursor na nova linija

Zaustavite prijavu ili odjavu (isključite)

Vratite se jedan znak unazad (za terminale koji nemaju ključ )

Privremeno zaustaviti prikaz ekrana

Nastavite prikazivati ​​informacije koje ste prestali koristiti<^s>

Bilješka. U tabeli 2.1 Simbol ^ znači kontrolni znak . Odnosno, u ovom slučaju morate istovremeno pritisnuti dva tastera: taster kontrolnog karaktera i određeno slovo.

Komandni savjet

Standardni prompt komandne linije za korisnika na UNIX sistemu je znak dolara $. Za root korisnika - #. Kada se na ekranu vašeg terminala pojavi prompt, to znači da UNIX sistem čeka vaše upute. Odgovarajući odgovor na vaš upit je izdavanje naredbe nakon čega slijedi pritisak na tipku .

Ispravljanje grešaka u unosu

Postoji nekoliko načina za ispravljanje grešaka u unosu. Simbol @ briše trenutnu liniju i tipke I<^h>briše poslednji uneti znak. Ovi ključevi i znakovi su zadane vrijednosti. Funkcije koje obavljaju mogu se ponovo dodijeliti drugim tipkama.

Zaustavljanje izvršenja naredbe

Da biste zaustavili pokretanje većine komandi, jednostavno pritisnite prečicu na tastaturi . UNIX sistem će zaustaviti program i prikazati prompt na ekranu. Ovaj prompt služi kao signal da je zadnja pokrenuta naredba zaustavljena i da je sistem spreman da primi sljedeću komandu.

Kada se na ekranu pojavi prompt, UNIX sistem vas je prepoznao kao ovlaštenog korisnika i čeka da unesete komandu.

Uglavnom komandna linija ima sljedeću strukturu:

    ime [opcije] [argumenti]

Ime komande, opcije i argumenti moraju biti odvojeni razmakom ili tabulatorom. Obrada komandne linije od strane tumača počinje tek nakon pritiska na tipku .

U sljedećem opisu funkcija naredbi pretpostavlja se:

Opcije (parametri):

    su znak modifikacije komande i po pravilu se sastoje od jednog znaka; velika i mala slova označavaju različite modifikacije;

    u pravilu počinju simbolom "-" ("minus"), koji nije odvojen razmakom od ostalih znakova;

    može se kombinirati na bilo koji način, ali znak minus se može koristiti samo jednom.

Argumenti određuju objekte koje naredba treba obraditi, na primjer:

    ime dokumenta;

    broj procesa;

Ako znate šta pozvani program treba da radi, ali niste sigurni u ispravnu sintaksu, možete navesti opciju --help u komandnoj liniji nakon naziva komande:

    $cal --pomoć

Da bi se mogle dobiti detaljne informacije, UNIX OS ima ugrađen priručnik (on-line), pristup kojem omogućava man i apropos komande.

U najjednostavnijem slučaju, da biste dobili informacije o bilo kojoj komandi, morate navesti njeno ime kao argument naredbi man:

    man command_name

apropos prikazuje listu naredbi prema ključna riječ(uzorak) naveden kao argument naredbe:

    apropos template

Primjeri.

Ako pokrenete komandu datuma i pritisnete tipku , UNIX sistem poziva program koji se zove date, izvršava ga i prikazuje rezultat na ekranu:

    $date

    uto, 18. septembar 14:49:07 2000

Komanda datuma prikazuje datum i vrijeme.

Ako pokrenete komandu who i pritisnete tipku , tada će ekran izgledati ovako:

    $ SZO

    dko30024

    18. oktobar 8:30

    dko30001

    18. oktobar 8:34

    dko30020

    18. oktobar 8:32

    18. oktobar 8:00

koji navodi imena za prijavu korisnika koji trenutno rade na vašem sistemu. Oznaka tty (drugi stupac) odnosi se na posebne datoteke koje odgovaraju svakom korisničkom terminalu. Treća i četvrta kolona označavaju datum i vrijeme registracije svakog korisnika. .

To znači da ste uspješno završili rad sa sistemom i da je spreman za registraciju novog korisnika.

Ako ste se prijavili sa udaljenog terminala, veza će biti prekinuta, o čemu će vas obavijestiti, na primjer, telnet aplikacija.

Bilješka. Prije nego što isključite terminal, obavezno isključite sistem.

Glavni zaključci

    UNIX je multitasking sistem za više korisnika. Jedan moćan server može zadovoljiti zahtjeve velikog broja korisnika. Sistem može obavljati različite funkcije: raditi kao računarski server koji opslužuje stotine korisnika, kao server baze podataka, kao mrežni server ili mrežni ruter.

    Generalno, UNIX operativni sistem se može predstaviti kao dvoslojni model. U centru je jezgro sistema (kernel). Kernel je u direktnoj interakciji sa računarskim hardverom, izolujući aplikativne programe od karakteristika njegove arhitekture. Kernel uključuje programe koji implementiraju skup usluga koje se pružaju aplikacijskim programima. Usluge kernela uključuju I/O operacije, kreiranje i upravljanje procesima, sinhronizaciju procesa itd. Sljedeći nivo modela su sistemske usluge koje pružaju korisnički interfejs UNIX OS-a. Šema interakcije sa jezgrom aplikacija i sistemskih zadataka je ista.

    UNIX operativni sistem stupa u interakciju sa hardverskim i softverskim resursima računara kako bi izvršio sljedeće funkcije:

    • upravljanje opremom;

      upravljanje resursima;

      podrška korisničkom interfejsu;

      obavljanje unosa i izlaza informacija;

      praćenje sistema;

      omogućavanje udaljenog pristupa računarskoj mreži.

    UNIX sistem sadrži tri glavne komponente: komandni sistem, ljusku i kernel.

    UNIX operativni sistem sadrži nekoliko stotina naredbi koje obavljaju zadatke organiziranja i obrade podataka i upravljanja korisničkim okruženjem. Same naredbe su mali programi koji obavljaju specifične funkcije, obično zahtijevaju minimalan unos, i izvršavaju se relativno brzo.

    Školjke se obično nazivaju interaktivnim programima koji pružaju korisnički interfejs kernelu operativnog sistema. Shell postaje korisnikov aktivni proces od trenutka kada se prijavi na sistem do odjave. Ovi programi su interpretatori komandi (ponekad se nazivaju komandni procesori).

    Sistemsko jezgro je jezgro operativnog sistema, koje pruža osnovne funkcije: kreiranje i upravljanje procesima, dodeljivanje memorije i omogućavanje pristupa datotekama i perifernim uređajima.

    Kernel se sastoji od tri glavna podsistema:

    • podsistem za upravljanje procesima i memorijom;

      podsistem datoteka;

      ulazno/izlazni podsistem.

    Da biste uspostavili kontakt sa UNIX sistemom, potrebno je da imate:

    • terminal;

      korisničko ime koje vas identificira kao ovlaštenog korisnika;

      lozinku koja potvrđuje vaš identitet;

      uputstva za dijalog i pristup UNIX sistemu ako vaš terminal nije direktno povezan sa računarom.

Kontrolna pitanja

    Za koje probleme je dizajnirana klasa operativnog sistema UNIX?

    Koje mogućnosti treba da obezbedi operativni sistem UNIX klase?

    Koji su zadaci kernela UNIX OS-a?

    Koje su funkcije kernela UNIX OS?

    Koja je svrha komponente Command System operativnog sistema?

    Možemo li reći da ljuska pruža korisniku interaktivni interfejs za interakciju sa operativnim sistemom?

    Kako se autentifikacija korisnika izvodi u UNIX-u?

Transkript

1 Uvod Predmet “Osnove UNIX OS-a” je namijenjen studentima početni kursevi fakulteti zainteresovani za obuku programera softvera na jednom ili drugom nivou. Obavezni preliminarni kurs za UNIX OS je uvodni kurs u programiranje na jeziku C, kao osnovni kurs, kao i kurs iz osnova računarske arhitekture. Struktura kursa nudi 13 predavanja i povezanih laboratorija koji će vam pomoći da razumete opšti principi funkcionisanje UNIX operativnog sistema. Materijal predavanja je predstavljen u apstraktnom obliku, što ostavlja veći stepen slobode za dubinu izlaganja tema u nastavnom materijalu. Osim toga, trajanje pojedinih predavanja može varirati od 2 do 6 sati po potrebi. Laboratorijska nastava ne zahtijeva korištenje specijalizirane laboratorije ili specifičnog UNIX/Linux klona i može se izvoditi na ličnim računarima učenika koristeći bilo koji raspoloživi UNIX, Solaris, Linux, FreeBSD, Mac OS X itd. softver, pod uslovom da je odgovarajući paketi se instaliraju iz spremišta za programere. U praksi se obično koristio daljinski pristup Linux serveru preko SSH protokola Windows radnici stanice i PuTTY 1 kao SSH klijent. Konačno, imajte na umu da se svi zadaci izvode u tumaču komandi ljuske (bash) i da se ovdje ne raspravlja o različitim postojećim X Window (X11) interfejsima (CDE, GNOME, KDE, Xfwm, Xfce ili wmii, itd.), što omogućava da koristite minimalne konfiguracije kernela i koncentrišite se na učenje OS kernela od samog početka kursa. Zašto je, uostalom, Linux izabran da predstavlja osnove operativnih sistema, a ne, na primjer, Microsoft Windows? Postoji nekoliko razloga: open source Linux, UNIX ideologija ugrađena u njega, glavne OS ideje implementirane u UNIX/Linux se također koriste u Microsoft Windows-u: multitasking, hijerarhijski sistem podataka, višekorisnički sistem, virtuelna memorija, ugrađen mrežni stog, multithreading i, što je najvažnije, Linux kernel se sve više bira za izgradnju kompjuterski sistemi na različitim nivoima od distribuiranih i cloud servera u korporativnom sistemu do mobilnih i ugrađenih u kontrolne čipove sistema. 1 Vlasov S.V Fakultet računarskih nauka VSU, Voronjež 1

2 Predavanje 1. Osnovni pojmovi. Operativni sistem je softverski proizvod dizajniran za upravljanje računarskim resursima: hardverom, podacima, programima i procesima. Obavezna komponenta OS-a je kernel; sve ostale komponente su aplikacije koje se po potrebi dodaju OS-u. Na primjer, kada kažu: “ Linux verzije..." znače kernel, ali pod GNU/Linuxom podrazumijevaju klon sa određenim kernelom i skupom aplikacija (Debian, Red Hat, Susse, itd.) Kernel OS je obavezna komponenta OS-a koja osigurava strukture podataka i programa i procesa, kao i hardverski ovisan kod neophodan za upravljanje računarskim resursima. Postoje različiti principi za konstruisanje kernela: monolitno jezgro (Linux) ili mikrokernel (npr. Minix). Kernel se može prilagoditi dodavanjem ili uklanjanjem nekih komponenti (moduli, drajveri). File specifičan niz bajt. U UNIX-u je skoro sve predstavljeno kao fajl. U ovom slučaju razlikuje se samo 7 tipova datoteka (odgovarajući simbol je naveden u zagradama: u izlazu naredbe ls -l) regularne datoteke (-) posebne datoteke: direktorij, (d) simbolička veza, (l) imenovani cijev, (p) karakterni uređaj, (c) blok uređaj, (b) UNIX utičnica. (s) Prepoznavanje i obrada interne strukture fajla je odgovornost aplikacije za koju je fajl namenjen ili kreiran. Hijerarhijski sistem datoteka je apstrakcija za predstavljanje redoslijeda datoteka kao stablo direktorija. Korijen stabla je direktorij pod nazivom "/", koji se naziva korijenski sistem datoteka (ne treba ga brkati sa /root). Posebnost Linux hijerarhijskog sistema datoteka je u tome što je virtualan, u smislu da bilo koji čvor u jednoj hijerarhiji može biti povezan s vlastitim sistemom datoteka određenog tipa (ext2fs, ext3fs, riserfs, vfat, itd.), koji se nalazi na zasebnom uređaju, particiji ili direktno u memoriji. Direktorij u hijerarhiji koji se koristi u svakom ovog trenutka po defaultu se zove trenutni radni direktorij. Možete koristiti apsolutna imena datoteka počevši od korijenskog /, ili relativna imena iz trenutnog radnog direktorija (znak "." - tačka) kada je roditeljski direktorij označen znakovima ".." (dvije tačke vodoravno bez razmaka). Program je datoteka koja sadrži izvršne instrukcije. Datoteka koja sadrži ispisani tekst programa u programskom jeziku naziva se programski izvorni modul. Izvorni kod, napisan u skript jeziku (ljuska, perl, python, ruby, itd.) se izvršava direktno od strane tumača jezika. Izvori na drugim jezicima (C, Fortran, itd.) moraju biti kompajlirani da se izvorni tekst pretvori u izvršni programski modul koji sadrži instrukcije procesora u binarnom formatu (razvijajući se od a.out i COFF u ELF). Proces je program u vremenu izvođenja. Procesi su takođe organizovani u hijerarhiju sa odnosima roditelj-dete. Svi procesi u UNIX-u imaju jedinstveni integer identifikator (PID). Osnovni proces hijerarhije je proces broj 1, ovo je init proces, koji se pokreće kada se jezgro operativnog sistema pokreće i pokreće druge procese potomke. Kada je OS pokrenut, svaki proces osim init-a može biti zaustavljen. Tu je i skriveni proces 0 - swap, koji je odgovoran za straničnu virtuelnu memoriju. Proces prijave je nadređeni proces za sve procese koje generiše korisnik Vlasov S.V Fakultet računarskih nauka VSU, Voronjež 2

3 sistema koji rade u višekorisničkom načinu rada. Zadatak ovog procesa je provjeriti sigurnosne atribute (prijavno ime i lozinku) korisnika i pokrenuti proces koji obezbjeđuje sučelje za interakciju između OS-a i korisnika, obično komandnog jezika ljuske. Shell interpreter je program koji je dio specifičnog OS-a kako bi se osigurala interakcija korisnika sa OS-om. UNIX/Linux sistemi koriste različite interpretatore: bash, csh, tcsh, ksh, zsh i mnoge druge. Bash je obično podrazumevani tumač na GNU/Linux sistemima. Interpretator pruža komandnu liniju za pokretanje standardnih komandi i korisničkih programa. Vlasov S.V Fakultet računarskih nauka VSU, Voronjež 3

4 Praktični primjeri. Prijavite se putem SSH klijenta (PuTTY) U MS Windows, izaberite Start->Run i unesite: X:/Putty/Putty.exe U prozoru Putty Configuration koji se otvori unesite u polje Host Name (ili IP adresa): www2 Klikom na Otvaranje će dovesti do povezivanja na www2 server i pojavljuje se prozor za prijavu u kojem se, kada se prvi put pokušate povezati s Linux serverom, pojavljuje poruka PuTTY Security Alert o odsustvu novog RSA ključa u predmemoriji registra; složite se da uključite ključ u kešu za pouzdanu vezu sa serverom sada i u budućnosti. Kliknite na Yes. Pozivnica će se pojaviti u prozoru DOS-a Vlasov S.V FCS VSU, Voronjež 4

5 Prijava kao: ime lozinka: gdje unosite svoje korisničko ime (umjesto imena) i lozinku. Budite oprezni pri unosu lozinke, jer se tipke koje pritisnete ne prikazuju na bilo koji način prilikom unosa, čak ni zvjezdice. Ako je sve urađeno kako treba, vidjet ćete prompt komandne linije tumača shell 2 u istom prozoru: ~$ _ Sada možete komunicirati sa Linux OS-om preko interfejsa komandne linije. 3 U nastavku ćemo koristiti samo simbol $ za označavanje komandne linije, iako vam može prethoditi putanja do trenutnog radnog direktorija. Gdje smo? (kućni direktorij) Prilikom registracije u sistem, svakom korisniku se dodjeljuje siguran kućni direktorij za pohranjivanje ličnih datoteka. Kada se prijavite, proces prijave automatski montira vaš početni direktorij kao trenutni radni direktorij. Sljedeće tri naredbe bi trebale pokazati isti rezultat, punu putanju do vašeg matičnog direktorija. $ pwd $ echo ~ $ echo $HOME Šta imamo? (automatski generisani fajlovi) Sadržaj trenutnog radnog direktorijuma se može prikazati naredbom: $ ls Kada se prvi put prijavite, ova lista je obično prazna. 4 Međutim, kada se korisnik registruje, neki skriveni servisni fajlovi se kreiraju u njegovom početnom direktorijumu, koje sam korisnik može modifikovati kako bi konfigurisao potrebno okruženje. Prekidač -a naredbe ls omogućava vam da vidite sve na listi sadržaja trenutnog direktorija skrivene datoteke, imenovan s prefiksom "." (tačka) $ ls -a Inače, ova lista uključuje i anonimna imena trenutnog direktorija "." i roditeljski direktorij "..". Davanjem imena sopstvenom fajlu sa prefiksom "." (tačka) činite skrivenim. Koji sistem se koristi? Operacije i opcije konfiguracije sistema ovise o verziji OS-a koju koristite. Da biste dobili informacije o tome, koristite naredbu $ uname -a Kratke informacije o parametrima i ključevima naredbe možete dobiti pomoću tipke za pomoć, na primjer, 2 Ako imate problema s povezivanjem na server ili unosom vašeg imena i lozinke, imate samo jednu opciju, obratite se administratoru sistema servera. 3 Simbol $ ispred kursora je znak komandne linije i podrazumevani je za normalnog korisnika u bash interpreteru komandi. (Simbol # se koristi za root superkorisnika) 4 Možda imate public_html direktorij koji se može koristiti za razmjenu datoteka između Linux i MS Windows sistema zahvaljujući odgovarajućoj usluzi. Vlasov S.V Fakultet računarskih nauka VSU, Voronjež 5

6 $ uname --pomoć Detaljan opis UNIX komande i funkcije se mogu dobiti iz dokumentacije koja se zove man stranice (“manuel pages” - sistemski priručnik): $ man pwd $ man ls $ man echo $ man uname Stranice priručnika su predstavljene u posebnom formatu nroff /troff/groff i formatirane kada izlaze odgovarajući uslužni program ovisno o vrsti izlaznog uređaja. Da biste završili sa pregledom stranica priručnika, pritisnite tipku Q $ man man Manualni fajlovi se obično pohranjuju u zapakovanom obliku (sufiks.gz ili .bz2) i organizirani su u odjeljke: 1. Opće naredbe 2. Sistemski pozivi 3. Funkcije C biblioteke 4 Posebne datoteke 5. Formati datoteka i konverzija 6. Igre i screensaveri 7. Dodatno 8. Komande i demoni za administraciju sistema Broj odjeljka se koristi kada se odnosi na naredbu ili funkciju koja se koristi, na primjer, printf/3 i označen je sa prvi parametar naredbe $ man 1 printf $ man 3 printf Direktorij u kojem se nalazi stranica priručnika komande može se odrediti pomoću naredbe -w $ man -w Hijerarhijski sistem datoteka. Naredba ls se može koristiti za ispisivanje sadržaja bilo koji direktorij u hijerarhiji sistema datoteka (bez obzira na fizički uređaj i tip sistema datoteka na particiji ili u memoriji). Na primjer, korijenski sistem datoteka se prikazuje naredbom $ ls / Međutim, da bi se prikazala struktura cijelog stabla, potrebna je prilična domišljatost, na primjer, $ ls -R grep ":$" sed - e "s/:$//" -e "s/[^-][^\/]*\//--/g" -e "s/^/ /" -e "s/-/ /" gde se koristi filter regularni izrazi grep, sed stream editor i neimenovane cijevi, označene simbolom (pipe). U svom početnom direktorijumu možete kreirati novi (prazan) čvor direktorijuma u hijerarhiji, na primer, lab1 Vlasov S.V Fakultet računarskih nauka VSU, Voronjež 6

7 $ mkdir lab1 Bilo koji čvor u hijerarhiji može se odabrati kao trenutni $ cd lab1 $ pwd Da biste se vratili u svoj početni direktorij (definiran promjenljivom okoline HOME), koristite naredbu cd bez parametara $ cd $ pwd Možete izbrisati prazan direktorij sa naredbom rmdir, na primjer, $ rmdir lab1 Ako direktorij nije prazan, onda će posljednja komanda (ako lab1 sadrži neke datoteke) prikazati poruke rmdir: lab1: Direktorij nije prazan i brisanje se neće izvršiti. U trenutnom direktoriju možete kreirati, na primjer, tekstualnu (običnu) datoteku. Da biste to učinili, možete koristiti preusmjereni izlaz naredbe echo $ echo "echo Print directory tree" > tree Kreira se datoteka stabla čiji se sadržaj može ispisati naredbom $ cat tree ili u obliku stranice $ pr drvo Možete čak dodati novi red na kraj postojeće datoteke, na primjer, $ echo koristeći grep i sed >> drvo $ cat tree Možete koristiti uređivač teksta reda koji je standardni uređivač dizajniran za uređivanje teksta s pisaće mašine- tip konzole. $ ed stablo a ls -R grep ":$" sed -e "s/:$//" -e "s/[^-][^\/]*\//--/g" -e "s /^/ /" -e "s/-/ /". wq $ cat tree U stvari, napravili smo fajl sa komandama ovde, koji se može izvršiti kao nova naredba ako je proglasite "izvršnom": $ chmod +x drvo $./tree Vlasov S.V Fakultet računarskih nauka VSU, Voronjež 7

8 Imajte na umu da pokušaj izvršavanja datoteke bez navođenja trenutnog direktorija, tj. samo drvo umjesto ./tree kao što je gore prikazano neće rezultirati pronalaženjem datoteke u trenutnom direktoriju. To je zato što iz sigurnosnih razloga anonimni trenutni direktorij nije uključen u varijablu okruženje PATH, koristi se za pronalaženje programa za pokretanje po imenu. $ echo $PATH Cijela lista Korisnik može dobiti varijable okruženja i njihove vrijednosti pomoću naredbe: $ env To create tekstualne datoteke također možete koristiti naredbu cat da preusmjerite izlaz na datoteku $ cat > tekst datoteke Ctrl-D Ovdje, pritiskom na Ctrl-D šalje se znak za kraj datoteke (EOF) KRAJ PRIJENOSA u ulazni tok. Takođe možete dodati tekst na kraj fajla $ cat >> fajl pridodati tekst Ctrl-D Da biste kreirali velike tekstualne datoteke, na primer sa C izvorima, koristite moćne uređivače teksta na ekranu kao što su vi/vim, nano ili emacs. Brisanje fajla se vrši naredbom $rm file.Između ostalog, prekidač -r ili -R vam omogućava da rekurzivno izbrišete podstablo direktorijuma. Za sigurno brisanje datoteka preporučuje se korištenje prekidača -i, koji generira zahtjev za potvrdu brisanja. Premještanje i preimenovanje datoteke vrši se naredbom Date and time $ mv old new. Trenutno sistemsko vrijeme i datum se mogu odrediti komandom $ date. Za promjenu vremena i/ili datuma koristite parametar u formatu MMDDhhmmYY. Na primjer, za posao 24. januara 20:36 2011. uneli biste $ datum. Imajte na umu i da naredba time koja se nalazi na UNIX sistemima pokazuje vrijeme koje koristi sljedeći proces (realno vrijeme, vrijeme izvršavanja u korisničkom modu i kernel-mode time), a ne trenutno sistemsko vrijeme. Probajte Vlasov S.V FCS VSU, Voronjež 8

9 $ vrijeme datum trebalo bi da dobijete nešto poput sljedećeg izlaza stvarni korisnik sys 0m0.040s 0m0.000s 0m0.040s Ko je još na sistemu? UNIX OS je višekorisnički sistem koji vam omogućava da istovremeno izvršite proces prijavljivanja i dozvolite nekoliko korisnika da rade u sistemu nezavisno jedan od drugog. Da biste odredili ko je trenutno prijavljen, koristite naredbu $who, koja prikazuje korisničko ime za prijavu, terminal i vrijeme kada je proces prijave pokrenut. U višekorisničkom sistemu, isti korisnik može koristiti nekoliko različitih terminala u isto vrijeme (na primjer, nekoliko paralelnih SSH sesija). Da biste utvrdili ko koristi trenutni terminal, možete koristiti naredbu $ whoami Registrirani korisnici Dakle, za korištenje sistema morate biti registrirani korisnik. Registraciju vrši administrator sistema sa pravima superkorisnika, koji u UNIX/Linux sistemima ima standardni naziv - root. 5 Obično se svi registracioni zapisi o korisnicima pohranjuju u jednu datoteku /etc/passwd, koju mogu čitati svi $ cat /etc/passwd U ranijim verzijama sistema, šifrirana lozinka (hash) korisnika je također bila pohranjena u istu datoteku (drugo polje nakon korisničkog imena, odvojeno dvotočkom). Ali unutra najnoviji sistemi Uobičajeno je da se hešovi lozinke pohranjuju u drugu datoteku /etc/shadow, koju ne može čitati niko osim root. Polje lozinke u datoteci /etc/passwd pohranjuje samo skrivenu vezu do unosa u /etc/shadow, tako da je prikazan samo znak “*”. Za promjenu trenutne lozinke na UNIX sistemima koristite naredbu $ passwd Promjena lozinke za ime. (trenutna) UNIX lozinka: trenutna korisnička lozinka nova UNIX zfyytsshchkv: nova lozinka ponovo upišite novu UNIX lozinku: nova lozinka (opet potpuno ista kao u prethodnom redu) passwd: lozinka je uspješno ažurirana Ako postoji greška ili previše jednostavna lozinka pojavljuju se poruke, na primjer, ili passwd: Greška manipulacije tokenom autentikacije LOŠA LOZINKA: previše je jednostavna, pojednostavljena/sistematska 5 Obično se korijensko ime ne koristi za prijavu; umjesto toga, administrator kreira normalnu prijavu za sebe, ali koristi su naredba za izvođenje operacija, koje zahtijevaju privilegije superkorisnika. U Linux sistemima, popularna grupa privilegovanih korisnika su sudoeri, koji dobijaju pravo da obavljaju operacije sa njima root prava preko sudo komande Vlasov S.V FCS VSU, Voronjež 9

10 U tom slučaju morate unijeti drugu lozinku. Imajte na umu da proces passwd radi u posebnom režimu superkorisnika i zanemaruje SIGINT signal poslan pritiskom tasteri Ctrl-C, i stoga se ne može prekinuti. Jednostavan način komunikacije Korisnici koji istovremeno rade u sistemu mogu slati kratke poruke jedni drugima koristeći komandu $ write name. Korisnik sa navedenim imenom/terminalom će odmah dobiti obavijest Poruku od vašeg_name na tty0 u 10:30.. i ako ako nastavite kucati na svom terminalu (ovdje na tty0), poruka će se odmah pojaviti red po red na terminalu korisnika sa imenom navedenim u naredbi. Da biste završili poruku, morate unijeti Ctrl-D. Međutim, ako vaš protivnik ne želi primati poruke, onda koristi naredbu $ mesg n da onemogući mogućnost slanja/primanja poruka za pisanje. Da bi omogućio ovu funkciju, korisnik mora pokrenuti naredbu $ mesg y Ako trebate poslati poruku svim korisnicima na sistemu odjednom (koji imaju omogućene poruke), možete koristiti naredbu $ wall message do 20 redova Ctrl- D Odjavite se sa sesije $ logout Možete koristiti i Ctrl-D ili $ exit. Komanda za odjavu možda neće prekinuti sesiju, ali će prikazati jednu od dvije poruke ili Postoje zaustavljeni poslovi koji se ne prijavljuju na ljusku: koristite "exit" Prva poruka je upozorenje da je vaša sesija pokrenuta i pauzirana (signalom SIGSTOP ili Ctrl-Z) zadacima. Imate priliku da nastavite s izvršavanjem poslova (sa poslovima i fg komandama) dok se ne završe normalno. Međutim, ako to ne učinite, suspendovani poslovi će biti prekinuti (sa SIGTERM signalom) kada se ponovo izvrši odjava ili Ctrl-D naredba. Druga poruka znači da ste pokrenuli podređene procese iz ljuske koju je pokrenuo proces prijave koji izvode trenutnu sesiju ljuske koja nije povezana s procesom prijave. Vlasov S.V Fakultet računarskih nauka VSU, Voronjež 10

11 Morate izvršiti naredbu exit ili Ctrl-D u trenutnoj ljusci da biste se vratili na proces ljuske koji je pokrenut prijavom. Zaključci OS je složen softverski sistem koji se sastoji od podsistema za upravljanje različitim resursima.Svrha predmeta je proučavanje glavnih karakteristika funkcionisanja podsistema kernela UNIX/Linux OS kroz interfejs sistemskog poziva. Vlasov S.V Fakultet računarskih nauka VSU, Voronjež 11


MINISTARSTVO OBRAZOVANJA I NAUKE RF FEDERALNA DRŽAVNA BUDŽETSKA OBRAZOVNA USTANOVA VISOKOG STRUČNOG OBRAZOVANJA UPRAVA „Državna inženjersko-ekonomska akademija Kame“

6.31. Ciklusi. Shift parametri. za varijablu u vrijednostima uradite izjave za var1 u vrijednost1 vrijednost2 vrijednost3 do echo $var1 urađeno za File1 u $(ls *.sh); do echo $File1 >> All.txt dovršeno dok uvjet izvrši

informacione tehnologije Predavanje 3 1 Bash shell 2 Osnove Shell ili shell rade u tekstualni mod(sučelje komandne linije) Grafički korisnički interfejs (GUI) koji radi u grafičkom

SHELL Definicija: Shell [ljuska] tumač naredbi operativnog sistema. Školjke se dijele na dva tipa, ovisno o organizaciji rada sa korisnikom: - interpreter komandne linije; - grafički

2 Navigacija Prva stvar koju ćemo pokušati proučiti (nakon probnog pritiska na tipke) je navigacija u datoteci Linux sistem U ovom poglavlju uvest ćemo sljedeće naredbe: pwd prikazuje ime trenutnog radnika

SibGUTI Katedra za programiranje jezika visokog nivoa (HLL), semestar 1 2009 2010 akademska godina Polyakov A.Yu. Laboratorijski rad 1. Linux OS programsko okruženje. Svrha rada: Upoznavanje sa softverom

Predavanje 2. Podsistem upravljanja procesima. Upravljanje procesima u multitasking sistemu uključuje alokaciju resursa kernela za svaki od njih pokrenuti proces, izvođenje procesa prebacivanja konteksta

MOSKVSKI DRŽAVNI TEHNIČKI UNIVERZITET nazvan po. N.E. BAUMAN Fakultet za informatiku i sisteme upravljanja Katedra za automatsku obradu informacija i sistemi upravljanja Syomkin P.S., Syomkin

Rad sa GNU/Linux OS-om u terminalnim časovima Odjela za oružane snage Svrha rada: upoznavanje sa softverom GNU/Linux OS i pisanje jednostavnog programa na jeziku C. Operativni sistem (OS) GNU/Linux

BOINC sistem. Lekciju vodi: Nikolaj Pavlovič Khrapov Institut za probleme prenosa informacija RAS Praktična lekcija Osnove rada sa Linux OS Instalacija BOINC servera Praktična nastava Osnove rada

OS komponente Glavne OS komponente 1. Upravljanje procesima 2. Upravljanje glavnom memorijom 3. Upravljanje datotekama 4. Upravljanje I/O sistemom 5. Upravljanje vanjskom memorijom 6. Mrežna podrška

Uvod u Linux komandnu liniju Kako prestati brinuti i zavoljeti ljusku Alexey Sergushichev Praktična škola bioinformatike MNL "Računarske tehnologije" 19.02.2014. Komandna linija Komandna linija

Linux operativni sistem Predavanje 6 Komandna školjka (shell, bash) je interfejs komandne linije u operativnim sistemima sličnim Unixu, odnosno izvršava komande koje korisnik izdaje ili koje se čitaju

Laboratorijski rad 4 UVOD U PROCESE Svrha rada Upoznati pojam procesa. Naučite da dobijete listu procesa dostupnih u sistemu i upravljate njihovim stanjem. 1. Teorijske informacije

Obrasci imena datoteka, pretraga datoteka i druge UNIX karakteristike Registracija u Linuxu Pokrenite putty.exe Unesite IP adresu Kliknite Otvori Korisničko ime studentx Lozinka studentx 2 Kreirajte direktorij

Sadržaj Predgovor 6 Predavanje 1. Radna sesija u Linuxu 8 1.1 Korisnici sistema................................ 8 1.2 Registracija u sistemu...................... 13 1.3 Istovremeni pristup sistemu..................

Osnove ogromnog svijeta UNIX sistema prikazane su na pristupačan način za neprofesionalne korisnike. Korisnik postepeno uči da se prijavljuje u sistem, koristi razne komande, traži pomoć, pronalazi

Rad sa predlošcima standardni dokumenti Priručnik za korisnike Cognitive Technologies Moskva, 2015. 2 SAŽETAK Ovaj dokument pruža informacije o korišćenju softverskog paketa E1 Eufrat

Računarstvo Informatika Predavanje 1. Uvod u Linux OS Glavne karakteristike Linux Real multitasking Višekorisnički pristup Zamjena ram memorija na disk Page

Drugi jezici: engleski ruski iridium server za Raspberry Pi Instaliranje i konfigurisanje servera u projektu i3 lite iridium Sever za Raspberry Pi je softverska implementacija iridium servera koja radi

FEDERALNA AGENCIJA ZA OBRAZOVANJE Tomski politehnički univerzitet ODOBRIO: Dekan AVTF Gaivoronsky S.A. 2009 SIMPLE SHELL ALATI Uputstvo za izvođenje laboratorijskih radova

Lekcija 3. Tema: Računi u Linuxu. Vrsta nastave: predavanje, praktična nastava. Pitanja za proučavanje: 1. Koncept računa i autentifikacije. Fajlovi /etc/passwd i /etc/group, /etc/shadow i /etc/gshadow.

Sažetak programa discipline "Operativni sistemi" 1. Ciljevi savladavanja discipline Ciljevi savladavanja discipline "Operativni sistemi" su: razvijanje kod studenata osnovno znanje, vještine i sposobnosti

Laboratorija 2: Navigacija strukturu fajla i njegovo održavanje korištenjem Xubuntu OS terminala Praktični dio II. Navigacija kroz strukturu datoteka i njeno održavanje pomoću OS terminala

Stranica 1 od 7 Vijesti Tehnička oprema Linux klastera Statistika korištenja resursa Registracija na Linux klasteru Registracija na SPP-2000 AFS sistemu datoteka Pitanja mrežne sigurnosti Biblioteke

Osnovni koncepti i definicije Operativni sistem (u daljem tekstu OS) je softverski paket koji kontroliše funkcionisanje računara i obezbeđuje interakciju uređaja koji su u njemu uključeni.

Poglavlje 1 Odabir operativnog sistema Činjenica da čitate ovu knjigu znači da želite da naučite Linux. Prije nego što započnete ovo putovanje, morate razumjeti šta je operativni sistem

Praktičan rad 10 Rad sa fajlovima u LINUX-u Svrha rada: proučavanje karakteristika rada sa fajlovima u Linux operativnom sistemu. Plan rada: 1. Upoznajte se sa kratkim teorijskim informacijama.

ODOBRENO OD -LU SISTEMA ZA ZAŠTITU INFORMACIJA OD NEOVLAŠĆENOG PRISTUPA Dallas Lock Linux Operator (korisnik) Liste priručnika 11 2016 2 Sažetak Ovo uputstvo za upotrebu se distribuira

Informaciona tehnologija Predavanje 2 Linux komande 2 komande Linux komande Linux konzole - interakcija između korisnika i OS-a Izvršava se preko komandne linije ručnim unosom iza svake naredbe

Softverski i hardverski kompleks pouzdanog preuzimanja "Blokhost-MDZ" Vodič za instalaciju softverskog paketa "Blokhost-MDZ". Vodič za instalaciju. Stranica 2 Sažetak Dokument opisuje instalaciju

Multifunkcionalni hardversko-softverski kompleks za pružanje komunikacionih usluga "IS RINO" Osnovni softver Upravljanje serverom SADRŽAJ 1 UVOD... 3 2 SASTAV SOFTVERA... 3 3 INSTALACIJA SERVERA...

Rutoken Logon. Administratorski vodič 2018 Aktiv Company U ovom dokumentu Ovaj dokument sadrži odgovore na sljedeća pitanja: Za šta se koristi softverski proizvod Rutoken Logon? (vidi str

Sadržaj lekcije Terminologija Alati za daljinski pristup Prijava 1 Korisnik (korisnik) korisnik, Račun(račun). Objekt za snimanje radnji sistema. Prijava 1. Korisničko ime/nalog

Zadaci 1. dio: Pokretanje FTP-a iz komandne linije 2. dio: Učitavanje FTP datoteke pomoću WS_FTP LE klijenta 3. dio: Pokretanje FTP-a u ulazu/skripti preglednika FTP (protokol za prijenos datoteka) uključen u komplet

Razmatraju se opšti principi organizacije, sastava, strukture operativnih sistema i njihovih ljuski, kao i niz specifičnih sistema. Značajna pažnja posvećena je problemima upravljanja informacijama i procesima

I postavljanje mrežnog operativnog sistema FreeBSD FreeBSD FreeBSD je moderan operativni sistem za servere, desktop i ugrađene računarske platforme. FreeBSD pruža moderno umrežavanje

DOO "Kompanija "ALS and TEK" Softver iz porodice prekidača ALS-24000, verzija 6.01 Uputstvo za instalaciju listovi 13 2017 2 1. OPĆE INFORMACIJE 3 1.1. Svrha i obim 3 2. ZAHTJEVI ZA RAČUNAR

IV. METODOLOŠKA UPUTSTVA ZA ORGANIZOVANJE SAMOSTALNOG RADA STUDENATA TOKOM IZUČAVANJA DISCIPLINE “OPERATIVNI SISTEMI” Naziv odeljenja discipline 1. Evolucija operativnih sistema. Svrha

Operativni sistem Operativni sistem je najvažniji program Operativni sistem je skup programa koji obezbeđuju interakciju svih hardverskih i softverski dijelovi računari međusobno i

4 Laboratorijski rad 1. Instalacija i konfiguracija operativnog sistema na virtuelnoj mašini 1.1. Svrha rada Svrha ovog rada je sticanje praktičnih vještina u instalaciji operativnog sistema

Federalna državna budžetska obrazovna ustanova visokog stručnog obrazovanja "Nacionalni istraživački Tomski politehnički univerzitet" ODOBRIO: šef obrazovanja

Laboratorijski rad 1. Kretanje kroz strukturu datoteke i njeno održavanje pomoću Windows komandne linije tumača Teorijski dio. Direktorij je posebna vrsta datoteke koja sadrži nazive poddirektorija

operativni sistem Softver Operativni sistem je najvažniji program Operativni sistem je skup programa koji obezbeđuju interakciju svih hardverskih i softverskih delova.

Sistem licenciranja i zaštite za konfiguracije platforme 1C:Enterprise 8, verzija 3.0 Administratorski vodič Podržani operativni sistemi... 1 Sastav sistema... 1 SLK server... 1 Eksterna komponenta...

Uvod Rad sa GNU/Linux operativnim sistemom Trenutno, glavni interfejs između korisnika i desktop operativnog sistema je grafički korisnički interfejs (Graphic User Interface).

PRAKTIČNI RAD 2 OS komandne linije Windows Svrha rada: proučavanje interfejsa komandne linije Windows OS, sticanje veština u rešavanju tipičnih zadataka administriranja Windows operativnog sistema korišćenjem

Laboratorijski rad 2 Upravljanje datotekama u operativnom sistemu Ciljevi i zadaci laboratorijskog rada: sticanje vještina rada sa operativnim sistemom kao što je Linux; učenje osnova upravljanja operacijskom salom

MANAGER VEZA ZA VIRTUALNE RADNE STANICE TERMIDESK ADMINISTRATORSKI PRIRUČNIK (priprema osnovne radne stanice) 23811505.6200.001.I5.01-2 Listovi 17 MOSKVA 2018 1 SADRŽAJ 1 UVOD...11

Federalna državna budžetska ustanova za visoko stručno obrazovanje "SibGUTI" Katedra za računarske sisteme Discipline "PROGRAMSKI JEZICI" "PROGRAMIRANJE" Praktična nastava 55 OS GNU/Linux Nastavnik: vanredni profesor Katedre za računarstvo, dr. sc. Poljakov Artem Jurijevič

Dodatak PROGRAM RADA AKADEMSKE DISCIPLINE OPERATIVNI SISTEMI I OKRUŽENJE Radni program akademska disciplina Operativni sistemi i okruženja razvijeni na osnovu Federal State Educational

2.1. Fajlovi. Zahtjevi za pohranu informacija: sposobnost pohranjivanja velikih količina podataka; informacije se moraju zadržati nakon završetka procesa; nekoliko procesa mora imati istovremeno

Programski jezici i metode prevođenja Prezentacija za laboratorijski rad 2 Operaciona sala Windows sistem Sadržaj 2 Sadržaj 3 Koncept operativnog sistema Osnovni softver operativnog sistema (OS).

Instaliranje IBM DB2 v11.1 poslužitelja na Linux Instalacija IBM DB2 pomoću čarobnjaka za instalaciju zahtijeva da imate instalirano i pokrenuto grafičko sučelje, uključujući X-Window osnovne pakete,

1.1 Istorija OS Prvi (1945-1955) računari su radili bez operativnih sistema, po pravilu su pokretali jedan program. Kada je brzina izvršavanja programa i njihov broj počeo da raste, došlo je do zastoja

Upravljanje Rutoken drajverima pomoću grupnih politika 2017 Aktiv Company U ovom dokumentu Ovaj dokument opisuje kako koristiti grupne politike za automatsku distribuciju kompleta

Tema: Svrha: Praktični rad 23. Osnove rada u Ubuntu. Upoznajte se sa interfejsom Ubuntu OS, naučite kako da radite sa fajlovima i direktorijumima, pokrenite programe, pregledajte tekst i grafiku

Alat za sigurnost informacija Secret Net Upute za lokalno ažuriranje klijenta Secret Net Ovaj dokument sadrži detaljan opis redoslijeda akcija za lokalno ažuriranje klijenta

O autorima 15 Uvod 17 Struktura knjige 18 Od izdavača 20 Poglavlje 1. Kratka recenzija Osnove 21 Neke osnovne naredbe 21 Prikaz datuma i vremena: komanda datuma 21 Pronalaženje registriranih korisnika

Korisnički vodič za HV Manager 2017 AprilTech, llc. Sva prava pridržana 1 SADRŽAJ Uvod... 3 Instalacija i konfiguracija... 4 Sistemski zahtjevi... 4 Instalacija... 5 Konfiguracija... 6 Podešavanje

1 Lab 3 “PRESMERAVANJE TOKA PODATAKA” Tokovi i datoteke Logično, sve datoteke u Linux sistemu su organizovane u kontinuirani tok bajtova. Bilo koji fajl se može slobodno kopirati i dodati drugom

UNIX(Unix, Unix) - grupa prenosivih, multitasking i višekorisničkih operativnih sistema. Prvi Unix operativni sistem razvijen je kasnih 1960-ih i ranih 1970-ih od strane američke istraživačke firme Bell Laboratories. U početku je bio fokusiran na miniračunare, a zatim se počeo koristiti na računarima svih klasa, uključujući mainframe i mikroračunare. Ovo je olakšano prilagođavanjem Unixa na 32-bitne mikroprocesore iz Intela, koje je izvršeno 1990. godine. Funkcionalnost a fleksibilnost Unixa osigurala je njegovu upotrebu u heterogenim automatizovani sistemi, kao i kreiranje desetina standarda za proizvođače kompjuterska tehnologija. Operativni sistemi Unix porodice:

Linux je verzija Unix operativnog sistema za računarske platforme zasnovane na Intel procesorima;
HP-UX - Hewlett-Packard verzija; stalno se razvija i kompatibilan je sa IE-64, koji je novi standard za 64-bitnu arhitekturu;
SGI Irix je Silicon Graphics PC operativni sistem baziran na System V izdanju 3.2 sa BSD elementima. Na ovoj verziji Unixa, Industrial Light & Magic studio kreirao je filmove “Terminator 2” i “Jurassic Park”.
SCO Unix je verzija operacije Santa Cruz za Intel platformu, neovisna o proizvođačima hardvera;
IBM AIX - implementiran na bazi System V izdanja 2 sa nekim BSD ekstenzijama;
DEC Unix je operativni sistem sa podrškom za klastere; dizajniran da radi zajedno sa Windows NT;
NeXTStep-4.3 BSD - OS baziran na Mach kernelu, koji se koristi u NeXT računarima; pripada Apple Računalo i služi kao operativni sistem za Macintosh računare;
Sun Solaris je operativni sistem za SPARC stanice zasnovan na System V izdanju 4 sa brojnim dodacima.

Operativni sistem Unix pojavio se tokom razvoja mini računara. Godine 1969. istraživačka firma Bell Labs je započela razvoj kompaktnog operativnog sistema za 18-bitni DEC PDP-7 mini računar kompanije Digital Equipment Corporation. Sistem je prvobitno napisan na asembleru, a datumom rođenja Unixa smatra se 1. januar 1970. godine. Godine 1973. prepisan je na jeziku C, koji je razvijen u Bell Labs-u. U isto vrijeme održana je i zvanična prezentacija operativnog sistema. Njegovi autori, zaposleni u Bell Labs-u, Ken Thompson i Dennis M. Ritchie, nazvali su svoju zamisao "univerzalnim operativnim sistemom za dijeljenje vremena".

Unix je bio zasnovan na hijerarhijskom sistemu datoteka. Svaki proces se posmatrao kao sekvencijalno izvršavanje programskog koda unutar autonomnog adresnog prostora, a rad sa uređajima tretiran je kao rad sa fajlovima. Prva verzija implementirala je ključni koncept procesa, kasnije su se pojavili sistemski pozivi (fork, wait, exec, exit). 1972. godine uveden je cjevovod uvođenjem cijevi.

Do kraja 1970-ih, Unix je postao popularan operativni sistem, uz pomoć preferencijalnih uslova distribucije u univerzitetskom okruženju. Unix je portiran na mnoge hardverske platforme i počele su se pojavljivati ​​njegove varijante. Vremenom je Unix postao standard ne samo za profesionalne radne stanice, već i za velike korporativni sistemi. Pouzdanost i fleksibilnost UNIX postavki učinile su ga popularnim, posebno među administratori sistema. Igrala je aktivnu ulogu u širenju globalne mreže, i, prije svega, internet.

Zahvaljujući politici otkrivanja izvora, brojni besplatni dijalekti Unixa rade na Intel platforma x86 (Linux, FreeBSD, NetBSD, OpenBSD). Potpuna kontrola nad tekstovima omogućila je kreiranje sistema sa posebnim performansama i sigurnosnim zahtjevima. Unix je takođe asimilirao elemente drugih operativnih sistema, što je rezultiralo razvojem POSIX i X/Open programskih interfejsa.

Postoje dve nezavisno razvijene grane UNIX-a - System V i Berkeley, na osnovu kojih su nastali dijalekti Unixa i Unix sistemi. BSD 1.0, koji je postao osnova za nekomercijalne UNIX dijalekte, objavljen je 1977. na Kalifornijskom univerzitetu u Berkliju, na osnovu UNIX V6 izvornog koda. U periodu 1982-1983, prvi komercijalni dijalekti Unixa, System III i System V, izdali su Unix System Laboratories (USL). System V verzija Unixa je bila osnova za većinu kasnijih komercijalnih varijanti. Godine 1993. AT&T je prodao prava na Unix zajedno sa laboratorijom USL kompaniji Novell, koja je razvila UNKWare dijalekt baziran na System V, u vlasništvu Operacije Santa Cruz pod imenom SCO UNIXWare. Trademark Unix je u vlasništvu X/Open Company.

Unix je stekao popularnost zahvaljujući svojoj sposobnosti da radi na različitim hardverskim platformama - prenosivosti ili mobilnosti. Problem mobilnosti u UNIX-u riješen je objedinjavanjem arhitekture operativnog sistema i korištenjem okruženja jednog jezika. C jezik razvijen u Bell Labs-u postao je veza između hardverske platforme i operativnog okruženja.

Mnogi problemi prenosivosti u Unixu su riješeni obezbjeđivanjem jednog softvera i korisnički interfejs. Dve organizacije se bave problemom usaglašavanja više Unix dijalekata: Odbor za standarde za IEEE prenosive aplikacije (PASC) i X/Open Company (The Open Group). Ove organizacije razvijaju standarde koji omogućavaju integraciju heterogenih operativnih sistema, uključujući one koji nisu povezani sa Unixom (IEEE PASC - POSIX 1003, X/Open - Common API). Dakle, POSIX-kompatibilni sistemi su Open-VMS, Windows NT, OS/2.

Osnova Unix-ove prenosivosti, kao sistema koji cilja širok spektar hardverskih platformi, je njegova modularna struktura sa centralnim kernelom. U početku je UNIX kernel sadržavao skup alata odgovornih za otpremu procesa, dodjelu memorije, rad sa sistemom datoteka, podršku za vanjske drajvere uređaja, umrežavanje i sigurnosne alate.

Nakon toga, minimalnim odvajanjem od tradicionalnog jezgra potreban set znači da je formirano mikrojezgro. Najpoznatije implementacije Unix mikrokernela su Amoeba, Chorus (Sun Microsystems), QNX (QNX Software Systems). Chorus mikrokernel zauzima 60 KB, QNX - 8 KB. Zasnovano na QNX-u, razvijeno je 30 KB POSIX-kompatibilno Neutrino mikrokernel. Na Univerzitetu Carnegie Mellon 1985. godine razvijeno je Mach mikrojezgro, korišteno u NeXT OS (NeXT), MachTen (Mac), OS/2, AIX (za IBM RS/6000), OSF/1, Digital UNIX (za Alpha), Windows NT, BeOS.

U Rusiji se operativni sistem Unix koristi kao mrežna tehnologija i operativno okruženje za različite računarske platforme. Infrastruktura ruskog Interneta formirana je na bazi Unixa. Od ranih 1980-ih, domaći radovi na Unix operativnom sistemu obavljali su se u Institutu za atomsku energiju po imenu. I. V. Kurchatov (KIAE) i Institut za primenjenu kibernetiku Ministarstva automobilske industrije. Rezultat ujedinjenja ovih timova je rođenje DEMOS operativnog sistema (Dialogue Unified Mobile Operating System), koji je, pored domaćih analoga PDP-11 (SM-4, SM-1420), prebačen u ES Computer i Elbrus. Uprkos svojoj svestranosti, Unix je izgubio tržište personalni računari Windows porodica Microsoft kompanija. Unix operativni sistem održava svoju poziciju u polju kritičnih sistema sa visokim stepenom skalabilnosti i tolerancije grešaka.