Unix pagrindai Apžvalga Šiame skyriuje šnekėsime apie pagrindines Unix komandas ir FreeBSD funkcionalumą. Daugelis šnekamų dalykų bus susiją su kitomis Unix sistemomis. Leidimai FreeBSD yra BSD Unix šeimos palikuonis. Ši sistema yra daugiavartotojiška. Sistema gali tarnauti daugeliui vartotojų, vartotojai gali dirbti vienas su kitu nesusijusias užduotis. Kadangi sistema yra daugiavartotojiška, viską ką sistema valdo turi savas taisykles, ką galima skaityti, rašyti arba vykdyti. Šios taisyklės, leidimai yra saugomi kaip trys gabalai, pirmas failo savininkui, antras grupei kuriai šis failas priklauso ir paskutinis visiems kitiems. Ši skaičių reprezentacija atrodo panašiai kaip čia: Leidimo reikšmė Katalogų sąrašas 0 Negalima skaityti, negalima rašyti, negalima vykdyti --- 1 Negalima skaityti, negalima rašyti, galima vykdyti --x 2 Negalima skaityti, galima rašyti, negalima vykdyti -w- 3 Negalima skaityti, galima rašyti, galima vykdyti -wx 4 Galima skaityti, negalima rašyti, negalima vykdyti r-- 5 Galima skaityti, negalima rašyti, galima vykdyti r-x 6 Galima skaityti, galima rašyti, negalima vykdyti rw- 7 Galima skaityti, galima rašyti, galima vykdyti rwx Jei norite pamatyti kokie leidimų nustatymai yra jūsų sistemoje, jūs galite naudoti komandą ls -l, kuri pateikia išsamę informaciją apie leidimus apie failų dydžius ir pan. Pirmas stulpelis atrodo maždaug taip: -rw-r--r-- Pirmas simbolis iš kairės į dešinę yra specialus simbolis, kuris pasako ar tai paprastas failas, ar tai katalogas, ar įrenginys, soketas, ar psiaudo failo įrenginys. Sekantys trys simboliai rw- yra savininko leidimai. Sekantys trys (r--) yra failo leidimai grupei. Ir pagaliau paskutiniai trys (r--) yra leidimai visiems kitiems vartotojams. Brūkšnelis reiškia, kad leidimo nėra! Leidimus gali keisti tik failo savininkas arba administratorius. Leidimai gali būti išreiškiami skaičiais, pvz.: viršuje pateikto pavyzdžio atitikmuo yra 644 (-rw-r--r--). Taigi su paprastais failais arba katalogais viskas aišku, bet kaip sistema kontroliuoja įrenginių leidimus? Su įrenginiais yra labai daug panašumų kaip ir su paprastais failais: Programos gali atidaryti, skaityti ir rašyti duomenis, kaip į kitus failus. Specialus įrenginių failai yra saugomi specialiame kataloge /dev. Katalogai yra taip pat traktuojami kaip failai. Jie turi skaitymo, rašymo ir vykdymo leidimus. Yra tik vienas skirtumas su vykdymu, jei katalogas paženklintas kaip vykdomas, tai reiškia, kad jis gali būti atidaromas (galima peržiūrėti jo turinį). Jei jūs norite pakeisti leidimus galite naudoti komandą chmod, rekomenduoju pažiūrėti vadovo puslapi (man chmod). FreeBSD katalogų struktūra Jei jūs norite suprasti FreeBSD sistemą, visų pirmiausiai turite gerai išmanyti katalogų hierarchija. Pagrindinis tikslas yra suprasti / katalogą kuris yra pirmas prijungiamas prie sistemos. Šis katalogas yra vadinamas pagrindiniu (root) kuriame yra visi kiti failai ir katalogai. Pilnas sistemos failų aprašymas yra pateikiamas įvykdžius komanda hier. Aš dabar pabandysiu apžvelgti pagrindinius sistemos katalogus: Katalogas Aprašymas / Pagrindinis failų sistemos katalogas. /bin/ Pagrindinės programėlės, tokios kaip: kopijavimas (cp), trynimas (rm), katalogų peržiūra (ls) ir pan. /boot/ Programos ir konfigūraciniai failai, kurie yra naudojami prie įkraunant sistemą. /boot/defaults Įkrovos konfigūraciai failai. /dev/ Sistemos įrenginiai. /etc/ Sistemos konfigūraciniai failai ir skriptai. /etc/defaults Pagal nutylėjimą sistemos konfigūraciniai failai ir skriptai. /mnt/ Tuščias katalogas naudojamas laikinai prijungti failų sistemas. /proc/ Sistemos procesų failai. /root/ Administratoriaus namų katalogas. /sbin/ Sisteminės programos ir administravimo įrankiai. /stand/ Sistemos derinimo įrankiai. /tmp/ Laikini failai, po sistemos perkrovimo yra ištrinami. /usr/ Labai daug visokių programų ir įrankių! /usr/bin/ Paprasti įrankiai, programavimo instrumentai ir taikomosios programos. /usr/include/ Standartiniai C kalbos prijungimo failai. /usr/lib/ Archyvų bibliotekos. /usr/libdata/ Įvairūs įrankiai ir duomenų failai. /usr/libexec/ Įvairūs deamonai ir sisteminiai įrankiai. /usr/local/ Vietiniai vykdomieji failai. /usr/ports/ FreeBSD programų įdegimo įrankis. /usr/sbin/ Sistemos deamonai ir sisteminiai įrankiai. /usr/share/ Nepriklausomi failai. /usr/src/ Sistemos branduolio programinis kodas. /usr/X11R6/ Įvairios X programos, bibliotekos ir pan. /var/ Įvairių tikslų: LOG, laikinų failų, papildomos informacijos katalogai. /var/log/ Įvairūs sistemos log'ai. /var/mail/ Laiškų failai. /var/tmp/ Įvairūs laikiniai failai laikomi iki sistemos perkrovimo. Procesai FreeBSD yra daugiaužduotinė operacinė sistema. Tai reiškia, kad daugiau negu viena programa gali būti vykdoma vienu metu. Kiekviena vykdoma programa FreeBSD ir daugelyje Unix šeimos operacinių sistemų yra vadinama procesu. Bet kokia komanda kurią jūs vykdote paleidžia mažiausiai vieną procesą, o veikiančių procesų vienu metu yra gana daug, jie užtikrina stabilų operacinės sistemos darbą. Kiekvienas procesas turi unikalų skaitinį indentifikatorių, vadinamą proceso ID, arba PID ir panašiai kaip ir failai kiekvienas procesas turi savo savininką ir grupę. Savininko ir grupės informacija yra reikalinga, norint apskaičiuoti kokius failus ir įrenginius gali procesas atidaryti ir kokių negali. Daugelis procesų turi savo tėvus (parent) procesus. Tėvas arba pagrindinis procesas yra tas kuris startuoja kitą procesą, pvz: shell'as paleidžia bet kokią įvestą komandą, shell'as yra (parent) procesas. Darbui su procesais yra naudojamos dvi pagrindinės komandos, tai ps ir top. ps komanda yra naudojama statiniam einamų procesų parodymui, ji rodo PID, kiek atminties procesas naudoja ir pan. top komanda rodo dinaminį procesų sąrašą, nauji procesai automatiškai yra įtraukiami i sąrašą. Pagal nutylėjimą ps komanda rodo tik savininko procesus. Pavyzdžiui: %ps PID TT STAT TIME COMMAND 213 p0 IW 0:00.00 -csh (csh) 217 p0 IW 0:00.00 csh 218 p0 IW 0:00.00 tcsh 219 p0 I 0:00.40 csh 261 p0 I+ 0:02.84 view book.txt 225 p1 I 0:00.80 -csh (csh) 263 p1 S+ 0:03.01 vi han.txt 286 p1 S+ 0:00.07 csh -c ps 287 p1 R+ 0:00.01 ps Kaip matome pavyzdyje ps išveda informaciją suskirstytą į stulpelius. PID yra proceso ID (šnekėjau anksčiau). PID yra pradedamas priskirti nuo 1 iki 99999. TT parodo tty programą kur yra vykdomas procesas, dabar apie tty nešnekėsiu. STAT parodo komandos būseną, apie būseną pašnekėsime vėliau. TIME procesoriaus laikas, paprasčiausiai galime sakyti kiek programa laiko naudoja procesoriaus resursus. ps komanda turi savyje labai daug papildomų nustatymų, informacijos pateikimui. Yra labai naudingas nustatymas auxww (ps -aux). a - rodo informaciją apie visus vykdomus procesus, ne tik jūsų. u - rodo proceso savininką, ir kiek jis naudoja atminties. x - rodo informaciją apie deamon (servisinius) procesus. top išvedimas yra panašus. Pavyzdžiui top sesija atrodo taip: last pid: 360; load averages: 0.12, 0.03, 0.01 up 0+01:27:09 18:22:53 29 processes: 1 running, 24 sleeping, 4 stopped CPU states: 0.5% user, 0.0% nice, 0.5% system, 0.0% interrupt, 99.0% idle Mem: 5288K Active, 348K Inact, 3668K Wired, 1760K Cache, 2080K Buf, 668K Free Swap: 2912K Total, 2912K Used, 100% Inuse PID USERNAME PRI NICE SIZE RES STATE TIME WCPU CPU COMMAND 360 mr 28 0 1908K 1016K RUN 0:00 1.88% 0.34% top 359 mr 18 0 1096K 544K pause 0:00 1.54% 0.34% csh 223 root 2 0 1264K 316K select 0:22 0.00% 0.00% telnetd 195 root 2 0 1264K 312K select 0:13 0.00% 0.00% telnetd 261 mr 10 0 1660K 576K STOP 0:04 0.00% 0.00% view 331 mr 28 0 1608K 564K STOP 0:03 0.00% 0.00% view 356 mr 3 0 1608K 1040K ttyin 0:02 0.00% 0.00% view 51 root 2 0 948K 292K select 0:01 0.00% 0.00% syslogd 225 mr 3 0 1360K 548K ttyin 0:01 0.00% 0.00% csh 219 mr 18 0 1332K 472K pause 0:01 0.00% 0.00% csh 62 root 10 0 988K 156K nanslp 0:01 0.00% 0.00% cron 327 mr 28 0 1904K 472K STOP 0:00 0.00% 0.00% top 149 root 2 0 536K 0K select 0:00 0.00% 0.00% dhclient 213 mr 18 0 1312K 0K pause 0:00 0.00% 0.00%
Šį darbą sudaro 4249 žodžiai, tikrai rasi tai, ko ieškai!
★ Klientai rekomenduoja
Šį rašto darbą rekomenduoja mūsų klientai. Ką tai reiškia?
Mūsų svetainėje pateikiama dešimtys tūkstančių skirtingų rašto darbų, kuriuos įkėlė daugybė moksleivių ir studentų su skirtingais gabumais. Būtent šis rašto darbas yra patikrintas specialistų ir rekomenduojamas kitų klientų, kurie po atsisiuntimo įvertino šį mokslo darbą teigiamai. Todėl galite būti tikri, kad šis pasirinkimas geriausias!
Norint atsisiųsti šį darbą spausk ☞ Peržiūrėti darbą mygtuką!
Mūsų mokslo darbų bazėje yra daugybė įvairių mokslo darbų, todėl tikrai atrasi sau tinkamą!
Panašūs darbai
Atsisiuntei rašto darbą ir neradai jame reikalingos informacijos? Pakeisime jį kitu nemokamai.
Pirkdamas daugiau nei vieną darbą, nuo sekančių darbų gausi 25% nuolaidą.
Išsirink norimus rašto darbus ir gauk juos akimirksniu po sėkmingo apmokėjimo!